libavcodec をバックエンドとして使用してメディアを再生しようとしています。ffmpeg-2.0.1 をダウンロードし、./configure,make および make install を使用してインストールしました。アプリケーションを実行してオーディオ ファイルを再生しようとしているときに、最初のオーディオ ストリームのチェック中にセグメンテーション エラーが発生しました。
AVFormatContext* container = avformat_alloc_context();
if (avformat_open_input(&container, input_filename, NULL, NULL) < 0) {
die(“Could not open file”);
}
if (av_find_stream_info(container) < 0) {
die(“Could not find file info”);
}
av_dump_format(container, 0, input_filename, false);
int stream_id = -1;
int i;
for (i = 0; i < container->nb_streams; i++) {
if (container->streams[i]->codec->codec_type==AVMEDIA_TYPE_AUDIO) {
stream_id = i;
break;
}
}
if(container->streams[i]->codec->codec_type==AVMEDIA_TYPE_AUDIO) でセグメンテーション違反が発生する
どうすればこれを修正できますか? 私はubuntu 12.04で作業しています。