7.3. Win32 codec importálási HOGYAN

7.3.1. VFW codec-ek

A VFW (Video for Windows) egy régi Videó API Windowshoz. A codecjei .DLL vagy (ritkán) .DRV kiterjesztésűek voltak. Ha az MPlayernek nem sikerül lejátszani az AVI fájlodat egy ilyesmi üzenettel:

UNKNOWN video codec: HFYU (0x55594648)

Ez azt jelenti, hogy az AVI fájlod egy olyan codec-kel lett elkódolva, aminek HFYU a fourcc-je (HFYU = HuffYUV codec, DIV3 = DivX Low Motion, stb.). Most, hogy már tudod ezt, meg kell keresned, melyik DLL-t tölti be a Windows ennek a fájlnak a lejátszásához. A mi esetünkben, a system.ini tartalmazza ezt az információt ebben a sorban:

VIDC.HFYU=huffyuv.dll

Szükséged lesz a huffyuv.dll fájlra. Figyelj rá, hogy az audio codec-ek MSACM prefix-szel vannak megadva:

msacm.l3acm=L3codeca.acm

Ez az MP3 codec. Most már minden szükséges információval rendelkezel (fourcc, codec fájl, példa AVI), küldd be a codec támogatási kérésedet egy levélben és töltsd fel ezket a fájlokat az FTP-re: ftp://upload.mplayerhq.hu/MPlayer/incoming/<codecname>/

Megjegyzés

Windows NT/2000/XP alatt a regisztrációs adatbázisban keresd ezeket az információkat, pl. keress rá a "VIDC.HFYU"-ra. Hogy ezt hogy tudod megcsinálni, nézd meg a régi DirectShow módszert lejjebb.

7.3.2. DirectShow codec-ek

A DirectShow egy újabb Videó API, ami még rosszabb, mint az elődje. A dolgok nehezebben mennek a DirectShow-val, mivel

  • a system.ini nem tartalmazza a megfelelő információkat, azok a regisztrációs adatbázisban vannak és

  • szükségünk van a codec GUID-jére.

Új módszer:

A Microsoft GraphEdit használatával (gyors)

  1. Szedd le a GraphEdit-et a DirectX SDK-ból vagy a doom9-ről.

  2. Indítsd el a graphedit.exe-t.

  3. A menüben válaszd ki a GraphInsert Filters-t.

  4. Nyisd ki a DirectShow Filters elemeit.

  5. Válaszd ki a megfelelő codec nevet és nyisd ki.

  6. A DisplayName bejegyzésben nézd meg a francia zárójelek között lévő karakterláncot és írd le (öt vonallal elválasztott blokk, a GUID).

  7. A codec bináris a Filename bejegyzésben megadott fájl.

Megjegyzés

Ha nincs Filename és a DisplayName olyasmit tartalmaz, hogy device:dmo, akkor ez egy DMO-Codec.

Régi módszer:

Végy egy nagy levegőt és kezdj keresni a regisztrációs adatbázisban...

  1. Indítsd el a regedit-et.

  2. Nyomd meg a Ctrl-F-et, kapcsold ki az első két kijelölő dobozd és engedélyezd a harmadikat. Írd be a codec fourcc-jét (pl. TM20).

  3. Egy mezőt kell látnod, ami az elérési utat és a fájl nevét tartalmazza (pl. C:\WINDOWS\SYSTEM\TM20DEC.AX).

  4. Most, hogy megvan a fájl, a GUID-t kell megkeresni. Próbáld újra a keresést, de most a codec nevére keress, ne a fourcc-re. A nevét a Media Player kiírja a fájl lejátszása közben, ha megnézed a FilePropertiesAdvanced fület. Ha mégsem, akkor így jártál. Próbáld meg kitalálni (pl. keress rá a TrueMotion-ra).

  5. Ha megvan a GUID, látnod kell egy FriendlyName és egy CLSID mezőt. Írd le a 16 bájtos CLSID-t, ez a GUID, ami kell.

Megjegyzés

Ha nem sikerült a keresés, próbáld meg bekapcsolni az összes kijelölő dobozt. Ekkor kaphatsz hamis találatokat, de talán szerencséd lesz...

Most, hogy már megvan minden szükséges információ (fourcc, GUID, codec fájl, példa AVI), küldd el a codec támogatási kérelmedet levélben és töltsd fel a fájlokat az FTP-re: ftp://upload.mplayerhq.hu/MPlayer/incoming/<codecname>/

Ha saját magad szeretnél beépíteni egy codec-et, olvasd el a DOCS/tech/codecs.conf.txt-t.