Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
video [2011/06/09 13:06] admin |
video [2011/06/09 13:12] admin |
||
---|---|---|---|
Zeile 39: | Zeile 39: | ||
*[[http://www.linux-user.de/ausgabe/2004/11/035-transcode/index.html|transcode]] | *[[http://www.linux-user.de/ausgabe/2004/11/035-transcode/index.html|transcode]] | ||
- | =====Streaming-Server - Version 2011 ====== | ||
- | |||
- | *Siehe [[Streaming-Server]] | ||
- | |||
- | ==== Streaming-Server (alt) ==== | ||
- | |||
- | *Aktuelle ffmpeg Version von Packman: ffmpeg-0.5.21000svn-0.pm.1.5.i586 | ||
- | |||
- | */etc/ffserver.conf | ||
- | <file> | ||
- | Port 31337 | ||
- | BindAddress 0.0.0.0 | ||
- | MaxClients 1000 | ||
- | MaxBandwidth 100000 | ||
- | # Comment the following, on production use | ||
- | NoDaemon | ||
- | |||
- | <Feed feed1.ffm> | ||
- | File /tmp/feed1.ffm | ||
- | FileMaxSize 100M | ||
- | #Launch ffmpeg -y -v 9 -f video4linux2 -vc 2 -tvstd PAL -s 480x384 -b 512000 -r 10 -an -i /dev/video0 | ||
- | Launch ffmpeg -y -v 9 -f video4linux2 -vc 2 -tvstd PAL -s 480x384 -b 256000 -r 15 -an -i /dev/video0 | ||
- | #Launch ffmpeg -r 10 -s 320x240 -f video4linux2 -i /dev/video0 -vcodec flv http://localhost:31337/feed1.ffm | ||
- | </Feed> | ||
- | |||
- | #<Stream stream.flv> | ||
- | # Feed feed1.ffm | ||
- | # Format flv | ||
- | # VideoCodec flv | ||
- | # VideoFrameRate 2 | ||
- | # VideoBufferSize 80000 | ||
- | # VideoBitRate 256 | ||
- | # VideoQMin 1 | ||
- | # VideoQMax 5 | ||
- | # VideoSize 480x384 | ||
- | # PreRoll 0 | ||
- | # Noaudio | ||
- | #</Stream> | ||
- | |||
- | ## SWF output | ||
- | #<Stream stream.swf> | ||
- | # Feed feed1.ffm | ||
- | # Format swf | ||
- | # VideoCodec flv | ||
- | # VideoFrameRate 15 | ||
- | # VideoBitRate 200 | ||
- | # VideoQMin 5 | ||
- | # VideoQMin 5 | ||
- | # VideoSize 320x240 | ||
- | # PreRoll 0 | ||
- | # Noaudio | ||
- | #</Stream> | ||
- | |||
- | # ASF compatible | ||
- | <Stream stream.asf> | ||
- | Feed feed1.ffm | ||
- | Format asf | ||
- | VideoFrameRate 15 | ||
- | VideoSize 352x240 | ||
- | VideoBitRate 256 | ||
- | VideoBufferSize 40 | ||
- | VideoGopSize 30 | ||
- | AudioBitRate 64 | ||
- | StartSendOnKey | ||
- | Noaudio | ||
- | </Stream> | ||
- | |||
- | |||
- | # SWF output | ||
- | <Stream stream.swf> | ||
- | Feed feed1.ffm | ||
- | Format swf | ||
- | VideoCodec flv | ||
- | VideoFrameRate 15 | ||
- | VideoBitRate 512 | ||
- | VideoQMin 5 | ||
- | VideoQMax 9 | ||
- | VideoSize 480x384 | ||
- | PreRoll 0 | ||
- | Noaudio | ||
- | </Stream> | ||
- | |||
- | </file> | ||
- | |||
- | *Zum Starten: | ||
- | |||
- | ffserver & | ||
- | |||
- | *Zum Stoppen: | ||
- | |||
- | killall ffserver | ||
- | |||
- | ==== EINSTEIN ==== | ||
- | |||
- | */srv/www/htdocs/ball.bgweiz.at/live/index.php | ||
- | |||
- | <file> | ||
- | <html><head> | ||
- | <title>Live-Streaming</title> | ||
- | <meta http-equiv="refresh" content="1200" /> | ||
- | <link rel="stylesheet" href="../style.css" /> | ||
- | </head> | ||
- | <body style="background-color: #000000; text-align: center"> | ||
- | |||
- | <h1 style="color: #ffffff;">Flash Live Stream</h1> | ||
- | |||
- | <p><a href="/">zurück</a></p> | ||
- | <p><a href="http://193.170.221.1:31337/stream.asf">Windows Media Player Stream</a></p> | ||
- | <p> | ||
- | |||
- | <object classid="CLSID:D27CDB6E-AE6D-11cf-96B8-444553540000" width="480" height="384" | ||
- | codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0"> | ||
- | <param name="movie" value="http://193.170.221.1:31337/stream.swf"> | ||
- | <embed src="http://193.170.221.1:31337/stream.swf" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" width="480" height="384"> | ||
- | </embed> | ||
- | </object> | ||
- | |||
- | <!-- | ||
- | <object class="playerpreview" type="application/x-shockwave-flash" data="player.swf" width="480" height="384"> | ||
- | <param name="movie" value="player.swf" /> | ||
- | <param name="allowFullScreen" value="true" /> | ||
- | <param name="FlashVars" value="flv=http://193.170.221.1:31337/stream.flv&width=480&height=384&showstop=1&showvolume=1&showtime=1&showfullscreen=1&bgcolor=003d7e&bgcolor1=003d7e&bgcolor2=003d7e&autoplay=1" /> | ||
- | <p>Bitt Flash installieren.</p> | ||
- | </object> | ||
- | --> | ||
- | |||
- | </p> | ||
- | |||
- | </body></html> | ||
- | </file> | ||
- | |||
- | ===== Client ===== | ||
- | |||
- | mplayer %%http://193.170.221.1:31337/stream.asf%% | ||
=====Streaming /dev/video nach Flash Video====== | =====Streaming /dev/video nach Flash Video====== | ||
Zeile 216: | Zeile 82: | ||
ffmpeg -i 00007.mts -sameq -f mp4 -vcodec mpeg4 outfile.mp4 | ffmpeg -i 00007.mts -sameq -f mp4 -vcodec mpeg4 outfile.mp4 | ||
- | |||
- | =====Videostreaming===== | ||
- | |||
- | ==== Servervoraussetzungen ==== | ||
- | |||
- | *openSUSE 11.1 | ||
- | *root, uS.... | ||
- | *Kartenname: Bt878 | ||
- | *Treiber bttv | ||
- | *Soundkarte: Intel ICH6 | ||
- | *[[http://wiki.ubuntuusers.de/BT878|Link]] | ||
- | |||
- | dmesg | grep bttv => card=54 | ||
- | | ||
- | rmmod bt878 bttv | ||
- | |||
- | modprobe bttv card=54 | ||
- | |||
- | */etc/modprobe.d/tv_bttv | ||
- | <file> | ||
- | options bttv card=54 | ||
- | </file> | ||
- | |||
- | ==== Video Kanäle ==== | ||
- | |||
- | *0 = Television | ||
- | *1 = Composite | ||
- | *2 = s-video | ||
- | |||
- | |||
- | |||
- | ==== Port-Weiterleitung ==== | ||
- | |||
- | <code bash> | ||
- | #!/bin/bash | ||
- | |||
- | iptables -F | ||
- | iptables -X | ||
- | iptables -t nat -F | ||
- | iptables -t nat -X | ||
- | iptables -t mangle -F | ||
- | iptables -t mangle -X | ||
- | iptables -P INPUT ACCEPT | ||
- | iptables -P FORWARD ACCEPT | ||
- | iptables -P OUTPUT ACCEPT | ||
- | |||
- | echo 1 > /proc/sys/net/ipv4/ip_forward | ||
- | iptables -F -t nat | ||
- | iptables -t nat -A PREROUTING -p tcp --dport 31337 -j DNAT --to 192.168.100.40:31337 | ||
- | iptables -t nat -A POSTROUTING -j MASQUERADE | ||
- | |||
- | </code> | ||
- | |||
- | ==== Alter Gentoo-Server (2008) ==== | ||
- | |||
- | *Gentoo 2009 | ||
- | *PW: TW... | ||
- | *Wenn nötig X installieren : [[http://www.gentoo.org/doc/en/xorg-config.xml|http://www.gentoo.org/doc/en/xorg-config.xml]] | ||
- | |||
- | */etc/modules.autoload.d/kernel-2.6 | ||
- | <file> | ||
- | bttv card=54 | ||
- | </file> | ||
- | |||
- | *ffmpeg installieren: | ||
- | <file> | ||
- | emerge ffmpeg | ||
- | </file> | ||
- | |||
- | */etc/ffserver.conf | ||
- | <file> | ||
- | Port 8090 | ||
- | BindAddress 0.0.0.0 | ||
- | MaxHTTPConnections 1000 | ||
- | MaxClients 1000 | ||
- | MaxBandwidth 2000 | ||
- | CustomLog - | ||
- | NoDaemon | ||
- | |||
- | ################################################################## | ||
- | |||
- | <Feed feed1.ffm> | ||
- | File /tmp/feed1.ffm | ||
- | FileMaxSize 50M | ||
- | ACL allow 127.0.0.1 | ||
- | </Feed> | ||
- | |||
- | ################################################################## | ||
- | |||
- | # JPEG | ||
- | |||
- | <Stream test.jpg> | ||
- | Feed feed1.ffm | ||
- | Format jpeg | ||
- | VideoFrameRate 2 | ||
- | VideoIntraOnly | ||
- | VideoSize 480x384 | ||
- | #NoAudio | ||
- | Strict -1 | ||
- | </Stream> | ||
- | |||
- | #Flash | ||
- | |||
- | <Stream stream.swf> | ||
- | Feed feed1.ffm | ||
- | VideoBitRate 256 | ||
- | VideoFrameRate 25 | ||
- | VideoBufferSize 80000 | ||
- | Format swf | ||
- | VideoFrameRate 25 | ||
- | VideoSize 480x384 | ||
- | VideoQMin 3 | ||
- | VideoQMax 5 | ||
- | VideoCodec flv | ||
- | #NoAudio | ||
- | PreRoll 0 | ||
- | </Stream> | ||
- | |||
- | ################################################################## | ||
- | # Special streams | ||
- | |||
- | # Server status | ||
- | |||
- | <Stream stat.html> | ||
- | Format status | ||
- | |||
- | # Only allow local people to get the status | ||
- | ACL allow localhost 192.168.100.0 | ||
- | #ACL allow 10.0.0.0 10.0.0.255 | ||
- | #ACL allow 0.0.0.0 | ||
- | |||
- | #FaviconURL http://pond1.gladstonefamily.net:8080/favicon.ico | ||
- | </Stream> | ||
- | |||
- | <Redirect index.html> | ||
- | URL http://www.ffmpeg.org/ | ||
- | </Redirect> | ||
- | |||
- | </file> | ||
- | |||
- | *ffserver starten | ||
- | *ffmpeg | ||
- | <file> | ||
- | ffmpeg -y -v 9 -f video4linux2 -vc 2 -tvstd PAL -s 480x384 -r 25 -i /dev/video0 -vcodec flv http://localhost:8090/feed1.ffm | ||
- | </file> | ||
- | |||
- | === Stream speichern === | ||
- | |||
- | *ffmpeg und Download müssen mehr oder weniger gleichzeitig gestartet werden: | ||
- | |||
- | *ffserver und ffmpeg ganz normal wie oben erwähnt ausführen | ||
- | *In den Ordner wechseln, in den man den Stream speichern will | ||
- | |||
- | w3m http://localhost:8090/stat.html | ||
- | |||
- | *stream.swf mit ENTER auswählen, Download starten | ||
- | |||
- | |||
- | ==== Streaming mit ffmpeg (Ausgabe = Flash-Film = gute Qualität) ==== | ||
- | |||
- | */etc/ffserver.conf | ||
- | |||
- | <file> | ||
- | Port 31337 | ||
- | #8090 | ||
- | # bind to all IPs aliased or not | ||
- | BindAddress 0.0.0.0 | ||
- | # max number of simultaneous clients | ||
- | MaxClients 1000 | ||
- | # max bandwidth per-client (kb/s) | ||
- | MaxBandwidth 10000 | ||
- | # Suppress that if you want to launch ffserver as a daemon. | ||
- | NoDaemon | ||
- | |||
- | <Feed feed1.ffm> | ||
- | File /tmp/feed1.ffm | ||
- | FileMaxSize 50M | ||
- | </Feed> | ||
- | |||
- | <Stream stream.swf> | ||
- | Feed feed1.ffm | ||
- | Format swf | ||
- | VideoCodec flv | ||
- | VideoFrameRate 24 | ||
- | VideoBufferSize 80000 | ||
- | VideoBitRate 256 | ||
- | #VideoQMin 1 | ||
- | #VideoQMax 5 | ||
- | VideoSize 352x288 | ||
- | PreRoll 0 | ||
- | Noaudio | ||
- | </Stream> | ||
- | |||
- | </file> | ||
- | |||
- | *ffserver starten und laufen lassen | ||
- | |||
- | nb02:/etc # ffserver | ||
- | |||
- | *ffmpeg starten und laufen lassen | ||
- | |||
- | nb02:/etc # ffmpeg -r 24 -s 352x288 -f video4linux2 -i /dev/video0 http://localhost:31337/feed1.ffm | ||
- | |||
- | *Zum Anschauen: http://bgweiz.at/stream | ||
- | |||
- | */bgweiz.at/stream/index.php | ||
- | |||
- | <file> | ||
- | <html> | ||
- | <head><title>Live-Übertragung - Maturaball BG/BRG Weiz</title></head> | ||
- | <body> | ||
- | |||
- | <embed src="http://84.119.8.108:31337/stream.swf" width=352 height=288 type="application/x-shockwave-flash"></embed> | ||
- | |||
- | </body> | ||
- | </html> | ||
- | |||
- | </file> | ||
- | |||
- | ==== Streaming mit VLC (Ausgabe = Windows Media Stream = Schlechtere Qualität) ==== | ||
- | |||
- | *vlc -> Medien -> Streaming -> Aufnahmegerät öffnen (Einstellungen durchführen) -> Stream -> | ||
- | *Outputs: Lokal wiedergeben, HTTP: ip-adresse PORT: 8080 | ||
- | *Profil: windows (wmv,asf) | ||
- | *Stream (bzw. ALT+S) | ||
- | |||
- | *Anschauen etwa mit: | ||
- | |||
- | mplayer http://ip-adresse:8080 | ||
- | |||
- | * oder im Internet in HTML eingebunden: | ||
- | |||
- | <file> | ||
- | <html> | ||
- | <head><title>Live-Übertragung - Maturaball BG/BRG Weiz</title></head> | ||
- | <body> | ||
- | |||
- | <object id="Player1" width="426" height="305" classid="CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6" type="application/x-mplaye | ||
- | r2"> | ||
- | <param name="url" value="http://localhost:8080" /> | ||
- | <param name="FileName" value="http://localhost:8080" /> | ||
- | <param name="ShowControls" value="1" /> | ||
- | <param name="ShowDisplay" value="0" /> | ||
- | <param name="ShowStatusBar" value="1" /> | ||
- | <param name="AutoSize" value="1" /> | ||
- | <param name="stretchToFit" value=0 /> | ||
- | <param name="AutoStart" value="1" /> | ||
- | <embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/" | ||
- | src="http://localhost:8080" Name="NSPlayer1" ShowControls="1" ShowDisplay="0" ShowStatusBar="1" AutoSize="0" AutoStart="1" wi | ||
- | dth="426" height="305" /> | ||
- | </object> | ||
- | |||
- | <a href="">Windows Media Player</a> bzw. <a href="">VLC</a> werden benötigt. | ||
- | </body> | ||
- | </html> | ||
- | </file> | ||
=====Allgemeines===== | =====Allgemeines===== |