ffmpeg output.mp4 com tamanho 0

1

Eu tenho um script de upload de vídeo em php em que execo o seguinte comando:

exec("/usr/bin/ffmpeg -i ".$folder."/".$filenameIn.".mp4 ".$folder."/".$filenameOut.".flv 2>&1", $output);

E o resultado flv está correto.

Mas quando executo o mesmo comando com saída mp4

exec("/usr/bin/ffmpeg -i ".$folder."/".$filenameIn.".mp4 ".$folder."/".$filenameOut.".mp4 2>&1", $output);

a saída tem 0 bytes.

Eu também tentei

exec("/usr/bin/ffmpeg -i ".$folder."/".$filenameIn.".mp4 -vcodec libx264 -crf 20 ".$folder."/".$filenameOut.".mp4");

mas o vídeo de saída ainda tem 0 bytes.

Eu não sei porque. Alguma ajuda?

EDITAR:

Se eu converter de mp4 para mkv, o mkv está bem. Se eu pegar esse mkv e reconverter para o mp4, o mp4 final será 0 bytes.

Por exemplo:

exec("/usr/bin/ffmpeg -i ".$folder."/".$filename." ".$folder."/".$filenameOut.".mkv 2>&1", $output);
exec("/usr/bin/ffmpeg -i ".$folder."/".$filenameOut.".mkv ".$folder."/".$filename.".mp4 2>&1", $output);

Neste caso, o primeiro mp4 tem 1210409 bytes, o mkv resultante tem 816018 bytes e o mp4 final tem 0 bytes. A mesma coisa com mp4 - > flv - > mp4.

    
por Quetool 26.11.2015 / 21:55

1 resposta

1

Quando você vir um problema com o software que tenta iniciar com o php, assuma o seu comando e inicie-o diretamente em um console / terminal e não se esqueça de substituir todas as variáveis pelas boas informações. Agora observe o que está acontecendo e se você não conseguir corrigir o erro, basta copiar o log e alguém pode ajudá-lo

Para ffmpeg , eu recomendo remover essa parte 2>&1", $output para ver o que está acontecendo no console

    
por 09.02.2016 / 16:33