FFMpeg错误av_interleaved_write_frame():

时间:2010-05-07 09:36:12

标签: php ffmpeg

这是我的代码。运行php代码后

FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --mandir=/usr/share/man --incdir=/usr/include --enable-libamr-nb --enable-libamr-wb --enable-libdirac --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-x11grab
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 0 / 52.20. 0
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Nov  6 2009 19:05:03, gcc: 4.1.2 20080704 (Red Hat 4.1.2-46)

Seems stream 0 codec frame rate differs from container frame rate: 50.00 (50/1) -> 25.00 (25/1)
Input #0, flv, from 'demo.flv':
  Duration: 00:00:30.83, start: 0.000000, bitrate: 546 kb/s
    Stream #0.0: Video: h264, yuv420p, 640x360 [PAR 1:1 DAR 16:9], 546 kb/s, 25 tbr, 1k tbn, 50 tbc
    Stream #0.1: Audio: aac, 44100 Hz, stereo, s16
Output #0, image2, to 'demo.jpg':
    Stream #0.0: Video: mjpeg, yuvj420p, 640x360 [PAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 90k tbn, 1 tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press [q] to stop encoding
av_interleaved_write_frame(): I/O error occurred
Usually that means that input file is truncated and/or corrupted.

3 个答案:

答案 0 :(得分:5)

我遇到了同样的错误信息,发现了我的(愚蠢)错误。

我正在尝试使用FFMPEG来创建一个新目录。收到错误消息。在这里阅读自己创建了文件夹。重新运行命令提示符,然后再发送错误消息。

地球上最愚蠢的错误。 以防有人得到同样的错误。

答案 1 :(得分:1)

av_interleaved_write_frame(): I/O error occurred
Usually that means that input file is truncated and/or corrupted.

这不是一个足够明确的错误消息吗?您是否尝试过使用其他输入文件?

更新:可能是您的PHP脚本没有读取文件的必要权限。尝试将文件的权限设置为777,看看是否是原因。

答案 2 :(得分:0)

你必须先创建一个目录来存放ffpmeg提取的文件,因为ffmpeg没有创建目录的权限。