1.ffmpeg推流:ffmpeg -re -i <inputfile> -vcodec copy -f <format> rtmp://<ipaddr>
note:-re 按照帧率推送,否则ffmpeg会以最高的速率发送数据;-vcodec copy 否则ffmpeg会重新编码输入的码流
2.ffmpeg拉流:ffplay rtmp://<ipaddr> -fflags nobuffer
note:-fflags nobuffer 无缓存
3.ffmpeg使用gpu加速解码【硬解码】:ffmpeg -hwaccel <hard dirver> -c <decoder> -i <inputfile> -f null - -benchmark
note:-hwaccel cuvid选择硬件加速 -f null 强制不输出解码帧【-f null 可以换成<outfile>】 - -benchmark 测试模式
example:ffmpeg -hwaccel cuvid -c h264_cuvid -i test.h264 -f null - -benchmark
4.ffmpe使用gpu加速编码【硬编码】
5.ffmpeg剪辑一帧数据(图片):ffmpeg -c <decoder> -i <inputfile> -frames 1 <outfile>
example: ffmpeg -c h264 -i jetflow-1080p-f2949-0.h264 -frames 1 test.yuv
6.ffplay播放yuv视频 :ffpaly -f rawvideo -video_size <width*height> -pix_fmt <fmt> <inputfile>
目前就设计到这两种播放格式,貌似默认播放yv21和i420格式的,nv12需要加格式说明
7.ffprobe查看视频信息:ffprobe <inputfile>
8.ffmpeg剪辑1帧原始视频(图片):ffmpeg -f rawvideo -video_size <width*height> -i <inputfile> -frames 1 <outfile>
9.ffmpeg裁剪视频:ffmpeg -i <inputfile> -filter_complex crop=dstwidth:dstheight:x:y -y <outfile>
10.ffmpeg裁剪原始视频:ffmpeg -f rawvideo -video_size <width*height> -i <inputfile> -filter_complex crop=dstwidth:dstheight:x:y -y <outfile>