AgoraAudioFrame
原始音频数据。
__attribute__((visibility("default"))) @interface AgoraAudioFrame: NSObject @property (assign, nonatomic) NSInteger samplesPerChannel; @property (assign, nonatomic) NSInteger bytesPerSample; @property (assign, nonatomic) NSInteger channels; @property (assign, nonatomic) NSInteger samplesPerSec; @property (strong, nonatomic) NSData* _Nullable buffer; @property (assign, nonatomic) int64_t renderTimeMs; @property (assign, nonatomic) NSInteger avSyncType; @end
属性
- samplesPerChannel
- 每个声道的采样点数。
- bytesPerSample
- 每个采样点的字节数。对于 PCM 来说,一般使用 16 bit,即两个字节。
- channels
-
声道数量(如果是立体声,数据是交叉的)。
- 1: 单声道
- 2: 双声道
- samplesPerSec
- 每声道每秒的采样点数。
- buffer
-
声音数据缓存区(如果是立体声,数据是交叉存储的)。
缓存区数据大小
buffer
=samples
×channels
×bytesPerSample
。 - renderTimeMs
-
外部音频帧的渲染时间戳。
你可以使用该时间戳还原音频帧顺序;在有视频的场景中(包含使用外部视频源的场景),该参数可以用于实现音视频同步。
- avsyncType
- 保留参数。