- 締切済み
ffmpegをphpから使おうとしていますが・・
ffmpegをphpから使いたいと思って サーバーにffmpegとffmpeg-phpをインストールしたのですが、 テストページで以下のようなエラーがでてしまいます。 Warning: dl() [function.dl]: Unable to load dynamic library '/usr/lib/php/modules/ffmpeg.so' - /usr/lib/php/modules/ffmpeg.so: undefined symbol: img_resample in /var/www/html/ffmpeg/test_ffmpeg.php on line 17 /usr/lib/php/modules/ffmpeg.soは有りました。 ffmpegコマンドも最初は動きませんでしたが、いろいろ無いと言われた*.soファイルへのシンボリックリンクを/usr/lib内に作ることで動くにようにはなりました。 他にphp.iniにextension=ffmpeg.soと入れてみたりいろいろいじっていましたがどうにも私の知識では解決できそうにありません。 何卒お知恵をお借りできたらと思い投稿させていただきました。 環境は、 fedora8 php5 ffmpegのインストールは http://codezine.jp/article/detail/2444?p=1 ffmpeg-phpのインストールは http://www.phppro.jp/phptips/archives/vol50/2 を参考にさせていただきました。 宜しくお願いしますm(_ _)m
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- usb_memory
- ベストアンサー率76% (23/30)
回答No.1
お礼
すいません補足に書かせて頂いた件は exec("ffmpeg ... を exec("/usr/local/bin/ffmpeg ... とすることで解決しました。 しかし本題は以前解決してませんが・・ ご報告までです。
補足
早速アドバイスいただきましてありがとうございます。 教えて頂いた内容を実行してみました結果、 何も出力されませんでした。 exec("ffmpeg -y -i /var/www/html/ffmpeg/test.avi -f image2 -ss 00:00:03 -vframes 1 /var/www/html/ffmpeg/test.jpg", $output, $result); の結果は、 $outputがarray empty $resultがint(127) でした。 これらが意味しているところは分かりませんでした。 exec("ffmpeg -y -i /var/www/html/ffmpeg/test.avi -f image2 -ss 00:00:03 -vframes 1 /var/www/html/ffmpeg/test.jpg > log.txt"); としてみましたら、空のlog.txtができていました。 コマンドライン上で ffmpeg -y -i /var/www/html/ffmpeg/test.avi -f image2 -ss 00:00:03 -vframes 1 /var/www/html/ffmpeg/test.jpg を直接実行したら、正常に処理され、jpgが出来ました。 そのときの実行結果は以下になります。 Fmpeg version SVN-r14967, Copyright (c) 2000-2008 Fabrice Bellard, et al. configuration: --enable-shared --enable-swscale --enable-gpl libavutil 49.10. 0 / 49.10. 0 libavcodec 51.69. 0 / 51.69. 0 libavformat 52.21. 0 / 52.21. 0 libavdevice 52. 1. 0 / 52. 1. 0 built on Aug 26 2008 02:23:37, gcc: 4.1.2 20070925 (Red Hat 4.1.2-33) [avi @ 0x82f81f0]sample size (16) != block align (4) Seems stream 0 codec frame rate differs from container frame rate: 29.97 (30000/1001) -> 29.97 (2997/100) Input #0, avi, from '/var/www/html/ffmpeg/test.avi': Duration: 00:00:03.00, start: 0.000000, bitrate: 29812 kb/s Stream #0.0: Video: dvvideo, yuv411p, 720x480, 29.97 tb(r) Stream #0.1: Audio: pcm_s16le, 32000 Hz, stereo, s16, 1024 kb/s Output #0, image2, to '/var/www/html/ffmpeg/test.jpg': Stream #0.0: Video: mjpeg, yuvj420p, 720x480, q=2-31, 200 kb/s, 29.97 tb(c) Stream mapping: Stream #0.0 -> #0.0 Press [q] to stop encoding frame= 1 fps= 0 q=4.1 Lsize= -0kB time=0.03 bitrate= -5.3kbits/s video:30kB audio:0kB global headers:0kB muxing overhead -100.071248 やはりPHPからの実行ができないようですが、どこを見ればいいでしょうか?大変お手数ですが、また何かヒントをいただけたら幸いです。 よろしくお願いします。