Flipboard Blog

OBS sleutelkaderinterval: wat is de juiste sleutelkaderinterval voor live streaming?

Sleutelkaderinterval (ook wel bekend als sleutelkaderperiode, soms geschreven als key frame interval) is een cruciale parameter om rekening mee te houden bij het transcoderen van video, omdat het een van de belangrijkste parameters is naast de bitrate en resolutie. Het bepaalt hoe vaak een volledig videoframe wordt gecodeerd in de stream, wat van invloed kan zijn op de videokwaliteit, de benodigde bitrate voor de stream en het vermogen van de decoder om te herstellen van verloren pakketten. Andere parameters kunnen echter ook een aanzienlijke invloed hebben op het transcoderingsproces.

Bijvoorbeeld, de codec die wordt gebruikt voor codering, het aantal referentiekaders en andere parameters kunnen ook een aanzienlijke invloed hebben op de kwaliteit en prestaties van de getranscodeerde video. Bovendien kunnen de netwerkcondities en het apparaat van de eindgebruiker ook een aanzienlijk effect hebben op de uiteindelijke videokwaliteit.

OBS sleutelkaderinterval 0 versus 2? 0 is zeker niet de aanbevolen waarde voor een live stream, maar er is geen goede, juiste, aanbevolen, perfecte waarde voor sleutelkaderinterval, zelfs als sommige online videoproviders (OVP's) een vaste waarde aanbevelen of beperken.

OBS sleutelkaderinterval: wat is de juiste sleutelkaderinterval voor live streaming
sleutelkaderbits in rood, andere frames in blauw in dit videosegment van 10 seconden

Bestaat er een beste of juiste sleutelkaderinterval voor live streaming?


De optimale sleutelkaderinterval voor live streaming kan variëren afhankelijk van de specifieke behoeften van de stream en de netwerkcondities. Houd er rekening mee dat een kortere sleutelkaderinterval meer belasting kan leggen op de encoder, wat kan leiden tot hoger CPU-gebruik en het moeilijker kan maken om een consistente bitrate te behouden. Dit kan een probleem zijn bij beperkte middelen, zoals een computer met beperkte capaciteit of een trage of onbetrouwbare internetverbinding.
Voor een beknopt antwoord zonder uitleg, lees onze twee aanbevelingen op basis van uw vereisten onder aan de pagina.

Wat is de oorsprong van de veelgebruikte sleutelkaderinterval van 2 seconden?


"Wat is de juiste sleutelkaderinterval voor live streaming" (in OBS Studio of andere software) is een veelgestelde vraag waarop copywriters vaak antwoorden met "2 seconden". Waarom zouden we ons druk maken om een sleutelkaderintervalparameter in transcoders als dit het antwoord zou zijn voor alle gebruiksscenario's en waar komt deze "copy-paste waarde" vandaan?

In traditionele uitzendingen zoals kabeltelevisie wordt de sleutelkaderinterval vastgesteld door de standaard die wordt gebruikt voor videocompressie, meestal MPEG-2 of H.264. Deze standaarden stellen typisch de sleutelkaderinterval in op enkele seconden, meestal tussen 1-3 seconden, om een soepele decodering van de video op het uiteindelijke apparaat, zoals een tv of set-top box, te garanderen. De sleutelkaderinterval van 2 seconden is een veelgebruikte en ongeschreven standaard voor set-top boxes, omdat decoders of spelers die MPEG-2 gebruiken regelmatige sleutelkaders nodig hebben om goed te functioneren.

Echter, live streaming heeft specifieke behoeften in vergelijking met traditionele uitzendingen. Aangezien het via internet wordt geleverd met behulp van codecs zoals H.264 en nieuwere codecs, kan de kwaliteit van de video worden beïnvloed door factoren zoals de internetverbinding en het apparaat van de kijker. Daarom hoeft live streaming niet afhankelijk te zijn van de beste praktijken die zijn vastgesteld door MPEG-2.

Waarom heeft een decoder frequente sleutelkaders nodig?


Sleutelkaders, ook wel bekend als I-frames, zijn volledige videoframes die onafhankelijk van andere frames worden gecodeerd. Ze bevatten alle informatie die nodig is om de video te decoderen en weer te geven op het scherm. Ze verschillen van P-frames en B-frames, die worden gecodeerd op basis van de informatie uit het vorige sleutelkader.

Wanneer een decoder een videostream ontvangt, begint deze met het decoderen van de video vanaf het eerste sleutelkader dat wordt ontvangen. Vervolgens gebruikt het de informatie uit de daaropvolgende P-frames en B-frames om de ontbrekende details in te vullen en de video te reconstrueren. Als de decoder een nieuw sleutelkader ontvangt, kan het de informatie van het vorige sleutelkader negeren en opnieuw beginnen met het decoderen van de video met het nieuwe sleutelkader.

Een decoder heeft frequente sleutelkaders nodig om twee belangrijke redenen:

  • Weerstand tegen fouten: In geval van verloren of beschadigde gegevens tijdens de overdracht kan de decoder de informatie van het laatste sleutelkader gebruiken om de video te herbouwen en de effecten van de verloren gegevens te minimaliseren. Dit helpt bij het behouden van de kwaliteit van de video, zelfs bij bepaalde vormen van gegevensverlies. Het is echter vermeldenswaard dat moderne streamingstandaarden zoals HLS of DASH al veerkrachtiger zijn tegen pakketverlies.
  • Soepele weergave: Wanneer de decoder een nieuw sleutelkader ontvangt, kan het de informatie van het vorige sleutelkader negeren en opnieuw beginnen met het decoderen van de video met het nieuwe sleutelkader. Dit zorgt voor een soepele weergave van de video, omdat de decoder de nieuwe videogegevens kan weergeven zodra ze worden ontvangen, in plaats van te wachten op alle gegevens van het vorige sleutelkader.

Heeft HLS een betere mogelijkheid om netwerkfluctuaties te verwerken in vergelijking met eerdere streamingmethoden?


HTTP Live Streaming (HLS), dat in het afgelopen decennium veel gebruikt is voor live streaming, is een veerkrachtiger streamingprotocol voor netwerkvariaties in vergelijking met eerdere streamingstandaarden.

HLS werkt door de video op te delen in kleine segmenten en meerdere versies van elk segment te maken met verschillende bitrates. Deze segmenten worden vervolgens beschikbaar gesteld aan kijkers in een afspeellijst, en het apparaat van de kijker zal overschakelen naar het geschikte segment op basis van de huidige netwerkcondities. Dit maakt het mogelijk om de video te streamen met de hoogst mogelijke kwaliteit, rekening houdend met de netwerkverbinding en de capaciteit van het apparaat van de kijker.

Een van de belangrijkste kenmerken van HLS is het vermogen om zich aan te passen aan veranderende netwerkcondities door te schakelen tussen verschillende bitrate-versies van hetzelfde segment. Dit staat bekend als adaptieve bitrate streaming. Deze functie zorgt ervoor dat HLS een betere kijkervaring kan bieden bij variabele netwerkcondities, omdat de videokwaliteit automatisch kan worden aangepast aan de netwerkverbinding van de kijker.

Daarnaast maakt HLS ook gebruik van HTTP als transportprotocol, wat wordt ondersteund door de meeste apparaten en netwerken. Dit maakt het breder compatibel dan andere streamingstandaarden.

Wat is de standaardwaarde voor sleutelkaderinterval in OBS?


In tegenstelling tot wat vaak wordt gedacht, is de standaardwaarde voor sleutelkaderinterval in OBS Studio, de nieuwste versie van OBS (Open Broadcasting Software), niet ingesteld op 2 seconden. Het is eigenlijk ingesteld op 250 frames wanneer de sleutelkaderinterval is ingesteld op "automatisch" modus.

De sleutelkaderinterval is de tijd of het aantal frames tussen elk sleutelkader (I-frame) in een videostream en wordt gemeten in seconden of aantal frames. Een sleutelkaderinterval van 2 seconden betekent dat er elke 2 seconden een nieuw sleutelkader wordt ingevoegd in de videostream, en een sleutelkaderinterval van 250 frames betekent dat er elke 250 frames een nieuw sleutelkader wordt ingevoegd in de videostream. Het is veiliger om seconden te gebruiken, omdat de weergave afhankelijk is van seconden, en een sleutelkaderinterval uitgedrukt in frames zal verschillende waarden hebben afhankelijk van de framesnelheid. Bijvoorbeeld, voor een framesnelheid van 25 fps, zal de sleutelkaderinterval 10 seconden zijn, maar het zal 8,33 seconden zijn voor 30 fps en 4,16 seconden voor 60 fps.

Daarom is het geen goede keuze voor een omroeper om "automatisch" te kiezen voor de sleutelkaderinterval. Het wordt in plaats daarvan aanbevolen om de geavanceerde modus in de output te kiezen om het dienovereenkomstig in te stellen.

Wat zijn enkele software-opties om de sleutelkaderinterval van een videostream of -bestand te bepalen?


Er zijn verschillende softwaretools die je kunt gebruiken om de sleutelkaderinterval van een videostream of -bestand te controleren. Enkele van de meest populaire opties zijn:

  1. FFmpeg: FFmpeg is een gratis en open-source command-line tool voor het verwerken van multimedia. Je kunt de sleutelkaderinterval van een videostream of -bestand controleren door de optie "-show_frames" te gebruiken. Hiermee worden alle frames van de video weergegeven, inclusief de sleutelkaders.
  2. MediaInfo: MediaInfo is een gratis, open-source software die gedetailleerde informatie weergeeft over videobestanden, waaronder de sleutelkaderinterval. Het kan worden gebruikt voor zowel Windows als MacOS.
  3. VLC media player: VLC media player is een gratis, open-source mediaspeler die een breed scala aan video- en audioformaten kan afspelen. Het heeft een ingebouwd venster voor mediainformatie dat de sleutelkaderinterval van een videobestand kan weergeven, samen met andere informatie.
  4. HandBrake: HandBrake is een gratis, open-source videotranscoderingssoftware waarmee je videobestanden van het ene formaat naar het andere kunt converteren. Het heeft een ingebouwde functie om de sleutelkaderinterval van een videobestand te controleren, samen met andere informatie.
  5. Streamlink: Streamlink is een gratis en open-source command-line hulpprogramma waarmee je online videostreams kunt bekijken in een mediaspeler naar keuze. Het heeft ook de mogelijkheid om de sleutelkaderinterval van een videostream weer te geven.


Dit zijn enkele voorbeelden van beschikbare softwaretools, maar er zijn ook andere opties beschikbaar, zoals commerciële software (Elecard StreamEye, Telestream Switch) die mogelijk meer functies en opties hebben om de sleutelkaderinterval van een videostream of -bestand te controleren.

Welke sleutelkaderinterval HEB IK nodig voor MIJN EIGEN live streaming gebruiksscenario?


Scenario 1: Ik wil de best mogelijke videokwaliteit en consistente prestaties tijdens het afspelen.


Voor optimale kwaliteit en betrouwbaarheid van live streaming suggereert Apple - de maker van HLS - om een segmentduur van minimaal 6 seconden en een venstergrootte van 15 minuten te gebruiken. Om een hoogwaardige live-uitzending te garanderen, is het belangrijk om een online videoprovider te kiezen die zich aan deze aanbevelingen van Apple houdt en deze overtreft.

Veel HLS-spelers kunnen de resolutie niet veranderen behalve aan het begin van een segment. Om de beste videokwaliteit te bereiken op deze spelers is het niet nodig om een kortere sleutelkaderinterval te gebruiken dan de segmentduur, omdat dit zou resulteren in onnodige sleutelkaders en verspilde bits. Een sleutelkaderinterval van 6 seconden wordt sterk aanbevolen voor videokwaliteit en betrouwbaarheid. Als je echter alleen Apple's ecosysteem, zoals Safari en native spelers (AVPlayer) op iOS, iPadOS en tvOS, wilt gebruiken, kunnen deze spelers schakelen tijdens een segment. In dat geval kun je een kortere sleutelkaderinterval gebruiken, zoals 3 seconden, maar dit kan de videokwaliteit iets verminderen, omdat de speler vaker zal proberen over te schakelen naar een hogere resolutie.
Verken onze andere artikelen om de videokwaliteit nog verder te verbeteren:
Maximaliseer je prestaties bij live streaming met onze deskundige handleiding over hoe je OBS Studio correct configureert in 2023

Scenario 2: Ik geef prioriteit aan snelle interactie met mijn live-streaming kijkers, en dit is de enige motivatie.


Voor minimale vertraging bij live streaming, kies een online videoprovider die lage latentie biedt en stel een sleutelkaderinterval van 1 seconde in op je transcoder. Als een vertraging van 3 tot 5 seconden acceptabel is, kan een sleutelkaderinterval van 2 seconden worden gebruikt.
  • Het kiezen van een korter sleutelkaderinterval van 1 seconde kan enkele nadelen hebben wat betreft de kwaliteit van de dienstverlening. De speler zal vaker van resolutie veranderen, wat resulteert in kleinere segmentgroottes en vaker adaptieve bitrate-controles. Daarnaast kan er vaker buffering optreden als gevolg van de toegenomen resolutiewisselingen en als het netwerk van de kijker niet snel genoeg de segmenten kan downloaden. Houd rekening met deze mogelijke nadelen bij het kiezen tussen een sleutelkaderinterval van 1 of 2 seconden.
  • Indien mogelijk, configureer je transcoder voor zero-latency afstemming.

Wat is het sleutelkaderinterval op het onderstaande demo TV-kanaal?


Het gekozen sleutelkaderinterval is 6 seconden, omdat er geen eisen zijn wat betreft latentie, en dit is een van de belangrijkste parameters om aan te passen voor een hogere kwaliteit.



Get your own TV channel on iOS, Android, Roku, Fire TV and Connected TV like this one easily

Multiple, automated, AI-assisted 24/7 TV Channels from your content

Cars and Roads - Brands (https://ireplay.tv/carsandroads/brands.m3u8)

A portion of iReplay.TV's revenues, specifically 1%, is being allocated towards funding research and providing assistance for children's cancer treatment at Gustave Roussy Institute
Learn more about Gustave Roussy cancer Institute