Page 283 - Web性能权威指南
P. 283

之,采集及处理音频和视频很复杂。不过,好消息是 WebRTC 会让浏览器具备功能
                 完备的音频和视频引擎(图 18-1),由它们替我们完成处理信号等琐碎的工作。



                                               WebᆌᆩAPIDŽW3CDž



                                                ాևWebRTC API

                            ᅼೕᆅ൤                         ๫ೕᆅ൤
                                  ᅼೕՊ঴ஓഗ                        ๫ೕՊ঴ஓഗ

                                  ۶ۯ0۪Ԉց׋                      ۶ۯ0۪Ԉց׋
                                    ࣮ำၩأ                           ཞօ

                                     ইሯ                           ᆖၟሺഽ


                                    ᅼೕ֑ण                          ๫ೕ֑ण
                                                   ยԢᆘॲ


                 图 18-1:WebRTC 的音频和视频引擎


                            要详细介绍音频和视频引擎,轻易就能再写一本书,已经超出本书讨论范
                            围了。更多信息,请参考:http://www.webrtc.org。

                 获得的音频流要经过降噪和回声消除处理,然后自动通过一种优化的窄带或宽带音
                 频编解码器编码。关键在于,还要通过特殊的错误补偿算法消除网络抖动和丢包造
                 成的损失,这是重点!视频引擎的流程与此类似,但着眼于影像品质,选择最优的
                 压缩和编解码方案,应用抖动和丢包补偿,等等。

                 所有这一切都由浏览器负责,而且更重要的是,浏览器会动态调整其处理流程,以
                 适应不断变化的音频和视频流及网络条件。经过浏览器这一系列处理之后,Web 应
                 用接收到了优化的媒体流,然后可以将其输出到显示器和扬声器,发送给另外一端,
                 或者使用 HTML5 的媒体 API 进行后期处理!


                 通过getUserMedia获取音频和视频
                 W3C 的 Media  Capture  and  Streams 规 范 规 定 了 一 套 新 JavaScript  API, 应 用 可
                 以通过这套 API 从平台取得音频和视频流,并对它们进行操作和处理。其中,


                                                                              WebRTC   |   273
   278   279   280   281   282   283   284   285   286   287   288