KSYAQPlayer Class Reference

Inherits from NSObject
Declared in KSYAQPlayer.h

Overview

基于AudioQueue的音乐播放器

* 提供声音播放的功能
* 通过回调拉取新的数据
* 提供音量和音调调节功能
* 能将播放后的音频数据通过回调送出 (回调的数据为音效处理之后的数据)

– play:

开始播放

- (BOOL)play:(AudioStreamBasicDescription *)fmt

Parameters

fmt,

后续送入的音频数据的格式

Return Value

是否能够开始播放

Declared In

KSYAQPlayer.h

– stop

停止播放背景音乐

- (void)stop

Declared In

KSYAQPlayer.h

– pause

暂停播放背景音乐

- (void)pause

Declared In

KSYAQPlayer.h

– resume

恢复播放背景音乐

- (void)resume

Declared In

KSYAQPlayer.h

  volume

播放音量

@property (nonatomic, assign) double volume

Discussion

调整范围 0.0~1.0, 默认为1

Declared In

KSYAQPlayer.h

  pitch

播放声音的音调

@property (nonatomic, assign) double pitch

Discussion

调整范围 [-24.0 ~ 24.0], 默认为0.01, 单位为半音

0.01 为1度, 1.0为一个半音, 12个半音为1个八度

Declared In

KSYAQPlayer.h

  playRate

播放速度

@property (nonatomic, assign) double playRate

Discussion

调整范围 0.5~2.0, 默认为1

Declared In

KSYAQPlayer.h

  inFmt

输入的音频格式

@property (nonatomic, readonly) AudioStreamBasicDescription inFmt

Discussion

每次输入音频格式可能变化时,请重新调用play: 方法

Declared In

KSYAQPlayer.h

  outFmt

回调输出的音频格式

@property (nonatomic, readonly) AudioStreamBasicDescription outFmt

Declared In

KSYAQPlayer.h

  mute

背景音乐播放静音

@property (nonatomic, assign) BOOL mute

Discussion

仅仅静音播放, 不影响回调的音频数据

Declared In

KSYAQPlayer.h

  pullDataCB

音频数据输入回调

@property (nonatomic, copy) BOOL ( ^ ) ( AudioQueueBufferRef buf ) pullDataCB

Discussion

buf 送入的音频数据

Declared In

KSYAQPlayer.h

  putDataCB

音频数据输出回调

@property (nonatomic, copy) BOOL ( ^ ) ( uint8_t **pData , int len , const AudioStreamBasicDescription *fmt , CMTime pts ) putDataCB

Discussion

pData 回调输出的数据指针

len sample数

fmt 数据的格式

pts 目前没有时间戳输出

Declared In

KSYAQPlayer.h

  isRunning

音频播放是否运行

@property (nonatomic, readonly) BOOL isRunning

Discussion

音频是否输出到speaker播放

Declared In

KSYAQPlayer.h

  isPaused

音频播放是否暂停

@property (nonatomic, readonly) BOOL isPaused

Discussion

通过 pause/resume 改变状态

Declared In

KSYAQPlayer.h

  audioErrorCode

播放错误码

@property (nonatomic, readonly) OSStatus audioErrorCode

Discussion

播放错误码具体内容可以参考AudioQueue的Apple文档。

Declared In

KSYAQPlayer.h