[mythtv] [experimental patch] DVB (Update-20040626)

Jesper Sörensen jesper at datapartner.se
Sat Jun 26 11:34:09 EDT 2004


Kenneth,

>here is an updated version of the patch I've previously published. It's 
>against my tree after todays patch merge mayhem :)
>  
>

...

>Enjoy, but don't complain, caus it's experimental ;)
>  
>

Many thanks for your efforts! I won't complain ;) but I do have a little 
question:

In DVBCam::FindCaDescriptors there seem to be some hard coded stuff that 
has to do with Conax [ca_system_id == 0x0B00]. I don't know why it's 
there in the first place but in your patch you change the slot number 
test from 1 to 0 and that breaks the decryption with my Conax CAM (in 
slot 0 [the only one] of my Nova-CI-S). If I change this back to 1 it 
seems to work again, but shouldn't this hack be removed completely?

            if (tag == 0x09)
            {
                uint16_t ca_system_id = ((*(b+3))<<8) | *(b+4);
                uint16_t ca_pid = ((*(b+5)&0x1f)<<8) | *(b+6);
                fprintf(stderr,"Found CA Descriptor (CASID=%0.4X,"
                        " CAPID=%0.4X)\n", ca_system_id, ca_pid);

                for (int i=0; caids[i] != 0; i++)
                {
                    if (ca_system_id == caids[i] && ca_pid != 0)
                    {
-                        if (slot == 1 && ca_system_id == 0x0B00)  // 
What's going on here? Why do we ignore this CAM???
+                        if (slot == 0 && ca_system_id == 0x0B00)  // 
What's going on here? Why do we ignore this CAM???
                            continue;

                        if (first_send)
                            fprintf(stderr,"Adding CA Descriptor 
(CASID=%0.4X, "
                                    "CAPID=%0.4X)\n", ca_system_id, ca_pid);

                        capmt.AddCaDescriptor(len + 2, b+1);
                        found = true;
                    }
                }
            }

Greetings,
Jesper


More information about the mythtv-dev mailing list