カスタム ビデオ プレーヤーを作成しました。すべてのボタンが機能しています。ビデオにそのオプションがある場合に MPMoviePlayerController が字幕を表示するコードを知る必要があります。この字幕ボタンの背後にあるコードを知っている例や誰かをどこにも見つけられませんでした。これはどこで見つけることができますか?
3 に答える
独自の字幕ファイル パーサーを実装する必要があります。.srt ファイル形式は非常に単純です。これを解析する方法について説明します。
より難しいのは、字幕表示 (おそらくビューUILabel
の上に配置されているだけMPMoviePlayerController
) を現在の映画の時間と同期させることです。要求できるクラスを作成する必要がありますsubtitleStringAtTimeInterval
: 種類のもの (字幕をメモリに保持し、字幕の取得を高速化します)。次に、定期的に字幕を更新します (NSTimer
各字幕更新の間に短い時間間隔でスリープするバックグラウンド スレッドを使用)。
コードは必要ありません...ビデオでソフトサブがエンコードされている場合、ボタンは自動的に表示されます。
ここを参照してください: http://www.bitfield.se/isubtitle/on_iphone_ipod.html
メディア ファイルにキャプションが埋め込まれている場合、MPMoviePlayerViewController はキャプションを有効/無効にするボタンを表示します。デフォルトでは、キャプションは無効になっており、プログラムで有効にすることはできません。
代わりに、closedCaptionDisplayEnabled プロパティを指定して AVPlayer を使用できます。ただし、iOS 4 以降のみ