Web RTC, представленный World Wide Web Consortium (W3C). Это поддерживает приложения браузера-браузера для голосовых вызовов, видеочата и обмена файлами по протоколу P2P.
Если вы хотите попробовать? Веб-RTC доступны для Chrome, Opera и Firefox. Хорошее место для начала — простое приложение видеочата здесь . Web RTC реализует три API, как показано ниже —
-
MediaStream — получить доступ к камере и микрофону пользователя.
-
RTCPeerConnection — получить доступ к средствам аудио- или видеозвонков.
-
RTCDataChannel — получить доступ к одноранговой связи.
MediaStream — получить доступ к камере и микрофону пользователя.
RTCPeerConnection — получить доступ к средствам аудио- или видеозвонков.
RTCDataChannel — получить доступ к одноранговой связи.
MediaStream
MediaStream представляет синхронизированные потоки мультимедиа. Например, нажмите «HTML5 Video player» в демонстрационном разделе HTML5 или нажмите здесь .
Приведенный выше пример содержит stream.getAudioTracks () и stream.VideoTracks (). Если аудиодорожек нет, он возвращает пустой массив и проверяет видеопоток, если веб-камера подключена, stream.getVideoTracks () возвращает массив из одного MediaStreamTrack, представляющего поток с веб-камеры. Простой пример — приложения чата, приложение чата получает поток с веб-камеры, задней камеры, микрофона.
Пример кода MediaStream
function gotStream(stream) { window.AudioContext = window.AudioContext || window.webkitAudioContext; var audioContext = new AudioContext(); // Create an AudioNode from the stream var mediaStreamSource = audioContext.createMediaStreamSource(stream); // Connect it to destination to hear yourself // or any other node for processing! mediaStreamSource.connect(audioContext.destination); } navigator.getUserMedia({audio:true}, gotStream);
Скриншот
Это также возможно в браузере Chrome с mediaStreamSource и требует HTTPS. Эта функция еще не доступна в опере. Пример демонстрации доступен здесь
Контроль сеансов, информация о сети и медиа
Web RTC требует одноранговой связи между браузерами. Этот механизм требовал сигнализации, сетевой информации, управления сеансом и медиа-информации. Веб-разработчики могут выбрать другой механизм обмена данными между браузерами, такой как SIP или XMPP, или любые двусторонние коммуникации. Пример примера XHR здесь .