Разработчики Mozilla представили [3] черновой вариант web-стандарта MediaStream Processing API [4] и экспериментальную сборку [5] Firefox с его реализацией. Предложенный стандарт предоставляет JavaScript API для обработки потоков с видео и аудио данными в режиме реального времени. Новый API позволяет выполнить на стороне браузера такие операции, как микширование звуковых потоков, наложение видео и аудио эффектов, динамическая корректировка громкости, синтез звука, захват и анализ видео (например, распознавание лиц и QR-кодов или запись в виде видеоролика содержимого элемента canvas).
От ранее предложенных программных интерфейсов, таких как Web audio API, MediaStream Processing API отличается более тесным использованием развиваемых параллельно web-стандартов, таких как WebRTC для обеспечения коммуникаций в реальном времени, Web Workers для организации многопоточной обработки и getUserMedia для захвата данных с микрофона и web-камеры. В настоящее время реализация MediaStream Processing API находится на начальной стадии развития и пока сосредоточена на решении задач по обработке звука. Поддержку работы с видео планируется добавить после того, как необходимые графические API можно будет использовать через Web Workers.
В основную ветку Firefox наработки проекта планируется интегрировать после доработки кода и интеграции в браузер поддержки WebRTC. Но по умолчанию MediaStream Processing API будет отключен, активировать новый API можно будет только после полной готовности спецификации.
Ссылки:
[1] http://htfl.ru/cat-news-mozilla
[2] http://htfl.ru/cat-news-novosti
[3] /out.php?link=http://robert.ocallahan.org/2012/01/mediastreams-processing-demos.html
[4] /out.php?link=https://dvcs.w3.org/hg/audio/raw-file/tip/streams/StreamProcessing.html
[5] /out.php?link=https://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/rocallahan@mozilla.com-6ac1418daa2e/