nginx HLS vod-Fähigkeit zum Stoppen und Verfolgen von Streams

1157
Dexa

Ich muss in der Lage sein, VODs zu streamen, aber die Videos werden pro Minute aufgezeichnet. Daher muss ich ständig Informationen darüber abrufen, wie viele Minuten der Benutzer hat. Wenn er Minuten verbringt, muss ich seinen Stream beenden.

Ich habe das in Wowza implementiert, jetzt versuche ich in Nginx einen Weg zu finden. Das größte Problem ist, dass ich nicht weiß, ob Nginx Informationen über den angeforderten Video-Block an mein PHP (oder ein anderes Skript) weiterleitet, wo ich entscheiden kann, ob die aktuelle Anfrage zugelassen wird oder nicht.

wenn mir jemand sagen könnte, ist es sogar möglich, und wenn ja, mich in die richtige Richtung zu weisen.

1

1 Antwort auf die Frage

0
h0tw1r3

Mit dem Open-Source -Modul nginx-rtmp kann HLS-Streaming mit Vod-Funktion eingerichtet werden .

RTMP-Modul hat Notify-Hooks .

Zum Beispiel:

on_play

Legt den HTTP-Wiedergaberückruf fest. Jedes Mal, wenn ein Client einen play-Befehl ausgibt, wird eine HTTP-Anforderung asynchron ausgegeben und die Befehlsverarbeitung wird ausgesetzt, bis der Ergebniscode zurückgegeben wird. Der HTTP-Ergebniscode wird dann analysiert.

  • Der HTTP 2xx-Code setzt die RTMP-Sitzung fort
  • HTTP 3xx leitet RTMP an einen anderen Stream um, dessen Name aus dem Location-HTTP-Antwortheader stammt. Wenn der neue Streamname mit rtmp: // gestartet wird, wird stattdessen ein Remote-Relay erstellt. Für Relays ist es erforderlich, dass die IP-Adresse anstelle des Domänennamens angegeben wird und nur mit nginx-Versionen größer als 1.3.10 funktioniert. Siehe auch notify_relay_redirect.
  • Andernfalls wird die RTMP-Verbindung getrennt

Nginx hat auch ein kommerzielles Angebot . Zuletzt habe ich gehört, dass es 1500 Dollar pro Jahr waren. Zu diesem Preis sollte es das tun, was Sie brauchen, aber ich bin nicht damit vertraut.