⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 umc_mpeg4_video_encoder.h

📁 这是在PCA下的基于IPP库示例代码例子,在网上下了IPP的库之后,设置相关参数就可以编译该代码.
💻 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 _ENCODER_MPEG4_H_#define _ENCODER_MPEG4_H_#include "umc_video_encoder.h"#include "umc_dynamic_cast.h"#include "vm_strings.h"#include "ippvideoencodermpeg4.hpp"namespace UMC{#define STR_LEN 511class MPEG4EncoderParams : public VideoEncoderParams{    DYNAMIC_CAST_DECL(MPEG4EncoderParams, VideoEncoderParams)public:    mp4_Param  m_Param;    vm_char    m_SourceFileName[STR_LEN+1];    MPEG4EncoderParams() { ippsZero_8u((Ipp8u*)(&m_Param), sizeof(m_Param)); };    Status ReadParamFile(const vm_char *FileName);};class MPEG4VideoEncoder: public VideoEncoder{public:    ippVideoEncoderMPEG4 mp4enc;    bool        m_IsInit;    int         m_FrameCount;    MPEG4VideoEncoder();    ~MPEG4VideoEncoder();    virtual Status Init(BaseCodecParams *init);    virtual Status GetFrame(MediaData *in, MediaData *out);    virtual Status GetInfo(BaseCodecParams *info);    virtual Status Close();    virtual Status Reset();    virtual Status SetParams(BaseCodecParams* params);    int GetFrameMacroBlockPerRow() { return mp4enc.GetFrameMacroBlockPerRow(); }    int GetFrameMacroBlockPerCol() { return mp4enc.GetFrameMacroBlockPerCol(); }    Ipp8u* GetFrameQuant() { return mp4enc.GetFrameQuant(); };    IppMotionVector* GetFrameMVpred() { return mp4enc.GetFrameMVpred(); };    Ipp32u* GetFrameMBpos() { return mp4enc.GetFrameMBpos(); };    void GetFrameMSE(Ipp64s *y, Ipp64s *u, Ipp64s *v) { mp4enc.GetFrameMSE(y, u, v); };protected:    MPEG4EncoderParams  m_Param;    double             *bTime;    int                 bTimePos;};VideoEncoder* createMPEG4VideoEncoder();} //namespace UMC#endif /*_ENCODER_MPEG4_H_*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -