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: