Ich antworte hier im Thread, beziehe mich aber auf die Postings ab diesem Posting von @Oldenburger im Nachbarthread:
viewtopic.php?p=1650984#p1650984
Im Prinzip geht es darum, dass der DAB-Player bei sehr schlechten Empfangsbedingungen ("Grasnarbe") besser abschneidet und noch Audiofetzen liefert, während QIRX schon schweigt.
Da bei DAB alles digital ist, müssten beide Programme eigentlich auf die identischen IQ-Samples am Eingang auch vollkommen indentisch am Ausgang reagieren. Na ja, ganz so digital und logisch wie bei TTL-Schaltungen ist es beim extrem wichtigen Viterbi-Decoder nicht. Im Normalfall und bei guter SNR liefern verschiedene Implementationen praktisch die selben Antworten/ Fehlerraten. Wenn die SNR aber in den Keller geht, reagieren die Decoder unterschiedlich. Am Ende kommen also unterschiedliche Bit-Streams raus, die sich dann wiederum mehr oder weniger gut von Bitfehlern befreien lassen. Ein paar "gute Bits" mehr oder weniger entscheiden also zwischen "Audio" oder "Mute".
Um es kurz zu machen: "Schnelle" Viterbi-Dekoder "patzen" bei schlechter SNR und man schaltet dann im jeweiligen Programm automatisch zu dem etwas "langsameren" Viterbi-Algo um.
Für QIRX wäre es vorstellbar, unterhalb einer SNR von meinetwegen 11dB, eine andere exportierte Funkion in der viterbi.dll aufzurufen, die halt "robuster" ist. Das muss aber Clem entscheiden. Dann gibt es praktisch keinen Unterschied mehr.
Wer das Ganze mal ausprobieren möchte, benutze die mit QIRX installierte "viterbi.dll" mit den IQ-Aufnahmen von @Oldenburger. Dann probiert die viterbi.dll aus meinem Git. Mit "meiner" DLL schneidet QIRX schlechter ab.