[vdr] error decompressing frame for Astra HD+

Reinhard Nissl rnissl at gmx.de
Sat May 10 17:57:45 CEST 2008


Hi,

Igor schrieb:

 >> Hence, I regularly see VDR issue CLEARs after which such 
messages are normal.
 >
 > sorry, what do you mean "VDR issue CLEARs" ?

vdr-xine's console output:

video: synced early
[vVMA]buffered 8,8 frames (v:25,2, a:8,8)
frame: (0, 0)-(1920, 1088), zoom: (1,00, 1,00)
buffered 9,3 frames (v:20,4, a:9,3)
buffered 10,5 frames (v:25,9, a:10,5)
buffered 10,2 frames (v:30,8, a:10,2) <<<<<
Clear(0)DiscontinuityDetected: triggering soft start
!
video: synced early
[vAV]buffered 8,7 frames (v:28,7, a:8,7)
buffered 9,3 frames (v:30,1, a:9,3)
buffered 10,5 frames (v:30,5, a:10,5)
buffered 7,2 frames (v:28,5, a:7,2) <<<<<
Clear(1)DiscontinuityDetected: triggering soft start
!
video: synced early
[VA]buffered 8,5 frames (v:21,5, a:8,5)

VDR's syslog:

May 10 17:31:49 video vdr: [5227] cVideoRepacker: operating in 
H.264 mode
May 10 17:32:01 video vdr: [5228] buffer usage: 70% (tid=5227)
May 10 17:32:01 video vdr: [5228] buffer usage: 80% (tid=5227)
May 10 17:32:01 video vdr: [5228] buffer usage: 90% (tid=5227)
May 10 17:32:01 video vdr: [5228] buffer usage: 100% (tid=5227)
May 10 17:32:01 video vdr: [5228] ERROR: 3607 ring buffer 
overflows (678105 bytes dropped)
May 10 17:32:01 video vdr: [5227] clearing transfer buffer to 
avoid overflows
May 10 17:32:02 video vdr: [5228] buffer usage: 0% (tid=5227)

xine's output:

+++ CLEAR(17a): sync point: 1d
ao_flush (loop running: 1)
=== CLEAR(17.1)
=== CLEAR(17.2)
=== CLEAR(17.3)
=== CLEAR(17.4)
=== CLEAR(17.5)
--- CLEAR(17a)
ao_close
audio_out: no streams left, closing driver
audio discontinuity #80, type is 0, disc_off 0
waiting for in_discontinuity update #80
video discontinuity #80, type is 0, disc_off 0
vpts adjusted with prebuffer to 58459551
+++ CLEAR(17b): sync point: 1d
ao_flush (loop running: 1)
=== CLEAR(17.1)
=== CLEAR(17.2)
=== CLEAR(17.3)
=== CLEAR(17.4)
=== CLEAR(17.5)
--- CLEAR(17b)

 >> But H.264 doesn't have a broken link flag, so that's why 
FFmpeg gives messages like the following:
 >>
 >> [h264 @ 0xac236490]B picture before any references, skipping
 >> [h264 @ 0xac236490]decode_slice_header error
 >> [h264 @ 0xac236490]B picture before any references, skipping
 >> [h264 @ 0xac236490]decode_slice_header error
 >
 > so, could you give some resume about this errors ? is it 
ffmpeg/provider/vdr/driver problem ? or no any problem ?

Well, one might consider this an error, but it has no influence 
on the output. VDR was written for MPEG1/2 and it properly calls 
cRemux::SetBrokenLink() when necessary, to indicate that the 
first few B frames shall not be decoded until two reference 
frames are available.

As there is no such flag in H.264, the function doesn't do 
anything than logging, that it didn't find a MPEG1/2 GOP header 
where this flag is located.

May 10 17:38:16 video vdr: [5430] SetBrokenLink: no GOP header 
found in video packet

Supporting this issue properly in H.264 would mean to not send 
the first B frames to the output device which is more complex 
than just setting a single bit. And with the upcoming recording 
format changes I don't want to address this issue at the moment.

Bye.
-- 
Dipl.-Inform. (FH) Reinhard Nissl
mailto:rnissl at gmx.de



More information about the vdr mailing list