Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

unable to find a suitable output format for 'ffmpeg'

I am using ffmpeg library for android.

I am passing one ffmpeg command for convert video format from .mp4 to .avi

ffmpeg -r 20 -i /storage/emulated/0/WisperMedia/WisperVideos/sample.mp4 -b:v 20M /storage/emulated/0/WisperMedia/WisperVideos/output.avi

But I am getting error like

    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
like image 731
KDeogharkar Avatar asked Sep 22 '15 13:09

KDeogharkar


People also ask

How do I specify output files in ffmpeg?

ffmpeg reads from an arbitrary number of input "files" (which can be regular files, pipes, network streams, grabbing devices, etc.), specified by the -i option, and writes to an arbitrary number of output "files", which are specified by a plain output url.

What is Ffmpeg video format?

ffmpeg is a command-line tool that converts audio or video formats. It can also capture and encode in real-time from various hardware and software sources such as a TV capture card. ffplay is a simple media player utilizing SDL and the FFmpeg libraries.


2 Answers

These kind of errors are usually caused by unintended leading or trailing arguments in the ffmpeg command. If you are using a third-party library that acts as a wrapper to ffmpeg you must check its documentation and output since it may automatically add arguments (like the path to the ffmpeg binary for example).

In this particular case ffmpeg is seen as an unknown output. Some incorrect commands that could raise this error include:

  • ffmpeg -i [input] -o [output] ffmpeg ...
  • ffmpeg ffmpeg ...
like image 131
aergistal Avatar answered Oct 04 '22 02:10

aergistal


Same error may suggest ffmpeg simply needs to be told what format to output with the -f flag, because it failed to deduce it from the output file extension.

ffmpeg -i audio.xxx -f flac audio.flac
like image 30
markling Avatar answered Oct 04 '22 03:10

markling