10

iPhoneアプリで再生する動画に「字幕」をつけたい。これらの字幕をビデオ自体にエンコードしたくない - 理想的には、ビデオを表示するビュー (一時停止、再生、音量などの標準コントロール付き) と、映画の時間とともに変化するテキストを表示するビューが欲しい変化。

それを描いたらこんな感じ。 字幕付きの映画

したがって、基本的には、映画の再生中に呼び出されるメソッドを取得し、ラベルに表示されるテキストを映画のタイミングと同期させる方法が必要です。

誰もがそれを行うことができたソリューションを使用しましたか?

4

1 に答える 1

9

私は最近、オーディオ トラックの時間にグラフィックを同期することを行いました。私が行った方法は、MPMediaPlayback インターフェイスの currentPlaybackTime プロパティを使用することでした (これには、MoviePlayer コントローラーも準拠する必要があります)。これは、メディアで経過した秒数を a double(typedef'ed as NSTimeInterval) で返します。「ティック」に似たものが見つからなかったため、アプリでの実際の同期は通知では行われませんでしたが、代わりにタイマーを作成し、currentPlaybackTime を照会する関数を呼び出し、これに基づいてグラフィックを更新しました。

あなたの実装に関しては、ラベル テキスト (字幕) を特定の時間に関連付けるための何らかのシステムがあると思います。次に、テキストの時間範囲を currentPlaybackTime から返された時間と比較して、表示する正しいテキストを見つけることができます。

于 2011-02-07T14:28:21.017 に答える