ffmpeg常用命令

2019-06-19  本文已影响0人  Peakmain

安装(Mac)

git clone https://git.ffmpeg.org/ffmepg.git
./configure --prefix=/Users/admin/ffmpeg --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex  --enable-videotoolbox --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --cc=clang --host-cflags= --host-ldflags=  

继续执行命令

make && make install

常用命令

命令分类

基本信息查询命令 裁剪与合并命令
录制命令 图片/视频互转命令
分解/复用的命令 直播相关命令
处理原始数据命令 各种滤镜命令

处理视频流程

image.png

基本信息命令

image.png

录制命令

录制视频命令

ffmpeg -f avfoundation -i 1 -r 30 out.yuv

查看支持格式设备命令

ffmpeg -f avfoundation -list_devices true -I ""
mine.png

录制音频命令

ffmpeg -f avfoundation -i  :0 out.wav

分解与复用

ffmpeg -i out.mp4 -vcodec copy -acodec copy out.flv

音频提取出去命令

ffmpeg -i 1.mp4 -acodec copy -vn  out.aac

处理原始数据命令

FFmpeg提取YUV数据

ffmpeg -i 1.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuv 

FFmpeg提取PCM数据

ffmpeg -i 1.mp4 -vn -ar 44100 -ac 2 -f s16le out.pcm

ffmpeg滤镜命令

视频裁剪命令

ffmpeg -i 1.mp4 -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4

宽高减去200,c:a表示音频

裁剪和合并命令

音视频裁剪

ffmpeg -i 1.mp4 -ss 00:00:00 -t 10 out.ts

音视频合并

ffmpeg -f concat -i inputs.txt out.mp4

可以使用vi命令创建txt 命令:vi.txt,输入i,进行编辑


image.png

,随后使用:wq保存并退出

图片视频互转命令

视频转图片命令

ffmpeg  -i 1.mp4 -r 1  -f image2 image-%3d.jpeg

图片转视频

ffmpeg -i image-%3d.jpeg out.mp4

直播推/拉流

直播推流

ffmpeg -re -i out.mp4 -c copy -f flv rtmp://server/live/streamName

直播拉流

ffmpeg  -i  rtmp://server/live/streamName -c copy dump.flv

如:拉取cctv1的流

ffmpeg -i http://ivi.bupt.edu.cn/hls/cctv1hd.m3u8  -c copy dump.m3u8

HTTP协议直播源
CCTV1高清:http://ivi.bupt.edu.cn/hls/cctv1hd.m3u8
CCTV3高清:http://ivi.bupt.edu.cn/hls/cctv3hd.m3u8
CCTV5高清:http://ivi.bupt.edu.cn/hls/cctv5hd.m3u8
CCTV5+高清:http://ivi.bupt.edu.cn/hls/cctv5phd.m3u8
CCTV6高清:http://ivi.bupt.edu.cn/hls/cctv6hd.m3u8

上一篇下一篇

猜你喜欢

热点阅读