Avisynth často kladené otázky (FAQ) - YV12

Obsah

  1. Co je YV12?
  2. Kde mohu stáhnout poslední stabilní verzi AviSynthu, která podporuje YV12?
  3. Kde mohu stáhnout plugin DGIndex/DGDecode, který podporuje YV12, pro import MPEG-1/MPEG-2/TS/PVA do AviSynthu ?
  4. Které kódovací programy podporují YV12?
  5. Jak mám použít v2.5x pokud kódovací programy nemohou zpracovat YV12 (jako TMPGEnc nebo CCE SP)?
  6. Jaké jsou hlavní přednosti zpracování v YV12?
  7. Jak mám použít VirtualDub/VirtualDubMod tak aby při tom neproběhly žádné zbytečné převody barev?
  8. Které vnitřní filtry podporují YV12?
  9. Které externí pluginy podporují YV12?
  10. Jsou nějaké nedostatky zpracování v YV12?
  11. Jak poznám jaké barevné prostředí používám v daném místě mého skriptu?
  12. Barvy jsou prohozené, když načtu DivX soubor do AviSynthu v2.5?
  13. Dostávám zelené (nebo vybarvené řádky)  na levé nebo pravé straně klipu, jak se jich zbavím?
  14. Nainstaloval jsem AviSynth v2.5 a dostávám následující chybovou zprávu: "Couldn't locate decompressor for format 'YV12' (unknown)."- Memohu najít dekompresor pro formát YV12?
  15. Nainstaloval jsem AviSynth v2.5 a DivX5 (nebo jedno z posledních vydání Xvid Koepi), a po otevření mého avs skriptu ve VirtualDub/VirtualDubMod/MPEG-2 encoder vidím jen černý obraz?
  16. 1Jsou nějaké bezeztrátové YV12 kodeky, které mohu použít například pro zachytávání?
  17. Některé důležité odkazy

Co je YV12?

Je několik různých způsobů reprezentování barev. Například: YUV a RGB barevná prostředí. V YUV barevném prostředí je jedna složka, která reprezentuje jas (luma) a dvě další složky, které reprezentují barevnost (chroma). Ve chvíli, kdy se jas předává se všemy detaily, detaily v barevných složkách mohou být redukovány snížením počtu vzorků - podvzorkováním (filtrace, nebo průměrování) což může být provedeno několika způsoby (Proto existuje řada formátů pro uchování obrazu v YUV barevném prostředí). YV12 je takový formát (kde je barva sdílená pro bloky 2x2 pixely), který je podporován AviSynthem. Mnoho důležitých kodeků uchovává video v YV12: MPEG-4 (x264, XviD, DivX a mnohé další), MPEG-2 na DVD, MPEG-1 a MJPEG.

Kde mohu stáhnout poslední stabilní verzi AviSynthu, která podporuje YV12?

"AviSynth v2.57" (a novější verze) můžete stáhnout zde.

Kde mohu stáhnout plugin DGIndex/DGDecode, který podporuje YV12, pro import MPEG-1/MPEG-2/TS/PVA do AviSynthu ?

Poslední DGIndex/DGDecode combo může stáhnout zde.

Které kódovací programy podporují YV12?

Standartní sestavy Virtualdubu (od Avery Lee) mají podporu YV12 v režimu fast recompress (rychlá rekomprese) od v1.5.6. Jsou také další dvě možnosti kódování do DivX/XviD:
Je modifikovaná verze (nazývaná VirtualdubMod), která má podporu YV12 : Tato modifikace (od pulco-citron, Suiryc a Belgabor) má podporu OGM a AVS-náhledu. Můžete ho stáhnout zde. Aby jste mohli využít podporu YV12 (bez provádění jakýchkoliv převodů barev) musíte otevřít vaše AVI ve VirtualdubMod a vybrat režim "rychlá rekomprese ("fast recompress").
Pro snadnou (a rychlou) podporu YV12 , můžete také zkusit utilitu ovládanou z příkazového řádku  AVS2AVI - komprimuje video ze skriptu AviSynthu použitím VFW kodeku, viz. také  zde.
MPEG-1/MPEG-2  kodeky HC a QuEnc také podporují (a dokonce vyžadují) YV12.

Jak mám použít v2.5x pokud kódovací programy nemohou zpracovat YV12 (jako TMPGEnc nebo CCE SP)?

Při použití TMPGEnc musíte přidat řádek "ConvertToRGB24" (s případnou volbou "interlaced") do vašeho skriptu, a pro CCE SP potřebujete přidat řádek "ConvertToYUY2 " , protože Windows nemá vnitřní YV12 kompresor.

Můžete také naistalovat některé  YV12 dekompresory (kodeky), které vám dekomprimují YV12-AVI , když načítáte avi do TMPGEnc nebo CCE SP.

Jaké jsou hlavní přednosti zpracování v YV12?

MPEG-2 enkodéry jako CCE, Procoder a TMPGEnc nepodporují YV12 vstup přímo. CCE a Procoder potřebují YUY2, a TMPGEnc RGB24. To pouze znamená, že poslední řádek skriptu AviSynthu musí být  ConvertToYUY2 (pro CCE/Procoder, nebo ConvertToRGB24  pro TMPGEnc), a proto nemůžete plně využít výhod  barevného prostředí YV12. Stále zůstávají dvě výhody:

  1. Všechno vnitřní zpracování v AviSynthu bude přeci jen rychlejší (je méně dat k filtrování, lepší struktura pro filtrováníto, a velmi rychlý převod z YV12 do YUY2), a určitě uvidíte rozdíl mezi v2.06 a v2.5.
  2. Pokud vytváříte progresivní klip je zde ještě jedna výhoda. Odložením převodu YV12->YUY2 na konec skriptu vám dovolí provést nejdřív IVTC nebo Deinterlace (odstranění prokládání) k vytvoření progresivních snímků. Ale převod z YV12 do YUY2 na progresivních snímcích zachová více barevných detailů než převod na prokladaných nebo na polích založených snímcích .
    Převody barev:
    CCE: YV12 -> YUY2 -> YV12
    TMPGEnc: YV12 -> RGB24 -> YV12

Jak mám použít VirtualDub/VirtualDubMod tak aby při tom neproběhly žádné zbytečné převody barev?

 Prostě načtěte váš avs soubor do VirtualDub/VirtualdubMod a nastavte v menu video "rychlá rekomprese" ("Fast recompress"). V tomto režimu zůstane zpracování ve formátu YV12 (veškerá nutná filtrace musí být provedena v samotném AviSynthu). V menu "komprese" ("compression") vyberte kodek který podporuje YV12, jako Xvid, DivX5, RealVideo (za předpokladu, že použijete poslední verze) nebo 3ivx D4 (za předpokladu, že použijete poslední verze). Všimněte si, že DivX3/4 také podporují YV12, kromě toho, že uživatelé PIV mohou zažít padání při kódování do DivX4 v YV12.
Pokud chcete prohlížet video potřebujete také  YV12 dekompresor.

Které vnitřní filtry podporují YV12?

V principu všechny vnitřní filtry podporují YV12 nativně. Jaké barevné formáty filtry podporují je uvedeno v dokumentaci.

Které externí pluginy podporují YV12?

Pluginy, které jsou kompilovány pro AviSynth v2.5 jsou uvedeny v části  Externí pluginy. Nové pluginy jsou vyjmenovány v tomto  dodatku. Většina z nich podporuje YV12 (viz. jejich dokumentace).

Jsou nějaké nedostatky zpracování v YV12?

Jak poznám jaké barevné prostředí používám v daném místě mého skriptu?

Aby jste viděli jaké barevné prostředí používáte v daném místě skriptu, přidejte:

Info() 

... a AviSynth vám dá řadu informací o barevném prostředí a mnoho dalšího!

Barvy jsou prohozené, když načtu DivX soubor do AviSynthu v2.5?

To se stává kvůli chybě ve starých verzích DivX5. Stáhněte si poslední sestavu nebu použijte "SwapUV(klip)".

Dostávám zelené (nebo vybarvené řádky) na levé nebo pravé straně klipu, jak se jich zbavím?

Váš dekodér je pravděpodobně špatný, zkuste použít ConvertToRGB() na konci vašeho skriptu, aby jste se ujistili a zkontrolovali zda řádek nezmizel. Některé aplikace mají problémy se zobrazením YV12 klipů kde šířka nebo výška není násobkem 16.

Existuje několik řešení tohoto problému:

Nainstaloval jsem AviSynth v2.5 a dostávám následující chybovou zprávu: "Couldn't locate decompressor for format 'YV12' (unknown)."- Memohu najít dekompresor pro formát YV12?

Nainstalujte kodek, který podporuje  YV12. DivX5 nebo některou z posledních sestav  XviD  nebo Helix YUV codec  nebo nějaký jiný (ffvfw, ffdshow). Pokud to stále nefunguje, upravte váš registr tak, jak je uvedeno u následujícího dotazu.

Nainstaloval jsem AviSynth v2.5 a DivX5 (nebo jedno z posledních vydání Xvid Koepi), a po otevření mého avs skriptu ve VirtualDub/VirtualDubMod/MPEG-2 encoder vidím jen černý obraz?

Ok, jak je vidět vaše video není dekomprimováno DivX 5.02 (nebo Xvid). Zkuste použít VCSwap utiliti pro přepnutí video kodeků.

Zkušený uživatel to může udělat také ručně. Jděte do složky Windows a přejmenujte soubor MSYUV.DLL, nebo přidejte do registru toto:

REGEDIT4 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32] 
"VIDC.YV12"="divx.dll"

Nahraďte soubor "divx.dll" souborem "xvid.dll" pro xvid v0.9 nebo "xvidvfw.dll" pro xvid v1.0.

Jsou nějaké bezeztrátové YV12 kodeky, které mohu použít například pro zachytávání?

Zachytávání v YV12 se nedoporučuje kvůli problémům s prokláním a berevností ; YUY2  bude obecně znamenat méně problémů. Bezeztrátový YV12 kodek je užitečnější pro ukládání mezisouborů před víceprůchodovým kódováním, aby se nemusely několikrát spouštět pro pro CPU náročné skripty. Existuje několik bezeztrátových YV12 kodeků:

Některé důležité odkazy:

$English Date: 2008/07/02 20:56:38 $

Český překlad:27.10.2008