音频转换:
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
ffmpeg -i input_file -vframes 30 -y -f gif output.gif
ffmpeg -i input_file -y -f mjpeg -ss 8 -t 0.001 -s 320x240 output.jpg
ffmpeg -i input_file -vcodec copy -an output_file_video //分离视频流
ffmpeg -i input_file -acodec copy -vn output_file_audio //分离音频流
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 持续时间
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于