mp3解码器转PCM合并

2021-01-06 23:09:38

参考地址 android – 如何混合/叠加两个mp3音频文件到一个mp3文件(不连接)

解码器地址  

更多信息aboud MP3解码器可以找到here.


我想将两个mp3文件合并成一个mp3文件,例如,如果第一个文件是1分钟,第二个文件是30秒,那么输出应该是一分钟.在那一分钟,它应该播放这两个文件.

首先,为了混合两个音频文件,您需要操纵它们的原始表示;由于MP3文件被压缩,您无法直接访问信号的原始表示.您需要对压缩的MP3流进行解码,以便“理解”您的音频信号的波形,然后可以混合使用.


因此,为了将两个压缩音频文件混合到单个压缩音频文件中,需要以下步骤:

>使用解码器对压缩文件解码以获取原始数据(NO PUBLIC SYSTEM API可用于此,您需要手动进行操作!).
>混合两个未经压缩的原始数据流(如果需要应用音频剪辑).为此,您需要考虑使用解码器获得的原始数据格式(PCM)
>将原始混合数据编码为压缩的MP3文件(根据解码器,您需要使用编码器手动进行)

更多信息aboud MP3解码器可以找到here.


  • 2020-11-11 15:05:39

    nuxt如何在其它js文件中使用store

    在新建的js文件中想用store里面的数据,比如token想在封装的axios里面,请求头里面去使用,亦或者通过app的JS接口获取token并存储在store里面。我们都知道如何在vue中如何使用。

  • 2020-11-12 14:01:46

    使用postMessage来实现父子通信跨域

    1.子向父,子postMessage,父监听message; 2.父向子,父postMessage,子监听message; 3.测试发现,子向父postMessage的时候,源可以写为‘*’,父向子postMessage的时候,源需要写成子的源,(也就是子页面的协议+主机号+端口) 测试代码部分:

  • 2020-11-12 14:24:39

    Object.entries()

    Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的属性)