MediaElment.js:その場で字幕(トラック要素)のソースファイルを変更する方法は?
-
27-10-2019 - |
質問
字幕のソースファイルをその場で変更する方法(元々はHTMLで定義されていますu003Ctrack>要素)ビデオソースを変更するとき(setSrc()メソッドを介して)?
言い換えれば、ビデオを再生するとき、私はSETSRC()メソッドを使用してビデオソースを変更します。また、リンクされたサブタイトルファイル(SRT)を再定義します。
解決
私が考案したトリックは、字幕トラックにIDを設定することでした
<track id="subtitles" kind="subtitles" src="subtitles.srt" srclang="en" />
次に、必要なイベントの内部で使用できます。
$('#subtitles').attr('src', 'different_subtitles.srt');
player.findTracks();
player.loadTrack(0);
player.setSrc('different_video.mp4');
これを進めるためのよりエレガントな方法があるかもしれませんが、MediaElementjsは本当にこれにAPIを提供するはずです。しかし、その間、このトリックはあなたを手に入れるはずです。
他のヒント
これは、すべてのイベントではうまく機能しません(「終了」など)。このコードはトラックソースを確実にロードして変更しますが、すでに表示されている言語がある場合、CCがNONEに設定されていない限り、新しいビデオで新しく「ソース」トラックを表示しません。
所属していません StackOverflow