TCPServer / TCPSource

TCPServer (clip, int "port")
TCPSource (string hostname, int "port", string "compression")

Tento filtr vám umožní poslat klipy přes vaši síť. Můžete připojit několik klientů k jednomu stroji.

Syntaxe

Server:

TCPServer (clip, int "port")

Spouští serverové vlákno na aktuálním stroji běžícím na zadaném portu. Výchozí port je 22050.
Obdržíte výstup v aplikaci, ve které otevřete svůj skript, ale server poběží pouze dokud je tato aplikce (vdub například) otevřena.

Příklad:

Colorbars(512, 256)
TCPServer()

spustí server.

Klient:

TCPSource (string hostname, int "port", string "compression")

Toto připojí ke stroji zadané adresy (například IP-číslo) - k serveru běžícímu na daném portu. Výchozí port je zde také 22050.

Compression vám umožní zvolit kompresi použitou na video:
Typ komprese Popis
None Nepoužije žádnou kompresi. Nejrychlejší možnost - video nebude komprimováno před odesláním přes síť.
LZO Používá algoritmus  LZO slovníkové komprese. Docela rychlý, ale dobře komprimuje jen uměle vytvořené video, jako animované s velmi stejnorodými plochami.
Huffman Používá docela pomalou Huffmanovu rutinu od  Marcuse Geelnarda. Komprimuje přirozené video lépe než LZO.
GZip Používá  Gzip Huffmanovu kompresi. Pracuje podobně jako Huffmanovo nastavení, ale zdá se rychlejší.

Poukud není zadána žádná komprese, tak je aktuálně použita jako výchozí GZip. Prokládaný materiál se komprimuje hůř než neprokládaný kvůli sestupnému delta kódování. Pokud je problémem rychlost sítě, můžete chtít použít  SeparateFields.

Příklad:

TCPSource("127.0.0.1")
Info()

Toto připojí k lokálnímu stroji, pokud běží server.

Příklady

Můžete použít toto pro použití všech/některých filtrů na různých PC. Například:

# Počítač 1: AVISource
Deinterlacer
TCPServer

# Počítač 2: TCPSource
Sharpener
TCPServer

# Počítač 3:
TCPSource
# klientova aplikace (editor) -> video kodek -> finální soubor

Poznámky pro použití

Jakmile přidáte TCPServer, nemůžete přidávat do řetězce další filtry, nebo používat výstup z filtru. Server běží na odděleném vlákně, ale protože AviSynth není na vlákně úplně bezpečný (thread-safe) nemůžete spolehlivě spustit více serverů. Následující by nemělo být používáno:

AviSource("avi.avi") TCPServer(1001) TCPServer(1002) # Toto NENÍ dobrý nápad

Takže základním pravidlem je nikdy víc než jeden TCPServer na skript.

Použití příkazů po TCPServeru je také špatný nápad:

AviSource("avi.avi") TCPServer(1001) AviSource("avi2.avi") # Nedělejte toto, vypne to server.

AviSynth detekuje, že výstup z TCPServeru se nepoužívá, a tak zabije filtr Serveru. TCPServer musí být vždy posledním filtrem.

Seznam změn

v2.55 Původní vydání

$English Date: 2006/01/02 14:51:17 $

Český překlad:28.7.2008