Подтвердить что ты не робот

Совместное использование экрана с помощью WebRTC?

Мы изучаем WebRTC, но видим противоречивую информацию о том, что возможно и поддерживается сегодня.

С помощью WebRTC можно воссоздать службу совместного доступа к экрану, похожую на join.me или WebEx, где:

  • Вы можете поделиться частью экрана
  • Вы можете передать управление другой стороне.
  • Загрузка не требуется

Возможно ли это сегодня с любым браузером WebRTC? Как насчет Chrome на iOS?

4b9b3361

Ответ 1

Насколько я знаю, это невозможно сейчас с любым из браузеров, хотя команда Google Chrome заявила, что в конечном итоге намерена поддержать этот сценарий (см. пункт маркера "Скриншоты" на своем roadmap); и я подозреваю, что это означает, что в конечном итоге последуют другие браузеры, предположительно с IE и Safari, воспитывающим хвост. Но все это, вероятно, находится где-то в феврале, а именно, когда они должны завершить текущий стандарт WebRTC и отправить производственные биты. (Надеюсь, Microsoft в последнюю минуту гаечный ключ в работах не винт этого.) Возможно, что я пропустил что-то недавно, но я внимательно следил за проектом, и я не думаю, что экранирование даже сделало это в Chrome Canary, но тем более dev/beta/prod. Opera является единственным браузером, который следит за Chrome в своей реализации WebRTC (FireFox, кажется, занимает около шести месяцев), и я ничего не видел в этой команде ни об экранизации.

Мне сказали, что есть один способ сделать это прямо сейчас, чтобы написать свой собственный драйвер для веб-камеры, чтобы ваш локальный экран появился в API WebRTC getUserMedia() как еще один источник видео. Я не знаю, что кто-то это сделал - и, конечно же, потребуется установка драйвера на рассматриваемой машине. К тому времени, когда все будет сказано и сделано, скорее всего, будет проще использовать VNC или что-то в этом роде.

Ответ 2

chrome.tabCapture API доступен для приложений и расширений Chrome.

Это позволяет захватить видимую область вкладки в виде потока, который можно использовать локально или совместно использовать через RTCPeerConnection addStream().

Для получения дополнительной информации см. Предложение WebCTC Tab Content Capture.

Скриншоты первоначально поддерживались для "обычных" веб-страниц с использованием getUserMedia с ограничением chromeMediaSource, но это было запрещено.

РЕДАКТИРОВАТЬ 1 апреля 2015 года: теперь редактируется, что совместное использование экрана поддерживается только Chrome в приложениях и расширениях Chrome.

Ответ 3

Вы, наверное, знаете, что screencapture (не tabCapture) доступен в Chrome Canary (26+), мы недавно опубликовали демо на; https://screensharing.azurewebsites.net

Обратите внимание, что вам нужно запустить его под https://,

video: {
  mandatory: {
    chromeMediaSource: 'screen'   
  }

Здесь вы также можете найти пример; https://html5-demos.appspot.com/static/getusermedia/screenshare.html

Ответ 4

Я знаю, что я немного опоздал, но надеюсь, что это поможет тем, кто наткнется на страницу, если не OP.

В настоящий момент поддержка Firefox и Chrome поддерживает весь экран или часть его (какое-то окно приложения, которое вы можете выбрать) со сверстниками через WebRTC в качестве медиа-потока, как и ваша камера/микрофон, поэтому нет возможности разрешить другим вечеринка возьмет под контроль ваш рабочий стол. Другое дело, что еще один улов, ваш сайт должен работать в режиме https, а в Firefox и Chrome пользователям придется устанавливать расширения.

Вы можете попробовать в этом Муаз-хане Демо-версия экрана, страница также содержит необходимые расширения.

Р. S: Если вы не хотите устанавливать расширение для запуска демонстрационной версии, в firefox (нет возможности избежать расширений в chrome), вам просто нужно изменить два флага,

  • перейти к about:config
  • установите media.getusermedia.screensharing.enabled как true.
  • добавить *.webrtc-experiment.com в media.getusermedia.screensharing.allowed_domains флаг.
  • обновите демонстрационную страницу и нажмите кнопку совместного доступа.