使用FFMPEG在Android上转码Mp4视频

时间:2012-05-14 15:55:30

标签: android ffmpeg

我已经从Bambuser project编译了FFMPEG二进制文件(参考question)并将二进制文件和.so文件推送到应用程序目录。

但是当我尝试使用输入文件运行FFMPEG时,它总是抱怨找不到文件。

1|root@android:/data/data/com.bambuser.broadcaster # ls                        
cache           libavcodec.so   libavfilter.so  libswscale.so
ffmpeg          libavcore.so    libavformat.so  tutorial.mp4
lib             libavdevice.so  libavutil.so
1|root@android:/data/data/com.bambuser.broadcaster # ./ffmpeg -i tutorial.mp4 out.mp4                                                              
FFmpeg version UNKNOWN, Copyright (c) 2000-2010 the FFmpeg developers
  built on May  8 2012 10:11:37 with gcc 4.4.3
  configuration: --target-os=linux --cross-prefix=arm-linux-androideabi- --arch=arm --sysroot=/home/tarandeep/tools/android-ndk/platforms/android-3/arch-arm --soname-prefix=/data/data/com.bambuser.broadcaster/lib/ --enable-shared --disable-symver --enable-small --optimization-flags=-O2 --disable-everything --enable-encoder=mpeg2video --enable-encoder=nellymoser --prefix=../build/ffmpeg/armeabi-v7a --extra-cflags='-march=armv7-a -mfloat-abi=softfp' --extra-ldflags=
  libavutil     50.34. 0 / 50.34. 0
  libavcore      0.16. 0 /  0.16. 0
  libavcodec    52.99. 1 / 52.99. 1
  libavformat   52.88. 0 / 52.88. 0
  libavdevice   52. 2. 2 / 52. 2. 2
  libavfilter    1.69. 0 /  1.69. 0
  libswscale     0.12. 0 /  0.12. 0
tutorial.mp4: No such file or directory

我尝试将文件放在/ sdcard和其他位置,我总是得到相同的输出

1 个答案:

答案 0 :(得分:3)

我下载了代码'Archive for client version 1.3.7 to 1.6.0。'。我发现在build.sh文件中有一行FLAGS="$FLAGS --disable-everything"禁用所有加载文件的协议(文件,http等)。注释此行或启用所需的协议可以让您正确加载文件。