Frage

Ich versuche zu verstehen und wirklich herauszufinden, wann progressiven Download verwenden vs. rtmp in Flex / Flash. Es scheint, dass die Hauptsache ist, dass rtmp nicht mit http serviert wird, während progressive Download ist. Da es nicht RTMP, wird die Ressource geschützt, da gibt es keine Möglichkeit zum rtmp Server von außerhalb der swf zu verbinden.

Auch wenn der Benutzer diesen Objektcode sehen und kann die Lage herauszufinden,

<object data="http://media.example.com/jw-player/player.swf" >
    <param value="streamer=rtmp://sub.example.com/video
           &amp;file=1330/title/folder2/theflvresource.flv
           &amp;id=FlvPlayer" name="flashvars">
</object>

, sie würden nicht in der Lage sein RTMP zu verbinden. So scheint rtmp nützlicher zu sein, wenn Sie eine Ressource schützen wollen? Ist das alles, was es ist?

War es hilfreich?

Lösung

Ich stimme mit xtat , will aber viel mehr hinzuzufügen.

Die Vor- und Nachteile von RTMP (oder ein UDP-basierten Streaming-Protokoll) vs. 'Progressive Download' (das ist wirklich nur eine Teilmenge von HTTP-basiertem Streaming) in meiner nicht-so-bescheidenen Meinung:

  • UDP-basierten Streaming
    • Pros
      • Zur Zeit wesentlich schwieriger zu stibitzen Ströme
      • Derzeit unterstützt Live, die HTTP-basierte nicht
      • Multi-Cast-fähig, die auf Intranets wünschenswert sein kann
    • Cons
      • Drastisch höhere Ressourcennutzung, bezogen auf http-basierten Ansatz
      • Bedarf für spezialisierte Server (FMS, Red5, Wowza, was auch immer)
      • Mehr merk Pufferung
      • Firewall Probleme, vor allem mit Firmenkunden
  • HTTP-basierter Streaming
    • Pros
      • Toter einfach
      • Can in Medien suchen. FLV und MP4 (mit einiger Mühe)
    • Cons
      • Trivial zu stibitzen Streams. Z.B .: Echt Downloader
      • Live-Streams ist nicht möglich, aber es ist ein Jahr geben. Apple stellt diese Realität.
      • kein Multi-Casting

Der gesamte HTTP-basierter Ansatz ist gefüllt mit und / aber / wenn Situationen, viele Missverständnisse über das, was ist und was nicht möglich ist, und ein Mangel an gemeinsamen Definitionen.

Es gibt zwei grundlegenden Merkmale Menschen suchen bei bei der Diskussion HTTP-basierten Streaming: sucht und geregelte Bandbreite . Von dass wir alle diese Begriffe wie 'pseudo-Streaming', 'Progressive Download' usw.

erhalten

Dies sind die Definitionen ich beschreiben HTTP-basierte Server-Streaming:

  • geregelte Bitrate . Die flache Mediendatei vom Server analysiert wird, und senden Sie sie Medien so schnell wie die Spieler brauchen, ohne Pufferung, die Medien spielen
  • suchen : die Fähigkeit eines Web-Servers in den Medien zu suchen und effektiv eine neue 'Datei' on the fly für die Verwendung durch den Kunden zu erstellen. Ähnlich wie eine http-Byte-Range-Anfrage, mit der Ausnahme, dass Kopf- und Medien Metadaten hinzugefügt / geändert.
  • Progressive Download : einfach die Datei senden, so schnell wie möglich. Grundsätzlich setzen Mediendatei auf dem Web-Server, der in einem ‚stummen‘ Art und Weise an den Client sendet, wie wie eine große .iso oder .zip-Datei.
  • Pseudo-Streaming : die Fähigkeit eines Web-Server von Mediendateien auf das Client mit einem geregelten Bitrate zu senden und in Dateien zu suchen.

Andere Tipps

Der Hauptgrund persönlich RTMP über die progressiven Download zu wählen, ist es Ihre Benutzer erlaubt, in die Mitte eines Videos zu springen, ohne die gesamte Datei herunterladen zu müssen.

In diesen Tagen, es sei denn Sie aufnehmen müssen, dann ist es nicht wirklich jeder Punkt zu RTMP verwenden. HTTP ist einfacher und viel mehr offensichtlich weitgehend unterstützt, leichter zu debuggen und in der Tat ist es für die Suche nach, auch über CDNs ermöglichen. Das ist, was ich bei Viddler einrichten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top