繁体   English   中英

LIVE555 RTSP H.264原始视频文件流-ffplay错误

[英]LIVE555 RTSP H.264 Raw Video File Stream - ffplay Errors

我正在使用LIVE555通过RTSP流式传输原始.h264视频文件。

要接收流,我正在使用ffplay。 但是,当观看视频时,我注意到视频质量很差,并且在ffplay控制台中出现了许多错误:

Input #0, rtsp, from 'rtsp://xx.xx.xxx.x/stream': sq=    0B f=0/0
  Metadata:
    title           : stream
    comment         : stream
Duration: N/A, start: 0.099989, bitrate: N/A
    Stream #0:0: Video: h264 (High), yuv420p(tv, smpte170m/smpte170m/bt470m), 16
80x1050 [SAR 1:1 DAR 8:5], 60 fps, 60 tbr, 90k tbn, 120 tbc
[h264 @ 03f92100] RTP: missed 46 packetsq=   28KB sq=    0B f=1/1
[h264 @ 03f92100] RTP: missed 74 packetsq=   23KB sq=    0B f=1/1
[h264 @ 03f92100] RTP: missed 43 packets
[h264 @ 03f92100] RTP: missed 35 packetsq=  179KB sq=    0B f=1/1
[h264 @ 05710640] left block unavailable for requested intra4x4 mode -1 at 0 38
[h264 @ 05710640] error while decoding MB 0 38, bytestream 48108
[h264 @ 05710640] Cannot use next picture in error concealment
[h264 @ 05710640] concealing 2989 DC, 2989 AC, 2989 MV errors in P frame
[h264 @ 051043c0] left block unavailable for requested intra4x4 mode -1 at 0 26
[h264 @ 051043c0] error while decoding MB 0 26, bytestream 5894
[h264 @ 051043c0] concealing 4249 DC, 4249 AC, 4249 MV errors in I frame
[h264 @ 03f92100] RTP: missed 68 packetsq=   28KB sq=    0B f=1/1
[h264 @ 03f92100] RTP: missed 31 packetsq=  153KB sq=    0B f=1/1
[h264 @ 052a0020] concealing 3292 DC, 3292 AC, 3292 MV errors in I frame
[h264 @ 052a0020] Cannot use next picture in error concealment1/1
[h264 @ 052a0020] concealing 2190 DC, 2190 AC, 2190 MV errors in P frame
[h264 @ 03f92100] RTP: missed 69 packetsq=   27KB sq=    0B f=1/1
[h264 @ 052a0020] concealing 3732 DC, 3732 AC, 3732 MV errors in I frame
[h264 @ 03f92100] RTP: missed 26 packetsq=   30KB sq=    0B f=1/1
...

如何确定这里出了什么问题? 是流还是文件?

RTP: missed <N> packets

除非RTSP客户端要求TCP流,否则LIVE555 Media Server默认情况下使用基于UDPRTP

UDP被认为是不可靠的协议,因为无法保证传递,数据包可以以不同的顺序到达目的地和/或重复。

如果基础网络连接不可靠,您可能会遇到很多丢包的情况,流将播放很多错误。

您没有足够的带宽来接收此流(或交替发送)。

RTP: missed packet消息告诉您。 通过TCP只会使事情变得更糟,而不会变得更好,因为TCP使用更多带宽作为标头,并且用于适应通道带宽的AIMD算法将丢失更多数据包(加法,乘积,减法)。

除了降低编码比特率(如果可以控制),改善缓冲(如果可以控制)或使用其他可以预缓冲流的协议之外,您什么也不能做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM