1

基本上,我有一个非常具体的用例。我需要将 mp2 视频转换为 mp4。

输入视频:

Codec: MPEG-1/2 Video (mpgv)
Resolution: 720x576
Frame rate: 50
Decoded format: Planar 4:2:0 YUV

输入音频:

Codec: MPEG Audio layer 1/2/3 (mpga)
Channels: Stereo
Sample rate: 48000 Hz
Bitrate: 192 kb/s

我正在使用 Android,并且正在使用本教程(它使用 0.8,这就是我使用该版本的原因)为 Android 编译 FFmpeg。到目前为止,我已经成功创建了一个 .so 并且可以运行 ndk-build 来编译一个 .c jni 文件。

呼吁:

av_open_input_file(&gFormatCtx, gFileName, NULL, 0, NULL)

生成:

06-12 08:53:22.570: E/FFmpegTest(1219): Error open video file: -1094995529

我不明白这个错误,谷歌搜索没有任何帮助。有谁知道可能是什么原因造成的?

作为第二种选择,我开始研究 FFmpeg 中提供的示例。特别是decode_encoding.c。不幸的是,这个文件引用了一个“channel_layout.h”,它在编译后我的包含中不存在。(我注意到我正在查看现代 FFmpeg 示例。我打开了 0.8 版本的示例,它有所不同。我会先看看)

4

1 回答 1

3

我尝试了很多教程,但对我有用的是这个(而且更新很多),然后我使用 avformat_open_input 打开它:

http://bambuser.com/opensource

还请发布您如何创建 gFormatCtx 和 gFileName 值!

我遵循了本教程,即使它是旧版本,也很高兴学习:

http://dranger.com/ffmpeg

于 2013-06-12T12:22:10.473 回答