媒体资源播放和渲染

  • iOS

更新时间不可用

selectAudioTrack:

选择播放过程中使用的音轨。

Objective-C
- (int)selectAudioTrack:(int)index NS_SWIFT_NAME(selectAudioTrack(_:));

获取音频文件的音轨索引后,可以调用该方法指定任意音轨进行播放。例如,如果一个多音轨文件的不同音轨存储了不同语言的歌曲,可以调用该方法设置播放语言。

注: 需要在调用 getStreamByIndex: 获取音频流索引值之后再调用该方法。

参数

参数名描述
index

音轨的索引。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

setAudioDualMonoMode:

设置当前音频文件的声道模式。

Objective-C
- (int)setAudioDualMonoMode:(AgoraAudioDualMonoMode)mode NS_SWIFT_NAME(setAudioDualMonoMode(_:));

你可以使用该方法设置当前音频文件的声道模式,包括原始模式、左声道模式、右声道模式或混合声道模式。例如,在 KTV 场景中,音乐文件的左声道存储伴奏,右声道存储人声。如果你只需要听伴奏,可以调用该方法将声道模式设置为左声道模式;如果你需要同时听到伴奏和人声,可以将声道模式设置为混合声道模式。

注:

  • 请在调用 open:startPos: 方法之后调用此方法。
  • 此方法仅适用于立体声音频文件。

参数

参数名描述
mode

声道模式。详见 AgoraAudioDualMonoMode。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

setAudioPitch:

设置当前媒体资源的音调。

Objective-C
- (int)setAudioPitch:(NSInteger)pitch NS_SWIFT_NAME(setAudioPitch(_:));

注: 请在调用 open:startPos: 方法之后调用此方法。

参数

参数名描述
pitch

按半音阶设置本地音乐文件的音调(默认值为 0,表示保持原始音调)。该值的范围是 -12 到 12,相邻两个值之间的音调差为一个半音。该参数的绝对值越大,设置的本地音乐文件音调越高或越低。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

setLoopCount:

设置循环播放次数。

Objective-C
- (int)setLoopCount:(int)loopCount NS_SWIFT_NAME(setLoopCount(_:));

调用此方法可设置循环播放次数。循环播放完成后,SDK 会触发 AgoraRtcMediaPlayer:didChangedToState:reason: 回调,并报告播放状态为 AgoraMediaPlayerStatePlayBackAllLoopsCompleted。

参数

参数名描述
loopCount

音频效果的循环播放次数:

  • ≥ 0:播放的次数。例如,设置为 0 表示不循环播放,仅播放一次;设置为 1 表示循环播放一次,总共播放两次。
  • -1:无限循环播放音频文件。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

setPlaybackSpeed:

设置当前音频文件的播放速度。

Objective-C
- (int)setPlaybackSpeed:(int)speed NS_SWIFT_NAME(setPlaybackSpeed(_:));

调用该方法前,需要先调用 open:startPos: 方法。

参数

参数名描述
speed

播放速度。声网建议将该参数设置为 30 到 400 之间的整数,具体含义如下:

  • 30:原始速度的 0.3 倍。
  • 100:原始速度。
  • 400:原始速度的 4 倍。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

setPlayerOption:value:

设置媒体播放器选项。

Objective-C
- (int)setPlayerOption:(NSString *)key value:(NSInteger)value NS_SWIFT_NAME(setPlayerOption(_:value:));

你可以通过 key 和 value 设置媒体播放器的选项。该方法与 setPlayerOptionString:value: 的区别在于,本方法的 value 参数类型为 NSInteger,而 setPlayerOptionString:value: 的 value 参数类型为 NSString。这两个方法不能同时使用。一般情况下,你无需调用此方法,直接使用媒体播放器提供的默认选项即可。

适用场景

适用于需要技术预览或特殊定制功能的场景。

调用时机

在调用 open:startPos: 或 openWithMediaSource: 方法之前调用。

参数

参数名描述
key

选项的键。

value

选项的值。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

setPlayerOptionString:value:

设置媒体播放器的选项。

Objective-C
- (int)setPlayerOptionString:(NSString *)key value:(NSString *)value NS_SWIFT_NAME(setPlayerOptionString(_:value:));

你可以通过 key 和 value 设置媒体播放器的选项。该方法与 setPlayerOption:value: 的区别在于,此方法的 value 参数类型为 NSString,而 setPlayerOption:value: 的 value 参数类型也是 NSString,但这两个方法不能同时使用。通常情况下,你无需调用此方法,直接使用媒体播放器提供的默认选项即可。

适用场景

适用于需要技术预览或特殊定制功能的场景。

调用时机

在调用 open:startPos: 或 openWithMediaSource: 方法之前调用此方法。

参数

参数名描述
key

选项的键。

value

选项的值。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

setView:

设置渲染视图。

Objective-C
- (int)setView:(View *_Nullable)view NS_SWIFT_NAME(setView(_:));

调用时机

你可以在加入频道前或加入后调用该方法。

参数

参数名描述
view

渲染视图。详见 View。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类