Пользовательское видео WebRtc VP8

Я хотел бы передавать данные кадров rgb (в реальном времени) через Интернет в виде видеопотока в браузер (chrome / firefox).

Итак, я получил преобразование rgb -> yuv -> yv12 -> vp8. Я могу воспроизводить видео vp8 локально, и оно выглядит неплохо.

теперь мне нужно передать эти данные в webrtc, чтобы другой «клиент» мог это увидеть.

Теперь это выполнимо?

Я собирался обернуть vp8 вокруг видеофайла webm, но не записывать фактическую длину файла, потому что я не знаю длины, поскольку это потоковая передача в реальном времени, и создать тег в браузере и начать вводить данные. (Я делал это с Theora раньше, «имитируя потоковую передачу, конечно, она была немного медленной и была TCP, но работала с задержкой»).

Или я собираюсь передать данные в webrtc. Я даже не знаю, допускает ли api что-то подобное. Возможно, мне придется немного его взломать.

Резюме: процесс A создает видео NxM rgb и записывает его в свой буфер. Процесс B считывает этот буфер через IPC, кодирует его в VP8, процесс B отправляет это в браузер с помощью VP8 либо в webm, либо в webRtc.


person Evren Bingøl    schedule 04.10.2013    source источник


Ответы (1)


Насколько я смог найти в исследовании связанной ситуации, это пока невозможно. Видео может поступать только с устройств, настроенных в системе (веб-камера, аудио и т. Д.). Я считаю, что это возможно в предлагаемом проекте спецификации, который я прочитал некоторое время назад, но мы еще не достигли его. Я знаю, что они работают над разрешением доступа через веб-audioAPI, но я не уверен в текущем статусе.

person Blake    schedule 19.12.2013