一个命令搞定MP4文件转m3u8文件
原创
©著作权归作者所有:来自51CTO博客作者已注销的原创作品,请联系作者获取转载授权,否则将追究法律责任
- 直接将MP4文件转成m3u8:
ffmpeg -i demo.mp4 -hls_time 10 -hls_list_size 0 -hls_segment_filename ene_%05d.ts ene.m3u8
- 如果已经是ts文件了,则只需要执行下方命令即可:
ffmpeg -i demo.ts -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 10 output%03d.ts
- 将大量分割成ts文件的视频片段全部转换成mp4视频片段 --- 直接上批处理脚本:
for %%a in ("D:\VideoProjects\NewDemo\*.ts") do ffmpeg -i "%%a" -vcodec copy -vcodec copy -f mp4 "D:\VideoProjects\NewDemo\NewMP4\%%~na.mp4"
pause
- 上面的 ffmpeg -i test.ts -acodec copy -vcodec copy -f mp4 test.mp4 是将ts文件转换为mp4文件的意思,再在其之上套了一层for循环,%%a就是每个文件,转换命令最末尾的%%~na是将文件保持原来的文件名的情况下进行输出,存放到指定文件夹的意思。
- mp4视频转flv
ffmpeg -i test.mp4 -acodec copy -vcodec copy -f flv test.flv
- 将本地指定的demo.ts文件进行推流:
ffmpeg -re -i demo.ts -c copy -f mpegts udp://127.0.0.1:1997
- 强制把输出视频文件帧率改为 24 fps:
ffmpeg -i input.avi -r 24 output.avi
- 对视频每个一秒截一个图并存在本地:
ffmpeg -i out.mp4 -f image2 -vf fps=fps=1 out%d.png
- 每隔20秒截一个图:
ffmpeg -i out.mp4 -f image2 -vf fps=fps=1/20 out%d.png
- 将视频转换为图片,一帧一图:
ffmpeg -i out.mp4 out%4d.png
作者:艾孜尔江
参考
官网