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

 

 

 

 

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