2013-02-21 2 views
-5

비디오 프레임에서 이미지를 저장하고 jpeg로 저장하려고합니다. 이 기능은 크기가 작은 비디오 파일에도 사용할 수 있지만 비디오가 10 분 이상이면 jpeg 이미지를 저장할 수 없습니다. 전이 전과 같이 오류가 발생합니다. 여기 FFMPEG 프레임을 가져 와서 이미지로 저장할 수 없습니다.

public function VideoToJpeg($localVideoPath, $localOutImgPath) 
{ 
    $Name = dirname(__FILE__) . "/ffmpeg"; 
    $Str = "$Name -i \"$localVideoPath\" -an -ss 00:00:03 -an -r 1 -vframes 1 -y \"$localOutImgPath\""; 

    exec($Str); 
} 

내가이 전혀 도움이 될 것입니다 경우

[NULL @ 0370e760] Unable to find a suitable output format for 'path' 
: Invalid argument 
+1

발생하는 오류는 무엇입니까? –

+6

'오류가 발생합니다 '? 그리고 그 오류는 ...? – LittleBobbyTables

+0

스크립트의 또 다른 부분은 mp4와 같은 flv 컨테이너에있는 모든 비디오를 인코딩하여 red5의 스트림 파일로 전송하는 것입니다.이 작업을 통해 이미지와 비디오가 제대로 재생되는지 확인할 수 있습니다. 비디오가 10 분 이상 경과하면 이미지가 변환되지 않고 스트림 디렉토리에서 비디오 스트림 아래에 flv.beforetrans가 생깁니다. – alex

답변

0

확실하지는 FFmpeg에서 가져온 오류입니다,하지만 난 문제로 고통 적이 있지만 (다음 PHP 패키지를 사용하여 성공을 거두었습니다 당신은) 언급 :

http://ffmpeg-php.sourceforge.net/

가 또 다른 대안은 PHP의 메모리 할당 설정을 변경할 수 있습니다 :

http://drupal.org/node/207036

당신은 아마 드루팔을 사용하지 않는하지만 해당 페이지의 제안의 대부분이 관련하고 (오히려 드루팔 이상) PHP 자체 처리합니다.

2

그것은 귀하의 질문에서 명확하지 않다 그러나 나는 오류가 명확하게 말한대로 $localOutImgPath$localVideoPath 매개 변수는 일부 잘못된 값을 전달 생각 :

[NULL @ 0370e760] Unable to find a suitable output format for 'path'

친절를 확인합니다.

더 많은 예제는 FFmpeg: The ultimate Video and Audio Manipulation ToolFFmpeg and x264 Encoding Guide을 참조하십시오.

관련 문제