here is the following environment:
- 1and1 shared hosting (they do not have ffmpeg installed, all good)
- i built a static ffmpeg binary that does not require dynamic loading of shared libaries (i built this on an Ubuntu system)
- ffmpeg binary is fully accessible and is able to get access
- executing the same command terminal or executing a php/perl script via terminal works fine…however, both scripts through a browser/web request fails with the following:
Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height array 0 => string 'ffmpeg version git-2012-07-06-6936111 Copyright (c) 2000-2012 the FFmpeg developers' (length=83) 1 => string ' built on Jul 5 2012 23:04:34 with gcc 4.4.3' (length=46) 2 => string ' configuration: --prefix='~/ffmpeg' --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-version3 --enable-static --disable-shared --extra-libs=-static --extra-cflags=-static' (length=323) 3 => string ' libavutil 51. 64.100 / 51. 64.100' (length=40) 4 => string ' libavcodec 54. 33.100 / 54. 33.100' (length=40) 5 => string ' libavformat 54. 15.100 / 54. 15.100' (length=40) 6 => string ' libavdevice 54. 1.100 / 54. 1.100' (length=40) 7 => string ' libavfilter 3. 0.101 / 3. 0.101' (length=40) 8 => string ' libswscale 2. 1.100 / 2. 1.100' (length=40) 9 => string ' libswresample 0. 15.100 / 0. 15.100' (length=40) 10 => string ' libpostproc 52. 0.100 / 52. 0.100' (length=40) 11 => string 'Input #0, image2, from 'http://axiomchurch.co/main/wp-content/plugins/video-embed-thumbnail-generator/flash/skin/images/PlayNormal.png':' (length=136) 12 => string ' Duration: 00:00:00.04, start: 0.000000, bitrate: N/A' (length=54) 13 => string ' Stream #0:0: Video: png, rgba, 100x100, 25 tbr, 25 tbn, 25 tbc' (length=66) 14 => string '[graph 0 input from stream 0:0 @ 0x9482000] w:100 h:100 pixfmt:rgba tb:1/25 fr:25/1 sar:0/1 sws_param:flags=2' (length=109) 15 => string '[output stream 0:0 @ 0x948ccc0] No opaque field provided' (length=56) 16 => string '[auto-inserted scaler 0 @ 0x948d160] w:100 h:100 fmt:rgba sar:0/1 -> w:100 h:100 fmt:yuvj420p sar:0/1 flags:0x4' (length=111) 17 => string '[mjpeg @ 0x948c760] ff_frame_thread_encoder_init failed' (length=55) 18 => string 'Output #0, image2, to '/homepages/17/d411786663/htdocs/main/wp-content/uploads/2012/07/ffmpeg_exists_test%d.jpg':' (length=113) 19 => string ' Stream #0:0: Video: mjpeg, yuvj420p, 100x100, q=2-31, 200 kb/s, 90k tbn, 25 tbc' (length=83) 20 => string 'Stream mapping:' (length=15) 21 => string ' Stream #0:0 -> #0:0 (png -> mjpeg)' (length=36) 22 => string 'Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height' (length=119)
The command being executed:
/kunden/homepages/17/.../htdocs/bin/ffmpeg -i http://....co/main/wp-content/plugins/video-embed-thumbnail-generator/flash/skin/images/PlayNormal.png -ac 2 /homepages/17/.../htdocs/main/wp-content/uploads/2012/07/ffmpeg_exists_test.jpg
You can see i have the full path of my ffmpeg binary and that it is executing. Here is what it looks like successfully via terminal:
ffmpeg version git-2012-07-06-6936111 Copyright (c) 2000-2012 the FFmpeg developers built on Jul 5 2012 23:04:34 with gcc 4.4.3 configuration: --prefix='~/ffmpeg' --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-version3 --enable-static --disable-shared --extra-libs=-static --extra-cflags=-static libavutil 51. 64.100 / 51. 64.100 libavcodec 54. 33.100 / 54. 33.100 libavformat 54. 15.100 / 54. 15.100 libavdevice 54. 1.100 / 54. 1.100 libavfilter 3. 0.101 / 3. 0.101 libswscale 2. 1.100 / 2. 1.100 libswresample 0. 15.100 / 0. 15.100 libpostproc 52. 0.100 / 52. 0.100 Input #0, image2, from 'http://axiomchurch.co/main/wp-content/plugins/video-embed-thumbnail-generator/flash/skin/images/PlayNormal.png': Duration: 00:00:00.04, start: 0.000000, bitrate: N/A Stream #0:0: Video: png, rgba, 100x100, 25 tbr, 25 tbn, 25 tbc [graph 0 input from stream 0:0 @ 0x9482000] w:100 h:100 pixfmt:rgba tb:1/25 fr:25/1 sar:0/1 sws_param:flags=2 [output stream 0:0 @ 0x948ccc0] No opaque field provided [auto-inserted scaler 0 @ 0x948d160] w:100 h:100 fmt:rgba sar:0/1 -> w:100 h:100 fmt:yuvj420p sar:0/1 flags:0x4 Output #0, image2, to '/homepages/17/d411786663/htdocs/main/wp-content/uploads/2012/07/ffmpeg_exists_test.jpg': Metadata: encoder : Lavf54.15.100 Stream #0:0: Video: mjpeg, yuvj420p, 100x100, q=2-31, 200 kb/s, 90k tbn, 25 tbc Stream mapping: Stream #0:0 -> #0:0 (png -> mjpeg) Press [q] to stop, [?] for help frame= 1 fps=0.0 q=0.0 Lsize= 0kB time=00:00:00.04 bitrate= 0.0kbits/s video:2kB audio:0kB subtitle:0 global headers:0kB muxing overhead -100.000000%
The user running the script at terminal AND the apache user are the same user…i have verified this.
Something about the environment apache is running through is killing me…i dont have access to apache error logs unfortunately.
As a side note…i am trying to utilize the Video Embed & Thumbnail Generator for wordpress.
Any help appreciated, thanks!