
WebRTC Native实战系列
文章平均质量分 75
目前没有基于WebRTC Native实战项目,分享基于WebRTC Native中对Linux/Android/IOS平台的Audio、Video、Camera模块开发.
优惠券已抵扣
余额抵扣
还需支付
¥299.90
¥399.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
Android系统攻城狮
《Android系统多媒体进阶实战》一书作者
展开
-
WebRTC最新版报错解决:city.wav:missing and no known rule to make it (二十六)
本篇目的:WebRTC最新版报错解决:city.wav’, missing and no known rule to make it。原创 2024-02-20 13:16:11 · 530 阅读 · 0 评论 -
WebRTC最新版报错解决:FileNotFoundError: LASTCHANGE.committime (二十五)
本篇目的:WebRTC最新版报错解决:FileNotFoundError: LASTCHANGE.committime。原创 2024-02-20 13:01:15 · 739 阅读 · 0 评论 -
国内镜像:极速下载编译WebRTC源码(For Android/Linux/IOS)(二十四)
本篇目的:国内镜像:极速下载编译WebRTC源码(For Android/Linux/IOS)原创 2024-01-13 21:08:31 · 1025 阅读 · 0 评论 -
WebRTC入门:基础的核心协议与概念(二十三)
本篇目的:WebRTC入门:基础的核心协议与概念WebRTC全称:Web Real-Time Communication,是一个支持网页浏览器进行实时语音对话或视频 对话的技术方案。它是一个API标准,前端开发人员可以调用这些API来实现实时通信。WebRTC的发布, 让很多不同的应用,如视频会议、文件传输、聊天和桌面共享等都不需要额外的插件。原创 2024-01-13 20:45:41 · 478 阅读 · 0 评论 -
P2P打洞原理(二十二)
一、P2P打洞原理1、打洞解决了什么问题?我们平常使用的一般都为私有ip,但是私有ip之间是不能直接通信的,如果要进行通信只能通过公网上的服务器进行数据的转发,难道我们每次发送数据都要经过公网上的服务器转发吗?也不是不可以,但是服务器的承受能力就会大大增加。此时就需要我们的打洞技术的出现了,打洞的出现解决了私有ip之间直接通信的问题(还是需要经过一次公网服务器)例如:QQ中的聊天就广泛的使用到了打洞技术,不然服务器的承受能力会大大增加,而且会影响聊天的效率。2、打洞的实现过程与原理私有ip转载 2021-02-23 00:09:07 · 974 阅读 · 1 评论 -
webRTC之[chromium-style] virtual methods with non-empty bodies shouldnt be declared inline(二十一)
报错如下:/modules/audio_device/include/audio_device.h:151:51: error: [chromium-style] virtual methods with non-empty bodies shouldn't be declared inline. virtual int32_t GetPlayoutUnderrunCount() const { return -1; }2.解决<1>.src/modules/audio_de.原创 2021-06-24 11:45:46 · 426 阅读 · 0 评论 -
webRTC之fatal error: ‘absl/strings/string_view.h‘ file not found(二十)
1.报错如下:ninja: Entering directory `out/linux_64/'[1/1] Regenerating ninja files1111111111111111111111111sources ====== ["audio_capture.cc"][1/3] CXX obj/zgj/audio_capture_test/audio_capture/audio_capture.oFAILED: obj/zgj/audio_capture_test/audio_c.原创 2021-06-23 19:59:43 · 1287 阅读 · 0 评论 -
WebRTC之gn快速入门手册(十九)
Running GNYou just rungnfrom the command line. For large projects, GN is versioned and distributed with the source checkout. For Chromium and Chromium-based projects, there is a script indepot_tools, which is presumably in your PATH, with this name...原创 2021-06-23 15:05:29 · 537 阅读 · 0 评论 -
webRTC之video_loopback改造(十七)
1.webrtc-checkout/src/BUILD.gnif (rtc_include_tests) { deps += [ ":rtc_unittests", ":slow_tests", ":video_engine_tests", ":webrtc_nonparallel_tests", ":webrtc_perf_tests", "common_audio:common_audio_u.原创 2021-06-22 15:55:15 · 366 阅读 · 0 评论 -
webRTC(linux native层)之video capture流程(十六)
一、webrtc-checkout/src/modules/video_capture/test/video_capture_unittest.cc编译架构1.webrtc-checkout/src/Build.gn //修改测试if (!build_with_chromium) { group("default") { if (is_android) { deps += [ ":android_junit_tests", "sdk/a.原创 2021-06-22 11:37:50 · 437 阅读 · 0 评论 -
webRTC之gtest安装使用(十五)
webRTC中使用的是google test(简称:gtest)方式来写测试用例,来学习下gtest用法,对了解webRTC大有裨益.1.gtest download, compile and install.# git clone https://github.com/google/googletest.git# mkdir build# cmake ..# make -j12 # sudo make install2.demo 01# emacs gtest_01.cc...原创 2021-06-21 21:06:10 · 414 阅读 · 0 评论 -
webRTC之智能指针std::unique_ptr::reset()使用(十四)
1.std::unique_ptr::reset()原创 2021-06-10 17:46:56 · 1718 阅读 · 0 评论 -
WebRTC之gn与ninja(十三)
一、创建webRTC第一个helloworld1.# cd webrtc-checkout/src# mkdir external<1>.编译脚本gn# emacs BUILD.gn executable("main_hello") { sources = [ "main_hello.cc", ]}<2>.测试demo#include <iostream>int main(int argc, char** argv) { pr.原创 2021-06-09 16:38:03 · 387 阅读 · 0 评论 -
HEVC与AVC的区别与联系(十二)
一、什么是H.265? H.265是相对于H.264的一个升级版,是在原有H.264标准上的一个拓展和优化。H.265旨在在有限带宽下传输更高质量的网络视频,仅需原先的一半带宽即可播放相同质量的视频。这也意味着,我们的智能手机、平板机等移动设备将能够直接在线播放1080P的全高清视频。H.265标准也同时支持4K(4096×2160)和8K(8192×4320)超高清视频。 为什么说H.265比H.264更高效?H.265/HEVC视频编码与H.264/AVC使用相同的方法,包括画面帧预测、变换转载 2021-06-05 14:45:14 · 9975 阅读 · 0 评论 -
信源编码与信道编码区别(十一)
一.信源编码和信道编码的发展历程信源编码: 最原始的信院编码就是莫尔斯电码,另外还有ASCII码和电报码都是信源编码。但现代通信应用中常见的信源编码方式有:Huffman编码、算术编码、L-Z编码,这三种都是无损编码,另外还有一些有损的编码方式。信源编码的目标就是使信源减少冗余,更加有效、经济地传输,最常见的应用形式就是压缩。相对地,信道编码是为了对抗信道中的噪音和衰减,通过增加冗余,如校验码等,来提高抗干扰能力以及纠错能力。信道编码:1948年Shannon极限理论→1950..转载 2021-06-02 17:56:58 · 7001 阅读 · 0 评论 -
webrtc之SVC实现(十)
一、概念SVC(可适性视频编码或可分级视频编码)是传统H.264/MPEG-4 AVC编码的延伸,可提升更大的编码弹性,并具有时间可适性(Temporal Scalability)、空间可适性(Spatial Scalability)及质量可适性(SNR/Quality/Fidelity scalability)三大特性,使视频传输更能适应在异质的网络带宽。二、概述SVC以AVC视频编解码器标准为基础,利用了AVC编解码器的各种高效算法工具,在编码产生的编码视频时间上(帧率)、空间上(分辨率)、视频转载 2021-06-01 18:00:42 · 1343 阅读 · 0 评论 -
webRTC之Mesh/MCU/SFU通信架构区别(九)
Webrtc一对一的通信,通常采用的是端到端的方式,那如果多人通信的架构方案一般有这三种常见的方案Mesh方案即多个终端之间两两进行连接,形成一个网状结构。比如 A、B、C 三个终端进行多对多通信,当 A 想要共享媒体(比如音频、视频)时,它需要分别向 B 和 C 发送数据。同样的道理,B 想要共享媒体,就需要分别向 A、C 发送数据,依次类推。这种方案对各终端的带宽要求比较高。当某个浏览器想要共享它的音视频流时,它会将共享的媒体流分别发送给其他 3 个浏览器,这样就实现了多人通信。这种结构的优势转载 2021-06-01 17:51:59 · 907 阅读 · 0 评论 -
WebRTC之RFC协议下载(八)
https://www.rfc-editor.org/retrieve/bulk/原创 2021-06-01 17:01:46 · 393 阅读 · 0 评论 -
WebRTC之linux ARM64交叉编译(七)
2、安装depot_tools# git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git# export PATH=$PATH:/path/to/depot_tools3、获取WEBRTC源码以及编译# mkdir -p web_rtc && cd web_rtc# export GYP_DEFINES="OS=linux"# fetch --nohooks webrtc# gcl.原创 2021-05-17 11:58:19 · 1477 阅读 · 2 评论 -
WebRTC通话原理(六)
WebRTC通话原理-基本流程基本流程WebRTC通话最典型的应用场景就是一对一音视频通话,如微信或QQ音视频聊天。通话的过程是比较复杂的,这里我们简化这个流程,把最主要的步骤提取出来,如图所示。假定通话的双方为Peer-A和Peer-B。双方要建立起通话,主要的步骤如下所示。 1 PeerA与PeerB通过信令服务器进行媒体协商,如双方使用的音视频编码格式。双方交换的媒体数据由SDP协议描述。2 PeerA与PeerB通过STUN服务器获取到各自自己的网络信息,如IP和端口。然后通过信令服转载 2021-05-12 16:07:00 · 633 阅读 · 0 评论 -
WebRTC development(四)
WebRTC developmentThe currently supported platforms are Windows, Mac OS X, Linux, Android and iOS. See the Android and iOS pages for build instructions and example applications specific to these mobile platforms.Before You StartFirst, be sure to inst原创 2021-04-29 20:58:04 · 288 阅读 · 0 评论 -
WebRTC报错:depot_tools/bootstrap_python3: um.8_bin/python3/bin/python3: 没有那个文件或目录(三)
1.报错:depot_tools/bootstrap_python3: 行 32: bootstrap-3.8.0.chromium.8_bin/python3/bin/python3: 没有那个文件或目录2.解决:# emacs depot_tools/bootstrap_python3-BOOTSTRAP_PYTHON_BIN="${BOOTSTRAP_PATH}/python3/bin/python3"+BOOTSTRAP_PYTHON_BIN="$/usr/bin/python3".原创 2021-03-22 21:52:42 · 4386 阅读 · 2 评论 -
WebRTC下载及编译(二)
1.webRTC环境搭建WebRTC国内景象:https://webrtc.org.cn/mirror//下载depot_tools工具# git clone https://webrtc.bj2.agoralab.co/webrtc-mirror/depot_tools.git//.下载webRTC源码# mkdir webRTC && cd webRTC# git clone https://webrtc.bj2.agoralab.co/webrtc-mirror/.原创 2021-03-22 21:46:28 · 2229 阅读 · 1 评论 -
WebRTC手册(一)
更多原创,欢迎关注:Android系统攻城狮。优快云博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.原创 2021-03-11 23:22:06 · 840 阅读 · 0 评论 -
Webrtc 开源代码的简单介绍
WebRTC提供了视频会议的核心技术,包括音视频的采集、编解码、网络传输、显示等功能,并且还支持跨平台:windows,linux,mac,android, iOS等。Webrtc 是多媒体通信技术的未来趋势,Google为了成为标准的主导者,将Chrome浏览器里的Webrtc实现代码开源了,浏览器的开源的WebRTC是众多同仁学习研究的重要资源,这个开源实现中的任何的一个技术点都可以拿出来列一个专题进行讨论,这里我们只能简单的介绍一下。一、视频相关视频采集---video_capture ...转载 2020-06-06 17:25:30 · 873 阅读 · 0 评论 -
WebRTC基本概念(零)
WebRTC 全称为:Web Real-Time Communication1.MediaStream:捕获音视频流2.RTCPeerConnection:传输音视频流(一般用在 peer-to-peer 的场景)3.RTCDataChannel: 用来上传音视频二进制数据(一般用到流的上传)RTC(Real Time Communication): 实时通信WebRTC: 基于we...原创 2020-04-14 23:46:47 · 619 阅读 · 0 评论