7.3. HOWTO sull'importazione dei codec Win32

7.3.1. Codec VFW

VFW (Video for Windows) sono le vecchie API Video per Windows. I loro codec hanno un'estensione .DLL o (raramente) .DRV. Se MPlayer non riesce a riprodurre il tuo AVI dando un messaggio del tipo:

UNKNOWN video codec: HFYU (0x55594648)

significa che il tuo AVI è codificato con un codec che ha HFYU come fourcc (HFYU = HuffYUV codec, DIV3 = DivX Low Motion, etc.). Ora che lo sai, devi scoprire quale DLL di Windows viene caricata per reiprodurre quel file. Nel nostro caso il system.ini contiene questa informazione in una riga siffatta:

VIDC.HFYU=huffyuv.dll

Perciò ti serve il file huffyuv.dll. Nota che i codec audio vengono specificati con il prefisso MSACM:

msacm.l3acm=L3codeca.acm

Questo è il codec MP3. Ora che hai tutte le informazioni necessarie (fourcc, file del codec, AVI di esempio), invia via mail la tua richiesta di supporto per il codec, e carica questi file sul sito FTP: ftp://upload.mplayerhq.hu/MPlayer/incoming/<nomecodec>/

Nota

In Windows NT/2000/XP cerca queste informazioni nel registro, per es. cerca "VIDC.HFYU". Per scoprire come farlo, guarda il vecchio metodo per DirectShow più sotto.

7.3.2. Codec DirectShow

DirectShow sono le API Video più recenti, che sono ancora peggio delle precedenti. Le cose sono più difficili con le DirectShow, dato che

  • system.ini non contiene le informazioni che servono, sono invece scritte nel registro e

  • bisogna sapere il GUID del codec.

Nuovo Metodo:

Usando Microsoft GraphEdit (veloce)

  1. Ottieni GraphEdit o dall'SDK delle DirectX o da doom9.

  2. Avvia graphedit.exe.

  3. Dal menu scegli GraphInsert Filters.

  4. Espandi DirectShow Filters.

  5. Seleziona il nome giusto del codec e espandilo.

  6. Nella voce DisplayName guarda il testo tra parentesi graffe dopo il backslash e segnatelo (cinque blocchi separati da trattini, il GUID).

  7. Il codec binario è il file specificato nella voce Filename.

Nota

Se non c'è alcun Filename e DisplayName contiene qualcosa del tipo device:dmo, allora è un codec DMO.

Vecchio Method:

Fai un grosso respiro e inizia a cercare nel registro...

  1. Avvia regedit.

  2. Premi Ctrl-T, disabilita le prime due opzioni, e abilita la terza. Scrivi il fourcc del codec (per es. TM20).

  3. Dovresti trovare un campo che contiene il percorso e il nome del file (per es. C:\WINDOWS\SYSTEM\TM20DEC.AX).

  4. Ora che sai il file, ci serve il GUID. Prova a fare di nuovo la ricerca, ma ora cerca il nome del codec, e non più il fourcc. Il suo nome si può scoprire quando Media Player sta riproducendo il file, controllando FilePropertiesAdvanced. Se non c'è, sei sfortunato. Prova ad indovinarlo (per es. cerca TrueMotion).

  5. Se trovi il GUID, dovresti trovare un campo "FriendlyName" e un "CLSID". Segnati il CLSID di 16 caratteri, questo è il GUID che ci serve.

Nota

Se la ricerca fallisce, prova ad abilitare tutte le opzioni. Puoi avere dei falsi positivi, ma potresti essere fortunato...

Ora che hai tutte le informazioni necessarie (fourcc, GUID, file del codec, AVI di esempio), invia via mail la tua richiesta di supporto per il codec, e carica questi file sul sito FTP: ftp://upload.mplayerhq.hu/MPlayer/incoming/<nomecodec>/

Se ti garba aggiungere un codec per conto tuo, leggi DOCS/tech/codecs.conf.txt.