通过在PHP中使用ffmpeg向视频添加水印 [英] Adding watermark to a video by using ffmpeg in php
问题描述
我用一组图像和mp3创建了一个视频. 但是我想在该视频中添加水印文本.我正在使用以下代码来添加文本.
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/local/bin/ffmpeg -y -i output.mov -acodec libmp3lame -vcodec msmpeg4 \
-b:a 192k -b:v 1000k -ar 44100 \
-vf "drawtext=text=string1 string2 string3 string4 string5 string6 string7 :expansion=normal:fontfile=/usr/bin/DejaVuSerif-BoldItalic-webfont.ttf: y=0:x=h-(2*lh)-n: fontcolor=white: fontsize=40: box=1: boxcolor=0x00000000@1" \
-an IMG_0696.avi');
此问题是视频文件的创建大小为零. 谁能帮我一下. 否则,建议我使用任何其他命令向视频添加水印文本. 预先谢谢你...
The issue with this is that the video file is creating with zero size. Can any one help me please. Or else Suggest me any other command to add watermark text to video. Thank you in advance...
推荐答案
我正在使用php-ffmpeg [下:Composer Json]:
I am using php-ffmpeg [Below : Composer Json]:
{
"require": {
"php-ffmpeg/php-ffmpeg": "^0.6.1"
}
}
并使用此php-ffmpeg库,您可以使用以下代码添加水印:
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.]
这篇关于通过在PHP中使用ffmpeg向视频添加水印的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!