我是通过UDP从我的网络摄像头/麦克风传输视频和音频。当我查看流(甚至在同一台机器上)时,延迟时间约为4秒。我曾尝试将UDP缓存设置设置为0或1,但似乎没有帮助。我曾尝试降低视频和音频比特率,使用单声道并降低采样率,但都无济于事。如何减少延迟 - 来自网络摄像机的VLC流式传输
有没有人有任何想法,我可以减少延迟,更适合于一个视频会议,即< 1秒?
有没有可以适用于查看器/流器的设置?
感谢,
马克
我是通过UDP从我的网络摄像头/麦克风传输视频和音频。当我查看流(甚至在同一台机器上)时,延迟时间约为4秒。我曾尝试将UDP缓存设置设置为0或1,但似乎没有帮助。我曾尝试降低视频和音频比特率,使用单声道并降低采样率,但都无济于事。如何减少延迟 - 来自网络摄像机的VLC流式传输
有没有人有任何想法,我可以减少延迟,更适合于一个视频会议,即< 1秒?
有没有可以适用于查看器/流器的设置?
感谢,
马克
在我的VLC流媒体与网络摄像头的研究中,我得到了2-3秒的延迟与WMV/ASF容器+ WMV2编解码器从戴尔的创新集成网络摄像头与转码UDP组播流cif视频大小。
如果使用MP4/MOV容器+ H.264编解码器,我得到了前者的两倍延迟,具有相同的比特率,fps和比例设置。
我在两个流媒体设置中都禁用了音频,因为我对它不感兴趣。
我确实有两个版本VLC的研究:
随着第一个版本,我可以转码和从网络摄像头流,但它无法正确播放流(它只是给一个变黑的视频流)
随着第二个版本,它的工作适用于转码,流媒体和播放。
Intel Core 2 Duo T7250
4GB DDR2-667 SDRAM
SATA 7200 RPM HDD
GeForce 8400M GS 128MB GDDR3 (+ 128MB shared memory = 256MB video memory)
Windows XP Pro SP3
如果使用RTSP协议以流视频/音频,您可以调整在
工具 - >首选项 - >清一色>输入延迟:
这项研究上完成/ codecs-> demuxers-> RTP/RTSP->缓存值
工具 - >首选项 - >清一色>输入/ codecs-> demuxers-> RTP-> RTP去抖动缓冲器长度
注意:每晚构建版本VLC 2.1.0-git-20120203-0008的GUI中不存在“缓存值(ms)”和“RTP去抖动缓冲区长度(msec)”选项。即使是'输入/编解码器 - >访问模块 - > UDP'树项目也缺失,因此'UDP缓存'选项在GUI中不可用。 – ecle 2012-02-13 13:27:10
现在他们称之为“网络缓存”,但它似乎并没有以同样的方式工作。我无法获得我在2.0.4中获得的1.1.9(〜100-150 ms)的巨大延迟(远远更多,对于这样的低值变得不稳定)。 – 2013-01-26 12:49:52
@YngveSneenLindal你在1.1.9中使用了什么样的命令行? – rogerdpack 2013-10-17 21:32:55
尝试此。
#!/bin/sh
ETH=eth0
cvlc --miface=$ETH v4l2:///dev/video0 :input-slave=alsa://hw:0,0 :sout=#transcode{vcodec=h264,venc=x264{preset=ultrafast,tune=zerolatency,intra-refresh,lookahead=10,keyint=15},scale=auto,acodec=mpga,ab=128}:rtp{dst=224.10.0.1,port=5004,mux=ts} :sout-keep >/dev/null 2>/dev/null &
vlc1=$!
vlc --miface=$ETH rtp://224.10.0.1 >/dev/null 2>/dev/null &
vlc2=$!
wait $vlc2
kill -9 $vlc1
我已经2秒720p的摄像头的延迟,它产生约2.5Mbit/s的TRAFIC和负载为一个芯〜30%。
我试过我的笔记本电脑上的simular设置,处理器是一个i7,但显卡是一个集成的英特尔。你知道当流式传输视频时显卡处理器是否被使用吗?这可能是我的问题。 – Marc 2012-02-13 11:33:13
是的,在Windows下,'dshow://'是一个DirectShow接口;与任何DirectX界面一样,它将使用DirectX GPU的所有硬件加速功能,如果在服务器端或客户端检测到这些功能,都可以提高性能。 – ecle 2012-02-13 13:33:09