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

📄 umc_h264_dec_ippwrap.cpp

📁 audio-video-codecs.rar语音编解码器
💻 CPP
📖 第 1 页 / 共 2 页
字号:
/*
//
//              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-2007 Intel Corporation. All Rights Reserved.
//
//
*/
#include "umc_defs.h"
#if defined (UMC_ENABLE_H264_VIDEO_DECODER)

#include "ippi.h"
#include "ippvc.h"
#include "umc_h264_dec_ipplevel.h"
#include "umc_h264_dec_ippwrap.h"

namespace UMC
{
#pragma warning(disable: 4100)

    IppStatus FilterDeblockingLuma_HorEdge(Ipp8u* pSrcDst,
                                           Ipp32s srcdstStep,
                                           Ipp8u* pAlpha,
                                           Ipp8u* pBeta,
                                           Ipp8u* pThresholds,
                                           Ipp8u* pBS,
                                           Ipp32s bit_depth)
    {
        return ippiFilterDeblockingLuma_HorEdge_H264_8u_C1IR(pSrcDst,
                                                             srcdstStep,
                                                             pAlpha,
                                                             pBeta,
                                                             pThresholds,
                                                             pBS);
    }

    IppStatus FilterDeblockingLuma_VerEdge_MBAFF(Ipp8u* pSrcDst,
                                                 Ipp32s srcdstStep,
                                                 Ipp8u* pAlpha,
                                                 Ipp8u* pBeta,
                                                 Ipp8u* pThresholds,
                                                 Ipp8u* pBS,
                                                 Ipp32s bit_depth)
    {
        return ippiFilterDeblockingLuma_VerEdge_MBAFF_H264_8u_C1IR(pSrcDst,
                                                                   srcdstStep,
                                                                   pAlpha[0],
                                                                   pBeta[0],
                                                                   pThresholds,
                                                                   pBS);
    }

    IppStatus FilterDeblockingLuma_VerEdge(Ipp8u* pSrcDst,
                                           Ipp32s srcdstStep,
                                           Ipp8u* pAlpha,
                                           Ipp8u* pBeta,
                                           Ipp8u* pThresholds,
                                           Ipp8u* pBS,
                                           Ipp32s bit_depth)
    {
        return ippiFilterDeblockingLuma_VerEdge_H264_8u_C1IR(pSrcDst,
                                                             srcdstStep,
                                                             pAlpha,
                                                             pBeta,
                                                             pThresholds,
                                                             pBS);
    }

    IppStatus FilterDeblockingChroma_VerEdge_MBAFF(Ipp8u* pSrcDst,
                                                   Ipp32s srcdstStep,
                                                   Ipp8u* pAlpha,
                                                   Ipp8u* pBeta,
                                                   Ipp8u* pThresholds,
                                                   Ipp8u* pBS,
                                                   Ipp32s bit_depth)
    {
        return ippiFilterDeblockingChroma_VerEdge_MBAFF_H264_8u_C1IR(pSrcDst,
                                                                     srcdstStep,
                                                                     pAlpha[0],
                                                                     pBeta[0],
                                                                     pThresholds,
                                                                     pBS);
    }

    IppStatus FilterDeblockingChroma_VerEdge(Ipp8u* pSrcDst,
                                             Ipp32s srcdstStep,
                                             Ipp8u* pAlpha,
                                             Ipp8u* pBeta,
                                             Ipp8u* pThresholds,
                                             Ipp8u* pBS,
                                             Ipp32s bit_depth)
    {
        return ippiFilterDeblockingChroma_VerEdge_H264_8u_C1IR(pSrcDst,
                                                               srcdstStep,
                                                               pAlpha,
                                                               pBeta,
                                                               pThresholds,
                                                               pBS);
    }

    IppStatus FilterDeblockingChroma_HorEdge(Ipp8u* pSrcDst,
                                             Ipp32s srcdstStep,
                                             Ipp8u* pAlpha,
                                             Ipp8u* pBeta,
                                             Ipp8u* pThresholds,
                                             Ipp8u* pBS,
                                             Ipp32s bit_depth)
    {
        return ippiFilterDeblockingChroma_HorEdge_H264_8u_C1IR(pSrcDst,
                                                               srcdstStep,
                                                               pAlpha,
                                                               pBeta,
                                                               pThresholds,
                                                               pBS);
    }

#define FILL_FILTER_INFO \
    IppiFilterDeblock_8u info;\
    info.pSrcDstPlane = pSrcDst;\
    info.srcDstStep = srcdstStep;\
    info.pAlpha = pAlpha;\
    info.pBeta = pBeta;\
    info.pThresholds = pThresholds;\
    info.pBs = pBS;

    IppStatus FilterDeblockingChroma422_VerEdge(Ipp8u* pSrcDst,
                                                Ipp32s srcdstStep,
                                                Ipp8u* pAlpha,
                                                Ipp8u* pBeta,
                                                Ipp8u* pThresholds,
                                                Ipp8u* pBS,
                                                Ipp32s bit_depth)
    {
        FILL_FILTER_INFO;
        return ippiFilterDeblockingChroma422VerEdge_H264_8u_C1IR(&info);
    }

    IppStatus FilterDeblockingChroma422_HorEdge(Ipp8u* pSrcDst,
                                                Ipp32s srcdstStep,
                                                Ipp8u* pAlpha,
                                                Ipp8u* pBeta,
                                                Ipp8u* pThresholds,
                                                Ipp8u* pBS,
                                                Ipp32s bit_depth)
    {
        FILL_FILTER_INFO;
        return ippiFilterDeblockingChroma422HorEdge_H264_8u_C1IR(&info);
    }

    IppStatus FilterDeblockingChroma444_VerEdge(Ipp8u* pSrcDst,
                                                Ipp32s srcdstStep,
                                                Ipp8u* pAlpha,
                                                Ipp8u* pBeta,
                                                Ipp8u* pThresholds,
                                                Ipp8u* pBS,
                                                Ipp32s bit_depth)
    {
        VM_ASSERT(false);
        return ippStsNoErr;/*ippiFilterDeblockingChroma444_VerEdge_H264_8u_C1IR(
            pSrcDst,
            srcdstStep,
            pAlpha,
            pBeta,
            pThresholds,
            pBS);*/
    }

    IppStatus FilterDeblockingChroma444_HorEdge(Ipp8u* pSrcDst,
                                                Ipp32s srcdstStep,
                                                Ipp8u* pAlpha,
                                                Ipp8u* pBeta,
                                                Ipp8u* pThresholds,
                                                Ipp8u* pBS,
                                                Ipp32s bit_depth)
    {
        VM_ASSERT(false);
        return ippStsNoErr;/*ippiFilterDeblockingChroma444_HorEdge_H264_8u_C1IR(
            pSrcDst,

⌨️ 快捷键说明

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