我正在使用ffmpeg库来安装android。
我正在传递一个ffmpeg
命令,用于将视频格式从.mp4
转换为.avi
ffmpeg -r 20 -i /storage/emulated/0/WisperMedia/WisperVideos/sample.mp4 -b:v 20M /storage/emulated/0/WisperMedia/WisperVideos/output.avi
但是我收到了像
这样的错误 09-23 09:29:41.525: E/Home(31343): FAILED with output : ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
09-23 09:29:41.525: E/Home(31343): built on Oct 7 2014 15:08:46 with gcc 4.8 (GCC)
09-23 09:29:41.525: E/Home(31343): configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
09-23 09:29:41.525: E/Home(31343): libavutil 54. 7.100 / 54. 7.100
09-23 09:29:41.525: E/Home(31343): libavcodec 56. 1.100 / 56. 1.100
09-23 09:29:41.525: E/Home(31343): libavformat 56. 4.101 / 56. 4.101
09-23 09:29:41.525: E/Home(31343): libavdevice 56. 0.100 / 56. 0.100
09-23 09:29:41.525: E/Home(31343): libavfilter 5. 1.100 / 5. 1.100
09-23 09:29:41.525: E/Home(31343): libswscale 3. 0.100 / 3. 0.100
09-23 09:29:41.525: E/Home(31343): libswresample 1. 1.100 / 1. 1.100
09-23 09:29:41.525: E/Home(31343): libpostproc 53. 0.100 / 53. 0.100
09-23 09:29:41.525: E/Home(31343): Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/WisperMedia/WisperVideos/sample.mp4':
09-23 09:29:41.525: E/Home(31343): Metadata:
09-23 09:29:41.525: E/Home(31343): major_brand : isom
09-23 09:29:41.525: E/Home(31343): minor_version : 0
09-23 09:29:41.525: E/Home(31343): compatible_brands: isom3gp4
09-23 09:29:41.525: E/Home(31343): creation_time : 2015-09-23 03:50:16
09-23 09:29:41.525: E/Home(31343): Duration: 00:00:01.56, start: 0.000000, bitrate: 14737 kb/s
09-23 09:29:41.525: E/Home(31343): Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 1280x720, 11819 kb/s, SAR 65536:65536 DAR 16:9, 29.79 fps, 29.92 tbr, 90k tbn, 180k tbc (default)
09-23 09:29:41.525: E/Home(31343): Metadata:
09-23 09:29:41.525: E/Home(31343): rotate : 90
09-23 09:29:41.525: E/Home(31343): creation_time : 2015-09-23 03:50:16
09-23 09:29:41.525: E/Home(31343): handler_name : VideoHandle
09-23 09:29:41.525: E/Home(31343): Side data:
09-23 09:29:41.525: E/Home(31343): displaymatrix: rotation of -90.00 degrees
09-23 09:29:41.525: E/Home(31343): Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 128 kb/s (default)
09-23 09:29:41.525: E/Home(31343): Metadata:
09-23 09:29:41.525: E/Home(31343): creation_time : 2015-09-23 03:50:16
09-23 09:29:41.525: E/Home(31343): handler_name : SoundHandle
09-23 09:29:41.525: E/Home(31343): [NULL @ 0x41f7f420] Unable to find a suitable output format for 'ffmpeg'
09-23 09:29:41.525: E/Home(31343): ffmpeg: Invalid argument
答案 0 :(得分:2)
这类错误通常是由ffmpeg
命令中意外的前导或尾随参数引起的。如果您使用的第三方库充当ffmpeg
的包装器,则必须检查其文档和输出,因为它可能会自动添加参数(例如,ffmpeg
二进制文件的路径)。 / p>
在这种特殊情况下,ffmpeg
被视为未知输出。可能引起此错误的一些错误命令包括:
ffmpeg -i [input] -o [output] ffmpeg ...
ffmpeg ffmpeg ...
答案 1 :(得分:1)
相同的错误可能表明ffmpeg只需使用-f标志来告知要输出哪种格式,因为它无法从输出文件扩展名中推导出来。
ffmpeg -i audio.xxx -f flac audio.flac
答案 2 :(得分:0)
对于我来说,命令是通过电子邮件发送给我的。
在以下参数“ -c:a”中,没有破折号,而是Windows字符!