doutan1970 2014-10-11 06:41
浏览 257
已采纳

shell_exec返回null ffmpeg以生成视频缩略图

I'm using ffmpeg for getting thumbnail image from video. Its working fine. But the shell_exec function returns null.

My command is,

$return=shell_exec('C:\ffmpeg\bin\ffmpeg.exe -i D:\wamp\www\test\demo.mov -f image2 -vframes 1 D:\wamp\www\test\test.jpg');
var_dump($return);

Can I get the return value from this? Kindly help me :)

  • 写回答

1条回答 默认 最新

  • douxiong0668 2014-10-11 06:47
    关注

    From the PHP documentation:

    The output from the executed command or NULL if an error occurred or the command produces no output.

    Note: This function can return NULL both when an error occurs or the program produces no output. It is not possible to detect execution failures using this function. exec() should be used when access to the program exit code is required.

    So either your program is failing, or it is successful but there is no output. Use exec instead of shell_exec to help you differentiate between these two cases. exec returns an exit code - if it's 0, it means success, and non-zero means fail.

    exec('C:\ffmpeg\bin\ffmpeg.exe -i D:\wamp\www\test\demo.mov -f image2 -vframes 1 D:\wamp\www\test\test.jpg', $output, $exit_code);
    var_dump($output);
    var_dump($exit_code);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?