首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用afconvert从wav转换为aac caf而无需重新采样?

如何使用afconvert从wav转换为aac caf而无需重新采样?
EN

Stack Overflow用户
提问于 2010-02-26 09:31:49
回答 2查看 3.1K关注 0票数 1

我正在制作一个Iphone游戏,我们需要使用一种压缩格式的声音,我们希望能够无缝地循环回到音频文件中的特定样本(所以有一个介绍,然后它循环回到一个偏移量)

目前,我所发现的唯一允许无缝循环的导出过程(报告正确的启动和填充帧编号,循环时不点击等等)是在caf文件中使用苹果的afconvert到aac格式。

但是当我们尝试编码到较低的比特率时,它会自动对声音进行重新采样!我们不想让声音重新采样,我遇到的每个其他编码器都有一个设置输出采样率的选项,但我找不到这个选项。

另外,如果有人有幸使用音频队列实现了压缩文件格式的无缝循环,请告诉我。

目前,我正在处理位于以下位置的信息:

http://developer.apple.com/mac/library/qa/qa2009/qa1636.html

请注意,当我保留编码的默认比特率(~128kbs)时,这确实可以很好地工作,但当我将其设置为32kbps时-使用-b选项-它会重新采样,并且现在会循环单击。

EN

回答 2

Stack Overflow用户

发布于 2011-10-01 00:03:56

它至少需要48kbps。32kbps将降采样到较低的采样率。

票数 1
EN

Stack Overflow用户

发布于 2014-02-25 22:33:22

我认为您混淆了采样率(典型值:32 bit、44.1 bit、48 bit)和比特率(典型值: 128kbps、160kbps、192kbps)。

对于比特率,32kbps是非常低的。在此比特率下,声音的质量会很差。您可能打算将采样率设置为32 the,这也不是完全典型的,但更有意义。

当压缩到AAC并解压缩回WAV时,您将不会得到相同的音频文件,因为在AAC中,音频数据以与raw波完全不同的格式表示。例如,您可以有几个微秒的偏移,这是转换为压缩格式所必需的。使用任何高度压缩的格式都不能完全解决这个问题。

滴答声来源于直接连续播放的两个样本之间的突然变化。这很可能是因为您在循环中跳回的偏移量在AAC文件中的位置与在WAV文件中的位置不完全相同(如上所述,可能会有微秒的偏移)。

在压缩时,您无法绕过这些细微的变化。相反,您必须在压缩后通过调整偏移量来补偿它们。这意味着您必须在音频编辑器中打开压缩的声音文件,例如Audacity,并手动找到另一个接近原始偏移量的偏移量,这适合循环。

如何找到适合循环的偏移量?

放大到波形的末端。看看波形看起来是什么样子。然后放大到原始偏移处的波形,并在其邻域中搜索波形无缝连接到波形末端的偏移量。

例如,在音频编辑器中打开未压缩的音频文件,然后检查波形的结尾和偏移量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2338948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档