pyav 处理 rtsp 视频流 options 参数选项

背景

最近接到一个老项目,算法开发的python代码,去拉取视频流,拿出来解析
里面用到了pyav,这个不是纯的python库,里面是加了其他东西的
代码里面拉取视频流很多时候会超时,就想着去修改连接选项,结果官网没给
估计是针对不同的视频格式和不同的拉流方式,选项会不一样,要根据底层库来决定
网上找了一堆地方,也没找到靠谱的,后面用 GPT 试了下,GPT还真给出来了
但这个给的东西好不好用还不确定,我就拿进去试了几个自己关心的,还真有用
下面记录下这些参数

注意: 我的场景是使用 tcp 的方式拉取 rtsp 格式的视频流,其他的方式参数可能会不一样
注释里面写未验证的,如果有用到,需要自己去验证!!!

import av

# RTSP视频流地址
rtsp_url = "rtsp://192.168.5.6:554/videoUrl/asjflksajfl"

# 设置选项
options = {
    "analyzeduration": "10000000",  # 设置analyzeduration选项为10秒
    "probesize": "5000000" ,        # 设置probesize选项为5000000字节
    'rtsp_transport': 'tcp',        # 设置RTSP传输协议,可以是"tcp"或"udp"
    'max_delay': '50000',           # 设置最大延迟
    'stimeout': '10000000',         # 设置超时时间,单位是微秒
 
	'buffer_size': '设置缓冲区大小,单位是字节。',                             # 未验证!!!
	'allowed_media_types': '设置允许的媒体类型,例如["audio", "video"]' ,     # 未验证!!!
	'muxdelay': '设置最大复用延迟。',                                        # 未验证!!!
	'probesize2':'设置探测大小。'                                           # 未验证!!!
}

# 打开RTSP视频流,并传递选项参数
container = av.open(rtsp_url, options=options)

# 遍历视频流中的帧
for frame in container.decode(video=0):
    # 在这里处理帧
    pass

# 关闭视频流
container.close()

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值