Ga naar de inhoud
Callaba

RTMP naar HLS: van publisher naar afspelen in de browser

Op deze pagina

RTMP-naar-HLS is een overdracht van encodergerichte ingest naar afspelen op basis van HTTP. Ontvang en controleer eerst de RTMP-publisher; package of transcodeer hem daarna voor HLS; test vervolgens de playlist en het player-endpoint dat een kijker daadwerkelijk gebruikt. Alleen een RTMP-verbinding biedt geen browserweergave.

Het pad van RTMP naar HLS

Minimaal bestaat het pad uit bron → RTMP-listener → mediaverwerking of packaging → HLS-playlist en segmenten → player. Elke fase kan gezond zijn terwijl een latere fase dat niet is. Daarom moet een operator ingestbewijs en kijkersbewijs als afzonderlijke controles behandelen.

Bepaal of de media gekopieerd kunnen worden

Packaging kan zonder videotranscodering mogelijk zijn wanneer de inkomende codecs, audio, timestamps, keyframecadans en packagingcontract passen bij het doel-HLS-pad. Zo niet, transcodeer dan bewust en documenteer de outputladder. Noem dit geen universeel kopieerpad zonder de geconfigureerde uitvoer te controleren.

Controleer op volgorde

  1. Publiceer een bekende RTMP-bron en bevestig dat de listener activiteit en bruikbare media meldt.
  2. Open de gegenereerde HLS-playlist-URL en controleer dat deze wordt bijgewerkt terwijl de bron live is.
  3. Controleer of de genoemde segmenten door de beoogde playeromgeving kunnen worden opgehaald.
  4. Beluister audio, controleer video en meet de werkelijke kijkersvertraging voor het gedeployde pad.
  5. Stop en herstart de publisher; bevestig dat playlist en player herstellen zoals het operationsplan verwacht.

Keyframes, segmenten en latentie

HLS groepeert media in segmenten waarnaar een playlist verwijst. Apple's HLS-overzicht en RFC 8216 beschrijven het distributiemodel met playlists en segmenten. Segmentduur, encoderkeyframes, playerbuffering, origin-gedrag en eventuele CDN-configuratie dragen allemaal bij aan kijkersvertraging. Eén buffer verkleinen bewijst geen latentie voor het volledige pad; meet het pad dat u wilt gebruiken.

Wanneer RTMP werkt maar HLS faalt

Waargenomen resultaatVolgende controle
Publisher actief, geen playlistInspecteer de RTMP-naar-HLS-taak en de uitvoerconfiguratie.
Playlist laadt, player loopt vastControleer segmentdistributie, playerfouten, codeccompatibiliteit en toegangsbeleid.
Afspelen start laatMeet encoder-, packaging-, playlist-, player- en distributiebuffers voordat u een instelling wijzigt.

Callaba kan een geconfigureerde RTMP-bron ontvangen en doorgeven aan de gekozen downstreamworkflow. De listener is niet zelf een openbare browserplayer. Gebruik voor browserdiagnose RTMP-player en afspelen in de browser; gebruik voor ingestconfiguratie RTMP Server.

Gerelateerde configuratie

Gebruik de operatorhandleiding voor RTMP Server om ingest te bewijzen en bekijk daarna de Web Player-documentatie voor de viewergerichte module. Bewaar de RTMP-protocolgids voor de transportvraag aan de bronzijde.

Lokale diagnostiek: package HLS met FFmpeg

Command
mkdir -p hls-out && ffmpeg -re -i input.mp4 -c:v libx264 -pix_fmt yuv420p -g 60 -c:a aac -f hls -hls_time 2 -hls_list_size 6 -hls_flags delete_segments hls-out/live.m3u8

Verwacht resultaat: live.m3u8 wijzigt terwijl de invoer draait en verwijst naar recente mediasegmenten in hls-out. Bied die directory aan via een HTTP-server voor een browsertest; een bestandssysteempad openen is geen HLS-origin-test. Bij 30 fps levert -g 60 een keyframecadans van twee seconden die aansluit bij de voorbeeldsegmentduur. Pas dit aan op de werkelijke framerate.

Safari ondersteunt HLS op het platform; veel andere browserimplementaties gebruiken Media Source Extensions via een playerbibliotheek in plaats van elke .m3u8 als native HTML-videobron te behandelen. Test het werkelijke browser/player-paar. De gedocumenteerde UI-flow van Callaba is een Web Player maken vanuit de gekozen RTMP Server of andere ondersteunde invoer, de resulterende player-URL openen en toegang en afspelen controleren; zie Web Player-documentatie.

Volgende stappen

Gebruik de operatorhandleiding voor RTMP Server om ingest te bewijzen en bekijk daarna de Web Player-documentatie voor de viewergerichte module.