Совместное использование экрана с помощью WebRTC?
Мы изучаем WebRTC, но видим противоречивую информацию о том, что возможно и поддерживается сегодня.
С помощью WebRTC можно воссоздать службу совместного доступа к экрану, похожую на join.me или WebEx, где:
- Вы можете поделиться частью экрана
- Вы можете передать управление другой стороне.
- Загрузка не требуется
Возможно ли это сегодня с любым браузером WebRTC? Как насчет Chrome на iOS?
Ответы
Ответ 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
флаг.
- обновите демонстрационную страницу и нажмите кнопку совместного доступа.