Flash Video-container (.flv)

Adobe Standaard

Flash Video (FLV) is een containerformaat dat is ontwikkeld door Macromedia en Adobe om gesynchroniseerde video en audio op het web aan te bieden via de Adobe Flash Player-browserplug-in.

Inspecteren en metadata

Besturingssystemen en bestandsanalysators herkennen FLV-bestanden aan de hand van de eerste binaire bytesequentie:

Selecteer of sleep bestanden hierheen

Privé - bestanden verlaten uw apparaat niet

of plak Ctrl+V
Privacygarantie zonder netwerktransmissie: 0 bytes geüpload naar externe servers. Alle verwerking vond lokaal plaats in uw browser-sandbox.

Bestandshandtekening op byteniveau (magic bytes)

Besturingssystemen en bestandsanalysators herkennen FLV-bestanden aan de hand van de eerste binaire bytesequentie:

HEX-HANDTEKENING (OFFSET 0):

46 4C 56 01

ASCII-WEERGAVE: FLV

Standaardisatie: Adobe Systems Flash Video File Format Specification

Technische specificaties

ContainerarchitectuurStreamingcontainer op basis van tags, met verweven audio-, video- en scriptdatatags
CompressieSorenson Spark-, VP6- of H.264-video met MP3- of AAC-audio
Bytevolgorde (endianness)Big-Endian bit- en bytevolgorde
KleurruimtenYUV 4:2:0
Kanalen en structuurMono- en stereoaudio met videostream
Maximale afmetingenMeestal tot 1080p
TransparantieAlfakanaaltransparantie ondersteund in VP6-videostreams
Streaming en progressiefIngebouwde ondersteuning voor livestreaming via RTMP (Real-Time Messaging Protocol)

Technische vergelijkingsmatrix: FLV versus concurrenten

Technisch kenmerkFLV (Huidig)MP4WEBMMKV
Browserondersteuning vandaag0% (volledig verwijderd uit alle moderne browsers)Ondersteund door veel huidige browsers; beschikbaarheid verschilt per versie en platformOndersteund door veel huidige browsers; beschikbaarheid verschilt per versie en platformVereist een desktopmediaspeler
StandaardisatieEigen specificatie van AdobeInternationale open standaard van ISO/IECOpen standaard van W3C / WebMOpensourcestandaard van Matroska
Afspelen op mobiele apparatenNiet standaard ondersteund op iOS en moderne Android-apparatenNative hardware-ondersteuningNative hardware-ondersteuningOndersteund via VLC of apps van derden
AlfatransparantieOndersteund via de On2 VP6-codecBeperkt (vereist canvas of WebCodecs)Native ondersteuning voor alfakanaal (VP9)Ondersteund in VP9- of ProRes-streams

Veelvoorkomende beschadigingen en gids voor hex-herstel

Gedownloade FLV-video toont de totale duur als 'onbekend' en kan niet worden doorgespoeld.

Oorzaak: Ontbrekende 'onMetaData'-scripttag met tabellen met tijdstempels van keyframes en bestandsgrootte.

Herstel: Voeg ontbrekende keyframetabellen toe met 'yamdi' (Yet Another MetaData Injector) of converteer het bestand naar MP4 met File2File.app.

Beveiligingsanalyse en aanvalsvectoren voor parsers

De Flash Player-plug-in was historisch gezien een van de meest uitgebuite softwarecomponenten in de computergeschiedenis, door fouten in het geheugenbeheer bij het verwerken van ActionScript en FLV.

Bekende aanvalsvectoren

  • Use-after-free en heap-overloop in de ActionScript 3-engine voor het verwerken van FLV (bijv. CVE-2015-5122).
  • Onjuist opgemaakte AMF0- of AMF3-metadatapakketten kunnen geheugenbeschadiging veroorzaken in kwetsbare parsers.
  • Bufferoverloop in verouderde decompressieroutines voor Sorenson Spark.

Aanbevolen beveiligingspraktijken: Gebruik nooit de Flash Player-plug-in. Converteer gearchiveerde FLV-bestanden rechtstreeks naar MP4 met FFmpeg in een sandbox.

Historische oorsprong en mijlpalen

2020Adobe beëindigt officieel de ondersteuning voor Flash Player op 31 december 2020, waarmee het actieve gebruik van FLV wordt beëindigd.
2005YouTube gaat van start met FLV als exclusief videoformaat.
2003Macromedia introduceert Flash Video samen met Flash Player 7.

Belangrijkste voordelen

  • Historische pionier van alomtegenwoordige online video: maakte het afspelen van webvideo mogelijk zonder zelfstandige mediaspelers voor desktopcomputers.
  • Ondersteunde alfatransparantie in videostreams met de On2 VP6-codec.
  • Weinig pakketoverhead, geoptimaliseerd voor RTMP-live-uitzendingen met lage latentie.

Technische beperkingen

  • Volledig verouderd en niet ondersteund in alle moderne webbrowsers sinds het einde van Flash Player.
  • Vereist hercodering of containerwijziging naar MP4 voor afspelen op iOS, Android en smart-tv's.
  • Mist moderne containerfuncties zoals meerdere audiotracks en adaptieve streaming met variabele bitrate.

Interessante technische weetjes

  • De eerste video die ooit op YouTube werd geüpload ('Me at the zoo' in april 2005) werd gecodeerd en geleverd als een FLV-bestand.
  • De bestandshandtekening (magic bytes) '46 4C 56 01' van Flash Video spelt in ASCII 'FLV', gevolgd door containerversie 1.
  • Steve Jobs publiceerde zijn beroemde open brief 'Thoughts on Flash' in 2010, wat de overgang van de industrie van FLV naar HTML5 MP4 versnelde.

Veelgestelde technische vragen

Waarom kan ik geen FLV-bestanden meer afspelen op mijn computer?

Adobe en alle grote webbrowsers hebben Flash Player in december 2020 officieel beëindigd vanwege beveiligingsproblemen. Gebruik VLC media player of converteer de bestanden naar MP4 om FLV-bestanden nu af te spelen.

Kan ik FLV naar MP4 converteren zonder kwaliteitsverlies?

Als een FLV-bestand H.264-video en AAC-audio bevat, kan een compatibele remux die streams zonder hercodering in een MP4-container plaatsen. De verwerkingstijd hangt af van de bestandsgrootte en het apparaat.

Welke codecs gebruikten FLV-video's oorspronkelijk?

Vroege FLV-bestanden gebruikten Sorenson Spark (een variant van H.263) en later On2 VP6, voordat Adobe in 2007 ondersteuning toevoegde voor de standaard H.264.