Skip to content

[js] 第125天 你有用过webRTC吗?它有什么运用场景? #1085

Open
@haizhilin2013

Description

@haizhilin2013
Collaborator

第125天 你有用过webRTC吗?它有什么运用场景?

Activity

weilaiqishi

weilaiqishi commented on Aug 19, 2019

@weilaiqishi

WebRTC代表“Web实时通信”。这基本上允许在浏览器中进行语音、视频聊天和P2P共享(实时通信)
实际应用的要求来源https://www.zhihu.com/question/25497090/answer/43395462
用WebRTC来做视频直播
一个实现了WebRTC相关协议的客户端。比如Chrome浏览器
架设一个类似MCU系统的服务器
第一步,直播的客户端,比如Chrome浏览器,通过WebRTC相关的媒体API获取图像及声音信源,再用WebRTC中的通信API将图像和声音数据发送到MCU服务器。
第二步,MCU服务器根据需求对图像和声音数据进行必要的处理,比如压缩、混音等。
第三步,需要看直播的用户,通过他们的Chrome浏览器,链接上MCU服务器,并收取服务器转发来的图像和声音流。
入门https://zhuanlan.zhihu.com/p/59520779

forever-z-133

forever-z-133 commented on Aug 19, 2019

@forever-z-133

重点在于 WebRTC 相关的媒体 API,比如有名的 avigator.getUserMedia
撇开各浏览器间上的兼容问题,打开摄像头和麦克风后拿到流数据,很多种玩法就将实现了。
比如语音聊天室,口令红包,直播,MR 等等,都用 web 即可实现。
像微信 SDK 的录音录像都还是限时长的,都已有相当多应用,webRTC 则有更多自定义的玩法。

xiaoqiangz

xiaoqiangz commented on Jul 8, 2022

@xiaoqiangz

WebRTC是一个开源项目,旨在使得浏览器能为实时通信(RTC)提供简单的JavaScript接口。说的简单明了一点就是让浏览器提供JS的即时通信接口。这个接口所创立的信道并不是像WebSocket一样,打通一个浏览器与WebSocket服务器之间的通信,而是通过一系列的信令,建立一个浏览器与浏览器之间(-to-peer)的信道,这个信道可以发送任何数据,而不需要经过服务器。并且WebRTC通过实现MediaStream,通过浏览器调用设备的摄像头、话筒,使得浏览器之间可以传递音频和视频。

使用场景:
能用于音视频实时互动
能用于游戏、即时通讯、文件传输等等
它是一个百宝箱,传输、音视频处理(回音消除、降噪等)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    jsJavaScript

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @haizhilin2013@xiaoqiangz@forever-z-133@weilaiqishi

        Issue actions

          [js] 第125天 你有用过webRTC吗?它有什么运用场景? · Issue #1085 · haizlin/fe-interview