2016-09-22 20 views
0

rtmpを使用してストリームをサーバーにブロードキャストし、HLSを使用してビデオをデバイスにストリーミングしています。 字幕をリアルタイムで更新できるような字幕プロトコルはありますか?例えば、 、サーバーに字幕ファイルがあります。私はそのファイルへの書き込みを保つことができ、プレーヤーもそのファイルからの読み込みを維持できます。HLSライブストリーミングサブタイトル?

私はWebVTTが記録されたストリーミングビデオのために働くのを知っていますが、それはライブストリーミングビデオのために働くでしょうか?私のプレイヤーをwebVTTファイルにリンクすることはできますか?私はそれを書いておくだけでサブタイトルを更新できますか?

答えて

1

WebVTTをadd subtitles to a live HLS streamにすることができます。これを行うには、ライブサブタイトルのプレイリストを使用します。ライブプレイリストと同じように機能します。時間の経過とともにエントリを追加したり削除したりします。

まず、マスタープレイリストを作成し、サブタイトルプレイリスト(subtitles.m3u8)への参照を追加します。

#EXTM3U 
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",URI="subtitles.m3u8",LANGUAGE="en" 
#EXT-X-STREAM-INF:BANDWIDTH=500000,RESOLUTION=1920x1080,SUBTITLES="subs" 
prog_index.m3u8 

次のステップは、ライブブロードキャスト中に字幕プレイリストを更新することです。さんがあなたの字幕プレイリストは、最初は次のようになりましょう:#EXT-X-ENDLISTタグがプレイリストから欠落していることを

#EXTM3U 
#EXT-X-TARGETDURATION:10 
#EXT-X-VERSION:3 
#EXT-X-MEDIA-SEQUENCE:1 
#EXTINF:10, 
1.webvtt 
#EXTINF:10, 
2.webvtt 
#EXTINF:10, 
3.webvtt 

注意してください。これにより、プレイヤーはプレイリストを引き続き検索します。

そして、いくつかの時間後に(セグメント持続時間)には、次のようになりますように

#EXTM3U 
#EXT-X-TARGETDURATION:10 
#EXT-X-VERSION:3 
#EXT-X-MEDIA-SEQUENCE:2 
#EXTINF:10, 
2.webvtt 
#EXTINF:10, 
3.webvtt 
#EXTINF:10, 
4.webvtt 

とします。おそらく、字幕プレイリストを更新するカスタムコードを書く必要があります。

+0

ありがとうございました!残念ながら、私はm3u8ファイルに書き込むためのアクセス権がありません。私は他の解決策を模索すべきです。 – ywj7931

関連する問題