1

XE6 Google Glass Update でビデオを添付するとスタックします。私が使用しているコードは次のとおりです。

    String videoUrl = "http://www.youtube.com/watch?v=9bZkp7q19f0"; 
    if (videoUrl != null) {
      String contentType = "video/vnd.google-glass.stream-url";
      InputStream is = new ByteArrayInputStream( videoUrl.getBytes( ) );
      MirrorClient.insertTimelineItem(credential, timelineItem, contentType, is);
    }

何が間違っているのかわかりませんが、ビデオはまだダウンロードしようとしていて、バッテリーを消耗しています...

4

2 に答える 2

3

問題は、そのページ自体からビデオをストリーミングするのではなく、YouTube ページをストリーミングしようとしていることにあると思います。

残念ながら、YouTube は、あなたのものではないビデオのストリームを取得する方法についてあまり公開していません。(そして、ビデオについてはそれほど役に立ちません。)

于 2013-06-08T10:57:07.087 に答える
2

(以下のcurlコマンドで更新)

ここのドキュメントに基づいて:

https://developers.google.com/glass/timeline#attaching_video

タイムラインへのビデオのストリーミングは、ビデオをタイムラインに添付するようには機能しません。代わりに、マルチパート投稿を作成することになっています。実際の投稿のコンテンツ タイプは次のようになります。

Content-Type: multipart/related; boundary="mymultipartboundary"

次に、さらに 2 つのコンテンツ タイプ (マルチパート コンテンツのパーツ) があり、そのうちの 2 番目が指定したコンテンツ タイプになります。

サポート情報は、「マルチパート アップロード」の下にあります。

https://developers.google.com/glass/media-upload

猫がいる静的なビデオが必要な場合は、これを試すことができます:)

Sweetie-Cat-ビデオ

上記の静的ビデオ リンクと以下の NASA ストリームの両方でテストして動作する curl コマンドを次に示します。

curl --header "Authorization: Bearer your_token_here" -H "Content-Type: multipart/related; boundary=mymultipartboundary" --data-binary @input.txt https://www.googleapis.com
/upload/mirror/v1/timeline

input.txt は次のようになります。

--mymultipartboundary
Content-Type: application/json; charset=UTF-8

{ "text": "Sweetie" }
--mymultipartboundary
Content-Type: video/vnd.google-glass.stream-url

http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8
--mymultipartboundary--

このコマンドを実行してからタイムラインに移動すると、カチンコのアイコンが付いた読み込み中のカードが表示され、次に動画の最初のフレームに読み込み中のテキストが表示されます。その後、ストリームが開始されます。投稿したテキスト (「Sweetie」) が表示されません。後でカードに戻ると、nasa の例では、ストリームは現在の時刻から開始されます。猫のビデオ (ストリームではない) の場合、ビデオがキャッシュされているようには見えず、再ダウンロードされます。

于 2013-06-09T01:29:37.517 に答える