先说说在windows系统的安装,用的是 scoop,步骤:(在放视频的文件夹,按住 shift键的同时右键鼠标,选择“在此处打开PowerShell窗口” )
- windows 安装scoop,命令: iwr -useb get.scoop.sh | iex
- 使用scoop安装ffmpeg:命令: scoop install ffmpeg 安装完成之后看看能不能使用ffmpeg,如果不能,还需要配置环境变量
然后来进行一下简单的操作:
- 把mp4 切割成m4s片段(切成别的格式也行,自己在这里把m4s格式改了就行了),命令: ffmpeg -i t.mp4 -hls_segment_filename 'filed.m4s' out.m3u8
- 把多个m4s合并并转成 MP4: ffmpeg -i "concat:file000.m4s|file001.m4s|file002.m4s|file003.m4s|file004.m4s|file005.m4s" -c copy out.mp4
- 把m4s文件转为 m3u8: ffmpeg -i "concat:file000.m4s|file001.m4s|file002.m4s|file003.m4s|file004.m4s|file005.m4s" -c copy out.m3u8
- 把 mp4文件切片 ffmpeg -ss 00:00:00 -t 00:00:30 -i t2.mp4(原视频) -vcodec copy -acodec copy pic1.mp4(新视频)
- 把两/多个 mp4文件合并(这样直接拼接有问题,只拼接了时长,第第一秒不动)二个视频的内容一直卡在它的 ffmpeg -f concat -i mylist.txt -c copy output.mp4
可以用以下方法合并: 先将 mp4 转化为同样编码形式的 ts 流,因为 ts流是可以 concate 的,先把 mp4 封装成 ts ,然后 concate ts 流, 最后再把 ts 流转化为 mp4 ffmpeg -i mobile.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb mobile.ts ffmpeg -i t1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb t1.ts ffmpeg -i "concat:t1.ts|mobile.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4
P.S. 如果需要m3u8加载不同的m4s等文件,可以手动改 m3u8中的内容(进行增删视频片段)
C 音视频开发学习资料:点击领取→
进行以上操作的操作面板: