ffmpeg: Stream Duplizieren

24/05/2010 - 20:23 von Bernd Hohmann | Report spam
Zzt.. sende ich via

ffmpeg -s 352x288 -f video4linux2 -i /dev/video0 \
http://irgendwohin:8090/stream1.ffm

den Input einer Webcam lowres als FLV-Stream auf einen Webserver.

Nun möchte ich den Stream nochmal hires intern darstellen.

Hat jemand eine Idee wie man das macht? Ich kann leider nicht noch eine
ffmpeg-Instanz an /dev/video0 kleben.

Bernd

Wenn Frauen nicht wissen was sie machen sollen, ziehen sie sich aus ...
Und wenn Mànner nicht wissen, was sie machen sollen, dann schauen sie
sich Frauen an, die nicht wussten, was sie machen sollen ...
 

Lesen sie die antworten

#1 Markus Wichmann
24/05/2010 - 20:48 | Warnen spam
Am 24.05.2010 20:23, schrieb Bernd Hohmann:
Zzt.. sende ich via

ffmpeg -s 352x288 -f video4linux2 -i /dev/video0 \
http://irgendwohin:8090/stream1.ffm

den Input einer Webcam lowres als FLV-Stream auf einen Webserver.

Nun möchte ich den Stream nochmal hires intern darstellen.

Hat jemand eine Idee wie man das macht? Ich kann leider nicht noch eine
ffmpeg-Instanz an /dev/video0 kleben.




Du möchtest den Input also teilen...

öhm... tja... also, wenn du eine hinreichend aktuelle Shell hast, könnte
ja folgendes Konstrukt gehen:

</dev/video0 tee >(ffmpeg $hi-res -i /dev/stdin) | \
ffmpeg $lo-res -i /dev/stdin

Wenn deine Shell >() noch nicht kann, musst du halt folgendes machen:

mkfifo bla.fifo
ffmpeg $hi-res -i bla.fifo&
</dev/video0 tee bla.fifo | ffmpeg $lo-res -i /dev/stdin
wait
rm bla.fifo

Das setzt beides allerdings voraus, dass ffmpeg von /dev/stdin lesen
kann. Und dass er keine ioctls auf /dev/video0 macht, wenn er von dort
liest. Wenn er das tut, weiß ich nicht, ob man etwas tun kann.

Bernd




Tschö,
Markus

Ähnliche fragen