详细描述
IMediaPlayer 类
构造及析构函数说明
成员函数说明
initialize()
virtual int initialize(const MediaPlayerContext& context)
初始化播放器
参数
返回
open()
virtual int ar::rtc::IMediaPlayer::open(const char * src,int64_t startPos )
打开媒体文件
参数
key | 键名。 |
---|
src | 置媒体文件的路径:本地路径或网络路径 |
startPos | 设置起始播放位置(秒),默认值为 0 |
返回
play()
virtual int ar::rtc::IMediaPlayer::play()
播放媒体文件
打开媒体文件或暂停播放媒体文件后,你可以调用该方法播放媒体文件。
返回
pause()
virtual int ar::rtc::IMediaPlayer::pause()
暂停播放
如果你想恢复播放,请调用 play() 方法。
返回
stop()
virtual int ar::rtc::IMediaPlayer::stop()
停止播放
如果你想恢复播放,请调用 play() 方法。
返回
seek()
virtual int ar::rtc::IMediaPlayer::seek(int64_t pos)
从指定的位置播放媒体文件
如果你想恢复播放,请调用 play() 方法。
参数
返回
mute()
virtual int ar::rtc::IMediaPlayer::mute(bool mute)
设置是否静音
参数
key | 键名。 |
---|
mute | 静音选项: true: 静音false: (默认)不静音 |
返回
getMute()
virtual int ar::rtc::IMediaPlayer::getMute(bool& mute)
获取当前的静音状态
参数
| key | 键名。 |
---|
[out] | mute | 静音状态: true: 静音false: (默认)不静音 |
返回
adjustPlayoutVolume()
virtual int ar::rtc::IMediaPlayer::adjustPlayoutVolume(int volume)
调节本地播放音量
参数
key | 键名。 |
---|
volume | 本地播放音量,取值范围从 0 到 100: 0: 无声100: (默认)媒体文件的原始播放音量 |
返回
getPlayoutVolume()
virtual int ar::rtc::IMediaPlayer::getPlayoutVolume(int & volume)
获取当前本地播放音量
参数
| key | 键名。 |
---|
[out] | volume | 本地播放音量,取值范围从 0 到 100: 0: 无声100: (默认)媒体文件的原始播放音量 |
#### 返回 | | |
getPlayPosition()
virtual int ar::rtc::IMediaPlayer::getPlayPosition(int64_t & pos)
获取当前播放进度
参数
| key | 键名。 |
---|
[out] | pos | 播放进度(秒) |
#### 返回 | | |
getDuration()
virtual int ar::rtc::IMediaPlayer::getDuration(int64_t & duration)
获取媒体文件总时长
参数
| key | 键名。 |
---|
[out] | duration | 媒体文件总时长(秒) |
#### 返回 | | |
getState()
virtual ar::media::MEDIA_PLAYER_STATE ar::rtc::IMediaPlayer::getState
获取播放器当前状态
参数
| key | 键名。 |
---|
[out] | duration | 媒体文件总时长(秒) |
#### 返回 | | |
播放器当前状态,详见 MEDIA_PLAYER_STATE
getStreamCount()
virtual ar::rtc::IMediaPlayer::getStreamCount( int & count)
获取该媒体文件中媒体流的数量
参数
| key | 键名。 |
---|
[out] | duration | 该媒体文件中媒体流的数量 |
#### 返回 | | |
getStreamInfo()
virtual ar::rtc::IMediaPlayer::getStreamInfo(int index,
ar::media::MediaStreamInfo * info )
通过此条媒体流的索引值获取媒体流信息
参数
setView()
virtual int ar::rtc::IMediaPlayer::setView ( ar::media::base::view_t view )
设置播放器渲染视图
参数
key | 键名。 |
---|
view | 渲染视图,Windows 平台为窗口句柄(HWND) |
返回
setRenderMode()
virtual int ar::rtc::IMediaPlayer::setRenderMode ( ar::media::base::RENDER_MODE_TYPE renderMode )
设置播放器视图的渲染模式
参数
key | 键名。 |
---|
renderMode | 播放器视图的渲染模式: RENDER_MODE_HIDDEN (1): 视频尺寸等比缩放。优先保证视窗被填满。因视频尺寸与显示视窗尺寸不一致而多出的视频将被截掉。 RENDER_MODE_FIT (2): 视频尺寸等比缩放。优先保证视频内容全部显示。因视频尺寸与显示视窗尺寸不一致造成的视窗未被填满的区域填充黑色。 |
返回
registerPlayerObserver()
virtual int ar::rtc::IMediaPlayer::registerPlayerObserver ( IMediaPlayerObserver * observer )
注册一个播放观测器
参数
返回
unregisterPlayerObserver()
virtual int ar::rtc::IMediaPlayer::unregisterPlayerObserver ( IMediaPlayerObserver * observer )
取消注册该播放观测器
参数
返回
registerVideoFrameObserver()
virtual int ar::rtc::IMediaPlayer::registerVideoFrameObserver ( ar::media::base::IVideoFrameObserver * observer )
注册视频观测器
参数
返回
unregisterVideoFrameObserver()
virtual int ar::rtc::IMediaPlayer::unregisterVideoFrameObserver ( ar::media::base::IVideoFrameObserver * observer )
取消注册视频观测器
参数
返回
registerAudioFrameObserver()
virtual int ar::rtc::IMediaPlayer::registerAudioFrameObserver ( ar::media::base::IAudioFrameObserver * observer )
注册音频观测器
参数
返回
unregisterAudioFrameObserver()
virtual int ar::rtc::IMediaPlayer::unregisterAudioFrameObserver ( ar::media::base::IAudioFrameObserver * observer )
取消注册音频观测器
参数
返回
setLogFile()
virtual int ar::rtc::IMediaPlayer::setLogFile ( const char * filePath )
设置日志文件
MediaPlayer Kit 运行时产生的 log 都写入日志文件,调用该方法可以设置日志文件的存储路径。 请确保你指定的日志文件路径存在且可写。如果不调用该方法,日志文件会存储至默认路径。
注解:
请在调用 initialize() 后立即调用该方法,否则日志文件中的 log 可能不完整。
参数
key | 键名。 |
---|
filePath | 日志文件的完整路径。该日志文件为 UTF-8 编码。 |
返回
setLogFilter()
virtual int ar::rtc::IMediaPlayer::setLogFilter ( unsigned int filter )
设置输出日志的过滤等级
设置 MediaPlayer Kit 的输出日志的过滤等级。过滤等级从低到高分别为 OFF,DEBUG,INFO,WARN,ERROR, CRITICAL。选择一个过滤等级,你就可以看到在该等级之前的所有等级的日志信息,详见 filter 参数描述。
参数
key | 键名。 |
---|
filter | 设置日志过滤等级: LOG_FILTER_OFF (0): 不输出任何日志。 LOG_FILTER_DEBUG (0x80f): 输出所有的日志。 LOG_FILTER_INFO (0x0f): (推荐取值)输出 INFO,WARN,ERROR,CRITICAL 等级的日志。 LOG_FILTER_WARN (0x0e): 输出 WARN,ERROR,CRITICAL 等级的日志。 LOG_FILTER_ERROR (0x0c): 输出 ERROR,CRITICAL 等级的日志。 LOG_FILTER_CRITICAL (0x08): 输出 CRITICAL 等级的日志。 |
返回
changePlaybackSpeed()
virtual int ar::rtc::IMediaPlayer::changePlaybackSpeed ( const ar::media::MEDIA_PLAYER_PLAY_SPEED speed )
调节播放速度
请在 play() 后调用该方法。
参数
返回
selectAudioTrack()
virtual int ar::rtc::IMediaPlayer::selectAudioTrack ( int index )
设置使用的音轨
如果媒体资源含有多个音轨,你可以调用该方法设置你想使用的音轨。
参数
返回
release()
virtual int ar::rtc::IMediaPlayer::release ( bool sync = true )