Hallo Frank,
ich las im Cody-Thread vom Bigpatch Test7, habe aber zu der Version keinen Link gefunden.
Ist es der hier ?
http://bigpatch.vdr-developer.…7-bigpatch-test7.diff.bz2
Ich will ja nicht nörgeln, aber da ist immer noch der gleiche böse Bug drin, auf den ich Dich schon mal bei der Version 5 hinwies:
- needsBufferReserve = Setup.UseDolbyDigital && VPid != 0 && DPids && DPids[0] != 0;
+ // analogue TV with caid = 0xA0 needs bufferReserve of 1024 kilobyte to run
+ needsBufferReserve = ( Setup.UseDolbyDigital && VPid != 0 && DPids && DPids[0] != 0 ) || Caids[0] == 0x00A0;
Hier wird zunächst korrekt definiert, dass die Bufferreserve nicht nur für AC3, sondern auch für Analogtv zum Einsatz kommen soll.
Es soll aber später ein anderer Buffer (nämlich 1024k) als für AC3 zur Anwendung kommen, so dass die CA-ID A0 als Unterscheidungskriterium definiert wird.
Aber dann wird die Bufferreserve später ohne Differenzierung pauschal auf 1024k gesetzt:
- int RequiredBufferReserve = KILOBYTE(DvbCardWith4MBofSDRAM ? 288 : 576);
+ int RequiredBufferReserve = KILOBYTE(1024);
Damit wird der Buffer für AC3-Sender verdoppelt, was die Umschaltgeschwindigkeit unnötig verlängert.
Im letzten stuttering Patch sieht das so aus:
- needsBufferReserve = Setup.UseDolbyDigital && VPid != 0 && DPids && DPids[0] != 0;
+ // analogue TV with caid = 0xA0 needs bufferReserve of 1024 kilobyte to run
+ analogtv_channel = Caids[0] == 0x00A0;
+ needsBufferReserve = ( Setup.UseDolbyDigital && VPid != 0 && DPids && DPids[0] != 0 ) || analogtv_channel ;
und später
#ifdef FW_NEEDS_BUFFER_RESERVE_FOR_AC3
bool GotBufferReserve = false;
int RequiredBufferReserve = KILOBYTE(DvbCardWith4MBofSDRAM ? 288 : 576);
+ if ( analogtv_channel == true )
+ RequiredBufferReserve = KILOBYTE(1024);
#endif
Damit ist die Bufferreserve bei AC3 576kB, und bei Analogtv 1024kB
Ich weiss nicht, ob man einfach nur die Stellen ändern kann. Es muss wahrscheinlich auch an anderen Stellen noch angepasst werden.
Ich fürchte, Du hast irgendwann mal zwei verschiedene Versionen des stuttering patch vermengt. Am Anfang war tatsächlich die pauschale Erhöhung auf 1024kB, später wurde dies über die CA-ID auf analogtv begrenzt.
Ich würde das -auch wegen der Probleme bei Femon- vielleicht ganz rausnehmen. Wenn man z.B. pvrinput benutzt (was im Moment besser als das analogtv läuft) ist die CA-ID nämlich nicht mehr A0, sondern A1. Und schon ist der Patch wieder für die Katz.
Ich weiss, es ist ein Alptraum !