web-dev-qa-db-ja.com

AVFoundation(AVPlayer)がサポートするフォーマット? .vobまたは.mpgコンテナはありませんか?

ここでMacアプリのAVPlayerを使用して、フォルダーからフルスクリーンでランダムなビデオを再生しますが、.vobファイルまたは.mpgファイルを再生しようとすると、ビデオが続く限り黒い画面が表示されます。

AVFoundationはこれらのコンテナーからの再生をサポートしていませんか?在庫のあるQuickTime Playerでプレイできるので、AVPlayerでも使用できると思いました。

AVURLAssetクラス には、サポートされているビデオUTIを照会できる静的メソッドがあります。

+ (NSArray *)audiovisualTypes

10.9.1では、これらのシステム定義のUTIを返します。

  • public.mpeg
  • public.mpeg-2-video
  • public.avi
  • public.aifc-audio
  • public.aac-audio
  • public.mpeg-4
  • public.au-audio
  • public.aiff-audio
  • public.mp2
  • public.3gpp2
  • public.ac3-audio
  • public.mp3
  • public.mpeg-2-transport-stream
  • public.3gpp
  • public.mpeg-4-audio

これが システムUTIの説明 です。したがって、少なくとも.mpgコンテナをサポートする必要があるようです。

wikiによると 、. mpgファイルにはMPEG-1またはMPEG-2ビデオを含めることができますが、サポートされるのはMPEG-2ビデオのみです。そのため、ファイルがロードされても何も表示されないのは、おそらくそのためです。

QuickTimeは内部的に QTMovieModernizer を使用してレガシー形式でビデオを再生します( このWWDCセッション で説明したように)ので、おそらくそれを調べることができます。ファイルを最新化する必要があるかどうかを判断する方法もあります。

+ requiresModernization:error:
20
Janis Kirsteins