Portál AbcLinuxu, 10. května 2025 22:33
Zdravím, nevíte někdo jak vyřešit následující problém? Na domácím PC mi běží stream videa a zvuku z webkamery, který ve formátu FLV poběží na http protokolu, tento stream potřebuju, aby odebíral server, který ho bude cachovat a zárověň ty data z cache odesílat přes http protokol dál pro neomezeně UIP, Zkoušel jsem vlc, ale problém jsem měl na linuxu s flv formátem, a nastavením multiplexu.
př.:vlc -vvv "pirati.avi" --sout="#transcode{vcodec=FLV1,acodec=mpga,vb=200,deinterlace,fps=25,samplerate=44100,ab=128}:duplicate{dst=std{access=http{mime=video/x-flv},mux=ffmpeg{mux=flv},dst=0.0.0.0:8080/stream.flv},dst=display}"
Výsledná chyba byla:[00000302] ffmpeg private error: could not write header
Po připojení k streamu mi to ze serveru stáhlo pár bitů a hned EOF. Samozřejmě v mém případě bych input nedal video file, ale http adresu domácího streamu. Příčinou jsem si myslel, že je chybějící podpora mp3 ve ffmpeg kodeku. Doinstaloval jsem tedy libmp3lame, ale bez výsledně.
Prosím o radu, nejraději bych použil, něco jiného než VLC.Řešení dotazu:
dvgrab - -nostop -noavc | cvlc - --no-sub-autodetect-file --video-filter=deinterlace --audio-filter=normalize :demux=rawdv --sout "#transcode{vcodec=h264,vb=500,scale=1,acodec=mp4a,ab=80,channels=1,samplerate=22050}:duplicate{dst=http{mux=ffmpeg{mux=flv},dst=:8090/stream.flv},dst=file{mux=ffmpeg{mux=flv},dst=/bubuntu/rec/rec-`date +%Y-%m-%dT%H:%M:%S`.flv}}" cvlc --sout "#duplicate{dst=http{mux=ffmpeg{mux=flv},dst=:8090/brm}}" --no-sout-rtp-sap --no-sout-standard-sap --ttl=40 --sout-keep http://brmlab.cz/stream.flvAkorát místo trubky z dvgrabu budeš potřebovat nějaký jiný zdroj.
vlc "http://192.168.189.1:8080/stream.flv" --sout="#duplicate{dst=http{mux=ffmpeg{mux=flv},dst=:8080/stream}}"
root@debian /home/mihaloo/Desktop # ./stream.sh VLC media player 0.8.6h Janus starting VLC root wrapper... using UID 0 (root) *************************************** * Running VLC as root is discouraged. * *************************************** It is potentially dangerous, and might not even work properly. [00000293] main private error: no sout stream module matched "http" [00000291] stream_out_duplicate private error: no destination given [00000290] main stream output error: stream chain failed for `duplicate{dst=http{mux=ffmpeg{mux=flv},dst=:8080/stream}}' [00000288] main input error: cannot start stream output instance, aborting [00000279] main playlist: nothing to play
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.