「AVFoundation」の編集履歴(バックアップ)一覧に戻る
AVFoundation - (2012/06/18 (月) 10:49:22) の編集履歴(バックアップ)
キーとなるクラスはAVAsset
- AVAssetはメディアデータの集合
- メディアデータとはタイトル、再生時間、表示サイズ等の情報
AVAssetを作る。
例 URLから作る
AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:url options:nil];
AVAssetから情報を取り出す。
静止画像を取り出すには
AVFoundation.PGのP11付近参照
再生の制御
AVPlayerを用いてAVAssetの再生を管理する。
AVAssetとAVPlayerはAVPlayerItemを媒介として関係する。
AVPlayerItemは再生の状態や設定等を入れこんだもの。
再生処理
再生の二つのタイプ
- ファイルベース
- ストリームベース(HTTPライブストリーム)
がある。
ファイルベースのAVAssetの再生
- トラックのロード:loadValuesAsynchronouslyForKeys:completionHandler:
- AVAssetからAVPlayerItemのインスタンス作成
- AVPlayerItemをAVPlayerにセット
- AVPlayerItemの状態が再生可能になるまで待機(キー値監視する)
ストリームベースの再生
- URLから直接AVPlayerItemを作成する:[AVPlayerItem playerItemWithURL:url];
- 後は同じ
再生開始
[player play];
速度変更や再生位置変更等をAVPlayerで設定できる。
余談
複数再生等はAVPlayeを継承したAVQueuePlayerでできる。
再生状態の監視
キー値監視すれば良い。
メディアキャプチャ