FFmpeg常用命令

  1. 视频剪辑

ffmpeg -ss 1:23.456 -t 15 -i ./video.mp4 -c copy ./out.mp4

表示剪辑从1分23.456秒开始15秒的视频,-c:copy 表示不编码,视频直接复制

  1. 视频格式转换

ffmpeg -i video.mp4 video.avi

表示将mp4格式视频转换为avi格式,ffmpeg会根据文件后缀自动判断视频格式类型

  1. 将直播媒体保存至本地文件

ffmpeg -i rtmp://server/live/streamName -c copy dump.flv

该命令会将直播流保存到本地

  1. 视频转图片

ffmpeg -i 1.mp4 ./png/%04d.png

将1.mp4转换成图片,并保存到当前目录的png文件夹下。

图片的数目是根据视频的帧率定的。比如15秒的视频,帧率为30,转换后图片的数目 = 15 x 30 = 450。数目有时候没有那么精确,但是差别不大。%04d表示图片的命名格式是4位数字,不足4位,前面补0。

  1. 图片转视频

ffmpeg -i ./png/%04d.png 1.mp4

将png目录下的图片转换为视频。

测试过程中,默认的帧率是25,像素格式是yuv444p。也可以自己设置这些参数。

ffmpeg -r 30 -i ./png/%04d.png -pix_fmt yuv420p 420.mp4

上面的命令表示,将图片转为视频,帧率为30,像素格式为yuv420p。

  1. 提取视频

ffmpeg -i va.mp4 -an -c:v copy vo.mp4

提取文件中的视频,-an 表示去掉音频;-c:v copy 表示复制视频,如果不加该选项,将进行重新编码,速度较慢。

  1. 提取音频

ffmpeg -i va.mp4 -vn -c:a copy ao.aac

提取文件中的视频,-vn 表示去掉音频;-c:a copy 表示复制视频,如果不加该选项,将进行重新编码,速度较慢。

以后碰到音视频可以直接复制的,就加上复制选项,速度很快。

  1. 合并音频和视频

ffmpeg -i audio.mp3 -i video.mp4 -c copy va.mp4

将音频和视频合并。-c copy 表示直接复制,如果不加该选项,将进行重新编码,速度较慢。

  1. 视频拼接

把需要拼接的视频文件名称写到一个文件中

video.txt内容如下:

file '1.mp4'

file '2.mp4'

ffmpeg -f concat -i video.txt -c copy concat.mp4

上面命令将1.mp4 和 2.mp4合并成一个视频文件。

  1. 视频添加水印

ffmpeg -i va.mp4 -vf "drawtext=text='Logo':fontcolor=white:fontsize=24:x=100:y=100" -c:a copy text.mp4

在视频上添加"Logo"文字水印,字体颜色为白色,字体大小为24,位于(100,100)处。

这是使用滤镜来添加的,比较简单。添加文字需要ffmpeg 编译的时候增加 --enable-libfreetype 选项。

也可以添加图片水印,如下:

ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=50:50" output.mp4

该watermark.png为水印图片。

11、视频去水印

ffmpeg -i input.mp4 -filter_complex "0:vdelogo=x=420:y=920:w=1070:h=60" -ss 00:00:37 -to 00:05:17 -c:a copy output.mp4

该命令表示通过滤镜去除水印,水印的位置为(x,y),尺寸为wxh。视频的范围为从00:00:37开始,到00:05:17结束。

这种方式其实是用水印附近的像素填充水印的位置,对于纯色位置效果是可以的,对于一般的视频效果不好,如下图:

对于视频中的硬水印,目前感觉没有更好的办法。网上很多AI去水印的,效果也不好。如果有好的思路,欢迎交流。

相关推荐
小鹿软件办公8 小时前
巧用 Adobe Audition 中置声道提取,轻松分离人声与背景音乐
adobe·ffmpeg·简鹿人声分离
2023自学中2 天前
imx6ull开发板 移植 ffmpeg 4.2.11 + x264 视频编码库
linux·ffmpeg·音视频·嵌入式·开发板
feibaoqq3 天前
光电视频监控技术(GB28181/ONVIF/私有协议)
ffmpeg·音视频·低空安防
feiyangqingyun4 天前
使用ffmpeg播放不同节目/实时切换节目并推流/推流不同的节目流
ffmpeg·推节目流·广播节目
左直拳5 天前
利用海康CVR实现视频流历史回放
ffmpeg·cvr·视频回放·历史视频
MR.欻5 天前
ZLMediaKit 源码分析(四):RTP/RTCP 协议栈实现分析
c++·人工智能·vscode·ffmpeg·音视频
晓py5 天前
音视频基础概念入门_FFmpeg学习笔记
学习·ffmpeg·音视频
daqinzl6 天前
Mpegts.js+FFmpeg+WebSocket+Node实时视频流实现方案
websocket·ffmpeg·node·mpegts.js
qq_369224336 天前
打开剪辑/直播/播放器提示ffmpeg.dll丢失?专属场景修复方法汇总
ffmpeg·dll·dll修复·dll错误
愿天垂怜7 天前
【C++脚手架】ffmpeg 库的介绍与使用
linux·服务器·开发语言·c++·ide·git·ffmpeg