音频混音是啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了音频混音是啥相关的知识,希望对你有一定的参考价值。

参考技术A 提取一个视频文件的音频轨道,和另一个事先准备好的 mp3 文件混音

场景类似于视频剪辑软件的混音操作,将原视频文件和配乐混音,生成新的音频

混音是基于 PCM 的基础上,在封装格式的文件无法直接进行音频剪辑、混音等操作

使用三个字节数组作为数据暂存区,分别对应着素材1,素材2和待合成的文件,这里又涉及到了不同声道数,量化位数的素材音频混音的兼容问题,需要重采样

取素材 1 和素材 2 对应的 pcm 数据进行相加,需要考虑到两个 short 类型的数相加后可能会超过 short 的范围,遇到这种情况时我们直接取 short 的边界

调整素材音频的音量大小时,可能会遇到丢失精度的问题

我们使用 MediaExtractor 获取轨道所在的位置后,通过遍历获取到指定的轨道,然后通过 MediaExtractor.readSampleData() 将轨道数据放到 Buffer 中,此时就需要 MediaCodec 解码了,当拿到空闲的 ByteBuffer 后,将 Buffer 中的数据放到 输入缓冲区中,然后 MediaExtractor 释放上一帧的压缩数据( MediaExtractor.advance() )

在几个不同采样率的音频文件时,一次只能设置一个采样率,需要统一个值,并且可能不让其他音频失真

android音频系统散记之五:如何绕开多媒体音轨的重采样

以上是关于音频混音是啥的主要内容,如果未能解决你的问题,请参考以下文章

在 HTML5 中构建音频混音器

音频处理使用 Adobe Audition 录制电脑内部声音 ( 启用电脑立体声混音 | Adobe Audition 中设置音频设备 | Adobe Audition 内录 )

Android上一种效果奇好的混音方法介绍

如何检索类似于 Windows 内置混音器应用程序中的音频会话名称?

制作程序化音频混音的有效方法

windows编程:在没有支持“立体声混音”的驱动程序的情况下抓取音频