FFmpeg录制RTSP流

RTSP参数说明

执行以下命令,会输出RTSP相关的协议读取操作参数。

ffmpeg -h demuxer=RTSP
参数 类型 说明
initial_pause 布尔 建立连接后暂停播放
rtsp_transport 标记

设置RTSP传输协议,具体如下:

  • udp: UDP
  • tcp: TCP
  • udp_multicast: UDP多播协议
  • http: HTTP隧道
rstp_flags 标记

RTSP使用标记,如下:

  • filter_src: 只接收指定IP的流
  • listen: 设置为被动接收模式
  • prefer_tcp: TCP亲和模式,如果TCP可用则首选TCP传输
allowed_media_types 标记

设置允许接收的数据模式(默认全部开启):

  • video: 只接收视频
  • audio: 只接收音频
  • data: 只接收数据
  • subtitle: 只接收字幕
min_port 整数 设置最小本地端口,默认5000
max_port 整数 设置最大本地UDP端口,默认65000
timeout 整数 设置监听端口超时时间
reorder 整数 设置处理重新排序的缓冲区包的个数
buffer_size 整数 设置底层传输包Buffer的大小
user-agent 字符串 用户客户端标识

RTSP参数使用举例

FFmpeg默认使用的RTSP拉流方式为UDP传输,为避免丢包导致的花屏、绿屏等问题,考虑将传输方式改为TCP。

ffmpeg -rstp_transport tcp -i rtsp://... -c copy -f mp4 output.mp4

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章