# MPEG2Dec

# Přehled

autoři: Dividee a další
verze: 1.10
kategorie: MPEG Dekodér (zdrojové) pluginy
stáhnout: http://www.avisynth.org/warpenterprises/ (zdrojový kód je na Dividee's homepage)
požadavky:

## Popis

Tento filtr je schopen vysílat v RGB a YUY2 barevných formátech.
Je to MPEG-2 dekodér a je schopen dekódovat jakékoliv MPEG-2 streamy čitelné v dvd2avi 1.76

## Filtry

Seznam všech filtrů začleněných do tohoto souboru mpeg2dec.dll:

### MPEG2source

`MPEG2source` (string filrname)

Je to filtr pro načtení projektového souboru s příponou d2v, uloženého pomocí dvd2avi.

### TemporalSmoother

`TemporalSmoother` (clip, int "strength", int "radius")

Je to port filtru TemporalSmoother z VirtualDubu. Pracuje v RGB32 & YUY2 pixelovém formátu.
Z nápovědy VirtualDubu:

> Tento filtr je adaptivní odstraňovač šumu, pracující podél časové osy; je nejefektivnější když se obraz příliš nehýbe. Zvyšte sílu filtru pro zesílení redukce šumu, a snižte ji pro snížení artefaktů zrnění a duchů. Pro lepší efekt se doporučuje kombinovat tento filtr s prostorovým (založeným na oblastech) odšumovačem. Všechny snímky v okolí ne větším než rádius jsou kontrolovány. Minimální rádius je 1, maximální je 7. Větší hodnoty jsou samozřejmě pomalejší. Výchozí je 3, což je hodnota použitá ve VirtualDubu. Výchozí hodnota pro sílu strength je 2.

Všimněte si, že narozdíl od verze z VirtualDubu, tento filtr nemá zpoždění (lag). To zajišťuje, že snímky potřebné pro jeho práci jsou v jeho bufferu. Proto je náhodný přístup v klipu pomalý, obzvláště u velkého rádiusu.

Příklad:

    # Účinky filtru nejsou 100% stejné v RGB a v YUV , zvláště při velké síle strength.
    # Zobrazme si rozdíl

    cYUY2 = ConvertToRGB(TemporalSmoother(ConvertToYUY2,10))
    cRGB = TemporalSmoother(10)
    Subtract(cYUY2, cRGB)

### SelectRangeEvery

`SelectRangeEvery` (clip, int every, int length, int "offset")

Vybere počet length snímků každých every snímků, počínaje po offset.

SelectRangeEvery(every, length, offset) je stejné jako SelectRangeEvery(Trim(offset, 0), every, length)

### BlendFields

`BlendFields` (clip)

Odstraňuje prokládání v klipu smícháním polí dohromady. Toto je blend režim vnitřního filtru VDubu pro odstranění prokládání portovaný do avisynthu. Pracuje v RGB a YUV režimu. Pokud avisynth oznámí na polích založený klip, Weave zařídí, že výstup je vždy založený na snímcích. Pokud to avisynth neuhodl, použijte předtím AssumeFrameBased.

### MotionMask

`MotionMask` (clip, int mode, int treshold, bool "denoise", bool "fast")

Vytváří dvoubarevný klip, který identifikuje pohyblivé části obrazu. Algoritmus pochází z filtru Smart Deinterlacer verze 2.5 pro VirtualDub, od Donalda Grafta. mode je celé číslo, které může brát 3 hodnoty: 1 pro rozdíly jen mezi snímky, 2 pro rozdíly jen mezi poli a 3 pro rozdíly mezi snímky i poli. treshol (celé číslo) je citlivost filtru. Nižší treshold ho dělá citlivější na pohyb a jako postranní efekt na šum. denoise (boolean, výchozí=true) aktivuje přídavné filtrování pro snížení chybné detekce pohybu kvůli šumu a umožní vám použít nižší prahové hodnoty. fast (boolean, výchozí=false) způsobuje, že filtr běží rychleji zpracováním dvou pixelů v čase, ale je méně přesný.

Pro podrobnější vysvětlení parametrů si prosím přečtěte nápovědu zahrnutou u Smart Deinterlacer pro VirtualDub.

V současnosti `MotionMask` zpracovává jen YUY2 data. Také si všimněte, že není podporovaný color režim z VirtualDub filtru (zatím).

### MaskedDeinterlace

`MaskedDeinterlace` (clip, clip mask, bool blend)

`MaskedDeinterlace` je vytvořen pro společnou práci s `MotionMask`. Výběrově odstraňuje prokládání z klipu clip podle hodnot klipu mask. mask je klip vrácný filtrem `MotionMask`. blend (boolean, výchozí=false) ukazuje zda je prováděno odstraňování prokládání zahozením poloviny řádků (jednoho pole) a jejich interpolací (když je blend false), nebo smícháním sousedních řádků dohromady (když je blend true).

mask a clip by měli mít stejnou šířku, výšku a formát pixelu.

### SmartDeinterlace

`SmartDeinterlace` (clip, clip mode, int treshold, int "denoise", bool "blend", bool "fast"`)`

Toto je zkratkou pro:

> MaskedDeinterlace (clip, MotionMask(clip, mode, treshold, denoise, fast), blend)

To ukazuje, že tyto filtry jsou opravdu jen portem filtru SmartDeinterlacer od Donalda Grafta.

### MaskedMix

`MaskedMix` (clip1, clip2, clip mask)

Vrací klip, kde je každý pixel vybrán buď z klipu clip1 nebo klipu clip2 podle hodnoty mask pro pixel. Tyto tři klipy by měli mít stejnou šířku, výšku a formát pixelu. To vám umožní použít jiné metody odstraňování prokládání než ty dvě, které nabízí `MaskedDeinterlace`.

Například může být použit následující skript pro reprodukci "zobrazení jen pohyblivých oblastí " - možnosti ve Smart Deinterlaceru pro VirtualDub:

    mask = MotionMask(3, 10, true)
    deint = BlendFields
    tmp = Blackness.Levels(0,1,255,127,127)
    MaskedMix(tmp, deint, mask)

`$English Date: 2004/08/13 21:57:25 $`

`Český překlad:24.4.2009`