I created a video with group of images and mp3. But i want to add a watermark text to that video .i am using the below code to add the text.
exec(\'/usr/loca
Command:
ffmpeg -i input.mp4 -i watermark.png -filter_complex 'overlay' output.mp4
Try this code in your controller.
public function setWaterMark(Request $request_body){
try {
$watermark = Input::file('watermark');
$input = Input::file('input');
ffmpeg = "C:\\ffmpeg\\bin\\ffmpeg";
$cmd = $ffmpeg . " -i " . $input . " -i " . $watermark . " -filter_complex 'overlay' " . $output_file;
exec($cmd, $output);
return $output_file;
}
ffmpeg -i movie.mp4 -i logo.png -filter_complex overlay output.mp4
I am using php-ffmpeg [Below : Composer Json]:
{
"require": {
"php-ffmpeg/php-ffmpeg": "^0.6.1"
}
}
and Using this php-ffmpeg library you can add watermark's using the following codes:
<?php
function processVideo($videoSource,$reqExtension, $watermark = "")
{
$ffmpeg = FFMpeg\FFMpeg::create();
$video = $ffmpeg->open($videoSource);
$format = new FFMpeg\Format\Video\X264('libmp3lame', 'libx264');
if (!empty($watermark))
{
$video ->filters()
->watermark($watermark, array(
'position' => 'relative',
'top' => 25,
'right' => 50,
));
}
$format
-> setKiloBitrate(1000)
-> setAudioChannels(2)
-> setAudioKiloBitrate(256);
$randomFileName = rand().".$reqExtension";
$saveLocation = getcwd(). '/video/'.$randomFileName;
$video->save($format, $saveLocation);
if (file_exists($saveLocation))
return "http://localhost/test/video/$randomFileName";
else
return "http://localhost/test/thumb/404.png";
}
echo $videoLocation = processVideo("sample.mp4","mp4","favicon.png");
?>
[Please, update the location according to your need.]
$ffmpeg = FFMpeg\FFMpeg::create();
$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');
Steps for install FFmpeg on system. http://drupalasia.com/article/how-add-watermark-video-using-php-and-ffmpeg