在windows上安装php ffmpeg

标签 php video ffmpeg

我下载了ffmpeg并安装它 Composer 。当我尝试使用基本使用代码时,我收到了这个错误。在 bin 文件夹中,我有 ffmpeg , ffplayffprobe exe文件。我还为 c:ffmpeg\bin 设置了环境变量.

Fatal error: Uncaught exception
'Alchemy\BinaryDriver\Exception\ExecutableNotFoundException' with message 'Executable not found, proposed : c:\ffmpeg\bin\binffprobe.exe' in C:\xampp\htdocs\core\vendor\alchemy\binary-driver\src\Alchemy\BinaryDriver\AbstractBinary.php:160 Stack trace: #0
C:\xampp\htdocs\core\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\Driver\FFProbeDriver.php(48): Alchemy\BinaryDriver\AbstractBinary::load('c:\ffmpeg\bin\b...', NULL, Object(Alchemy\BinaryDriver\Configuration)) #1 C:\xampp\htdocs\core\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\FFProbe.php(207): FFMpeg\Driver\FFProbeDriver::create(Array, NULL) #2 C:\xampp\htdocs\core\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\FFMpeg.php(117): FFMpeg\FFProbe::create(Array, NULL, NULL) #3 C:\xampp\htdocs\core\demo2.php(9): FFMpeg\FFMpeg::create(Array) #4 {main} Next exception 'FFMpeg\Exception\ExecutableNotFoundException' with message 'Unable to load FFProbe' in C:\xampp\htdocs\core\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\Driver\FFProbeDriver.php:50 Stack trace: #0 C: in C:\xampp\htdocs\core\vendor\php-ffmpeg\php-ffmpeg\src\FFMpeg\Driver\FFProbeDriver.php on line 50



这是我的 php 代码;
  require_once 'vendor/autoload.php';
  $ffmpeg = \FFMpeg\FFMpeg::create([
'ffmpeg.binaries'  => 'c:\ffmpeg\bin\binffmpeg.exe',
'ffprobe.binaries' => 'c:\ffmpeg\bin\binffprobe.exe' 
  ]);

  $video = $ffmpeg->open('video.mpg');
 $video
->filters()
->resize(new FFMpeg\Coordinate\Dimension(320, 240))
->synchronize();
 $video
->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(10))
->save('frame.jpg');
$video
->save(new FFMpeg\Format\Video\X264(), 'export-x264.mp4')
->save(new FFMpeg\Format\Video\WMV(), 'export-wmv.wmv')
->save(new FFMpeg\Format\Video\WebM(), 'export-webm.webm');`

最佳答案

确保您提供正确的二进制文件路径,此错误只是因为脚本无法找到二进制文件,

所以也许如果我没有错,你给出了错误的 exe 文件名

改变这个

$ffmpeg = \FFMpeg\FFMpeg::create([
    'ffmpeg.binaries'  => 'c:\ffmpeg\bin\binffmpeg.exe',
    'ffprobe.binaries' => 'c:\ffmpeg\bin\binffprobe.exe' 
]);

进入这个
$ffmpeg = \FFMpeg\FFMpeg::create([
    'ffmpeg.binaries'  => 'c:\ffmpeg\bin\ffmpeg.exe',
    'ffprobe.binaries' => 'c:\ffmpeg\bin\ffprobe.exe' 
]);

你重复 bin\bin 两次,

c:\ffmpeg\bin\binffprobe.exe



祝你好运,

这里只是将视频转换为 mp3 的示例代码
require_once 'vendor/autoload.php';
$ffmpeg = \FFMpeg\FFMpeg::create([
     'ffmpeg.binaries'  => 'ffmpeg\bin\ffmpeg.exe',
     'ffprobe.binaries' => 'ffmpeg\bin\ffprobe.exe' 
]);

$video = $ffmpeg->open('video.mp4');
//just in case you want to save thumbnail from video
$video
   ->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(300))
   ->save('frame.jpg');
//extract audio
$video->save(new FFMpeg\Format\Audio\Mp3, 'audio.mp3');

关于在windows上安装php ffmpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44668321/

相关文章:

php - 上传并保存图片路径到mysql

javascript - popcorn.js 可以检测切换视频并继续而不重新启动吗?

android - java.lang.RuntimeException : start failed(Front camera recording)

python - 在android上嵌入纯python(Cpython)

php - 为什么我不能在 foreach 循环中将元素插入子数组?

php - Css 不使用 get_template_directory_uri() 排队

android - 寻求mp4的Exoplayer删除缓冲区

image - 提取视频的所有帧而不进行任何色度二次采样

ffmpeg - 将麦克风从客户端浏览器流式传输到远程服务器,并将音频实时传递到 ffmpeg 以与第二个视频源结合

php - 我在哪里可以找到 SugarCRM 中默认关系的名称?