Frage von thoralf:Hallo,
gibt es irgendeinen Weg, eine DV-Kamera als Frameserver zu nutzen? Es soll also der von der Kamera kommende (Live-) Stream als Quelle für weitere Manipulationen in (mehr oder weniger) Echtzeit dienen (ich dachte da an AviSynth) ...
Falls das nicht geht: gibt es spezielle Software (möglichst Open Source), mit der sich dergleichen bewerkstelligen läßt?
Vielen Dank für eure Antworten,
Thoralf.
Antwort von Gast:
: Hallo,
:
: gibt es irgendeinen Weg, eine DV-Kamera als Frameserver zu nutzen? Es soll also der von
: der Kamera kommende (Live-) Stream als Quelle für weitere Manipulationen in (mehr
: oder weniger) Echtzeit dienen (ich dachte da an AviSynth) ...
: Falls das nicht geht: gibt es spezielle Software (möglichst Open Source), mit der sich
: dergleichen bewerkstelligen läßt?
:
: Vielen Dank für eure Antworten,
: Thoralf.
Wenn"s sowas tatsächlich gäbe, wäre das der schnellste und effizienteste Weg die Videoköpfe und die Bänder zu ruinieren.
Antwort von Stefan:
Ausprobiert habe ich es nicht, aber es wäre einen Versuch wert:
Avisynth kann mit DirectShowSource() eine GRF Datei öffnen, die mit Graphedit (goile Anwendung aus dem M$ DirectX SDK) erstellt wurde. Der Clou ist jetzt mit Graphedit einen Graphen zu bauen oder umzubauen, der von der DV Kamera liest z.B. einen 08/15 DV Capture in AVI Graphen.
1. Versuch: In einem stinknormalen DV Capture Graph nach dem AVI Muxer den File Writer wegmachen, so dass Avisynth dort andocken kann.
2. Versuch: Oder auch schon vor dem AVI Muxer kappen, könnte auch gehen.
3. Versuch (Es ist bei der Avisynth Anleitung nicht klar, welche Daten Avisynth erwartet) Es kann sein, dass Du einen DV Decoder einschleifen musst. Dann statt einem Capture Graphen einen Preview Graphen aufbauen und den Video Renderer rauswerfen. Also MSDV Driver => DV Splitter => DV Video Decoder => -offen-
Die Kamerasteuerung musst Du dann wahrscheinlich von Hand machen ("Play!"), wenn Du kein Dauerlifebild magst. Eine weitere Einschränkung ist, dass die Anwendung, die von Avisynth bedient wird, in dem Stream nicht zurückspringen kann und den Stream auch nicht stoppen kann. Sie bekommt immer nur aufeinanderfolgende Bilder und das mit der Geschwindigkeit der DV Übertragung!
Gruss
Stefan
http://www.avisynth.org/DirectShowSourc ... ShowSource
Antwort von thoralf:
Hi Stefan,
danke für die ausführliche Antwort. Ich werde das mal durchprobieren und meine Ergebnisse wieder hier posten ...
Viele Grüße,
Thoralf.
Antwort von Fahrenheit-145:
Also das Gleiz nicht wirklich was kompliziertes hinbringt(sind etwas engstirnig die Leute da,leben mit Scheuklappen aber VOR den Augen)ist irgendwie zu erwarten gewesen....
P.
Antwort von Thoralf:
: Dass es noch nix fertiges im Open Source Sektor gibt, heisst ja nicht es geht nicht.
: Einer muss halt anfangen. Weiss ja nicht, was Du für eien Zeitplanung hast und was
: Du an Kenntnissen mitbringst. Wenn Du selber programmieren willst, kann ich Dich
: schon in die richtige Richtung "schubsen". Sag' Bescheid.
Tja, Zeitplanung: Magisterarbeit (jetzt oder nie), Kenntnisse: Turbo Pascal und Z80-Assembler ...
Lust hätte ich schon, aber gerade wirklich überhaupt keine Zeit :-( Das wird sich demnäxt wohl auch ledier nicht grundlegend ändern.
BVei doom9 hatte mich noch jemand auf TCPSource() aufmerksam gemacht, das ist wohl eine pre-alpha-funktion, die video streamt - vielleicht hilft das ja.
:
: Viel Glück
: Stefan
Danke :-) ,
Thoralf.
Antwort von Stefan:
Dass es noch nix fertiges im Open Source Sektor gibt, heisst ja nicht es geht nicht. Einer muss halt anfangen. Weiss ja nicht, was Du für eien Zeitplanung hast und was Du an Kenntnissen mitbringst. Wenn Du selber programmieren willst, kann ich Dich schon in die richtige Richtung "schubsen". Sag' Bescheid.
Viel Glück
Stefan
Antwort von thoralf:
: schreiben kann (ffdshow? dscaler? DS Filterwrapper für Plugins von Avisynth/VD -
: Träum...) und die mit Graphedit zusammen benutzen. Noch zu lösen: Wie kommt dann das
ja, genau das hatte mir vorgeschwebt. so 'ne Mischung aus Open Source und selber basteln ... aber selbst kundige Leute (siehe Link) sehen da wohl nicht so die großen Perspektiven.
Auf vjcentral bin ich auch schon gestossen, hört sich alles recht gut an, aber eben auch - teuer. Die einzige Ausnahme scheint veejay zu sein, da für Linux - das werde ich mir demnäxt mal anschauen.
:
: Video und nur das Video also ohne Programmoberfläche auf den Beamer?
Mhmm - der sekundäre Ausgang der Grafikkarte (habe hier mehr oder weniger zufällig eine matrox g550)? Da läßt sich bestimmt was bauen ...
:
: Viel Glück
: Stefan
Danke :-) , ich poste nochmal, wenn sich was ergeben hat ...
Thoralf.
gleitz dazu ...
Antwort von Stefan:
Achso. Oder kucken, was an DS Filtern da ist oder es im Netz gibt oder was man selbst schreiben kann (ffdshow? dscaler? DS Filterwrapper für Plugins von Avisynth/VD - Träum...) und die mit Graphedit zusammen benutzen. Noch zu lösen: Wie kommt dann das Video und nur das Video also ohne Programmoberfläche auf den Beamer?
Viel Glück
Stefan
Antwort von Stefan:
Hi Thoralf
das hört sich etwas anders an als Frameserving. Im Prinzip suchst Du eine Videojockey Software mit DV-Eingang oder gleich ein Life Production Programm mit DV (kuck nicht nach, das ist teuer!). Bei analogem Video wäre der Einstieg wohl
http://www.vjcentral.com/http://www.vjcentral.com/ aber bei DV?
Low-Cost wäre bei mir: Features der DV Kamera plus Genialität. Low Speed Color Shutter oder Old Movie Modus an der Kamera + Komische Linsen, Folien, Netze, Masken vor die Kamera halten...
http://www.vjcentral.com/article/show/8 ... e/show/824 bringt auch gute Vorschläge.
Viel Glück
Stefan
Antwort von thoralf:
: Jo, welches Programm wolltest Du eigentlich mit Livebildern füttern? Aber die
: Avisynth-Erweiterung ist cool, oder? Beim Ausprobieren gestern habe ich so MPEG1
: Dateien durch Avisynth gejaggert. MOV und WMV probiere ich bei Gelegenheit auch
: noch...
Ich wollte halt visuals für eine Party in Echtzeit machen - eine DV-Kamera nimmt den an den Reglern rumschraubenden DJ auf, der Stream wird dann durch ein paar Filter gejagt und das Resultat per Beamer an eine Wand geklatscht. Gibt es dafür auch andere Lösungen?
Und ja, directshowsource rockt :-)
Viele Grüße,
Thoralf.
Antwort von Stefan:
Jo, welches Programm wolltest Du eigentlich mit Livebildern füttern? Aber die Avisynth-Erweiterung ist cool, oder? Beim Ausprobieren gestern habe ich so MPEG1 Dateien durch Avisynth gejaggert. MOV und WMV probiere ich bei Gelegenheit auch noch...
Gruss
Stefan
Antwort von thoralf:
Hallo Stefan,
:
: Praxis, oder es geht nur mit Streams aus Dateien (File Reader am Anfang der
: Filterkette). Bin erstmal wieder ratlos.
Das ist der Fall. Verdammt, genau das Problem wollte ich lösen. Frames aus bereits existierenden Files zu serven ist ja kein Ding, aber mich hätte halt diese realtime-Geschichte sehr interessiert ...
Vielen Dank, Thoralf.
Doom9 dazu ...
Antwort von Stefan:
Hi Thoralf.
Komisch. Ab Avisynth 2.54, und das benutzt Du ja, soll das Öffnen von GRF Dateien nämlich grundsätzlich gehen. Ist vielleicht der Unterschied zwischen Theorie und Praxis, oder es geht nur mit Streams aus Dateien (File Reader am Anfang der Filterkette). Bin erstmal wieder ratlos.
Gruss
Stefan
Antwort von thoralf:
Hi Stefan,
habe das alles mit Avisynth 2.54 probiert, hier die Ergebnisse (mir war wirklich neu, daß directshowsource auch mit .grf - files umgehen können sollte):
:
: 1. Versuch: In einem stinknormalen DV Capture Graph nach dem AVI Muxer den File Writer
: wegmachen, so dass Avisynth dort andocken kann.
"Video returned: couldn't open GRF file.Schnittstelle nicht unterstützt". Dasselbe bei Audio, aber das ist eher unwichtig ... Könnte es sein, daß da noch etwas mit dem Colorspace nicht hinhaut? Avisynth arbeitet ja defaultmäßig im YV12, wenn ich mich richtig erinnere ...
:
: 2. Versuch: Oder auch schon vor dem AVI Muxer kappen, könnte auch gehen.
nee, auch nicht :-) Selbe Fehlermeldung.
In GraphEdit direkt funktioniert alles tadellos - d.h. ich kann den Video Renderer ans Ende der Kette hängen und mir den Output im ActiveX-Window anschauen oder das auch auf Platte schreiben lassen. Die Graphen sollten also m.E. in Ordnung sein.
:
: 3. Versuch (Es ist bei der Avisynth Anleitung nicht klar, welche Daten Avisynth
: erwartet) Es kann sein, dass Du einen DV Decoder einschleifen musst. Dann statt
: einem Capture Graphen einen Preview Graphen aufbauen und den Video Renderer
: rauswerfen. Also MSDV Driver => DV Splitter => DV Video Decoder => -offen-
funktioniert leider auch nicht.
Hast du noch irgendwelche Ideen?
Danke,
Thoralf.
Antwort von Anonymous:
Das geht vermutlich nicht, Fehlermeldung "unable to determine the duration of the video"
Habe folgendes Konstrukt:
DirectShowSource("DV_IN.GRF",fps=25, audio=false, video=true, seekzero=false, pixel_type="RGB24")
Graphedit-Filter:
Micosoft DV Camera ->
DV Splitter ->
DV Video Decoder ->
Color Space Converter (offen)