Es sind mehrere neue Versionen von offenen Medienservern verfügbar, die für die Organisation von Streaming im Netzwerk bestimmt sind:
- erste Ausgabe
, ein Toolkit für die Echtzeit-Übertragung von Audio über das Netzwerk mit garantierten Verzögerungszeiten und Qualitätsanforderungen auf dem Niveau von Audio-CDs. Bei der Übertragung wird die Abweichung der Systemuhren von Sender und Empfänger berücksichtigt. Die Wiederherstellung verlorener Pakete wird durch Codes unterstützt in der Implementierung (Im Modus mit minimalen Verzögerungen wird der Reed-Solomon-Code verwendet, und im Modus der maximalen Leistung wird das Schema ). Bei der Übertragung wird das RTP-Protokoll (AVP L16, 44100Hz PCM 16-Bit) verwendet. Derzeit wird nur die Übertragung von Audio unterstützt, aber es sind Pläne zur Unterstützung der Übertragung von Video und anderen Inhaltstypen vorgesehen.Es besteht die Möglichkeit, mehrere Senderströme zu multiplexen, um sie an einen einzigen Empfänger zu liefern. Verschiedene Profilkonfigurationen zur Abtastung können je nach CPU-Typ und Anforderungen an die Übertragungsverzögerung angeschlossen werden. Es wird Streaming über verschiedene Netzwerktypen unterstützt, einschließlich lokaler Netzwerke, Internet und drahtlosem Netzwerk. Je nach Einstellungen, Bandbreite und Paketverlust wählt Roc automatisch die erforderlichen Codierungsparameter für den Stream aus und korrigiert während der Übertragung dessen Intensität.
Das Projekt besteht aus einer C-Bibliothek, für die Kommandozeile und einer Reihe von Modulen, um Roc als Transportmittel für zu verwenden. Im einfachsten Fall ermöglicht das verfügbare Toolset, Audio von einer Datei oder einem Audiogerät auf einem Computer an eine Datei oder ein Audiogerät eines anderen Computers zu senden. Verschiedene Audio-Backends werden unterstützt, einschließlich ALSA, PulseAudio und CoreAudio. Der Code ist in C++ geschrieben und unter der Lizenz MPL-2.0. Es wird Unterstützung für GNU/Linux und macOS geboten.
- neue Version des Multimedia-Servers , das es ermöglicht, Streaming über die Protokolle RTMP, RTSP und WebRTC mit Unterstützung für den adaptiven Bitratenmodus zu organisieren. Ant kann auch zur Netzaufnahme von Videos in den Formaten MP4, HLS und FLV verwendet werden. Zu den Funktionen gehören ein WebRTC-zu-RTMP-Konverter, Unterstützung für IP-Kameras und IPTV, Verbreitung und Aufnahme von Live-Streams, das Streaming in soziale Netzwerke, Skalierung durch Bereitstellung eines Clusters sowie die Möglichkeit, von einem Punkt an viele Empfänger mit Verzögerungen von 500 ms zu übertragen.
Das Produkt entwickelt sich im Rahmen des Open-Core-Modells, das die Entwicklung des Hauptteils unter der Lizenz Apache 2.0 vorsieht und erweiterte Funktionen (z. B. Streaming auf Youtube) in der kostenpflichtigen Edition bereitstellt. In der neuen Version wurde die Streaming-Leistung über WebRTC um 40 % verbessert, ein Log-Viewer hinzugefügt, das Web-Panel optimiert, eine REST-API zur Bereitstellung von Statistiken hinzugefügt, der Speicherverbrauch optimiert, die Fehlerbehandlung verbessert und die Möglichkeit zur Übertragung von Statistiken an Apache Kafka integriert.
- Release des Streaming-Servers , das die Übertragung von Videos in den Formaten FLV, F4V, MP4 und 3GP sowie von Audio in den Formaten MP3, F4A, M4A, AAC ermöglicht. Es stehen Live-Streaming-Modi und der Betrieb als Aufnahme-Station zur Verfügung, um Streams von Clients (FLV und AVC+AAC im FLV-Container) zu empfangen. Das Projekt wurde ursprünglich 2005 zur Schaffung einer Alternative zum Flash Communication Server, der das RTMP-Protokoll verwendet, ins Leben gerufen. Später wurde in Red5 über Plugins die Unterstützung für Streaming mit HLS, WebSockets, RTSP und WebRTC sichergestellt.
Red5 wird als Streaming-Server im Projekt für die Durchführung von Video- und Audiokonferenzen verwendet. Der Code ist in Java geschrieben und unter der Lizenz Apache 2.0. Auf der Basis von Red5 wurde ein proprietäres Produkt , das eine Skalierung auf Millionen von Zuschauern mit Lieferverzögerungen von 500 ms und die Möglichkeit der Bereitstellung in den Clouds von AWS, Google Cloud und Azure ermöglicht.
Quelle: opennet.ru
