📄 umc_video_decoder.h
字号:
/*//// INTEL CORPORATION PROPRIETARY INFORMATION// This software is supplied under the terms of a license agreement or// nondisclosure agreement with Intel Corporation and may not be copied// or disclosed except in accordance with the terms of that agreement.// Copyright(c) 2003-2005 Intel Corporation. All Rights Reserved.//*/#ifndef __UMC_VIDEO_DECODER_H__#define __UMC_VIDEO_DECODER_H__#include "umc_structures.h"#include "umc_base_color_space_converter.h"#include "umc_media_data.h"#include "umc_base_codec.h"namespace UMC{class VideoDecoderParams : public BaseCodecParams{ DYNAMIC_CAST_DECL(VideoDecoderParams, BaseCodecParams)public: // Default constructor VideoDecoderParams(); // Destructor virtual ~VideoDecoderParams(); MediaData *m_pData; VideoStreamInfo info; // (VideoStreamInfo) compressed video info ColorFormat cformat; // (ColorFormat) uncompressed frame format vm_var32 lFlags; // (vm_var32) decoding flag(s) vm_var32 uiLimitThreads; // (vm_var32) maximum number of decoding thread double dPlaybackRate; BaseColorSpaceConverter *lpConverter; // (BaseColorSpaceConverter*) pointer to color converter ColorConversionInfo *lpConvertInit; // (ColorConversionInfo *) pointer to struct with conversion info ColorConversionInfo *lpConvertInitPreview; // (ColorConversionInfo *) pointer to second struct with conversion info};class VideoDecoder : public BaseCodec{ DYNAMIC_CAST_DECL(VideoDecoder, BaseCodec)public: VideoDecoder(void) :m_pConverter(NULL) {} // Destructor virtual ~VideoDecoder(void){} // Initialize codec with specified parameter(s) virtual Status Init(BaseCodecParams *init) = 0; // Compress (decompress) next frame virtual Status GetFrame(MediaData *in, MediaData *out) = 0; // Get codec working (initialization) parameter(s) virtual Status GetInfo(BaseCodecParams *info); // Close all codec resources virtual Status Close() = 0; // Set codec to initial state virtual Status Reset() = 0; // Reset skip frame counter virtual Status ResetSkipCount() = 0; // Increment skip frame counter virtual Status SkipVideoFrame(int) = 0; // Get skip frame counter statistic virtual vm_var32 GetSkipedFrame() = 0; virtual Status SetParams(BaseCodecParams* params);protected: VideoStreamInfo m_ClipInfo; // (VideoStreamInfo) clip info ColorConversionParams m_ConversionParam; // (ColorConversionParams) conversion parameters ColorConversionParams m_ConversionParamPreview; // (ColorConversionParams) conversion parameters BaseColorSpaceConverter* m_pConverter; // (BaseColorSpaceConverter *) pointer to color space converter};} // end namespace UMC#endif // __UMC_VIDEO_DECODER_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -