we are trying to install ffmpeg on our RH linux servers.
Trouble is that it works on one not on the other and we have no idea why. The working and the non working server have the same config information:
ffmpeg version 0.10.2 Copyright (c) 2000-2012 the FFmpeg developers built on Apr 19 2012 14:00:25 with gcc 4.1.2 20080704 (Red Hat 4.1.2-51) configuration: --enable-gpl --enable-version3 --enable-shared --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib libavutil 51. 35.100 / 51. 35.100 libavcodec 53. 61.100 / 53. 61.100 libavformat 53. 32.100 / 53. 32.100 libavdevice 53. 4.100 / 53. 4.100 libavfilter 2. 61.100 / 2. 61.100 libswscale 2. 1.100 / 2. 1.100 libswresample 0. 6.100 / 0. 6.100 libpostproc 52. 0.100 / 52. 0.100 Hyper fast Audio and Video encoder
The error we are getting is:
ffmpeg version 0.10.2 Copyright (c) 2000-2012 the FFmpeg developers built on Apr 19 2012 14:00:25 with gcc 4.1.2 20080704 (Red Hat 4.1.2-51) configuration: --enable-gpl --enable-version3 --enable-shared --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib libavutil 51. 35.100 / 51. 35.100 libavcodec 53. 61.100 / 53. 61.100 libavformat 53. 32.100 / 53. 32.100 libavdevice 53. 4.100 / 53. 4.100 libavfilter 2. 61.100 / 2. 61.100 libswscale 2. 1.100 / 2. 1.100 libswresample 0. 6.100 / 0. 6.100 libpostproc 52. 0.100 / 52. 0.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '4598_Testvideo_MP4-H264-6MBit_AAC-44KHz-192KBit_720p.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp42mp41 creation_time : 2012-01-25 10:58:21 Duration: 00:02:13.56, start: 0.000000, bitrate: 5472 kb/s Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 5280 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc Metadata: creation_time : 2012-01-25 10:58:21 handler_name : Mainconcept MP4 Video Media Handler Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, s16, 189 kb/s Metadata: creation_time : 2012-01-25 10:58:21 handler_name : Mainconcept MP4 Sound Media Handler [buffer @ 0x3160ea0] w:1280 h:720 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param: [scale @ 0x31629a0] w:1280 h:720 fmt:yuv420p -> w:480 h:270 fmt:yuv420p flags:0x4 [libvpx @ 0x314ab40] v0.9.6 [libvpx @ 0x314ab40] Failed to initialize encoder: ABI version mismatch Output #0, webm, to 'outputvideo.webm': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp42mp41 creation_time : 2012-01-25 10:58:21 Stream #0:0(eng): Video: vp8, yuv420p, 480x270 [SAR 1:1 DAR 16:9], q=-1--1, 2500 kb/s, 90k tbn, 25 tbc Metadata: creation_time : 2012-01-25 10:58:21 handler_name : Mainconcept MP4 Video Media Handler Stream #0:1(eng): Audio: none, 44100 Hz, stereo, s16, 128 kb/s Metadata: creation_time : 2012-01-25 10:58:21 handler_name : Mainconcept MP4 Sound Media Handler Stream mapping: Stream #0:0 -> #0:0 (h264 -> libvpx) Stream #0:1 -> #0:1 (aac -> libvorbis) Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
I've looked at the dependent libraries using ldd and did find one differenct. the library libz.so was not listet in the system that doesn't work. ie
/lib64/ld-linux-x86-64.so.2 (0x00000035a9000000) libavcodec.so.53 => /usr/local/lib/libavcodec.so.53 (0x00002ae5189a8000) libavdevice.so.53 => /usr/local/lib/libavdevice.so.53 (0x00002ae518204000) libavfilter.so.2 => /usr/local/lib/libavfilter.so.2 (0x00002ae51840e000) libavformat.so.53 => /usr/local/lib/libavformat.so.53 (0x00002ae51869c000) libavutil.so.51 => /usr/local/lib/libavutil.so.51 (0x00002ae519e17000) libc.so.6 => /lib64/libc.so.6 (0x00000035a9400000) libfaac.so.0 => /usr/lib64/libfaac.so.0 (0x0000003407800000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000035ac000000) libmp3lame.so.0 => /usr/lib64/libmp3lame.so.0 (0x0000003407000000) libm.so.6 => /lib64/libm.so.6 (0x00000035aa000000) libogg.so.0 => /usr/local/lib/libogg.so.0 (0x00002ae51b35b000) libopencore-amrnb.so.0 => /usr/lib64/libopencore-amrnb.so.0 (0x0000003409800000) libopencore-amrwb.so.0 => /usr/lib64/libopencore-amrwb.so.0 (0x0000003407c00000) libpostproc.so.52 => /usr/local/lib/libpostproc.so.52 (0x00002ae5197ba000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00000035a9c00000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00000035aa400000) libswresample.so.0 => /usr/local/lib/libswresample.so.0 (0x00002ae5199c6000) libswscale.so.2 => /usr/local/lib/libswscale.so.2 (0x00002ae519bce000) libtheoradec.so.1 => /usr/local/lib/libtheoradec.so.1 (0x00002ae51b141000) libtheoraenc.so.1 => /usr/local/lib/libtheoraenc.so.1 (0x00002ae51af05000) libvorbisenc.so.2 => /usr/lib64/libvorbisenc.so.2 (0x00002ae51a8fe000) libvorbis.so.0 => /usr/lib64/libvorbis.so.0 (0x00002ae51acd9000) libvpx.so.0 => /usr/lib64/libvpx.so.0 (0x00002ae51a687000) libx264.so.120 => /usr/local/lib/libx264.so.120 (0x00002ae51a320000) libxvidcore.so.4 => /usr/lib64/libxvidcore.so.4 (0x00002ae51a03a000) linux-vdso.so.1 => (0x00007ffff63f6000)
as opposed to
/lib64/ld-linux-x86-64.so.2 (0x0000003074c00000) libavcodec.so.53 => /usr/local/lib/libavcodec.so.53 (0x00002b2038eeb000) libavdevice.so.53 => /usr/local/lib/libavdevice.so.53 (0x00002b2038746000) libavfilter.so.2 => /usr/local/lib/libavfilter.so.2 (0x00002b2038950000) libavformat.so.53 => /usr/local/lib/libavformat.so.53 (0x00002b2038bdf000) libavutil.so.51 => /usr/local/lib/libavutil.so.51 (0x00002b203a368000) libc.so.6 => /lib64/libc.so.6 (0x0000003075000000) libfaac.so.0 => /usr/lib64/libfaac.so.0 (0x00002b203bcef000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000003003400000) libmp3lame.so.0 => /usr/lib64/libmp3lame.so.0 (0x000000310ae00000) libm.so.6 => /lib64/libm.so.6 (0x0000003075c00000) libogg.so.0 => /usr/lib64/libogg.so.0 (0x00002b203bf01000) libopencore-amrnb.so.0 => /usr/lib64/libopencore-amrnb.so.0 (0x00002b203bac1000) libopencore-amrwb.so.0 => /usr/lib64/libopencore-amrwb.so.0 (0x00002b203b8ab000) libpostproc.so.52 => /usr/local/lib/libpostproc.so.52 (0x00002b2039d0b000) libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003075800000) libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000360ea00000) libswresample.so.0 => /usr/local/lib/libswresample.so.0 (0x00002b2039f18000) libswscale.so.2 => /usr/local/lib/libswscale.so.2 (0x00002b203a11f000) libtheoradec.so.1 => /usr/local/lib/libtheoradec.so.1 (0x00002b203b693000) libtheoraenc.so.1 => /usr/local/lib/libtheoraenc.so.1 (0x00002b203b457000) libvorbisenc.so.2 => /usr/lib64/libvorbisenc.so.2 (0x00002b203ae50000) libvorbis.so.0 => /usr/lib64/libvorbis.so.0 (0x00002b203b22a000) libvpx.so.0 => /usr/lib64/libvpx.so.0 (0x00002b203abd9000) libx264.so.120 => /usr/local/lib/libx264.so.120 (0x00002b203a871000)`enter code here` libxvidcore.so.4 => /usr/lib64/libxvidcore.so.4 (0x00002b203a58c000) libz.so.1 => /lib64/libz.so.1 (0x0000003076000000) linux-vdso.so.1 => (0x00007fff6adfd000)
I wanted to ask whether this has something to do with the problem. before i try to figure out how come the libz.so appears i nthe one list and not the other.
btw the ld.so.conf files are identical.
It is a bit unusual that one version is not referencing zlib while the other is not. However, this should not cause a problem unless you are using a format that relies on zlib (several containers and codecs do). Not in this case.
The specific problem is spelled out in the error text:
FFmpeg and libvpx aren't getting along.
It looks like you compiled FFmpeg yourself from the latest source. Where did libvpx come from? Installed from a Red Hat RPM? Or compiled yourself? Did you compile on one of these RH boxes and then move the binary to the other one?