Представлен ORBX.js — сравнимый с H.264 видеокодек, реализованный целиком на JavaScript

7 мая 2013 года

Бренден Айк (Brendan Eich), создатель языка JavaScript, занимающий пост технического директора Mozilla Corporation, представил проект ORBX.js, в рамках которого компанией OTOY подготовлена высокопроизводительная реализация видеокодека, реализованного целиком на JavaScript и WebGL. Новый проект подчёркивает возведение JavaScript на новый уровень развития и знаменует стирание границ между Web и нативными приложениями. ORBX.js может работать в любых современных браузерах, в том числе для мобильных платформ, не требуя никаких дополнительных компонентов, кроме поддержки существующих web-стандартов.

Среди основных областей применения ORBX.js, кроме отображения потокового видео, называется создание работающих в окне браузера средств удалённого доступа к рабочему столу, играм и виртуальным окружениям. В частности, продемонстрированы средства для запуска в облачных окружениях ресурсоёмких 3D-пакетов и игр с трансляцией вывода в окно браузера, запущенного на маломощном нетбуке или планшете.

Кроме того, так как ORBX.js не требует наличия отдельных браузерных плагинов и не зависит от наличия кодеков в браузере, он может использоваться в качестве альтернативного пути предоставления средств защиты контента, не требующих продвижения DRM-механизмов в web-стандарты. Вместо DRM предлагается добавлять в кадры уникальные для каждого сеанса водяные знаки. Подобные водяные знаки дают возможность пользователю копировать и сохранять контент для собственных нужд, но в случае распространения контента среди других пользователей, позволяют выявить источник утечки.

С позиции эффективности, активное использование GPU в процессе работы, позволяет ORBX.js на обычной системе декодировать видеопотоки c разрешением 1080x600 и 60 кадров в секунду. Используемые в ORBX.js методы кодирования позволяют достигнуть на 25% более высокого уровня сжатия, по сравнению с H.264, при близком уровне качества. Среди достоинств нового кодека отмечается поддержка адаптивного изменения битрейта в зависимости от параметров полосы пропускания, более эффективные методы кодирования промежуточных кадров, изначальная ориентация на параллельную обработку данных, лучшая глубина цвета.

Для браузеров без поддержки WebGL, таких как Internet Explorer и Safari для iOS, предусмотрен режим упрощённого кодирования, при котором в потоке передаются только ключевые кадры, которые могут быть достаточно быстро и эффективно декодированы без привлечения GPU. Для браузеров с поддержкой WebGL, таких как Firefox, Opera и Chrome, герерируется более изощрённый поток, в котором присутствуют P-кадры, содержащие только информацию об изменениях, что позволяет сократить размер потока в два раза без изменения качества картинки. Декодирование подобных кадров выполняется с привлечением выполняемых на стороне GPU шейдеров.

Дополнительно, можно отметить публикацию демонстрации игры Epic Citade, портированной для работы внутри браузера. Работа игры в браузере основана на использовании компилятора Emscripten, преобразующего код проектов на C/C++ в представление на языке JavaScript (поддерживается подмножество языка JavaScript Asm.js). Для вывода 3D-графики задействован WebGL, а для вывода звука - Web Audio API. Для запуска демонстрации желательно использовать свежую ночную борку Firefox, компоненты которой войдут в состав релиза Firefox 23. Демонстрация также работоспособна и в Firefox 20, но в этом случае не будет обеспечена должная производительность, так как данным выпуском не поддерживается Asm.js.

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Представлен ORBX.js — сравнимый с H.264 видеокодек, реализованный целиком на JavaScript», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.