Benvenuto su . Clicca qui per Registrarti

Oggi è gio 18 apr 2024, 15:03


Benvenuto su Ospite! Iscriviti  Oppure effettua il  Login

Informazione:

Ncam 10.4

Moderatori: GioTag, filolau

Ncam 10.4

Messaggioda michele01 » mer 28 ago 2019, 12:05

ImmagineNcam 10.4Immagine

Code

[dvbapi] Rewritten the CA PMT parsing code
Some key notes for this revision:
* The CA PMT and PMT parsing code is split into separate functions. Additional functionality is also moved to different functions.
* The previous CA PMT parsing logic is retained (written by theparasol), but the code is much simpler, easier to maintain and a bit faster.
* The CA PMT message is not completely parsed now if there is no need for it (e.g. no change is made to the channel).
* The PMT is now parsed only if it's necessary (e.g. for powervu channels, when no streams are present in CA PMT, etc).
* Added preliminary support for reading the "ca_pmt_cmd_id" value. A future update (in oscam and enigma2) will allow using multiple oscam instances simultaneously.
* Added support for a new descriptor with tag 0x87 in the CA PMT message, used exclusively for sending the ca device information.
* Added detailed information for the private CA PMT descriptors supported by oscam in the readme (for dvbapi client developers).
[dvbapi] Fixed previous commit when WITH_EXTENDED_CW is enabled
[dvbapi] Fixed 'ca_pmt_cmd_id' value for PMT files
For CA PMT messages received via PMT files, set the "ca_pmt_cmd_id" to a proper value (ok_descrambling) instead of zero.
Also made few cosmetic changes.
[dvbapi] Reworked 'ca_pmt_cmd_id' skipping logic
According to the spec (https://www.dvb.org/resources/public/st ... 221.V1.pdf), the "ca_pmt_cmd_id"
value shall be present inside the ES info loop. Unfortunately, each dvbapi client does each own thing. The
only reliable way to detect when this info is present in the CA PMT is to actually check its value, like it
was done in the old code.
Most boxes always send the typical value of 0x01 (ok_descrambling) and the above check works fine because
there is no descriptor_tag 0x01 to get confused with. On the contrary, for enigma2, values like 0x03 (query),
0x04 (not_selected) are possible (not yet, but soon). Skipping these higher values the same way will not work,
because descriptors with such tags can exist, so a different check is implemented for enigma2.
In practice, this commit fixes the VDR dvbapi plugin, as well as the enigma2 boxes with wrong dvbapi boxtype
setting ('none' instead on the correct 'dreambox' - the setting is irrelevant now, but will make a difference
in the future, so make sure you set it correctly).
[dvbapi] Added option to enable/disable ecm.info file creation
[nemu] Switched to oscam's function for getting the section length
[biss] Clean up and bug fixes in Mode 1

Codice

    [dvbapi] Riscritto il codice di analisi di CA PMT
    Alcune note chiave per questa revisione:
    * Il codice di analisi di CA PMT e PMT è suddiviso in funzioni separate. Funzionalità aggiuntive vengono inoltre spostate in diverse funzioni.
    * La precedente logica di analisi di CA PMT viene mantenuta (scritta da theparasol), ma il codice è molto più semplice, più facile da gestire e un po 'più veloce.
    * Il messaggio CA PMT non viene completamente analizzato ora se non è necessario (ad es. Non viene apportata alcuna modifica al canale).
    * Il PMT viene ora analizzato solo se è necessario (ad es. Per i canali Powervu, quando non sono presenti flussi in CA PMT, ecc.).
    * Aggiunto supporto preliminare per la lettura del valore "ca_pmt_cmd_id". Un futuro aggiornamento (in oscam ed enigma2) consentirà l'utilizzo simultaneo di più istanze di oscam.
    * Aggiunto il supporto per un nuovo descrittore con tag 0x87 nel messaggio CA PMT, utilizzato esclusivamente per l'invio delle informazioni sul dispositivo ca.
    * Aggiunte informazioni dettagliate per i descrittori privati ​​di CA PMT supportati da oscam nel file readme (per sviluppatori client dvbapi).
    [dvbapi] Corretto il commit precedente quando WITH_EXTENDED_CW è abilitato
    [dvbapi] Corretto il valore 'ca_pmt_cmd_id' per i file PMT
    Per i messaggi di CA PMT ricevuti tramite file PMT, impostare "ca_pmt_cmd_id" su un valore corretto (ok_descrambling) anziché zero.
    Inoltre ha apportato alcune modifiche estetiche.
    [dvbapi] Rielaborata logica di salto 'ca_pmt_cmd_id'
    Secondo le specifiche (https://www.dvb.org/resources/public/st ... 221.V1.pdf), il "ca_pmt_cmd_id"
    il valore deve essere presente all'interno del loop informativo ES. Sfortunatamente, ogni client dvbapi fa tutto da solo. Il
    l'unico modo affidabile per rilevare quando queste informazioni sono presenti in CA PMT è effettivamente controllarne il valore, come quello
    è stato fatto nel vecchio codice.
    La maggior parte delle caselle invia sempre il valore tipico di 0x01 (ok_descrambling) e il controllo sopra funziona bene perché
    non c'è descrittore_tag 0x01 con cui confondersi. Al contrario, per enigma2, valori come 0x03 (query),
    0x04 (not_selected) sono possibili (non ancora, ma presto). Saltare questi valori più alti allo stesso modo non funzionerà,
    perché possono esistere descrittori con tali tag, quindi viene implementato un controllo diverso per enigma2.
    In pratica, questo commit corregge il plugin dvbapi VDR, così come le caselle enigma2 con il tipo di casella dvbapi errato
    setting ('none' invece sul 'dreambox' corretto - l'impostazione è irrilevante ora, ma farà la differenza
    in futuro, quindi assicurati di impostarlo correttamente).
    [dvbapi] Aggiunta opzione per abilitare / disabilitare la creazione di file ecm.info
    [nemu] Passato alla funzione oscam per ottenere la lunghezza della sezione
    [biss] Pulizia e correzione di errori in Modalità 1

format mips-ipk

Immagine

format deb

Immagine
Avatar utente
michele01
Site Admin
Site Admin
 
Messaggi: 16612
Iscritto il: ven 25 apr 2014, 11:40
Has thanked: 226 times
Been thanked: 630 times

Torna a Ncam

cron
//