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基本一致
相关推荐
aqi004 小时前
FFmpeg开发笔记(九十八)基于FFmpeg的跨平台图形用户界面LosslessCut
android·ffmpeg·kotlin·音视频·直播·流媒体
带土11 天前
2. Linux下FFmpeg C++音视频解码+推流开发
linux·c++·ffmpeg
aqi001 天前
FFmpeg开发笔记(九十七)国产的开源视频剪辑工具AndroidVideoEditor
android·ffmpeg·音视频·直播·流媒体
Sleepless_斑马1 天前
RTMP/RTSP流媒体服务器搭建、ffmpeg推流桌面、vlc拉流
ffmpeg·rtmp·rtsp
炼金术1 天前
SkyPlayer v1.1.0 - 在线视频播放功能更新
android·ffmpeg
喜欢吃豆1 天前
深度解析:FFmpeg 远程流式解复用原理与工程实践
人工智能·架构·ffmpeg·大模型·音视频·多模态
带土11 天前
1. FFmpeg入门
ffmpeg
Lueeee.1 天前
1.广告机项目-----ffmpeg播放准备
ffmpeg
心动啊1212 天前
FFMPeg在Python中的使用
ffmpeg
aqi002 天前
FFmpeg开发笔记(一百)国产的Android开源视频压缩工具VideoSlimmer
android·ffmpeg·音视频·直播·流媒体