繁体   English   中英

iPhone-音频文件中有很多杂音

[英]iPhone - lot of noise in audio file

我正在将两个文件中的原始音频字节写入新的wav文件中,以将两个文件合并。 创建的结果文件包含两个音频剪辑的内容,但是文件中也存在很多杂音。

有人可以给我指出一个很好的示例,该示例演示如何将原始音频字节写入文件吗? 这是我遵循的基本逻辑

SInt32 leftSample1 = ReadSampleFromFile1(music_iter1);
leftSample1 = (SInt32)((float) leftSample1 * 0.7071); //to avoid clipping

SInt32 leftStereoSample2 = ReadLeftSample(music_iter2);
leftStereoSample2 += leftSample1;
if (leftStereoSample2 > 32767)
leftStereoSample2 = 32767;
else if (leftStereoSample2 < -32768
leftStereoSample2 = -32768;
// write leftStereoSample2 to the file
//do the same as left sample to right sample also

++music_iter2;
++music_iter1;

谢谢。

这些返回多少次为真?

if (leftStereoSample2 > 32767)
leftStereoSample2 = 32767;
else if (leftStereoSample2 < -32768
leftStereoSample2 = -32768;

仅仅因为您没有剪辑,(因为您强迫它不剪辑)并不意味着您在像这样截断波浪时就不会出现失真(失真)等现象。 我会看到这种情况发生的频率。

核心音频具有混音器。 聪明的人已经编写了处理此类问题的代码,因此我们不必:) MultiChannelMixer是进行立体声混音的一种。 看看这个。

您对65535和-65536的测试不正确(需要17位)。 尝试32767和-32768。

我不确定“防止裁剪”的代码行是否确实在起作用。 在加入它们之前,您不需要有效地拒绝两个流吗?

尝试合并两个安静得多的文件。 并且不要在两个文件上都使用0.7071,而应使用0.5。 或者按照Aran的建议使用MultiChannelMixer。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM