Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] Re: VDR-1.3.19 : DD-Audio stuttering when switching betweenPro7 and Sat1
From the discussions that have been mentioned about this issue and my
issues with particular DD Decoders, the consensus was possibly due to a
ring buffer issue. Well Cym seemed to find the area that is in
question, and we experimented with a patch. This has made a 99%
improvement, just by doubling the ring buffer. I have had 1 and ONLY 1
instance of a brief stutter since, and I am sure if I increased it a
little more it might fix that but hesitant to change any more till I
notice a major problem. So try as you might, thanks a ton goes out to
Cym for finding the area and Christian I believe is who came up with the
thought. But I am definately running standard memory on my FF card, I
have not upgraded it.
diff -ruN vdr-1.3.20/transfer.c vdr-1.3.20.transfer/transfer.c
--- transfer.c 2005-02-08 08:28:38.000000000 -0600
+++ transfer.c 2005-02-08 08:36:42.000000000 -0600
@@ -80,7 +80,7 @@
//XXX To resolve this, the remuxer or PlayPes() should
synchronize
//XXX audio with the video frames. 2004/09/09 Werner
if (!GotBufferReserve) {
- if (ringBuffer->Available() < 3 * KILOBYTE(192) / 2) { //
used to be MAXFRAMESIZE, but the HDTV value of KILOBYTE(512) is way too
much here
+ if (ringBuffer->Available() < 3 * KILOBYTE(384) / 2) { //
used to be MAXFRAMESIZE, but the HDTV value of KILOBYTE(512) is way too
much here
cCondWait::SleepMs(20); // allow the buffer to collect
some reserve
continue;
}
Good Luck,
Chad
Klaus Schmidinger wrote:
christian jacobsen wrote:
Hallo,
I noticed that when enabling DD on Pro7 and then switching directly
to Sat1 then audio is stuttering. If I switch to Pro7, then RTL2 and
then Sat1 then DD sound is OK (have to wait for picture to come on
RTL2).
All tests on Vanilla VDR 1.3.19 !
How to reproduce (always wait for picture and sound) :
1. start on RTL.
2. swith to sat1, then RTL2 and Pro7.
3. Enable DD in Audiomenü (on Pro7)
4. switch directly to Sat1 (press 5 on my channels.conf)
Now sound is stuttering on my maschine.
If I do this instead :
4. switch to RTL2
5. switch to Sat1
Sound is OK.
Here the channels.conf for this test :
Das Erste;ARD:11837:hC34:S19.2E:27500:101:102=deu:104:0:28106:1:1101:0
ZDF;ZDFvision:11954:hC34:S19.2E:27500:110:120=deu,121=2ch;125=dd:130:0:28006:1:1
079:0
NDR FS
MV;ARD:12110:hC34:S19.2E:27500:2401:2402=deu:2404:0:28224:1:1073:0
RTL Television,RTL;RTL
World:12188:hC34:S19.2E:27500:163:104=deu:105:0:12003:1:1
089:0
SAT.1;ProSiebenSat.1:12480:vC34:S19.2E:27500:1791:1792=deu;1795=deu:34:0:46:133:
33:0
RTL2;RTL World:12188:hC34:S19.2E:27500:166:128=deu:68:0:12020:1:1089:0
ProSieben;ProSiebenSat.1:12480:vC34:S19.2E:27500:255:256=deu;257=deu:32:0:898:13
3:33:0
Greetings
Christian Jacobsen
I tried this here but had no such effect.
But then again I'm already a little further than 1.3.19, so please
try this again with version 1.3.20.
Klaus
diff -ruN vdr-1.3.20/transfer.c vdr-1.3.20.transfer/transfer.c
--- transfer.c 2005-02-08 08:28:38.000000000 -0600
+++ transfer.c 2005-02-08 08:36:42.000000000 -0600
@@ -80,7 +80,7 @@
//XXX To resolve this, the remuxer or PlayPes() should synchronize
//XXX audio with the video frames. 2004/09/09 Werner
if (!GotBufferReserve) {
- if (ringBuffer->Available() < 3 * KILOBYTE(192) / 2) { // used to be MAXFRAMESIZE, but the HDTV value of KILOBYTE(512) is way too much here
+ if (ringBuffer->Available() < 3 * KILOBYTE(384) / 2) { // used to be MAXFRAMESIZE, but the HDTV value of KILOBYTE(512) is way too much here
cCondWait::SleepMs(20); // allow the buffer to collect some reserve
continue;
}
Home |
Main Index |
Thread Index