ffmpeg推拉流参数汇总-1

参数含义说明

1. 完整命令
1.1. windows系统
python 复制代码
"""推流命令"""
ffmpeg -f dshow -video_size 1920x1080 -i video="@device_pnp_\\?\usb#vid_0c45&pid_6366&mi_00#6&183af011&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global" -vcodec libx264 -preset ultrafast -tune zerolatency -f mpegts udp://ip:port

"""拉流命令"""
ffplay -i "udp://ip:port" -fflags nobuffer
  • -f dshow:表示使用DirectShow框架来捕获音/视频输入
  • -video_size:设置视频图像的分辨率
  • -i video="Camera name":用于指定输入的文件或设备
  • -vcodec libx264:指定视频编码器为libx264,常用的还有h264、h265、mpeg等
  • -preset ultrafast :用于设置编码器预设值,不同的预设值会影响编码器的压缩效率和效果。常见的包括:ultrafast (编码最快,压缩效率低)、superfast (编码较快,压缩率较低)、veryfast (编码快,压缩率较高)、faster (编码速度中等,较好的压缩率)、fast (速度一般,更好的压缩率)、medium (较好的压缩率和质量)、slow (较慢的压缩速度,压缩率和质量高)、slower (编码非常慢)、veryslow(编码非常慢)
  • -tune zerolatency :与-preset一起使用,进一步调整预设值,可提高编码效率和质量。zerolatency(保证低延迟情况下进行编码,尽可能的实现实时编码和实时传输)
  • -f mpegts:用于指定输出的文件格式为MPEG-TS
  • udp://ip:port:采用UDP协议传输,ip为进行拉流的设备的ip地址,port为端口号,可以任意配置
  • -fflags nobuffer:用于关闭ffmpeg内部缓存区域,提供更低的延迟和更好的实时性,但数据的完整性可能收到一定的影响
1.2. linux系统
python 复制代码
"""推流命令"""
ffmpeg -f v4l2 -i /dev/video0 -r 30 -s 1920x1080 -vcodec libx264 -preset ultrafast -tune zerolatency -f mpegts udp://拉流主机ip:port
"""拉流命令"""
ffplay -fflags nobuffer udp://192.168.120.145:1234
  • 所有命令含义与windows基本一致
相关推荐
aqi001 天前
FFmpeg开发笔记(六十四)使用国产的RedPlayer播放器观看网络视频
android·ffmpeg·音视频·直播·流媒体
道剑剑非道2 天前
QT开发技术【ffmpeg + QAudioOutput】音乐播放器 完善
开发语言·qt·ffmpeg
毒果2 天前
FFmpeg 低延迟同屏方案
ffmpeg·同屏
aqi002 天前
FFmpeg开发笔记(六十三)FFmpeg使用vvenc把视频转为H.266编码
ffmpeg·音视频·直播·流媒体
梧桐樹下3 天前
FFmpeg avformat_open_input函数分析
ffmpeg
道剑剑非道3 天前
QT开发技术【ffmpeg + QAudioOutput】音乐播放器
开发语言·qt·ffmpeg
IOsetting3 天前
Ubuntu24.04 交叉编译 aarch64 ffmpeg
ffmpeg
却道天凉_好个秋3 天前
ffmpeg(三):处理原始数据命令
ffmpeg
@残梦3 天前
129、QT搭建FFmpeg环境
开发语言·qt·ffmpeg
阿飞__4 天前
C++ 使用 ffmpeg 解码本地视频并获取每帧的YUV数据
c++·ffmpeg·音视频