Re: Buffer overflows recording HDTV with saa7146 and mantis DVB-C tuners

schorpp <[email protected]> Sun, 10 Nov 2024 01:04:52 +0100
Newsgroups gmane.linux.vdr
Message-ID <[email protected]>
Hello Klaus,

Am 08.11.24 um 04:35 schrieb schorpp:
> Am 07.11.24 um 21:36 schrieb Klaus Schmidinger:
>> On 06.11.24 04:57, schorpp wrote:
>>>> Hello,
>>>>
>>>> I've build a new VDR with h.264 xineliboutput plugin software decoding
>>>>
>>>> and got a problem now with
>>>>
>>>> buffer overruns and distorted recordings on all HD channels:
>>>>
>>>> ...
>>>> Nov  5 05:32:03 vdr2 vdr: [32753] ERROR: 47231 ring buffer overflows 
>>>> (8879240 bytes dropped)
>>>> Nov  5 05:32:09 vdr2 vdr: [32753] ERROR: 31042 ring buffer overflows 
>>>> (5835896 bytes dropped)
>>>> Nov  5 05:32:15 vdr2 vdr: [32753] ERROR: 47325 ring buffer overflows 
>>>> (8897100 bytes dropped)
>>>> Nov  5 05:32:21 vdr2 vdr: [32753] ERROR: 28306 ring buffer overflows 
>>>> (5321528 bytes dropped)
>>>> Nov  5 05:32:27 vdr2 vdr: [32753] ERROR: 14033 ring buffer overflows 
>>>> (2638204 bytes dropped)
>>>> ...
>>>>
>>>> This occurs with both saa7146 and mantis pci tuner cards.
>>>>
>>>> This has not occured with the old VDR system using Broadcomm's 
>>>> crystalhd decoder in libxine.


I've FIXED it.

Nov  9 18:25:33 vdr2 vdr: [5318] buffer stats: 178600 (3%) used
Nov  9 18:25:33 vdr2 vdr: [5337] TS buffer on device 1 thread started 
(pid=4621, tid=5337, prio=high)
Nov  9 20:12:00 vdr2 vdr: [8367] TS buffer on device 2 thread started 
(pid=4621, tid=8367, prio=high)
Nov  9 21:57:57 vdr2 vdr: [11332] TS buffer on device 3 thread started 
(pid=4621, tid=11332, prio=high)
Nov  9 23:13:00 vdr2 vdr: [5337] TS buffer on device 1 thread ended 
(pid=4621, tid=5337)
Nov  9 23:13:00 vdr2 vdr: [5335] buffer stats: 500268 (9%) used
Nov  9 23:13:00 vdr2 vdr: [13456] TS buffer on device 1 thread started 
(pid=4621, tid=13456, prio=high)
Nov  9 23:13:01 vdr2 vdr: [4621] buffer stats: 0 (0%) used
Nov  9 23:30:00 vdr2 vdr: [4621] buffer stats: 222968 (1%) used
Nov  9 23:37:52 vdr2 vdr: [4621] buffer stats: 474136 (2%) used
Nov  9 23:37:52 vdr2 vdr: [11332] TS buffer on device 3 thread ended 
(pid=4621, tid=11332)
Nov  9 23:37:52 vdr2 vdr: [11331] buffer stats: 233872 (11%) used
Nov  9 23:37:53 vdr2 vdr: [14185] TS buffer on device 3 thread started 
(pid=4621, tid=14185, prio=high)
Nov 10 00:37:14 vdr2 vdr: [4621] buffer stats: 0 (0%) used

Cause was HW unsupported pci hotplug damaged motherboard pci bridge 
and/or removed antenna signal amplififier.

Now, it's working with best quality on every channel and even faster 
switch times.

Thank You for VDR.

y
tom


>>
>> You're talking about "xineliboutput" and "libxine", as well as 
>> "saa7146", "mantis pci tuner cards"
>> and "Broadcomm's crystalhd decoder". Did you change several of these 
>> at the same time?
> 
> ? I didn't understand that fully.
> 
> Yes, the issue is reproducible with both tv card models and linux 
> 3.12.40...6.x drivers.
> 
> No, the old crystalhd system is already deactivated and dissassembled 
> for selling to eastern europe.
> 
>> Can you start from a working system and change only one at a time, to 
>> find out which one
>> causes the problem.
> 
> Yes, the testing platform is the new DFI x86 I7 System with plenty of 
> ressources using xineliboutput ffmpeg AV software decoding.
> 
> Nov  7 18:13:21 vdr2 vdr: [25428] initializing plugin: xineliboutput 
> (2.0.0-cvs): X11/xine-lib Ausgabe-Plugin
> 
> I could install e.g. softhddevice to crosscheck if still available in 
> yavdr precision ppa but kaffeine recording works fine?
> 
> The issue occurs using production software vdr 2.0.6 AND
> 
> using recent VDR and drivers with minidvblinux.de 6.5 live system 
> (xineliboutput).
> 
> Both SD (MTV,ARD,ZDF, DELUXE MUSIC) and HD Channels (ARD,ZDF) affected.
> 
> I've already increased the libxine buffer:
> 
> Nov  8 01:33:22 vdr2 vdr: [6124] [input_vdr] Using non-default 
> "media.xvdr.num_buffers_hd:5000"
> 
> It looks like a problem with the high bandwidth ZDF/ARD channels,
> like we had with the old TT/Siemens full-featured mpeg2 decoder dvb 
> cards but this should not occur with the advanced TDA10023 Tuner cards,
> 
> Recordings of the low bandwidth TELE5/DMF SD channels are always ok.
> 
> I've recorded TELE5 and DMF channels simultanously for 2h without any 
> buffer overflow in logs.
> 
> Nov  8 03:31:31 vdr2 vdr: [9454] buffer usage: 80% (tid=9453)
> Nov  8 03:31:57 vdr2 vdr: [9454] buffer usage: 60% (tid=9453)
> Nov  8 03:31:57 vdr2 vdr: [9454] buffer usage: 70% (tid=9453)
> Nov  8 03:31:57 vdr2 vdr: [9454] buffer usage: 60% (tid=9453)
> Nov  8 03:36:44 vdr2 vdr: [6108] buffer stats: 0 (0%) used
> 
> Recording high bandwidth zdf neo HD simultanously with DMF SD
> reproduces the issue:
> 
> Nov  8 04:28:14 vdr2 vdr: [11341] buffer usage: 80% (tid=11378)
> Nov  8 04:28:29 vdr2 vdr: [11341] buffer usage: 90% (tid=11378)
> Nov  8 04:28:32 vdr2 vdr: [11341] buffer usage: 100% (tid=11378)
> Nov  8 04:28:32 vdr2 vdr: [11341] ERROR: 1 ring buffer overflow (1 bytes 
> dropped)
> Nov  8 04:28:38 vdr2 vdr: [11341] ERROR: 15000 ring buffer overflows 
> (2820000 bytes dropped)
> Nov  8 04:28:45 vdr2 vdr: [11341] ERROR: 5570 ring buffer overflows 
> (1047160 bytes dropped)
> Nov  8 04:28:52 vdr2 vdr: [11341] ERROR: 4974 ring buffer overflows 
> (935112 bytes dropped)
> Nov  8 04:28:58 vdr2 vdr: [11341] ERROR: 20223 ring buffer overflows 
> (3801924 bytes dropped)
> 
> After some Minutes the buffers overflow and the record gets distorted.
> 
>>>> LIVE TV works fine.
>>>>
>>>> I've tried stable and testing minidvblinux.de VDR live systems to 
>>>> crosscheck, but same issue occurs.
>>>>
>>>> If I increase the buffer for the saa7164 cards with module parameter 
>>>> it's getting worse and distorted picture and sound.
>>>>
>>>> Any Ideas?
>>>>
>>>> Increase VDR's buffer in source code?
> 
> Where's the (ring) buffer code in VDR sources, I try increasing?
> 
> Nov  7 05:00:59 vdr2 vdr: [2348] [input_vdr] vdr_plugin_write: buffer 
> overflow ! (2068 bytes)
> Nov  7 05:01:20 vdr2 vdr: [2348] [input_vdr] vdr_plugin_write: buffer 
> overflow ! (2068 bytes)
> 
>>>>
>>>> What is the correct driver module debug parameter to provide a 
>>>> useful debog log?
> 
> There're no buffer options in the mantis kernel driver.
> 
>>>>
>>>> Y
>>>> tom
>>>>
>>>>
>>>
>>> Not a DVB drivers or hardware issue.
>>>
>>> Good old Kaffeine DVB app recordings are OK, no distorted stream.
>>>
>>> VDR BUG!
>>
>> Can you send me a recording that shows the problem?
>> You can use https://www.transfernow.net to do so.
> 
> https://www.transfernow.net/dl/20241108oxywvwO3/xMpWPpc5
> 
> ffmpeg analyze log attached here. -Attachment unix encoded TXT-
> 
>>
>> Klaus
>>
>>
> 
> y
> tom