nenhuma saída do shell_exec ao executar o ffmpeg

0

Estou tentando executar o ffmpeg via shell_exec no windows. Minha função não está funcionando (não executa, não produz um arquivo e não produz resultados de shell_exec)

function convertFile($audio, $image)
{
    $output = str_replace(".mp3", ".mp4", $audio);
    $shellOutput = shell_exec("ffmpeg  -loop 1 -r 2 -i \"$image\" -i \"$audio\" -shortest -c:v libx264 -preset medium -tune stillimage -crf 28 -c:a copy $output");
    echo $shellOutput;

}

Desculpas se isso é algo óbvio. Obrigado por qualquer ajuda!

    
por maezr 24.10.2013 / 03:37

1 resposta

3

Certifique-se de que o usuário do servidor da Web possa ler e executar ffmpeg e que o binário esteja em PATH . Você pode solucionar isso especificando o caminho para ffmpeg diretamente, por exemplo, /usr/bin/ffmpeg .

Você também pode considerar adicionar 2>&1 ao seu comando para redirecionar stderr para stdout, já que o ffmpeg irá gerar mensagens de depuração via stderr, e você não os veria de outra forma. Ou desative a saída completamente. Veja aqui para mais: Usando o FFmpeg a partir de scripts PHP

    
por 24.10.2013 / 07:03

Tags