Rename VideoResampleFilter to FrameRateFilter

This commit is contained in:
Romain Neutron 2013-07-03 20:16:09 +02:00
commit ee1eb83a0b
5 changed files with 35 additions and 21 deletions

View file

@ -7,11 +7,11 @@ use FFMpeg\Filters\Audio\AudioResamplableFilter;
class AudioFilters
{
private $audio;
protected $media;
public function __construct(Audio $audio)
public function __construct(Audio $media)
{
$this->audio = $audio;
$this->media = $media;
}
/**
@ -23,7 +23,7 @@ class AudioFilters
*/
public function resample($rate)
{
$this->audio->addFilter(new AudioResamplableFilter($rate));
$this->media->addFilter(new AudioResamplableFilter($rate));
return $this;
}

View file

@ -15,7 +15,7 @@ use FFMpeg\Coordinate\FrameRate;
use FFMpeg\Media\Video;
use FFMpeg\Format\VideoInterface;
class VideoResampleFilter implements VideoFilterInterface
class FrameRateFilter implements VideoFilterInterface
{
private $rate;
private $gop;

View file

@ -14,14 +14,14 @@ namespace FFMpeg\Filters\Video;
use FFMpeg\Media\Video;
use FFMpeg\Coordinate\Dimension;
use FFMpeg\Coordinate\FrameRate;
use FFMpeg\Filters\Audio\AudioResamplableFilter;
use FFMpeg\Filters\Audio\AudioFilters;
class VideoFilters
class VideoFilters extends AudioFilters
{
private $video;
public function __construct(Video $video)
public function __construct(Video $media)
{
$this->video = $video;
parent::__construct($media);
}
/**
@ -35,22 +35,22 @@ class VideoFilters
*/
public function resize(Dimension $dimension, $mode = ResizeFilter::RESIZEMODE_FIT, $forceStandards = true)
{
$this->video->addFilter(new ResizeFilter($dimension, $mode, $forceStandards));
$this->media->addFilter(new ResizeFilter($dimension, $mode, $forceStandards));
return $this;
}
/**
* Resamples the video to the given framerate.
* Changes the video framerate.
*
* @param FrameRate $framerate
* @param type $gop
*
* @return VideoFilters
*/
public function resample(FrameRate $framerate, $gop)
public function framerate(FrameRate $framerate, $gop)
{
$this->video->addFilter(new VideoResampleFilter($framerate, $gop));
$this->media->addFilter(new FrameRateFilter($framerate, $gop));
return $this;
}
@ -62,7 +62,21 @@ class VideoFilters
*/
public function synchronize()
{
$this->video->addFilter(new SynchronizeFilter());
$this->media->addFilter(new SynchronizeFilter());
return $this;
}
/**
* Resamples the audio file.
*
* @param Integer $rate
*
* @return AudioFilters
*/
public function audioResample($rate)
{
$this->media->addFilter(new AudioResamplableFilter($rate));
return $this;
}

View file

@ -2,11 +2,11 @@
namespace FFMpeg\Tests\Filters\Video;
use FFMpeg\Filters\Video\VideoResampleFilter;
use FFMpeg\Filters\Video\FrameRateFilter;
use FFMpeg\Tests\TestCase;
use FFMpeg\Coordinate\FrameRate;
class VideoResampleFilterTest extends TestCase
class FrameRateFilterTest extends TestCase
{
public function testApplyWithAFormatThatSupportsBFrames()
{
@ -21,7 +21,7 @@ class VideoResampleFilterTest extends TestCase
$expected = array('-r', 54, '-b_strategy', '1', '-bf', '3', '-g', 42);
$filter = new VideoResampleFilter($framerate, $gop);
$filter = new FrameRateFilter($framerate, $gop);
$this->assertEquals($expected, $filter->apply($video, $format));
}
@ -38,7 +38,7 @@ class VideoResampleFilterTest extends TestCase
$expected = array('-r', 54);
$filter = new VideoResampleFilter($framerate, $gop);
$filter = new FrameRateFilter($framerate, $gop);
$this->assertEquals($expected, $filter->apply($video, $format));
}
}

View file

@ -54,12 +54,12 @@ class VideoFiltersTest extends TestCase
$video->expects($this->once())
->method('addFilter')
->with($this->isInstanceOf('FFMpeg\Filters\Video\VideoResampleFilter'))
->with($this->isInstanceOf('FFMpeg\Filters\Video\FrameRateFilter'))
->will($this->returnCallback(function ($filter) use (&$capturedFilter) {
$capturedFilter = $filter;
}));
$filters->resample($framerate, $gop);
$filters->framerate($framerate, $gop);
$this->assertSame($framerate, $capturedFilter->getFramerate());
$this->assertSame($gop, $capturedFilter->getGOP());