Flash Video

Flash Video — формат файлов, медиаконтейнер, используемый для передачи видео через Интернет. Используется такими сервисами видеохостинга, как YouTube, Google Video, Вконтакте, RuTube и другими[1]. Хотя описание формата контейнера было открыто, кодеки защищены патентами и остаются собственническими[2].

Flash Video
Разработчик Adobe Systems (разработано Macromedia)
Тип формата медиаконтейнер
Сайт adobe.com/devnet/f4v.html
 Медиафайлы на Викискладе

Видеоформат

Изначально FLV-файл — это битовый поток, который является вариантом видеостандарта H.263 под названием Sorenson Spark[2]. Был введен в Flash с версии 6[3].

Flash Player 8 и более новые редакции поддерживают потоковое видео On2 TrueMotion VP6.[2] On2 VP6 обеспечивает более качественное изображение, особенно при использовании низкого битрейта. С другой стороны, этот формат более сложен, что может создать трудности при просмотре на устаревших машинах. Опциональный альфа-канал, представляющий собой попиксельную прозрачность, поддерживается с помощью дополнительного видеопотока, который кодирует только альфа-канал. Реализация предполагает, что YUV-данные основного On2 VP6 видеопотока всегда конвертируются клиентом в RGB. Эта возможность доступна только для видео On2 VP6.

Начиная с Flash Player 9 Update 3 поддерживается новый формат мультимедиа-файла ISO Base MPEG-4 Part 12, с новым видеокодеком — H.264[2]. Этот стандарт видеосжатия при том же низком битрейте выдаёт значительно более детализированное и «ясное» изображение, особенно в динамических сценах. Недостатками являются, опять-таки, повышение требований к вычислительным ресурсам и платные патенты.

F4V-файлы предоставляют лучшее качество изображения по сравнению с FLV, однако требуют более новой версии Flash (9.0.115 и выше) и наличия более быстрого процессора. Помимо этого, F4V-файлы не поддерживают альфа-каналы[4]. Формат-контейнер, при создании которого использовали формат ISO Media File Format, изначально в своей работе использовал формат Quick Time Container Format от компании Apple. В отличие от старого формата FLV, формат F4V полностью совместим с форматами H.264 и AAC, что позволяет воспользоваться также и другими форматами-контейнерами.[5].

Аудиоформат

Звук в FLV, как правило, закодирован в MP3[2], однако иногда могут использоваться Nellymoser codec, несжатое аудио или ADPCM-аудиоформат. В версии Flash Player 9 Update 3, в соответствии с внедрением Adobe формата ISO Base (MPEG-4 Part 12), добавлена поддержка AAC-аудио[2] (профили AAC-LC, Main Profile, и HE-AAC). В версии Flash Player 10 Beta добавлен открытый кодек SPEEX.

Проигрыватели FLV

Формат FLV предназначен для потокового видео, однако существует возможность использовать его для локального хранения и воспроизведения видео. FLV используется в Adobe Flash Player, который распространяется в качестве плагина для различных браузеров и различных операционных систем. Также формат поддерживается многими мультимедиа проигрывателями, например mplayer или Light Alloy.

Популярные проигрыватели, поддерживающие FLV:

Так как FLV — это медиаконтейнер, а не формат, некоторые проигрыватели могут некорректно воспроизводить видео или звуковой поток при отсутствии кодеков, использованных при создании файла.

Конвертеры из FLV

Формат файла

Заголовок

FLV-файлы начинаются со стандартного заголовка, который показан ниже:[6]

ПолеТип данныхПо умолчаниюДетали
Signaturebyte[3]«FLV»Всегда «FLV», признак формата
Versionuint81Только 0x01 если действительно
Flagsuint8 bitmask0x05Битовая маска: 0x04 — аудио, 0x01 — видео (0x05 — аудио+видео)
Header Sizeuint32_be9Используется для пропуска новых расширенных заголовков в будущем

Пакеты

После заголовка файл делится на пакеты под названием «теги FLV», которые имеют 15-байтные заголовки. Первые четыре байта обозначают размер предыдущего пакета/тега (включая заголовок) и помогают при поиске назад.

ПолеТип данныхПо умолчаниюДетали
Size of previous packetuint32_be0Для первого пакета установлено в NULL
Packet Typeuint818Для первого пакета установлено в метаданные AMF
Payload Sizeuint24_beВарьируетсяРазмер только пакета данных
Timestamp Loweruint24_be0Для первого пакета установлено в NULL
Timestamp Upperuint80Расширение для получения значения uint32_be
Stream IDuint24_be0Для первого потока одного и того же типа установлено в NULL
Payload DatafreeformВарьируютсяДанные, которые определены в Packet Type

См. также

Примечания

  1. Who Still Uses Flash Video? Just About Everybody — Streaming Media Magazine
  2. http://www.boutell.com/innards/audio_and_video_in_html.html 2007: «Flash Video Formats .. Flash has historically supported two proprietary video formats known as Sorenson Spark (a variant of H.263) and On2 TrueMotion VP6. … updates of Flash player also support H.264 video, .. patent licensing fees are still involved. … Flash Audio Formats … MP3 audio was the only useful compressed audio format supported by Flash. .. it potentially involves patent licensing fees… latest versions of Flash also support AAC, … AAC is also patented»
  3. Flash Video / Professional Web 2.0 Programming, 2007 ISBN 9780470121054, page 452
  4. ActionScript 3.0 for Adobe Flash CS4 Professional Classroom in a Book - Adobe Creative Team - Google Книги. books.google.com.ua. Дата обращения: 8 января 2018.
  5. Расширение файлов F4V. online convert. online-convert.com. Дата обращения: 11 ноября 2017.
  6. Open Source Flash (2011) Flash Video (FLV) [online] Available from (link already dead): http://osflash.org/flv#flv_format

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.