文章目录

  • 1. 重采样相关文件的简单介绍及使用
    • 1.1 remix_resample文件
    • 1.2 push_resampler文件
    • 1.3 重采样算法
  • 2. 混音相关文件的简单介绍及使用
    • 2.1 audio_mixer_impl文件
    • 2.1 FrameCombiner
  • 3. 混音本地mic和远端播放的音频
    • 3.1 混音数据的获取
    • 3.2 混音数据
    • 3.3 获取混音后的数据

该篇文章主要是将WebRTC的远端和本地的音频流录制成mp3;同时也会涉及到WebRTC的重采样算法使用和混音的使用;
关于获取音频的类,可以在WebRTC源码中加入一个类文件(比如LYMMdiasRecord.cc),然后修改对应目录下的 gn文件,将新加入的文件参与WebRTC的编译,新加入类应该是一个全局的类(因为WebRTC里的peer可能有多个),所以这个类的初始化建议放在 PeerConnectionFactory 类*

WebRTC系列--录音相关推荐

  1. WebRTC 系列之音频会话管理

    导读:WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音对话或视频对话的 API.W3C 和 IETF 在2021年1月26日共同宣布 WebRTC ...

  2. WebRTC 系列(二、本地通话,H5、Android、iOS)

    WebRTC 系列(一.简介)​​​​​​​ 一.整体流程 有了上一篇 WebRTC 简介的基础,我们知道了 WebRTC 的工作流程,接下来就是需要用代码去实现这个流程了.对于不同端,实现起来的难易 ...

  3. WebRTC 系列之视频辅流

    导读:近几年,实时音视频领域越来越热,业界很多音视频引擎都是基于 WebRTC 进行实现的.本文主要介绍 WebRTC 在视频辅流上的需求背景以及相关技术实现. 文|陶金亮 网易云信资深客户端开发工程 ...

  4. WebRTC系列--视频编码控制之BALANCED(分辨率与帧率平衡模式)

    文章目录 1. 触发流程及流开始 2. 平衡模式流程详细分析 2.1 BalancedDegradationSettings的MinFps方法调用流程 2.2 source_proxy_的Restri ...

  5. WebRTC系列-Qos系列之发送NACK

    文章目录 1. NACK简述 2. 判断包位置的算法 2. WebRTC中NACK的处理流程 2.1 主要流程函数分析 2.2 是否丢包判断 2.3 乱序包的处理 在之前的文章 WebRTC系列-Qo ...

  6. WebRTC系列-Qos系列之接收NACK

    文章目录 1. 主要调用流程 1.1 RTCP和RTP包区分 1.2 查找丢失包 总结 在文章 WebRTC系列-Qos系列之RTP/RTCP源码分析-RTP/RTCP包解析-3的2.3.3章节介绍了 ...

  7. WebRTC系列-网络之带宽估计和码率估计(1)

    文章目录 1. 一些基本概念 1.1 协议选择 1.2 拥塞的原因现象 1.3 拥塞控制的方案 1.4 WebRTC源码实现 2. 码率控制主要流程 2.1 rtcp包处理 2.2 评估模块主要类关系 ...

  8. WebRTC系列-音频ADM播放采集的停止与开始

    文章目录 1. 媒体控制相关接口 1.1 初始化及停止 1.2 其他接口 2. 录制开始/暂停接口 3. 播放开始/暂停接口 上一篇 WebRTC系列 – iOS 音频采集播放之 ADM.APM和Au ...

  9. WebRTC系列 -- iOS ADM音频数据流处理流程及源码阅读记录

    文章目录 1. 播放数据 1.1 数据流的中转中心-AudioTransportImpl 1.2 混音及数据获取 2 音频录制数据 2.1 初始化音频帧及设置相关属性 2.2 混音及重采样 2.3 处 ...

最新文章

  1. 非线程安全类ArrayList出现异常:java.util.ConcurrentModificationException
  2. python新手入门-python新手入门方法
  3. 【译】 Google: Still in The Search 搜索巨人Google的伟大转变 (二)
  4. boost::intrusive::auto_unlink_hook用法的测试程序
  5. 提高代码质量 CheckStyle FindBugs PMD
  6. Android P (4)一种绕过Android P上非SDK接口限制的简单方法
  7. C#实现Ping命令
  8. 【java学习之路】(java框架)011.SpringMVC入门
  9. ArcEngine代码 两规冲突检测
  10. shader篇-单张纹理
  11. 计算机的科学思维是啥,浅谈计算机语言教学中的科学思维
  12. TFT,TFD,STN 屏幕以及VGA,QVGA,SVGA分辨率等常识
  13. Swift开发 UIColor分类Hex颜色转换
  14. 参考file-convert-util工具,实现doc,docx,html,md,pdf,png转换
  15. 亚马逊asin关键词排名追踪_图文实操:手把手教你优化亚马逊关键词的自然排名!...
  16. 95 后大学生利用漏洞免费吃肯德基获刑,他冤么?
  17. k8s安装tekton,编写task
  18. 计算机考研复试重点题目
  19. 在树莓派3B+上部署Intel NCS2神经网络计算棒
  20. 不同大小硬盘对拷oracle,如何实现硬盘对拷_大小不一样的硬盘怎么实现对拷?_不同大小硬盘对拷...

热门文章

  1. 小迷糊之HTML学习
  2. 运通四方汽配管理系统
  3. 仿凡科网站右侧悬浮窗 在线客服简约图标大全快捷导航钻芒美化版
  4. 猴子吃桃问题(C语言)
  5. 递归老鼠出迷宫,猴子吃桃练习以及注意事项。
  6. 【微信小程序爬虫】表情包小程序图文视频教学,从零写起,保姆教程!!!
  7. 见缝插针(Python)
  8. 白领刷脸族串红 人脸识别产品热销
  9. windows操作系统实验之影子账户
  10. 攻防世界babystack(pwn1)——glibc_all_in_one初体验