ハイ!
TTML タイプのクローズド キャプションをサポートするアプリケーションを作成したいと考えています。
ism/manifest ファイルに TTML ベースのクローズド キャプションが含まれています。どのように使用すればよいですか?
このサイト https://developers.google.com/cast/docs/playerを見つけました。 そこでは、次のように説明されています。
セグメント化された TTML と WebVTT
スムーズ ストリーミングにはセグメント化された TTML を使用し、HLS には WebVTT - Web ビデオ テキスト トラックを使用します。
有効にする:
protocol_.enableStream(streamIndex, true); player_.enableCaptions(真);
しかし、私の問題の例が見つかりません。受信側でホストを作成した後、これを有効にする必要がありますか? このためのサンプルアプリはありますか?
更新 #1
これが私のコードです:
window.onload = function() {
var mediaElement = document.getElementById('video'); //video is a html video tag
var mediamanager = new cast.receiver.MediaManager(mediaElement);
var url = "http://playready.directtaps.net/smoothstreaming/SSWSS720H264/SuperSpeedway_720.ism/Manifest"; //Just a sample URL
var host = new cast.player.api.Host({ 'mediaElement': mediaElement, 'url': url });
window.player = new cast.player.api.Player(host);
protocol = cast.player.api.CreateSmoothStreamingProtocol(host);
var initStart = 0;
window.player.load(protocol, initStart);
mediamanager.loadedmetadata = function(loadinfo) {
//onMetadataLoaded fired, set the caption
}
}
うまくいきません。そこで、ストリームを取得することにしました:
var streamCount = protocol.getStreamCount();
そして、streamCount には 0 が含まれています。マニフェストにはクローズド キャプションが含まれています。getStreamCount() ではなく、別のものを使用する必要がありますか?
どうもありがとうございました!