首页 > 其他分享 >webrtc 渲染音频时遇到的问题

webrtc 渲染音频时遇到的问题

时间:2022-08-18 18:36:38浏览次数:145  
标签:采样率 48k 渲染 buffer 音频 混音 webrtc

有用户反馈连麦时,直播间会有电流声,后面排查发现是 webrtc 内部播放器渲染音频时,用户的播放设备不支持 48000hz 采样率(我们传输的音频采样率都是 48000hz),导致音频数据受损而出现电流音

详细过程:

用户本地的混音是通过 webrtc 内部的回调拿到的,而用户的播放设备不支持 48k,导致 webrtc 输出的混音是非 48k,远端传来的音频是 48k 的,而两个混音在进一步混音时,因为采样率不同,导致音频数据不完整

如下摘取片段,音频数据不完整的过程可以参考这篇文章:短视频中解决音视频混音出现杂音的问题

 

 

从这个示意图可以很明显的看出问题,48000Hz 重采样之后的音频 buffer size已经变小了,但是用这个 buffer 和 44100Hz 正常的 buffer 合并,那其中一个音频后面就是一段空数据,所以合成之后肯定会出现杂音的。

解决方法: 不使用播放设备默认的采样率,在 webrtc 回调中手动重采样音频

 

标签:采样率,48k,渲染,buffer,音频,混音,webrtc
From: https://www.cnblogs.com/strive-sun/p/16599714.html

相关文章

  • 如何在UE5中渲染一个中世纪城堡?
    今天分享一个中世纪城堡的制作思路,中世纪风格是我很喜欢的风格之一,所以决定做一个这类的场景。闲言少叙,直接上图。1、关于这个项目其实早在2020年我就做了一个城堡的概......
  • layui数据表格的渲染方式--方法渲染
    layui数据表格的方法渲染html代码<tableclass="layui-table"id="test"lay-filter="test"></table> js代码<scripttype="text/javascript">......
  • 8 首页的文章列表的渲染
    index.html{%loadstatic%}<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><linkrel="stylesheet"href="{%......
  • After Effects 教程,如何在 After Effects 中使用 Cinema 4D 渲染器?
    欢迎观看AfterEffects中文版教程,小编带大家学习ae视频软件的基本工具和使用技巧,了解如何在AE中使用Cinema4D渲染器。在「项目」面板中双击「02_Naturalists-Cla......
  • Vue+element-ui实现表格数据渲染+分页
    Vue+element-ui实现表格数据渲染+分页具体属性请看官方文档:Table表格这里给大家看一个比较不错的表格数据渲染的例子,也是我目前所写的项目中的一部分。这里呢我们就......
  • webRTC构建-Linux版
    linux下构建webRTC#!/bin/bashset-exu__CURRENT__=`pwd`__DIR__=$(cd"$(dirname"$0")";pwd)cd${__DIR__}start_time=$(date-u'+%Y-%m-%dT%H:%M:%SZ')star......
  • 利用ffmpeg合并音频和视频
    一、当视频文件中没有音频时将audioname音频与videoname视频替换ffmpeg-ivideoname.mp4-imusic.mp3-c:vcopy-c:aaac-strictexperimentaloutputname.mp4二、当......
  • 【游戏开发基础知识】渲染篇
    什么是渲染管线?如何绘制3D物体?https://www.bilibili.com/video/BV1qY4y1V79z/?spm_id_from=333.788&vd_source=61ce3b4e97cb6ce7f80ca3f58607b5fb1、前期CPU需要为GPU准......