CAStreamBasicDescription和AudioStreamBasicDescription之间有什么区别?

CAStreamBasicDescription和AudioStreamBasicDescription之间有什么区别?,ios,core-audio,audiounit,Ios,Core Audio,Audiounit,CAStreamBasicDescription和AudioStreamBasicDescription之间有什么区别?谢谢。CAStreamBasicDescription只是围绕AudioStreamBasicDescription的一个包装类。只需查看通常位于以下位置的.h文件: /开发者/临时演员/CoreAudio/PublicUtility/ 我通常不使用CAStreamBasicDescription,而是直接使用AudioStreamBasicDescription。如果您希望获

CAStreamBasicDescription
AudioStreamBasicDescription
之间有什么区别?谢谢。

CAStreamBasicDescription只是围绕AudioStreamBasicDescription的一个包装类。只需查看通常位于以下位置的.h文件: /开发者/临时演员/CoreAudio/PublicUtility/


我通常不使用CAStreamBasicDescription,而是直接使用AudioStreamBasicDescription。如果您希望获得有关如何填充AudioStreamBasicDescription结构的帮助,只需使用函数FillOutASBDForLPCM。

与第一个答案相反,我建议每个人都使用CAStreamBasicDescription,除非您完全熟悉CoreAudio、流格式以及这些格式如何应用于音频单元,以及每个平台上的图形。通过使用包装器及其许多健全性检查和调试功能,可以避免许多问题

在处理某些核心音频对象时,还应尽可能使用核心音频实用程序来减少自己需要编写的代码行数。如果没有其他东西,你应该使用这个不错的代码库作为学习工具来学习一些核心音频的内部内容


我发现CAStreamBasicDescription对调试非常有用,因为它可以轻松打印出格式。但我通常也会直接使用ASBD。别忘了“接受”你认为正确的答案。那么现在的CAStreamBasicDescription版本在哪里?我希望从版本2.4升级,它至少有5年的历史,并且引用了一些不推荐的东西,但是上面链接的版本是1.1。