Question

heres the command:

ffmpeg -i videos/test.mp4 -c:v libvpx -level 216 -profile 0 -qmax 42 -qmin 10 -c:a libvorbis -f webm out.webm

i keep getting this error:

Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

here is the full response

# ffmpeg -i videos/test.mp4 -c:v libvpx -level 216 -profile 0 -qmax 42 -qmin 10 -c:a 

libvorbis -f webm out.webm
ffmpeg version N-49225-g7e059c9 Copyright (c) 2000-2013 the FFmpeg developers
  built on Jan 24 2013 05:14:06 with gcc 4.1.2 (GCC) 20080704 (Red Hat 4.1.2-54)
  configuration: --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvpx --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-gpl --enable-postproc --enable-nonfree
  libavutil      52. 15.101 / 52. 15.101
  libavcodec     54. 90.100 / 54. 90.100
  libavformat    54. 61.104 / 54. 61.104
  libavdevice    54.  3.102 / 54.  3.102
  libavfilter     3. 33.100 /  3. 33.100
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'videos/test.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 1
    compatible_brands: mp42avc1
    creation_time   : 2010-08-12 15:42:21
  Duration: 00:00:34.20, start: 0.000000, bitrate: 358 kb/s
    Stream #0:0(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 100 kb/s
    Metadata:
      creation_time   : 2010-08-12 15:42:21
      handler_name    : Apple Sound Media Handler
    Stream #0:1(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 640x320, 251 kb/s, 29.97 fps, 29.97 tbr, 2997 tbn, 5994 tbc
    Metadata:
      creation_time   : 2010-08-12 15:42:21
      handler_name    : Apple Video Media Handler
Please use -profile:a or -profile:v, -profile is ambiguous
File 'out.webm' already exists. Overwrite ? [y/N] y
v0.9.6
[libvpx @ 0x7e38d20] Failed to initialize encoder: ABI version mismatch
Output #0, webm, to 'out.webm':
  Metadata:
    major_brand     : mp42
    minor_version   : 1
    compatible_brands: mp42avc1
    Stream #0:0(eng): Video: vp8, yuv420p, 640x320, q=10-42, 200 kb/s, 90k tbn, 29.97 tbc
    Metadata:
      creation_time   : 2010-08-12 15:42:21
      handler_name    : Apple Video Media Handler
    Stream #0:1(eng): Audio: none, 44100 Hz, stereo, fltp
    Metadata:
      creation_time   : 2010-08-12 15:42:21
      handler_name    : Apple Sound Media Handler
Stream mapping:
  Stream #0:1 -> #0:0 (h264 -> libvpx)
  Stream #0:0 -> #0:1 (aac -> libvorbis)
Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

does anybody have any idea whats going on? I am completely lost. I have tried so many different commands. converting from mp4 to ogg works fine, and i have had mp4 to webm working before, but i reinstalled ffmpeg to get the mp4 to ogg working and now ive lost my mp4 to webm conversions. >.< this whole installation process is such a damn nightmare. does anyone havea good tutorial for centos installation of ffmpeg that will work for mp4 ogg and webm? I have used the centos tut that came off of the ffmpeg site, but it failed me. If anyone has any ideas that could point me in the right direction i would much appreciate it!

Was it helpful?

Solution

The real problem isn't the settings you're using. It's your FFmpeg configuration:

[libvpx @ 0x7e38d20] Failed to initialize encoder: ABI version mismatch

This is the Application Binary Interface. The source you built against is obviously different from the actual library being used while encoding.

It seems you have multiple versions of libvpx installed. Remove all of them but the latest, and try recompiling FFmpeg. Or download a static build from the download page, which include libvpx for you already.

OTHER TIPS

From the version output, you are using a FFmpeg compiled from official source tree.

v0.9.6 [libvpx @ 0x7e38d20] Failed to initialize encoder: ABI version mismatch

From your output log, it seems FFmpeg request libvpx version 0.9.6, the libvpx you currently integrated isn't 0.9.6, so FFmpeg complained error.

You can find the version matched libvpx from here, download and recompile it.

Your input file has the audio and video streams backwards. You will have to remap them for this conversion.

add

-map 0:1 -map 0:0

in that order to tell ffmpeg that the input is A,V when it defaults output to V,A

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top