簡體   English   中英

如何在Objective-C中將AVAudioPCMBuffer轉換為NSData?

[英]How to convert AVAudioPCMBuffer to NSData in Objective-C?

如標題所示。

Swift 這里有一個舊的解決方案。 但是我很難轉換到Objective-C。 似乎沒有與UnsafeBufferPointer等效的Objective-C

Objective-C在語言中內置了不安全的指針,因此轉換就變成了:

- (NSData *)bufferToNSData:(AVAudioPCMBuffer *)buffer {
    return [[NSData alloc] initWithBytes:buffer.floatChannelData[0] length:buffer.frameLength * 4];
}

注意,這假設緩沖區中有單聲道32位浮點數據。 需要完成更多工作才能將所有支持的AVAudioPCMBuffer格式序列化為NSData

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM