安装ffmpeg
第一步:下载ffmpeg:http://ffmpeg.org/releases/ffmpeg-3.4.1.tar.gz
wget http://www.ffmpeg.org/releases/ffmpeg-3.4.1.tar.gz
第二步:解压FFMPEG
tar -zxvf ffmpeg-3.4.1.tar.gz
第三步:进入目录
cd ffmpeg-3.4.1
第四步:安装yasm ----
yum install yasm
第五步:
./configure --enable-shared --prefix=/usr/local/ffmpeg
第六步:安装:
make && make install
第七步:修改文件/etc/ld.so.conf
vi /etc/ld.so.conf
中增加 /usr/local/ffmpeg/lib
使其生效:
ldconfig
第八步:加入环境变量:
export FFMPEG_HOME=/usr/local/ffmpeg
export PATH=$FFMPEG_HOME/bin:$PATH
使环境变量生效:source /etc/profile
查看版本
ffmpeg -version
ffmpeg使用
1、视频截图保存为图片
ffmpeg -i inputfile.avi -r 1 -q:v 2 -f image2 image-%05d.jpg
-i: 指定输入源
-r: 指定抽取的帧 即从视频中每秒抽取的图片数量 1 代表每秒抽取一帧
-f:保存图片使用的格式 可省略
image-%05d.jpg :指定文件的输出名字
2、图片保存为视频
ffmpeg -threads 2 -y -r 10 -i image%05d.png -i audio.mp3 out.mp4
3、视频分离出音频、视频
ffmpeg -i test.mp4 test.avi
ffmpeg -i test.mp4 test.mp3
4、给视频添加水印
ffmpeg -i xiaozheng.mp4 -i mark.png -filter_complex overlay test1.mp4
给视频添加文字水印:
ffmpeg -i xiaozheng.mp4 -vf "drawtext=fontfile=simsunb.ttf: text='zhengqijia':x=100:y=10:fontsize=24:fontcolor=yellow:shadowy=2" drawtext.mp4
文字水印filter是drawtext simsunb.ttf:text=’zhengqijia’
x:y是显示位置
fontsize:文字大小
fontcolor:文字颜色
给视频添加图片水印:
ffmpeg -i input.mp4 -vf "movie=mark.png[watermark];[in][watermark] overlay=10:10[out]" output.mp4
php代码截取第一帧并保存图片
/*
* 上传视频保存第一帧图片
* $video视频项目地址
* $width保存图片宽 $height 高 为0时自动保存(图片可能会反转)
*/
function videoFirstFrame($video, $width=0, $height=0){
$path = base_path();
$file = $path . '/public/upload/'.$video;
$file1 = $file . '.jpg';
if($width!=0){
//多一个-s 指定图片的宽高比
$str = "ffmpeg -i ".$file." -y -f mjpeg -ss 3 -t 1 -s ".$width."x".$height." ".$file1;
}else{
$str = "ffmpeg -i $file -y -f mjpeg -ss 3 -t 1 $file1";
}
exec($str, $output, $return_val);
if ($return_val==0){
return true;
}
}