Es war einmal müssen eine kleine youtube zu erstellen. Genauer gesagt, mit den verfügbaren Software-Dienst zu erstellen können Sie beobachten und zurückspulen Video. Dies gilt insbesondere gerade eine lange Video-Datei.
Nach der Lektüre eine Menge Material über das Thema hielt an der JW Playeri Nginx.Alle funktionieren, mit nur zurückspulen povozilsya. Else und Sie sind konfrontiert mit ähnlichen, dann müssen wir zwei Dinge berücksichtigen:
1. flv sollte Metadaten enthalten. Konvertieren in Adobe Video-Encoder, Daten müssen diese nicht dobovlyayutsya.
2. JWPlayerkak flashvars übersprungen werden, um Anbieter angeben = http
Auf der FLV-Format
Nach einer scharfen Popularität Adobe Flash, hinter einem Videoformat flv geschleppt. Das Format ist sehr jung, war mit Flash7 geboren. Das heißt, im Jahr 2003. Jahr. Sie können sich vorstellen, wie viel Nutzer nicht bereit sind zu dieser Zeit setzen verschiedene Plugins wie Flash.Daher nicht ganz fair anzunehmen, dass die FLV-Format in weiteren Kreisen bekannt war. Nun - ja, flv immer und überall.
Neben FLV-Streaming gibt es drei Alternativen:
1. Laden Sie die gesamte Video-Datei und dann spielen. Format?- Entweder, wie sein Spiel wird von der Verfügbarkeit eines Spielers auf dem Computer ab.
2. Die Verwendung von Container - wmv, mov. Die Datei kann anfangen zu spielen, nicht warten bis nach der vollständigen Ladung.Vom Standpunkt der Entwicklung der Website kann immer noch nicht sicher, ob ein Video zu wissen reproduziert auf dem Client.
3. Resort auf mediaservera. Das Vorhandensein solcher Lösungen auf Open-Source-basierten oder zu einem vernünftigen Preis ist sehr begrenzt.
Installation.
Wenn Sie virtuelle Hosts (Shared Hosting), dann die nächste nicht lesen können, weil eine untere erwähnt Wirkung bestimmter Rechte erforderlich ist, die in den admin will nicht geteilt ausführen zu;) Zum Glück gibt es Pseudo-Streaming, bei denen weder eine besondere Genehmigung nicht erforderlich ist [ 4].
Betrachten wir ein Beispiel auf Nginx basiert.
1. Apache2 setzen auf Port 8080
2. Nginx setzen auf Port 80, von der alle Anfragen werden apache2 Halse auf Port 80 werden. Mehr Details hier [2].
Konfiguratsyya Nginx:
server { listen 80; server_name video.mydomain.tld; access_log /var/log/nginx/video.access.log; location ~ \.flv$ { flv; root /var/www; } location / { root /var/www; index index.html index.htm; } }
3. Encode Video flv. Unter Linux: ffmpeg-i "01.avi"-y-f flv-ar 44100 "movie.flv"
4.Hinzufügen von Metadaten. Dies kann getan werden [5]. Oder unter Linux: flvtool2-UP movie.flv
5. Download der JW Player [3].
6. Dobovlyaem Code in eine Webseite
<div id="flashContent"></div> <script type="text/javascript"> var so = new SWFObject('player.swf','flashContent','720','576','9'); so.addParam('allowfullscreen','true'); so.addParam('allowscriptaccess','always'); so.addParam('bgcolor','#FFFFFF'); so.addParam("flashvars","file=movie.flv&provider=http"); so.write('flashContent'); </script>
Das ist es! Sollte funktionieren:)
Making the Vorspulen, Zurückspulen, in nginxdolzhno gesehen Protokolle wie folgt:
"GET / movie.flv? Start = 27503944 HTTP/1.1" 200 1752013
"GET / movie.flv? Start = 88336188 HTTP/1.1" 200 13564873
Wenn nichts funktioniert:
- Wenn die Protokolle neben 404 Fehler movie.flvvydaet, überprüfen Sie den Wert rootkonfiguratsii nginx;
- Wenn der Spieler nicht funktioniert oder zurückspulen in den Protokollen nginx fehlt den Start - nicht erstellt, oder erstellt falsche Metadaten.
[1] http://developer.longtailvideo.com/trac/wiki/Player5Formats
[2] http://kovyrin.net/2006/05/18/nginx-as-reverse-proxy/
[3] http://www.longtailvideo.com/players/jw-flv-player/
[4] http://stream.xmoov.com/
[5] http://www.buraks.com/flvmdi/