iOS 5 で ffmpeg をいじっています。.mov ファイルを開くなど、簡単なことから始めました。
コードフラグメント:
AVFormatContext *pFormatCtx = NULL;
av_register_all();
NSString* fileName = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"mov"];
NSLog(@"File exists? %i", [[NSFileManager defaultManager] fileExistsAtPath:fileName]);
NSLog(@"FIle name: %@", fileName);
char errbuf[256];
int ret = avformat_open_input(&pFormatCtx, [fileName UTF8String], NULL, NULL);
if(ret != 0) {
av_strerror(ret,errbuf,sizeof(errbuf));
NSLog(@"Cannot open! %s", errbuf);
} else {
NSLog(@"Opened!");
}
test.mov はバンドルに存在し、avformat_open_input はそれを開こうとしていますが、avformat_open_input は常に返されます (エラー コードを文字列にデコードした場合):
Invalid data found when processing input.
(ファイルが見つからないときのエラーコードは別のテキストです、試してみました)。
おそらく ffmpg は .mov サポートでコンパイルされていないと思いますが、ムービー ファイルを開くことができません。./configure オプションを調べてみましたが、ヒントが見つかりませんでした。