Jestli máte problémy s AviSynthem obecně a nechce vůbec pracovat , zkuste vytvořit následující skript:
Version()
a otevřete ho ve Windows Media Player 6.4 (to je soubor "mplayer2.exe" umístěný v "C:\Program Files\Windows Media Player", jiné verze WMP nemusí pracovat). Pokud uvidíte zprávu o verzi Avisynth a Copyright, pak je správně nainstalován.
Pokud toto nefunguje zkuste následující:
Vytvoření skriptu v AviSynthu není vždy snadné, a někdy dává AviSynth velmi zvláštní výsledky. Zde je malý průvodce, který vám pomůže ukázat nejběžnější chyby.
Pokud AviSynth vytváří zvláštní výsledky, zkuste zjednodušit váš skript. Pokuste se rozdělit váš skript na co největší počet řádků. To Vám pomůže identifikovat problém. Například:
video = AviSource("file23.avi").ConvertToYUY2().Trim(539,8534) return AudioDub(Blur(video,1.5).Reduceby2().Bilinearrresize(512,384),Wavsource("file23.wav").AmplifyDB(4.5)
Není tak čitelné jako
AviSource("file23.avi") ConvertToYUY2() Trim(539, 8534) Blur(1.5) Reduceby2() Bilinearrresize(512, 384) AudioDub(Wavsource("file23.wav")) AmplifyDB(4.5)
Kromě toho je předností takového zápisu, že snadno můžete:
Pokud vám dává nějaký filtr neočekávané výsledky, zkuste ho použít s jednoduššími parametry. Vždy se seznamte s vnitřními filtry buď na domovské stránce AviSynthu nedo v dokumentaci, která přišla s vaší kopií AviSynth.
Přesvědčte se, že používáte stejné parametry, jaké jsou popsány v dokumentaci. Nejčastější chyba v tomto případě, se vztahuje k prvnímu parametru všech filtrů "clip". Přesvědčte se, že víte jak pracuje "implicit last". Pokud se hned neukáže poslední klip "last clip", tak většina filtrů nebude pracovat a zahlásí chybu "Invalid parameter" ("špatný parametr").
"Filter does not return a clip" ("Filtry nevrací klip") se zobrazí pokud výstup vašeho posledního filtru je přiřazen proměnné a neexistuje žádný poslední klip ("last clip"). Například:
video = AviSource("file.avi") audio = WavSource("file.wav") combined = AudioDub(video, audio)
bude chybný. To je možné řešit takto:
video = AviSource("file.avi") audio = WavSource("file.wav") AudioDub(video, audio)
kde 'last' nyní obsahuje klip, nebo:
video = AviSource("file.avi") audio = WavSource("file.wav") combined = AudioDub(video, audio) return combined
kde se vrací proměnná, nebo dokonce:
video = AviSource("file.avi") audio = WavSource("file.wav") return AudioDub(video, audio)
Vždy používejte Virtualdub nebo ještě lépe VirtualDubMod k testování vašich skriptů. Na něm se testuje celá funkčnost AviSynthu (jeho výrobci). AviSynth samozřejmě pracuje s jinými programy, ale jestli obdržíte chybu v jiných aplikacích, pak problém, pravděpodobně nebude v AviSynthu, ale nějaké omezení v daném programu.
Tyto omezení jsou spojeny většinou s:
Jak se připomínalo v "Pište jednoduše" je vždy dobré prověřit každý krok vašeho skriptu, jestli tam nejsou problémy.
Můžete okomentovat (deaktivovat) libovolný filtr (filtry) umístěním znaku '#' na začátku řádku (nebo před filtrem). Takovým způsobem bude (i celý zbytek řádku) AviSynthem ignorován.
Pro kontrolu můžete umístit "return last" nebo "return myvariable" v libovolném místě skriptu.
V libovolném místě skriptu můžete přidat filtr Info () pro získání informace o obrazu a zvuku v daném stadiu filtrování.
Autonačítání pluginů obvykle pracuje dobře. Ale nesmíte sem vkládat:
Musíte si také pamatovat, že všechny soubory AVSI ve vaší složce pluginů jsou automaticky zahrnuty do vašeho skriptu. To je doplněk, který vám dovolí zahrnout vaše vlastní (nebo vypůjčené) funkce, bez nutnosti kopírovat/vkládat je do každého skriptu.
Poznámka. Ve starých verzích AviSynthu (do 2.0.7) se všechny AVS soubory ve vaší složce s pluginy automaticky zahrnuly do vašeho skriptu. To také znamená, že pokud kopírujete příklady skriptů do složky s pluginy budou se vždy zahrnovat a mohou generovat chyby (ve starých verzích!).
Obecně, libovolný AVSI (dříve AVS) soubor, jehož příkazy nejsou vtaženy do funkcí budou problematické.
Všechny další formáty souborů kromě AVSI a DLL jsou ignorovány, takže zde můžete bezpečně nechávat vaši dokumentaci.
Jak vyprázdnit složku pluginů? Jednoduše vytvořte nějakou podsložku (např. "hide") a přesuňte tam všechny (nebo některé) soubory.
Pamatujte, že některé soubory (DirectShowSource.dll, TCPDeliver.dll plugins, ColorRGB.avsi) jsou částí AviSynthu (od v2.56).
Jestliže máte problémy s deformovaným obrazem, zkuste použít konzervativní velikost snímku. To znamená, používejte rozměry, kde výška i šířka jsou dělitelné 16. Používání rozměrů zobrazení, které není dělitelné 2 je v mnohých případech problematické, a je potřeba se mu vyhnout.
Jestliže přece objevíte nějaký problém s určitou velikostí zobrazení, vytvořte zprávu o chybě (bug-report). Podívejte se níže jak se to dělá.
Pokud máte stále problémy (načtení skriptů určitými enkodéry, nebo chyby barevných prostředí) podívejte se na otázky a odpovědi k AviSynthu (Q&A), obzvláště Q2.4: Problémy při čtení AVS souborů enkodérem X ? Také se podívejte sem Q1.4: Jaké jsou hlavní chyby v těchto verzích ? do FAQ (často kladené otázky).
Abychom vám mohli pomoci, budeme potřebovat hodně informací. Jestli nás jimi nebudete zásobovat, je pravděpodobné, že nebudeme schopni vám pomoci, nebo najít chybu.
Bezpodmínečně vždy uveďte:
Zprávy o chybách (Bug reports) mohou být předloženy na SourceForge Project page . Prověřte si, že tam ještě nebyla předložena zpráva o chybách podobná té vaší - to se mohlo stát. Chyby externích filtrů tam nesdělujte, ale sdělte je autorovi daného filtru.
Velmi dobrým místem, kde se dá získat pomoc je fórum Doom9 . Nejdřív prohledejte fórum, než se začnete ptát. Mnoha témat se tam už dotkli! - Potom vstupte do diskuse.
$English Date: 2009/07/12 12:50:31 $
Český překlad:10.9.2009