azraelir / ffmpeg-bundle
一个提供PHP-FFmpeg作为Symfony服务的Symfony包(https://github.com/alchemy-fr/PHP-FFmpeg)
0.7.2
2018-12-16 11:52 UTC
Requires
- php: ^7.0
- php-ffmpeg/php-ffmpeg: ^0.13
- symfony/dependency-injection: ^3.0 || ^4.0
- symfony/framework-bundle: ^3.0 || ^4.0
Requires (Dev)
- matthiasnoback/symfony-dependency-injection-test: ^2.3
- phpunit/phpunit: ^4.8 | ^6.5
This package is auto-updated.
Last update: 2024-09-29 05:21:28 UTC
README
此包提供了一个简单的PHP_FFmpeg库包装器,将库作为Symfony服务公开。
此分支添加了对Symfony4的支持,并放弃了遗留的Symfony2和PHP5支持
使用composer下载FFmpegBundle
使用composer要求包
$ composer require fmonts/ffmpeg-bundle "^0.7"
Composer会将包安装到您的项目的vendor/fmonts/ffmpeg-bundle
目录。
启用包
在kernel中启用包
注意:在默认使用Symfony Flex的Symfony应用程序中,安装/删除包时,包会自动启用/禁用,因此您无需查看或编辑此bundles.php文件。
<?php // config/bundles.php return [ // ... Dubture\FFmpegBundle\DubtureFFmpegBundle::class => ['all' => true], ];
配置
在packages/dubture_f_fmpeg.yaml
或您的parameters.yaml
文件中配置要使用的ffmpeg二进制文件
dubture_f_fmpeg: ffmpeg_binary: /usr/bin/ffmpeg ffprobe_binary: /usr/bin/ffprobe binary_timeout: 300 # Use 0 for infinite threads_count: 4
用法
$ffmpeg = $this->get('dubture_ffmpeg.ffmpeg'); // Open video $video = $ffmpeg->open('/your/source/folder/input.avi'); // Resize to 1280x720 $video ->filters() ->resize(new Dimension(1280, 720), ResizeFilter::RESIZEMODE_INSET) ->synchronize(); // Start transcoding and save video $video->save(new X264(), '/your/target/folder/video.mp4');