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

📄 umc_avi_chunk.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 __UMC_AVI_CHUNK_H__#define __UMC_AVI_CHUNK_H__#include "umc_avi_types.h"#include "lockable_data_reader.h"#define MAX_AVI_CHUNK_DEPTH (6)namespace UMC{    class AVIChunk    {    public:        AVIChunk();        Status Init(LockableDataReaderRef Reader);        Status DescendChunk(tFOURCC chnkName);        inline Status DescendLIST(tFOURCC chnkName);        inline Status DescendRIFF(tFOURCC chnkName);        inline void GoChunkHead();        Status Ascend();        inline vm_var32 GetChunkHead();        inline tFOURCC GetChunkFOURCC();        inline vm_var32 GetChunkSize();        Status GetData(vm_byte* pbBuffer, vm_var32 uiBufSize);        static bool CmpChunkNames(const tFOURCC chnkName1, const tFOURCC chnkName2);        Status JumpToFilePos(const vm_sizet uiFilePos);        virtual ~AVIChunk(){}    protected:        Status DescendChunkList(tFOURCC chnkName, tFOURCC listName);        class CChnkInfo        {        public:            tFOURCC m_chnkName;            vm_sizet m_stSize;            vm_sizet m_stFilePos;            CChnkInfo():m_chnkName(0),m_stSize(0),m_stFilePos(0){}        };        CChnkInfo m_ChnkStack[MAX_AVI_CHUNK_DEPTH];        unsigned long m_ulStackPos;        LockableDataReaderRef m_Reader;    };}  //  namespace UMCUMC::StatusUMC::AVIChunk::DescendLIST(tFOURCC chnkName){   return DescendChunkList(AVI_FOURCC_LIST, chnkName); }UMC::StatusUMC::AVIChunk::DescendRIFF(tFOURCC chnkName){   return DescendChunkList(AVI_FOURCC_RIFF, chnkName); }voidUMC::AVIChunk::GoChunkHead(){   m_Reader.SetPosition(m_ChnkStack[m_ulStackPos].m_stFilePos);    }vm_var32UMC::AVIChunk::GetChunkHead(){   return (vm_var32)m_ChnkStack[m_ulStackPos].m_stFilePos; }tFOURCCUMC::AVIChunk::GetChunkFOURCC(){   return m_ChnkStack[m_ulStackPos].m_chnkName;    }vm_var32UMC::AVIChunk::GetChunkSize(){    vm_sizet stSize = m_ChnkStack[m_ulStackPos].m_stSize;    assert(stSize == (vm_var32)stSize);    return (vm_var32)stSize;}#endif  //   __UMC_AVI_CHUNK_H__

⌨️ 快捷键说明

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