LiteAVSDK
腾讯云音视频 SDK ,服务于数万家企业客户的高可用组件,致力于最大限度地节省您的研发成本。
TXVodPlayer

详细描述

点播播放器


结构体说明

◆ TXVodPlayer

class TXVodPlayer

构造函数

(void) - setupVideoWidget:insertIndex:
 
(void) - setupVideoWidget:insertIndex:
 
(void) - removeVideoWidget
 
(void) - setStartTime:
 
(int) - startPlay:
 
(int) - startPlayWithParams:
 
(int) - stopPlay
 
(bool) - isPlaying
 
(void) - pause
 
(void) - resume
 
(int) - seek:
 
(float) - currentPlaybackTime
 
(float) - duration
 
(float) - playableDuration
 
(int) - width
 
(int) - height
 
(void) - setRenderRotation:
 
(void) - setRenderMode:
 
(void) - setMute:
 
(void) - setAudioPlayoutVolume:
 
(void) - snapshot:
 
(void) - snapshot:
 
(void) - setRate:
 
(NSArray< TXBitrateItem * > *) - supportedBitrates
 
(NSInteger) - bitrateIndex
 
(void) - setBitrateIndex:
 
(void) - setMirror:
 
(void) - attachTRTC:
 
(void) - detachTRTC
 
(void) - publishVideo
 
(void) - publishAudio
 
(void) - unpublishVideo
 
(void) - unpublishAudio
 

类方法

(NSString *) + getEncryptedPlayKey:
 

属性

id< TXLivePlayListenerdelegate
 
id< TXVodPlayListenervodDelegate
 
id< TXVideoCustomProcessDelegate > videoProcessDelegate
 
BOOL enableHWAcceleration
 
TXVodPlayConfigconfig
 
BOOL isAutoPlay
 
NSString * token
 
BOOL loop
 

函数文档

◆ attachTRTC:()

- (void) attachTRTC: (NSObject *)  trtcCloud

将当前vodPlayer附着至TRTC

◆ bitrateIndex()

- (NSInteger) bitrateIndex

获取当前正在播放的码率索引

◆ currentPlaybackTime()

- (float) currentPlaybackTime

获取当前播放时间

◆ detachTRTC()

- (void) detachTRTC

将当前vodPlayer和TRTC分离

◆ duration()

- (float) duration

获取视频总时长

◆ getEncryptedPlayKey:()

+ (NSString *) getEncryptedPlayKey: (NSString *)  key

获取加固加密播放密钥

参数
key加密播放密钥
返回
加密后字符串

◆ height()

- (int) height

视频高度

◆ isPlaying()

- (bool) isPlaying

是否正在播放

◆ pause()

- (void) pause

暂停播放

◆ playableDuration()

- (float) playableDuration

可播放时长

◆ publishAudio()

- (void) publishAudio

开始向TRTC发布辅路音频流

◆ publishVideo()

- (void) publishVideo

开始向TRTC发布辅路视频流

◆ removeVideoWidget()

- (void) removeVideoWidget

移除Video渲染View

◆ resume()

- (void) resume

继续播放

◆ seek:()

- (int) seek: (float)  time

播放跳转到音视频流某个时间

参数
time流时间,单位为秒
返回
0 = OK

◆ setAudioPlayoutVolume:()

- (void) setAudioPlayoutVolume: (int)  volume

设置音量大小

参数
volume音量大小。范围:0 ~ 100。

◆ setBitrateIndex:()

- (void) setBitrateIndex: (NSInteger)  index

设置当前正在播放的码率索引,无缝切换清晰度 清晰度切换可能需要等待一小段时间。腾讯云支持多码率HLS分片对齐,保证最佳体验。

参数
index码率索引,index == -1,表示开启HLS码流自适应;index > 0 (可从supportedBitrates获取),表示手动切换到对应清晰度码率

◆ setMirror:()

- (void) setMirror: (BOOL)  isMirror

设置画面镜像

◆ setMute:()

- (void) setMute: (BOOL)  bEnable

设置静音

◆ setRate:()

- (void) setRate: (float)  rate

设置播放速率

参数
rate正常速度为1.0;小于为慢速;大于为快速。最大建议不超过2.0

◆ setRenderMode:()

- (void) setRenderMode: (TX_Enum_Type_RenderMode)  renderMode

设置画面的裁剪模式

参数
renderMode裁剪
参见
TX_Enum_Type_RenderMode

◆ setRenderRotation:()

- (void) setRenderRotation: (TX_Enum_Type_HomeOrientation)  rotation

设置画面的方向

参数
rotation方向
参见
TX_Enum_Type_HomeOrientation

◆ setStartTime:()

- (void) setStartTime: (CGFloat)  startTime

设置播放开始时间 在startPlay前设置,修改开始播放的起始位置

◆ setupVideoWidget:insertIndex:() [1/2]

- (void) setupVideoWidget: (NSView *)  view
insertIndex: (unsigned int)  idx 

◆ setupVideoWidget:insertIndex:() [2/2]

- (void) setupVideoWidget: (UIView *)  view
insertIndex: (unsigned int)  idx 

◆ snapshot:() [1/2]

- (void) snapshot: (void(^)(NSImage *))  snapshotCompletionBlock

◆ snapshot:() [2/2]

- (void) snapshot: (void(^)(UIImage *))  snapshotCompletionBlock

◆ startPlay:()

- (int) startPlay: (NSString *)  url

startPlay 启动从指定URL播放

参数
url完整的URL(如果播放的是本地视频文件,这里传本地视频文件的完整路径)
返回
0 = OK

◆ startPlayWithParams:()

- (int) startPlayWithParams: (TXPlayerAuthParams *)  params

通过fileid方式播放。

fileid的获取方式可参考 启动播放

参数
params认证参数
返回
0 = OK

◆ stopPlay()

- (int) stopPlay

停止播放音视频流

返回
0 = OK

◆ supportedBitrates()

- (NSArray<TXBitrateItem *> *) supportedBitrates

当播放地址为master playlist,返回支持的码率(清晰度)

警告
在收到EVT_VIDEO_PLAY_BEGIN事件后才能正确返回结果
返回
无多码率返回空数组

◆ unpublishAudio()

- (void) unpublishAudio

结束向TRTC发布辅路音频流

◆ unpublishVideo()

- (void) unpublishVideo

结束向TRTC发布辅路视频流

◆ width()

- (int) width

视频宽度

属性说明

◆ config

- (TXVodPlayConfig*) config
readwritenonatomiccopy

点播配置

◆ delegate

- (id<TXLivePlayListener>) delegate
readwritenonatomicweak

事件回调

警告
建议使用vodDelegate

◆ enableHWAcceleration

- (BOOL) enableHWAcceleration
readwritenonatomicassign

是否开启硬件加速 播放前设置有效

◆ isAutoPlay

- (BOOL) isAutoPlay
readwriteatomic

startPlay后是否立即播放,默认YES

◆ loop

- (BOOL) loop
readwritenonatomicassign

是否循环播放

◆ token

- (NSString*) token
readwritenonatomicstrong

加密HLS的token。设置此值后,播放器自动在URL中的文件名之前增加 voddrm.token.TOKEN

◆ videoProcessDelegate

- (id<TXVideoCustomProcessDelegate>) videoProcessDelegate
readwritenonatomicweak

视频渲染回调。(仅硬解支持)

◆ vodDelegate

- (id<TXVodPlayListener>) vodDelegate
readwritenonatomicweak

事件回调