隐藏

ffmpeg 常用转换命令

发布:2021/3/22 14:18:34作者:管理员 来源:本站 浏览次数:1179

音频转换:

1.转换amr到mp3:

ffmpeg -i test.amr test.mp3

2.转换amr到wav:

ffmpeg  -i test.amr test.wav

3.转换mp3到wav:

ffmpeg -i test.mp3 -f wav test.wav

 

视频转换:

1.转换wmv到mp4:

ffmpeg -i sample.wmv -vcodec libx264 -acodec aac out.mp4

2.抓取H264视频流:

ffmpeg -i sample.flv -vcodec copy -vbsf h264_mp4toannexb -an out.h264

 2.1 vbsf为过滤方法,即将flv规定的H264组织方式转换回H264协议书规定的字节流格式
 2.2 -an 禁掉源文件中的音频,因为出来的码流不需要音频
 2.3 vcodec copy这个是必然的

3.将H264视频流转为mp4:

ffmpeg -i sample.h264 -f mp4 haha.mp4

4.接收rtsp并存为视频文件:

ffmpeg -rtsp_transport tcp -i rtsp://streaming1.osu.edu/media2/ufsap/ufsap.mov -vcodec copy -acodec copy -t 30 -f mp4 rtsp-out.mp4

4.1 -rtsp_transport tcp:指明传输方式是tcp方式(也可以是udp)

4.2 -t 30:指明我录制30秒

5.切分视频并生成M3U8文件  

ffmpeg -i input.mp4 -c:v libx264 -c:a aac -strict -2 -f hls -hls_time 20 -hls_list_size 0 -hls_wrap 0 output.m3u8

相关参数说明:

-i 输入视频文件
-c:v 输出视频格式
-c:a 输出音频格式
-strict
-f hls 输出视频为HTTP Live Stream(M3U8)
-hls_time 设置每片的长度,默认为2,单位为秒
-hls_list_size 设置播放列表保存的最多条目,设置为0会保存所有信息,默认为5
-hls_wrap 设置多少片之后开始覆盖,如果设置为0则不会覆盖,默认值为0。这个选项能够避免在磁盘上存储过多的片,而且能够限制写入磁盘的最多片的数量。

 

6.截取一张352x240尺寸大小,格式为jpg的图片   

ffmpeg -i input_file -y -f image2 -t 0.001 -s 352x240 output.jpg
7.把视频的前30帧转换成一个Animated Gif
	
ffmpeg -i input_file -vframes 30 -y -f gif output.gif
 
8.在视频的第8.01秒出截取230x240的缩略图  
	
ffmpeg -i input_file -y -f mjpeg -ss 8 -t 0.001 -s 320x240 output.jpg
 
9.分离视频音频流
	
ffmpeg -i input_file -vcodec copy -an output_file_video //分离视频流 ffmpeg -i input_file -acodec copy -vn output_file_audio //分离音频流
 
10.视频剪切  
	
ffmpeg -i test.avi -r 1 -f image2 image.jpeg //视频截图 ffmpeg -i input.avi -ss 0:1:30 -t 0:0:20 -vcoder copy -acoder copy output.avi //剪切视频 -r 提取图像频率, -ss 开始时间, -t 持续时间