如何在NDK中加载视频文件(位于资源文件夹中)?

时间:2012-01-16 08:48:26

标签: android ffmpeg

我正在通过android ndk执行ffmpeg,我可以运行一个示例,这里[https://github.com/ccggaass/android-ffmpeg-sample]。

我想把视频放在android资源文件夹中,所以如何将这个文件传递给ffmpeg api:

av_open_input_file(& pFormatCtx, “file:/sdcard/vid.3gp” ,NULL,0,NULL);

有谁知道如何将文件传递给av lib?

3 个答案:

答案 0 :(得分:1)

使用此:

String path = "/sdcard/vid.3gp";
av_open_input_file(&pFormatCtx, "file:/sdcard/vid.3gp", NULL, 0, NULL); 

答案 1 :(得分:1)

确保在构建APK时不会压缩资源。 (所以我们可以访问它的文件描述符) 确保Ffmpeg是使用管道协议支持构建的。 从AAsset_manager中获取资产文件描述符。 像这样构建文件名......

char fn [32]; sprintf(fn,“pipe://%d”,your_assets_fd);

像这样打开它...... av_open_input_file(x,fn,...);

祝你好运。

P.S。不要硬编码/ sdcard / path。

答案 2 :(得分:-1)

也许这会起作用

file:///android_asset/vid.3gp