public class LPMediaViewModel extends LPBaseViewModel implements LPMediaVM
构造器和说明 |
---|
LPMediaViewModel(LPSDKContext context) |
限定符和类型 | 方法和说明 |
---|---|
java.lang.String |
getMediaCoursewareUrl(java.lang.String mediaId)
根据指定mediaId获取媒体课件的播放URL
|
io.reactivex.subjects.PublishSubject<LPMediaModel> |
getMediaPublishPreExtSubject() |
io.reactivex.subjects.PublishSubject<LPMediaModel> |
getMediaPublishPreSubject() |
io.reactivex.subjects.PublishSubject<LPMediaModel> |
getMediaPublishSubject() |
io.reactivex.subjects.PublishSubject<LPMediaModel> |
getMediaRepublishSubject() |
io.reactivex.Observable<IMediaModel> |
getObservableOfCloudVideo()
云端插播监听
|
io.reactivex.Observable<LPPlayerViewUpdateModel> |
getObservableOfPlayerViewUpdate()
获取视频播放器位置大小变化
|
io.reactivex.Observable<java.lang.String> |
getObservableOfTerminateExtraStream()
终止辅助媒体流监听(仅老师和助教有权限)
|
io.reactivex.Flowable<LPConstants.VolumeLevel> |
getObservableOfVolumeChange() |
io.reactivex.subjects.PublishSubject<IMediaModel> |
getPlayCloudVideoPublishSubject() |
LPPlayerViewUpdateModel |
getPlayerViewUpdate()
获取最新的视频播放器位置大小变化
|
void |
requestPlayerViewUpdate(LPPlayerViewUpdateModel popupLivePlayerPosition)
发送视频播放器位置大小变化
|
LPError |
sendBroadcastOfCloudVideoSpeed(java.lang.String mediaId,
float speed)
同步云端插播播放倍数 (仅老师和助教有权限)
|
LPError |
sendBroadcastOfCloudVideoStatus(java.lang.String mediaId,
LPConstants.LPCloudVideoStatus status)
同步云端插播播放状态 (仅老师和助教有权限)
|
LPError |
sendBroadcastOfCloudVideoTime(java.lang.String mediaId,
int currentTime)
同步云端插播播放进度 (仅老师和助教有权限
|
LPError |
sendBroadcastOfTerminateExtraStream(LPConstants.MediaSourceType mediaSourceType)
发送终止辅助媒体流广播
|
void |
sendMediaPublish(boolean rePull)
skip_release 用于优化拉流端
只有如下四种情况不需要重新拉流:
video: true , audio: true => video: true , audio: false
video: true , audio: true => video: true , audio: false => video: true , audio: true
video: true , audio: true => video: false , audio: true
video: true , audio: true => video: false , audio: true => video: true , audio: true
目前仅处理了1,3两种情况
|
void |
sendMediaRePublish()
media_republish
|
void |
sendScreenShareMediaPublish(boolean videoOn,
boolean videoFit) |
void |
start() |
void |
stop() |
void |
updateSpeakStatus(boolean isSpeakMode)
更新举手状态
|
correspondingEvents, destroy, lifecycle, peekLifecycle, requestScope
public LPMediaViewModel(LPSDKContext context)
public io.reactivex.Flowable<LPConstants.VolumeLevel> getObservableOfVolumeChange()
public io.reactivex.subjects.PublishSubject<LPMediaModel> getMediaPublishSubject()
public io.reactivex.subjects.PublishSubject<LPMediaModel> getMediaPublishPreSubject()
public io.reactivex.subjects.PublishSubject<LPMediaModel> getMediaRepublishSubject()
public io.reactivex.subjects.PublishSubject<LPMediaModel> getMediaPublishPreExtSubject()
public void start()
public io.reactivex.Observable<IMediaModel> getObservableOfCloudVideo()
LPMediaVM
getObservableOfCloudVideo
在接口中 LPMediaVM
public LPError sendBroadcastOfCloudVideoSpeed(java.lang.String mediaId, float speed)
LPMediaVM
sendBroadcastOfCloudVideoSpeed
在接口中 LPMediaVM
mediaId
- 流idspeed
- 0.5~2.0public LPError sendBroadcastOfCloudVideoStatus(java.lang.String mediaId, LPConstants.LPCloudVideoStatus status)
LPMediaVM
sendBroadcastOfCloudVideoStatus
在接口中 LPMediaVM
public LPError sendBroadcastOfCloudVideoTime(java.lang.String mediaId, int currentTime)
LPMediaVM
sendBroadcastOfCloudVideoTime
在接口中 LPMediaVM
public void requestPlayerViewUpdate(LPPlayerViewUpdateModel popupLivePlayerPosition)
LPMediaVM
requestPlayerViewUpdate
在接口中 LPMediaVM
public io.reactivex.Observable<LPPlayerViewUpdateModel> getObservableOfPlayerViewUpdate()
LPMediaVM
getObservableOfPlayerViewUpdate
在接口中 LPMediaVM
public LPPlayerViewUpdateModel getPlayerViewUpdate()
LPMediaVM
getPlayerViewUpdate
在接口中 LPMediaVM
public io.reactivex.Observable<java.lang.String> getObservableOfTerminateExtraStream()
LPMediaVM
getObservableOfTerminateExtraStream
在接口中 LPMediaVM
public LPError sendBroadcastOfTerminateExtraStream(LPConstants.MediaSourceType mediaSourceType)
LPMediaVM
sendBroadcastOfTerminateExtraStream
在接口中 LPMediaVM
mediaSourceType
- 媒体流类型public java.lang.String getMediaCoursewareUrl(java.lang.String mediaId)
LPMediaVM
getMediaCoursewareUrl
在接口中 LPMediaVM
public io.reactivex.subjects.PublishSubject<IMediaModel> getPlayCloudVideoPublishSubject()
public void sendMediaPublish(boolean rePull)
sendMediaPublish
在接口中 LPMediaVM
rePull
- true:重新拉流,false反之public void sendScreenShareMediaPublish(boolean videoOn, boolean videoFit)
public void sendMediaRePublish()
public void updateSpeakStatus(boolean isSpeakMode)
updateSpeakStatus
在接口中 LPMediaVM
isSpeakMode
- true 更新状态为发言中public void stop()