TCPServer
(clip, int "port")
TCPSource
(string hostname, int "port", string
"compression")
Dieser Filter ermöglicht es, Clips über das Netzwerk senden. Du kannst mehrere Clients mit dem gleichen Rechner verbinden.
TCPServer
(clip, int "port")
Dies wird einen Server-Thread auf dem aktuellen Rechner einrichten, der auf dem angegebenen Port läuft. Standard Port ist 22050.
Du bekommst die Ausgabe in der Anwendung, mit der du das Skript
öffnest, aber der Server wird nur so lange ausgeführt, wie diese
Anwendung (zum Beispiel Virtualdub) offen ist.
Beispiel:
Colorbars(512, 256)
TCPServer()
startet einen TCP Server.
TCPSource
(string hostname, int "port", string
"compression")
Dies wird dich mit einer Maschine mit der angegebenen Adresse
(IP-Nummer zum Beispiel) verbinden zu einem Server, der auf dem
angegebenen Port läuft. Standard Port ist auch hier 22050.
Mit compression kannst du die Komprimierung für das Video wählen:
Compression Typ | Beschreibung |
None | Keine Kompression. Schnellste Option - das Video wird nicht komprimiert, bevor es übers Netz gesendet wird. |
LZO | Berwendet LZO Wörterbuchkompression. Ziemlich schnell, aber komprimiert nur auf künstlichen Quellen gut, wie Zeichentrick, Anime mit sehr gleichmäßigen Flächen. |
Huffman | Verwendet eine eher langsame Huffman Routine von Marcus Geelnard. Komprimiert natürlcihes Video besser als LZO. |
GZip | Vermendet eine Gzip Huffman Kompression. Arbeitet so ähnlich wie die Huffman Einstellung, aber wirkt schneller. |
Wenn keine Kompression angegeb wird, wird derzeit GZip
standardmäßig verwendet. Interlaced Material komprimiert schlechter als
non-interlaced wegen Abwärtsdeltaencoding. Wenn die
Netzwerk-Geschwindigkeit ein Problem darstellt, solltest du
vielleicht
SeparateFields verwenden.
Beispiel:
TCPSource("127.0.0.1")
Info()
Dies verbindet sich zu einer lokale Maschine, falls ein Server läuft.
Hiermit kannst du jeden oder einige Filter auf einem anderen PC laufen lassen. Zum Beispiel:
# Clustermember 1:
AVISource
Deinterlacer
TCPServer
# Clustermember 2:
TCPSource
Sharpener
TCPServer
# Clustermember 3:
TCPSource
# client app -> video codec -> final file
Sobald du einen TCPServer hinzugefügt hast, kannst du keine weiteren
Filter der Kette hinzufügen, oder die Ausgabe aus dem Filter
weiterverwenden. Der Server läuft in einem separaten Thread, aber da
AviSynth nicht vollständig Thread-sicher ist, kannst du nicht
zuverlässig mehrere Serverlaufen lassen. Dies sollte nicht verwendet werden:
AviSource("avi.avi")
TCPServer(1001)
TCPServer(1002) # Das ist KEINE gute Idee
Daher ist die Grundregel: nie mehr als ein TCPServer pro Script.
Es wäre auch eine schlechte Idee, nach dem TCPServer noch Anweisungen zu setzen:
AviSource("avi.avi")
TCPServer(1001)
AviSource("avi2.avi") # Tu das nicht. Das würde den Server abschalten.
Wenn AviSynth entdeckt, dass die Ausgabe des TCPServer nicht verwendet wird, killt es den Server Filter. TCPServer muss immer der letzte Filter sein.
v2.55 | Initial Release |
$Date: 2006/01/02 14:51:17 $