azraelir/ffmpeg-bundle

一个提供PHP-FFmpeg作为Symfony服务的Symfony包(https://github.com/alchemy-fr/PHP-FFmpeg)

维护者

详细信息

github.com/Azraelir/ffmpeg-bundle

来源

安装: 9

依赖者: 0

建议者: 0

安全性: 0

星标: 0

关注者: 2

分支: 29

类型:symfony-bundle

0.7.2 2018-12-16 11:52 UTC

README

Latest Stable Version Total Downloads Latest Unstable Version License

此包提供了一个简单的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');