Flash Video kontejner (.flv)
Specifikacija StandardFlash Video (FLV) je format kontejnera koji su razvili Macromedia i Adobe za isporuku sinhronizovanog videa i zvuka preko veba putem dodatka za internet pretraživač Adobe Flash Player.
Pregled i metapodaci
Operativni sistemi i analizatori datoteka identifikuju FLV datoteke proverom početnog binarnog niza bajtova:
Potpis zaglavlja na nivou bajtova (magični bajtovi)
Operativni sistemi i analizatori datoteka identifikuju FLV datoteke proverom početnog binarnog niza bajtova:
HEKSADECIMALNI POTPIS (OFFSET 0):
46 4C 56 01ASCII REPREZENTACIJA: FLV
Standardizacija: Specifikacija formata datoteke Flash Video kompanije Adobe Systems
Tehničke specifikacije
| Arhitektura kontejnera | Striming kontejner zasnovan na oznakama, sa isprepletanim oznakama za audio, video i skriptne podatke |
| Kompresija | Video H.263/Sorenson Spark, VP6 ili H.264 uz audio MP3 ili AAC |
| Bajtni redosled (Endianness) | Redosled bitova i bajtova od najznačajnijeg ka najmanje značajnom (big-endian) |
| Prostori boja | YUV 4:2:0 |
| Kanali i struktura | Mono i stereo zvuk uz video tok |
| Maksimalne dimenzije | Uobičajeno do 1080p |
| Transparentnost | Podržana je providnost alfa kanala u VP6 video tokovima |
| Strimovanje i progresivno učitavanje | Izvorna podrška za prenos uživo preko RTMP-a (Real-Time Messaging Protocol) |
Tehnička matrica poređenja: FLV u odnosu na konkurente
| Tehnički atribut | FLV (Trenutno) | MP4 | WEBM | MKV |
|---|---|---|---|---|
| Podrška u pretraživačima danas | 0% (Potpuno uklonjeno iz svih modernih pretraživača) | Podržan u mnogim savremenim pregledačima; dostupnost zavisi od verzije i platforme | Podržan u mnogim savremenim pregledačima; dostupnost zavisi od verzije i platforme | Zahteva medijski plejer za računar |
| Standardizacija | Vlasnička Adobe specifikacija | ISO/IEC međunarodni otvoreni standard | W3C / WebM otvoreni standard | Matroska standard otvorenog koda |
| Reprodukcija na mobilnim uređajima | Nije izvorno podržano na iOS-u i savremenim uređajima sa Androidom | Nativna hardverska podrška | Nativna hardverska podrška | Podržano preko VLC/aplikacija trećih strana |
| Providnost alfa kanala | Podržano preko On2 VP6 kodeka | Ograničeno (zahteva canvas ili WebCodecs) | Nativna podrška za alfa kanal (VP9) | Podržano u VP9/ProRes strimovima |
Uobičajeni režimi oštećenja i vodič za heksadecimalni oporavak
Preuzeti FLV video prikazuje ukupno trajanje kao „nepoznato“ i ne može da se premotava.
Osnovni uzrok: Nedostaje skriptna oznaka „onMetaData“ koja sadrži vremenske oznake ključnih kadrova i tabele veličine datoteke.
Oporavak: Dodajte nedostajuće tabele ključnih kadrova pomoću alata „yamdi“ (Yet Another MetaData Injector) ili konvertujte datoteku u MP4 pomoću File2File.app.
Bezbednosna analiza i vektori napada parsera
Dodatak Flash Player je kroz istoriju bio među softverskim komponentama sa najviše bezbednosnih propusta, zbog grešaka u upravljanju memorijom pri parsiranju ActionScript-a i FLV-a.
Poznati vektori napada
- Korišćenje memorije nakon oslobađanja (use-after-free) i prelivanje memorijske gomile (heap overflow) u mehanizmu za parsiranje FLV-a u ActionScript-u 3 (npr. CVE-2015-5122).
- Neispravno formirani paketi metapodataka AMF0/AMF3 mogu da izazovu oštećenje memorije u ranjivim parserima.
- Prelivanje bafera u zastarelim rutinama za dekompresiju kodeka Sorenson Spark.
Najbolje prakse za zaštitu: Nikada ne pokrećite dodatke Flash Playera. Transkodirajte arhivirane FLV datoteke direktno u MP4 pomoću FFmpeg-a u izolovanom okruženju.
Istorijat i prekretnice
Ključne prednosti
- Istorijski pionir sveprisutnog onlajn videa: omogućio je reprodukciju video zapisa na vebu bez samostalnih desktop plejera.
- Podržavao je alfa providnost u video strimovima korišćenjem On2 VP6 kodeka.
- Malo dodatno opterećenje po paketu, optimizovano za RTMP prenos uživo sa malim kašnjenjem.
Tehnička ograničenja i nedostaci
- Potpuno zastarelo i nepodržano u svim modernim veb pretraživačima nakon ukidanja Flash Player-a.
- Zahteva ponovno kodiranje ili promenu kontejnera u MP4 za reprodukciju na iOS-u, Androidu i pametnim televizorima.
- Nedostaju mu funkcije modernih kontejnera kao što su višestruki audio tokovi i prilagodljivi striming sa promenljivom brzinom prenosa podataka.
Zanimljivosti
- Prvi video ikada otpremljen na YouTube („Me at the zoo" u aprilu 2005.) bio je kodiran i isporučen kao FLV fajl.
- Niz magičnih bajtova formata Flash Video „46 4C 56 01" ispisuje ASCII „FLV" praćen verzijom kontejnera 1.
- Stiv Džobs je 2010. godine objavio svoje čuveno otvoreno pismo „Razmišljanja o Flashu“, što je ubrzalo prelazak industrije sa FLV-a na MP4 u okviru HTML5 standarda.
Često postavljana tehnička pitanja
Zašto više ne mogu da puštam FLV datoteke na svom računaru?
Adobe i svi glavni veb pregledači zvanično su ukinuli Flash Player u decembru 2020. godine zbog bezbednosnih ranjivosti. Da biste danas reprodukovali FLV datoteke, koristite VLC media player ili ih konvertujte u MP4.
Mogu li da konvertujem FLV u MP4 bez gubitka kvaliteta?
Kompatibilni H.264 i AAC tokovi mogu da se remuksuju iz FLV-a u MP4 bez ponovnog kodiranja; vreme zavisi od datoteke i uređaja.
Koje kodeke su FLV video snimci prvobitno koristili?
Rane FLV datoteke su koristile Sorenson Spark (varijaciju H.263) i kasnije On2 VP6, pre nego što je Adobe dodao podršku za standardni H.264 2007. godine.