Формат файлу

FLV - Flash Video

FLV - це формат Flash Video, який забезпечував веб-відео протягом десятиліття. Flash Player більше не існує, тому сьогодні файли FLV є архівними матеріалами, що очікують на конвертацію.

.flv

FLV це Flash Video, формат, який Flash Player від Adobe використовував для показу відео в браузері. Його створила Macromedia, компанія, що розробила Flash, а до Adobe він перейшов, коли Adobe придбала Macromedia у 2005 році. Приблизно десятиліття це був основний спосіб відтворення відео онлайн: кліп, який ви дивилися в браузері в той період, дуже ймовірно був у форматі FLV. Adobe припинила підтримку Flash Player в останній день 2020 року, а браузери його видалили, тож у вебсторінках FLV більше не відтворюється. Однак файли не зникли. Вони досі лежать у папках завантажень та архівах і все ще відтворюються в настільних медіаплеєрах.

Як влаштований файл FLV

FLV має напрочуд просту структуру, оскільки його створювали для потокового передавання, а не зберігання. Короткий заголовок ідентифікує файл і вказує, чи містить він аудіо, відео або і те, й інше. Далі файл складається лише з ланцюжка тегів, кожен з яких є невеликим пакетом із типом, часовою міткою та вмістом. Аудіотеги, відеотеги та скриптові теги йдуть упереміш у часовому порядку, і плеєр просто читає їх послідовно. Центрального індексу немає, тому перемотування у файлі FLV може бути незручним.

Контейнер сам по собі нічого не стискає. У ранніх файлах FLV для відео використовувався Sorenson Spark, у пізніших кодек On2 VP6, а коли Flash Player отримав таку можливість, зʼявилося відео H.264 з аудіо AAC, усі вони з втратами якості. Зрештою Adobe представила F4V як заміну, побудовану на тій самій структурі MP4, яка використовується всюди.

Які метадані містить файл FLV

Метадані FLV майже повністю зберігаються в одному скриптовому тегу близько початку файлу, який зазвичай називається onMetaData. Це список назв і значень, записаних у форматі даних, який Flash використовував для взаємодії зі скриптами, і плеєр читав його перед відтворенням, щоб налаштуватися. Найчастіше там трапляються такі записи:

  • тривалість, ширина та висота, а також частота кадрів;
  • швидкість передавання відеоданих і аудіоданих та числові ідентифікатори відео- й аудіокодеків;
  • частота дискретизації аудіо, розмір вибірки та ознака, чи є звук стерео;
  • розмір файлу та прапорець, що вказує, чи можна перемотати файл до кінця;
  • список позицій ключових кадрів і їхніх часових міток, завдяки якому перемотування взагалі можливе;
  • назва застосунку, який записав або додав метадані, оскільки існували окремі програми, створені виключно для додавання цього блоку до файлів, що його не мали.

У деяких файлах є також другий скриптовий тег із пакетом XMP, структурованим текстовим форматом, який Adobe використовує у своїх продуктах. У ньому можуть зберігатися заголовок, автор, опис і повідомлення про авторські права, введені людиною.

Чого в FLV зовсім немає, так це метаданих камери. Немає блока EXIF, немає виробника чи моделі камери, даних про обʼєктив або експозицію і немає поля GPS. Місцерозташування ніколи не було тим, що файл Flash Video мав фіксувати. Єдині сліди походження це назва застосунку, який записав файл, і вміст XMP-пакета.

Є ще одна поширена особливість, про яку варто знати. Тривалість і розмір файлу записуються лише після того, як відомий весь файл, тому в записах, зроблених із живих трансляцій, їх часто немає або вони дорівнюють нулю. Саме тому деякі плеєри показують FLV без шкали часу й не дозволяють перемотувати вперед: інформацію, потрібну для плеєра, просто ніколи не було заповнено.

Що сьогодні робити з файлом FLV

Сприймайте FLV як архівний формат, а не робочий. У ньому не слід створювати нічого нового, оскільки платформи, для яких він існував, більше немає.

MP4 є повноцінною заміною: він відтворюється в браузерах і на телефонах, коректно перемотується і містить значно більше метаданих. Важливо, як саме ви конвертуєте. FLV, який уже містить відео H.264 та аудіо AAC, зазвичай можна просто ремультиплексувати в MP4, тобто лише перепакувати контейнер, зберігши зображення побітово. Старіший файл із Sorenson Spark або VP6 потрібно перекодувати, а це означає другий цикл стиснення з втратами, тому, якщо кадри для вас важливі, зберігайте оригінал поряд із копією.