Android上的代码转换MP4视频与FFMPEG代码、视频、Android、FFMPEG

2023-09-07 10:47:52 作者:只愿,安好如初

我已经编译的二进制FFMPEG href=\"http://stackoverflow.com/questions/2645041/ffmpeg-for-a-android-using-tutorial-ffmpeg-and-android-mk\">question)并推二进制文件和.so文件到应用程序目录。

I've compiled FFMPEG binary from Bambuser project (refer question) and have pushed binary and .so files to application directory.

但是当我尝试运行带有输入文件FFmpeg中,它总是抱怨找不到文件。

But when I try running FFMPEG with input file, it always complains file not found.

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

我试着将文件/ SD卡和其他地方,我总是得到相同的输出

I've tried placing file in /sdcard and other locations, I always get same output

推荐答案

我下载了code'存档客户端版本1.3.7到1.6.0。。我发现,在build.sh文件有行 FLAGS =$ FLAGS --disable-一切是禁用加载文件中的所有协议(文件,HTTP,等等。)。评论此行或启用,你需要让你正确地加载文件的协议。

i downloaded the code 'Archive for client versions 1.3.7 to 1.6.0.'. I found that in the build.sh file there's the line FLAGS="$FLAGS --disable-everything" that disable all the protocols for loading a file (file, http, etc.). commenting this line or enable the protocols that you need allow you to load correctly the file.