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

📄 umc_h264_deblocking_tools.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_H264_DEBLOCKING_TOOLS_H#define __UMC_H264_DEBLOCKING_TOOLS_H#include <ippi.h>#include "vm_event.h"#include "vm_thread.h"#include "umc_structures.h"#include "umc_h264_dec.h"namespace UMC{// forward declarationclass H264VideoDecoder;class H264ThreadedDeblockingTools{public:    // Default constructor    H264ThreadedDeblockingTools(void);    // Destructor    virtual ~H264ThreadedDeblockingTools(void);    // Initialize object    Status Initialize(H264VideoDecoder *pDecoder);    // Deblock slice by two thread    void DeblockSliceTwoThreaded(Ipp32u uFirstMB, Ipp32u unumMBs, H264VideoDecoder::DeblockingFunction pDeblocking);    // Deblock slice asynchronous    void WaitEndOfSlice(void);    void DeblockSliceAsync(Ipp32u uFirstMB, Ipp32u unumMBs, H264VideoDecoder::DeblockingFunction pDeblocking);    Ipp32u m_nMBAFF;                                            // (Ipp32u) MBAFF flag    // Release object    void Release(void);    // Additional deblocking thread    static    unsigned int DeblockSliceSecondThread(void *p);    static    unsigned int DeblockSliceAsyncSecondThread(void *p);    H264VideoDecoder *m_pDecoder;                               // (H264VideoDecoder *) pointer to decoder-owner    vm_thread m_hDeblockingSliceSecondThread;                   // (vm_thread) handle to deblocking slice second thread    vm_thread m_hDeblockingSliceAsyncSecondThread;              // (vm_thread) handle to deblocking slice second thread    vm_event m_hBeginFrame;                                     // (vm_event) event to begin of deblocking frame    vm_event m_hBeginSlice;                                     // (vm_event) event to begin of deblocking slice    vm_event m_hBeginRow;                                       // (vm_event) event to begin of deblocking row    vm_event m_hDoneBorder;                                     // (vm_event) event of border macroblock is complete    vm_event m_hDoneRow;                                        // (vm_event) event of row is complete    vm_event m_hDoneSlice;                                      // (vm_event) event of slice is complete    bool m_bQuit;                                               // (bool) quit flag    Ipp32u m_nFirstMB;                                          // (Ipp32u) first macroblock to deblock    Ipp32u m_nNumMB;                                            // (Ipp32u) number of macroblock to deblock    H264VideoDecoder::DeblockingFunction m_pDeblocking;         // (H264VideoDecoder::DeblockingFunction) pointer to current deblocking function};} // namespace UMC#endif // UMC_H264_DEBLOCKING_TOOLS_H

⌨️ 快捷键说明

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