Введение
Форматы сжатия видео RealVideo, или также Real Video, — это набор проприетарных форматов сжатия видео, разработанных компанией RealNetworks. Конкретный формат меняется в зависимости от версии. Он был впервые выпущен в 1997 году, а по состоянию на 2008 год достиг версии 10. RealVideo поддерживается на многих платформах, включая Windows, Mac, Linux, Solaris и ряд мобильных телефонов. RealVideo обычно используется в паре с RealAudio и упаковывается в контейнер RealMedia (.rm). RealMedia подходит для использования в качестве формата потокового мультимедиа, то есть такого, который просматривается во время передачи по сети. Потоковое видео позволяет смотреть прямые трансляции, поскольку не требует предварительной загрузки всего видеофайла.
RealVideo, or also spelled as Real Video, is a suite of proprietary video compression formats developed by RealNetworks — the specific format changes with the version. It was first released in 1997 and as of 2008 was at version 10. RealVideo is supported on many platforms, including Windows, Mac, Linux, Solaris, and several mobile phones. RealVideo is usually paired with RealAudio and packaged in a RealMedia (. rm) container. RealMedia is suitable for use as a streaming media format, that is one which is viewed while it is being sent over the network. Streaming video can be used to watch live television, since it does not require downloading the entire video in advance.
Технология
Первая версия RealVideo была анонсирована в 1997 году и была основана на формате H.263. В то время RealNetworks выпустила пресс-релиз, в котором сообщила о лицензировании технологии ClearVideo от Iterated Systems и включении её в состав RealVideo в качестве Fractal Codec. Однако поддержка ClearVideo незаметно исчезла в следующей версии RealVideo. RealVideo продолжала использовать H.263 до RealVideo 8, когда компания перешла на запатентованный видеоформат. Кодеки RealVideo идентифицируются четырёхсимвольными кодами. RV10 и RV20 – это кодеки на основе H.263. RV30 и RV40 – запатентованные кодеки RealNetworks на основе H.264. Эти идентификаторы стали причиной некоторой путаницы, поскольку некоторые пользователи могут предположить, что RV10 – это RealVideo версии 10, хотя на самом деле это первая версия RealVideo. RealVideo 10 использует RV40. RealVideo может воспроизводиться из файла RealMedia или транслироваться по сети с использованием протокола Real Time Streaming Protocol (RTSP) – стандартного протокола для потоковой передачи мультимедиа, разработанного IETF. Однако RealNetworks использует RTSP только для установления и управления соединением. Фактические видеоданные передаются с использованием их собственного запатентованного протокола Real Data Transport (RDT). Эта тактика вызвала критику, поскольку затрудняла использование RealVideo с другим программным обеспечением для воспроизведения и серверами. Однако проект MPlayer с открытым исходным кодом разработал программное обеспечение, способное воспроизводить потоки RDT. Для обеспечения потоковой передачи в реальном времени RealVideo (и RealAudio) обычно используют кодирование с постоянным битрейтом, чтобы каждый раз в секунду передавалось одинаковое количество данных. Недавно RealNetworks представила формат с переменным битрейтом под названием RealMedia Variable Bitrate (RMVB). Это позволяет улучшить качество видео, однако этот формат менее подходит для потоковой передачи, поскольку сложно предсказать, какая пропускная способность сети потребуется для конкретного видеопотока. Видео с быстрым движением или быстро сменяющимися сценами потребует более высокого битрейта. Если битрейт видеопотока значительно увеличится, он может превысить скорость передачи данных по сети, что приведёт к прерыванию видео. RealNetworks заявляет, что исходный код кодеков RealVideo и RealAudio недоступен под лицензией RPSL. Исходный код доступен только по лицензии RCSL для коммерческой портируемости на неподдерживаемые процессоры и операционные системы. RealNetworks владеет большей частью интеллектуальной собственности на RealVideo и RealAudio, но лицензировала сторонние технологии для определённых аспектов этих кодеков. RealNetworks утверждает, что не имеет прав лицензировать эту технологию под лицензией с открытым исходным кодом.
RealVideo Players (Реальные видеоплееры)
Официальным проигрывателем для RealVideo является RealNetworks RealPlayer SP, текущая версия – 15, и он доступен для различных платформ, включая Windows, Macintosh и Linux. Существуют и другие проигрыватели, такие как MPlayer и Media Player Classic. Многие из них используют динамически подключаемые библиотеки (DLL) из официального RealPlayer для воспроизведения видео и, следовательно, требуют установки RealPlayer (или, по крайней мере, его DLL, если не самого проигрывателя). Однако библиотеки libav* от FFmpeg (и их аналог DirectShow – ffdshow) способны воспроизводить RealVideo и не требуют RealPlayer или каких-либо его компонентов. Последняя версия RealPlayer, поддерживаемая Windows 9x, – RealPlayer 8, но её можно легко модифицировать для воспроизведения файлов RealPlayer 9 и 10, добавив вручную всего три DLL-файла (кодеки и плагины) из бесплатного распространения Microsoft RealPlayer 10, которые отсутствуют в RealPlayer 8 Basic. RealNetworks также разработала плеер Helix с открытым исходным кодом, однако поддержка RealVideo в проекте Helix ограничена, поскольку RealNetworks продолжает сохранять кодеки закрытыми. RealPlayer не записывает потоки RealVideo, и RealNetworks рекламирует эту особенность владельцам контента, таким как телерадиокомпании, киностудии и музыкальные лейблы, как способ предотвратить копирование видео пользователями. Тем не менее, существует другое программное обеспечение, которое позволяет сохранять потоки в файлы для последующего просмотра. Такое копирование, известное как таймшифтинг, законно в большинстве стран.
Форматы сжатия видео и версии кодеков
RealVideo файлы сжимаются с использованием различных форматов сжатия видео. Каждый формат сжатия видео идентифицируется четырехсимвольным кодом. Ниже представлен список форматов сжатия видео и версии, в которой каждый из них был впервые использован:
РВ10
,: RealVideo 1.0, основанный на H.263 (входит в комплект RealPlayer 5)
РВ20
: RealVideo G2 и RealVideo G2+SVT, также основанные на h.263 (входят в комплект RealPlayer 6). SVT (Scalable Video Technology) – технология, позволяющая декодировать видео с пониженной частотой кадров (путем пропусков кадров) на маломощных компьютерах.
РВ30
: RealVideo 8, предположительно, в значительной степени основан на ранней версии H.264 (входит в комплект RealPlayer 8).
РВ40
: RealVideo 9, предположительно основанный на H.264 (входит в комплект RealPlayer 9) : RealVideo 10, также известный как RV9 EHQ (входит в комплект RealPlayer 10). Это улучшенный кодировщик для формата RV9, полностью обратно совместимый с плеерами RV9 – сам формат и декодер не изменились, изменился только кодировщик. В результате используется тот же FourCC.
: RealVideo 10, aka RV9 EHQ (included with RealPlayer 10). This refers to an improved encoder for the RV9 format that is fully backwards compatible with RV9 players – the format and decoder did not change, only the encoder did. As a result, it uses the same FourCC.
РВ60
: RealMedia HD (RealVideo 11), предположительно основанный на HEVC (входит в состав RealPlayer 18). В апреле 2018 года RealNetworks опубликовала результаты тестирования скорости кодирования и эффективности сжатия. В ходе тестов RealMedia HD сравнивался с кодировщиками HEVC, H.264 и VP9. Результаты показали, что RealMedia HD обеспечивает более высокую степень сжатия, чем HEVC, при сохранении более высокого воспринимаемого качества изображения. Также утверждалось, что RealMedia HD работает быстрее, чем x265 и VP9 при аналогичных настройках сложности. Новейшая версия RealPlayer способна воспроизводить любые файлы RealVideo, равно как и программы, использующие FFmpeg. Другие программы могут не поддерживать все форматы сжатия видео. Помимо кода декодера для форматов до RV50, FFmpeg также содержит исходный код с открытым доступом для кодировщиков RV10 и RV20.