Frage von Jens Möller:Hallo,
ich möchte per VLC eine Webcam streamen. Das habe ich auch zum Laufen
gebracht, aber ich habe einen Zeitversatz zwischen Aufnahme und
Bildbetrachtung auf nem 2ten Rechner von ca. 1 Sekunde. Kann man VLC so
einstellen, das es keine Zeitversatz gibt?
Gruß Jens
Antwort von Ralf Fontana:
Jens Möller schrieb:
> ich möchte per VLC eine Webcam streamen. [...]
> Kann man VLC so einstellen, das es keine Zeitversatz gibt?
Nein. Das komprimieren, übertragen und entpacken der Daten
braucht immer Zeit.
Du kannst versuchen diesen Zeitversatz zu reduzieren. Geeignetere und/oder
bezogen auf die Aufgabe besser implementierte Codecs finden, Buffer
reduzieren, Übertragungsoverhead reduzieren, schnellere Übertragungswege
verwenden.
Tante google brachte beim kurzen durchsehen leider keine brauchbaren
Beiträge zum Thema. Das legt den Schluss nahe, dass Du ein geeigneteres
Programm für Deine Aufgabe suchen solltest.
Antwort von Andre Beck:
"Jens Möller"
writes:
>
> ich möchte per VLC eine Webcam streamen. Das habe ich auch zum Laufen
> gebracht, aber ich habe einen Zeitversatz zwischen Aufnahme und
> Bildbetrachtung auf nem 2ten Rechner von ca. 1 Sekunde.
Du hast schon das dafür geeignetste Programm benutzt und eine wirklich
nur noch minimale Verzögerung. Alle anderen mir bekannten Streaming-
Lösungen verzögern noch mehr, teilweise *erheblich* mehr (;im Bereich von
15 bis 30s).
> Kann man VLC so einstellen, das es keine Zeitversatz gibt?
Man kann es auf minimalen Delay tunen, aber signifikant unter eine Sekunde
kommt man kaum. Das Delay ensteht dabei an zwei Stellen:
a) Delay von Aufnahme, Digitalisierung, Encoding bis zum Versand ins LAN
b) Delay durch den Empfänger, der je nach verwendetem Übertragungsproto-
koll einen Buffer benutzt, um noch Zeit zu haben, verlorene Pakete
nachzufordern und Pakete, die in falscher Reihenfolge eingegangen sind,
in die presentation sequence umzusortieren.
Bei einer Webcam bringt bereits deren Anschluss an den Rechner (;oft USB)
eine nicht zu unterschätzende Verzögerung, Encoding-Delay hängt vom ver-
wendeten Verfahren ab, beim Senden und Empfangen sowie für beträchtliche
Teile von b) ist aber auch das konkrete Protokoll relevant. Indem man
statt TCP-basierten Protokollen solche ohne Rückkanal und mit weniger
Overhead benutzt, kann man noch einiges an Delay beseitigen - guck Dir
mal UDP Unicast und vor allem Multicast genauer an. Ich meine, mit VLC
und Multicast in den Bereich von ca. 5 bis 10 Frames Delay gekommen zu
sein, als ich das zuletzt getestet habe.
--
The S anta C laus O peration
or "how to turn a complete illusion into a neverending money source"
-> Andre "ABPSoft" Beck ABP-RIPE Dresden, Germany, Spacetime <-
Antwort von Jens Möller:
Danke, hab' mir so was schon gedacht.
Gibt es vielleicht Komponenten für Delphi, damit man so was selber schreiben
kann?
"Ralf Fontana" schrieb im Newsbeitrag
news:o1hifha3ecdg$.1w6dw3kcubupx.dlg@40tude.net...
> Jens Möller schrieb:
>
> > ich möchte per VLC eine Webcam streamen. [...]
> > Kann man VLC so einstellen, das es keine Zeitversatz gibt?
>
> Nein. Das komprimieren, übertragen und entpacken der Daten
> braucht immer Zeit.
>
> Du kannst versuchen diesen Zeitversatz zu reduzieren. Geeignetere und/oder
> bezogen auf die Aufgabe besser implementierte Codecs finden, Buffer
> reduzieren, Übertragungsoverhead reduzieren, schnellere Übertragungswege
> verwenden.
>
> Tante google brachte beim kurzen durchsehen leider keine brauchbaren
> Beiträge zum Thema. Das legt den Schluss nahe, dass Du ein geeigneteres
> Programm für Deine Aufgabe suchen solltest.
Antwort von Lars Mueller:
"Jens Möller" wrote:
>
> Danke, hab' mir so was schon gedacht.
Was denn?
Antwort von Jens Möller:
"Lars Mueller" schrieb im Newsbeitrag
> "Jens Möller" wrote:
> >
> > Danke, hab' mir so was schon gedacht.
>
> Was denn?
Das die Bearbeitung Zeit braucht und es eine Verzögerung gibt.