1

私は TVOS を使い始めたばかりで、TVOS / TVJS / TVML のループに対処した人がいるかどうか疑問に思っていました。このチュートリアルを使用して、ビデオを再生するための簡単なインターフェイスを作成しています。私のしわは、これらのビデオを連続的なシームレス ループで再生したいということです。基本的には、動くスクリーンセーバー タイプの効果です

これを行う簡単な方法はありますか、またはループを手動で行うためにある種のイベントリスナーを構築する必要がありますか? ビデオはかなり高解像度で、1 ~ 3 分程度のビデオにしたいと考えています。

4

3 に答える 3

2

私もこの質問に対する答えを探していました。そして、これを可能にする唯一の方法は、イベント リスナーを作成し、重複したメディア アイテムをプレイリストに追加することであることがわかりました。しかし、正直なところ、投稿に記載されているチュートリアルに従えば、それほど難しくありません。

したがって、コードは次のようになります

player.playlist = playlist;
player.playlist.push(mediaItem);
//Again push the same type of media item in playlist so now you have two of the same.
player.playlist.push(mediaItem); 
player.present();

これにより、最初のビデオが終了すると、本質的にループである 2 番目のビデオの再生が開始されます。次に、3 つ目以降では、「mediaItemWillChange」プロパティを使用してイベント リスナーを実装します。これにより、動画が終了すると、同じ動画の新しいコピーがプレイリストに追加されます。

player.addEventListener("mediaItemWillChange", function(e) { 
   player.playlist.push(mediaItem);
});

使用してプレーヤーを開始する前に、イベントリスナーを配置するだけです

player.present();

この種の質問とアイデアは、Apple のディスカッション ボードで既に質問/提供されていることに注意してください。私は単にアイデアを取り入れて自分のプロジェクトに実装しただけで、それが機能することを知ってソリューションを投稿しています。以下のリンクされたスレッドに記載されているように、プレイリストから最初のビデオをポップして追加し、プレイリストに新しいビデオをプッシュすると、ビデオがループしないことがわかりました。以下は、元の投稿へのリンクです。

TVJS Player で動画をリピートするには?

于 2016-01-07T14:45:31.223 に答える
1

プレイリスト オブジェクトに repeatMode を設定することもできます

player.playlist.repeatMode = 1;
  • 0 = 繰り返しなし
  • 1 = プレイリスト内のすべてのアイテムを繰り返す
  • 2 = 現在のアイテムを繰り返す
于 2020-02-14T16:03:56.543 に答える