class IVideoDecoder
@Deprecated interface IVideoDecoder
|
包: | dji.v5.common.video.interfaces |
描述:
DJI码流解码器类。支持YUV输出模式和SURFACE输出模式。你可以通过构造函数设置解码器输出模式DecoderOutputMode
,通过设置VideoChannelType
来绑定需要进行解码的IVideoChannel
。
注意: 如果开发者通过构造函数自行设置解码器的宽(width)和高(height),需要保证设置的宽和高是16的倍数。
MSDK 5.0.0开始支持
类成员:
method VideoDecoder
VideoDecoder(Context context, VideoChannelType channelType, DecoderOutputMode outputMode, Object outputSurface, int width, int height, boolean isForLiveStream)
|
包: | dji.v5.common.video.decoder |
描述:
VideoDecoder构造函数。
注意: 如果开发者通过构造函数自行设置解码器的宽(width)和高(height),需要保证设置的宽和高是16的倍数。
MSDK 5.0.0开始支持
输入参数:
Context context | 应用的Context实例。 |
VideoChannelType channelType | 码流通道类型。 |
DecoderOutputMode outputMode | 输出模式。 |
Object outputSurface | 输出Surface实例,可以使用SurfaceView或者SurfaceHolder。 |
int width | 解码器的宽。 |
int height | 解码器的高。 |
boolean isForLiveStream | true 表示该解码器用于直播解码。 |
method getDecoderOutputMode
@NonNull DecoderOutputMode getDecoderOutputMode()
|
包: | dji.v5.common.video.interfaces |
描述:
获取解码器输出模式。
MSDK 5.0.0开始支持
返回值:
method getVideoChannelType
VideoChannelType getVideoChannelType()
|
包: | dji.v5.common.video.interfaces |
描述:
获取解码器对应的码流通道类型。
MSDK 5.0.0开始支持
返回值:
method queueInFrame
void queueInFrame(@NonNull IVideoFrame videoFrame)
|
包: | dji.v5.common.video.interfaces |
描述:
将视频帧数据送入队列进行解码。对于码流管理模块IVideoStreamManager
的使用无需调用此接口,因为MSDK会自动把数据送到相应的解码器进行解码显示。此接口可用于IMediaManager
模块的playVideo
返回的IVideoFrmae帧数据解码显示播放。
MSDK 5.0.0开始支持
输入参数:
method getVideoWidth
包: | dji.v5.common.video.interfaces |
描述:
获取解码后的视频宽度。
MSDK 5.0.0开始支持
返回值:
method getVideoHeight
包: | dji.v5.common.video.interfaces |
描述:
获取解码后的视频高度。
MSDK 5.0.0开始支持
返回值:
method addYuvDataListener
void addYuvDataListener(@NonNull YuvDataListener listener)
|
包: | dji.v5.common.video.interfaces |
描述:
设置YUV数据监听器。设置DecoderOutputMode
为YUV_MODE
后,可通过此监听器获取到通过解码器解码后的YUV数据。
MSDK 5.0.0开始支持
输入参数:
method removeYuvDataListener
void removeYuvDataListener(@NonNull YuvDataListener listener)
|
包: | dji.v5.common.video.interfaces |
描述:
删除YUV数据监听器。
MSDK 5.0.0开始支持
输入参数:
method clearAllYuvDataListeners
void clearAllYuvDataListeners()
|
包: | dji.v5.common.video.interfaces |
描述:
移除所有YUV数据监听器。
MSDK 5.0.0开始支持
method addDecoderStateChangeListener
void addDecoderStateChangeListener(@NonNull DecoderStateChangeListener listener)
|
包: | dji.v5.common.video.interfaces |
描述:
设置解码器状态监听器。
MSDK 5.0.0开始支持
输入参数:
method removeDecoderStateChangeListener
void removeDecoderStateChangeListener(@NonNull DecoderStateChangeListener listener)
|
包: | dji.v5.common.video.interfaces |
描述:
删除解码器状态监听器。
MSDK 5.0.0开始支持
输入参数:
method clearAllDecoderStateChangeListeners
void clearAllDecoderStateChangeListeners()
|
包: | dji.v5.common.video.interfaces |
描述:
移除所有解码器状态监听器。
MSDK 5.0.0开始支持
method getDecoderStatus
@NonNull DecoderState getDecoderStatus()
|
包: | dji.v5.common.video.interfaces |
描述:
获取解码器状态。
MSDK 5.0.0开始支持
返回值:
method onPause
包: | dji.v5.common.video.interfaces |
描述:
设置解码器进入暂停解码状态。
MSDK 5.0.0开始支持
method onResume
包: | dji.v5.common.video.interfaces |
描述:
设置解码器恢复解码状态。
MSDK 5.0.0开始支持
method destroy
包: | dji.v5.common.video.interfaces |
描述:
销毁解码器实例,释放资源。
MSDK 5.0.0开始支持
enum DecoderOutputMode
@Deprecated enum DecoderOutputMode
|
包: | dji.v5.common.video.decoder |
描述:
解码器输出模式。支持YUV输出模式和SURFACE输出模式。
MSDK 5.0.0开始支持
Enum Members:
YUV_MODE | YUV输出模式。 |
SURFACE_MODE | SURFACE输出模式。 |
Class Members:
enum DecoderState
@Deprecated enum DecoderState
|
包: | dji.v5.common.video.decoder |
描述:
解码器状态。
MSDK 5.0.0开始支持
Enum Members:
INITIALIZED | 解码器初始化完成。 |
VIDEO_FRAME_INPUT | 解码器处于视频帧输入状态。 |
DECODING | 解码器处于视频帧解码状态。 |
PAUSED | 解码器处于暂停状态。 |
Class Members: