共计 1712 个字符,预计需要花费 5 分钟才能阅读完成。
偶然在 b 站看了个关于 FFmpeg 的视频,总共 10p,花一个多小时就可以学完。学完以后还是挺有意思的,这里做个简单的总结。
先准备一个视频文件,下载到本地就好了。
播放文件
ffplay.exe 996 之歌.flv
播放音频 ffplay 1.mp3
获取文件属性
ffprobe 996 之歌.flv
转码 mkv 为 mp4
ffmpeg -i example.mkv example.mp4
MP4 封装:h264 视频编码 +aac 音频编码
flac 转 mp3
ffmpeg -i input.flac -acodec libmp3lame -ar 44100 -ab 320k -ac 2 out.mp3
获取单独的视频流,去除音频
ffmpeg -i input.mp4 -vcodec copy -an v.mp4
获取音频
ffmpeg -i input.mp4 -vn -acodec copy out.m4a
合并分离的音频和视频
ffmpeg -i out.m4a -i v.mp4 -c copy out.mp4
截取前 10s
ffmpeg -i in.mp3 -ss 00:01:00 -to 00:01:10 -acodec copy out.mp3
ffmpeg -i in.mp3 -ss 00:01:00 -t 10 -acodec copy out.mp3
截取末尾 10s
ffmpeg -i in.mp3 -sseof 00:05:00 -t 10 -acodec copy out.mp3
ffmpeg -ss 00:01:00 -i in.mp4 -to 00:01:10 -c copy copyts out.mp4 ss 在前保证时间戳位置
合并文件
ffmpeg -i “concat:01.mp4|02.mp4|03.mp4” -c copy out.mp4
截图第 5s 这一帧画面
ffmpeg -i in.mp4 -ss 5 -vframes 1 img.jpg
左上角加水印
ffmpeg -i in.mp4 -i logo.png -filter_complex “overlay=20:20” out.mp4
7.5 到 8.5 截取成 GIF
ffmpeg -i in.mp4 -ss 7.5 -to 8.5 -s 640×320 -r 15 out.gif
录屏
ffmpeg -f gdigrab -i desktop in.mp4
保持编码下载 m3u8
ffmpeg -i ‘t.m3u8’ -codec copy -y out.ts
截取片段
ffmpeg -y -i ‘out.ts’ -ss 00:01:00 -to 00:10:00 -vcodec copy -acodec copy ‘1.ts’
合并 ts 生成 MP4 文件
ffmpeg -y -i “concat:1.ts|2.ts” -map_channel 0.1.0 -map_channel 0.1.0 -s 1024×576 -aspect 16:9 -max_muxing_queue_size 1024 “out.mp4”
图片转视频
cat imgs/* |ffmpeg -framerate 1 -i – out.mp4
将 gif 转为 mp4
ffmpeg -f gif -i origin.gif output.mp4
成果
我将《在家工作日程》这个视频转成 GIF
见微博地址
工具
视频字幕
Hardened HLS merger
Some random notes that I found useful while working with ffmpeg
autosub 安装使用指南.html)
Final Cut Pro 教程】全系列视频拍摄
牛逼的视频编辑脚本 jumpcutter
https://savemedia.com/
https://en.savefrom.net/
http://www.clipconverter.cc/
http://convert2mp3.net/
http://www.downfi.com/video/
https://www.soogif.com/video/
https://tool.gifhome.com/video/
ACONVERT.COM
https://weibo.com/5198011111/…
https://ezgif.com/
压缩图片
Chrome 插件 MakeGIF Video Capture
字幕制作神器「Arctime」
PHP+FFMPEG 自动转码 H264 标准 Mp4 文件
ffmpeg 命令行转压视频