【问题标题】:Method for determining current Hardware's Buffer Rate and SampleRate on OSX在 OSX 上确定当前硬件的 Buffer Rate 和 SampleRate 的方法
【发布时间】:2016-04-29 04:48:42
【问题描述】:

我有一种方法,它依赖于了解硬件采样率和缓冲区持续时间来计算一些值。目前在 iOS 上的实现如下:

double sampleRate = [[AVAudioSession sharedInstance] sampleRate];
double bufferDuration = [[AVAudioSession sharedInstance] IOBufferDuration];
float bufferLength = sampleRate*bufferDuration;

但是,在 OSX 上,AVAudioSession 类无法识别,并且似乎不是 SDK 的一部分。关于这类事情的文档似乎非常少。

如何在 OSX 操作系统上查询相同的值?

【问题讨论】:

    标签: macos avfoundation core-audio


    【解决方案1】:

    要确定缓冲区长度,请参阅之前的答案:OSX: CoreAudio API for setting IO Buffer length? 指向此 Apple 技术说明,了解一些带有 getter 和 setter 的 Core Audio 属性:https://developer.apple.com/library/mac/technotes/tn2321/_index.html#//apple_ref/doc/uid/DTS40013499-CH1-THE_I_O_BUFFER_SIZE

    要确定采样率,请参阅之前的答案: CoreAudio get output sample rate 关于 kAudioUnitProperty_SampleRate 属性。

    【讨论】:

      猜你喜欢
      • 2019-04-26
      • 2012-07-04
      • 1970-01-01
      • 2018-11-15
      • 1970-01-01
      • 2010-10-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多