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

📄 pred.h

📁 avs音视频解码程序
💻 H
字号:
/*************************************************************************
 AVS1-P2视频解码器源码
 版权所有:联合信源数字音视频技术(北京)有限公司, (c) 2005-2006 

 AVS1-P2 Video Decoder Source Code
 (c) Copyright, NSCC All Rights Reserved, 2005-2006
 *************************************************************************
 Distributed under the terms of the GNU General Public License as
 published by the Free Software Foundation; either version 2 of the
 License, or (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*************************************************************************/
/*************************************************************************
  文件名称:	pred.h
  描    述: pred.cpp 的申明文件
*************************************************************************/
/*************************************************************************
  Revision History
  data          Modification                                    Author
  2005-3-2      Created                                          jthou
 *************************************************************************/
#ifndef _PRED_H_
#define _PRED_H_

#include "define.h"

AVS_HRESULT IntraPredLuma(MBINFO* pMbInfo, const AVS_BYTE* pbCurrY, AVS_DWORD dwMbIndex, AVS_DWORD dwImgWidth, AVS_DWORD dwImgHeight, AVS_DWORD dwBlockNo, AVS_BYTE* pPred, AVS_DWORD dwImgX, AVS_DWORD dwImgY);
AVS_HRESULT IntraPredChroma(MBINFO* pMbInfo, const AVS_BYTE* pbCurrUV, AVS_DWORD dwMbIndex, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_BYTE* pPred, AVS_DWORD dwUVX, AVS_DWORD dwUVY);


AVS_HRESULT InterPredLuma16x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefY, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_INT iBlockDistance, AVS_INT dirBw, AVS_BYTE* pPred);
AVS_HRESULT InterPredLuma16x8(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefY, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_INT iBlockDistance, AVS_DWORD dwSubMb, AVS_INT dirBw, AVS_BYTE* pPred);
AVS_HRESULT InterPredLuma8x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefY, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_INT iBlockDistance, AVS_DWORD dwSubMb, AVS_INT dirBw, AVS_BYTE* pPred);
AVS_HRESULT InterPredLuma8x8(MBINFO* pMbInfo, AVS_INT dwMbIndex, const AVS_BYTE* pbRefY, AVS_INT dwMbWidth, AVS_INT dwMbHeight, AVS_INT iBlockDistance, AVS_INT dwSubMb, AVS_INT dirBw, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaDirect(MBINFO* pMbInfo[2], AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefY, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_INT iBlockDistance);
AVS_HRESULT InterPredLumaP(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_INT dwMbWidth, AVS_INT dwMbHeight, 
                     AVS_INT dwCurrDistanceIndex, BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);
AVS_INT InterPredChormaP(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_INT dwMbWidth, AVS_INT dwMbHeight, AVS_BYTE* pPred);
AVS_HRESULT InterPredChroma16x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefUV, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwUV, AVS_INT dirBw, AVS_BYTE* pPred);
AVS_HRESULT InterPredChroma16x8(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefUV, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwSubMb, AVS_DWORD dwUV, AVS_INT dirBw, AVS_BYTE* pPred);
AVS_HRESULT InterPredChroma8x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefUV, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwSubMb, AVS_DWORD dwUV, AVS_INT dirBw, AVS_BYTE* pPred);
AVS_HRESULT InterPredChroma8x8(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const AVS_BYTE* pbRefUV, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwSubMb, AVS_DWORD dwUV, AVS_INT dirBw, AVS_BYTE* pPred);

AVS_HRESULT InterPredLumaSym16x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaSym16x8(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_DWORD dwSubMb, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaSym8x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwCurrDisatnceIndex, AVS_DWORD dwSubMb, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaSym8x8(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefeNum, AVS_INT dwMbWidth, AVS_INT dwMbHeight, AVS_DWORD dwCurrDistanceIdex, AVS_INT dwSubMb, AVS_BYTE* pPred);

AVS_HRESULT InterPredLumaBSkipDirect(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_DWORD dwSubMb, const BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaBSkipDirect2(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_DWORD dwSubMb, const BWREFINFO* pBwRefInfo, AVS_INT PictureStructure, AVS_BYTE* pPred);

AVS_HRESULT InterPredLumaSbDirect8x8(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_INT dwMbWidth, AVS_INT dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_INT dwSubMb, const BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaSbDirect8x8_1(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_INT dwMbWidth, AVS_INT dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_INT dwSubMb, const BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaSbDirect8x8_2(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_INT dwMbWidth, AVS_INT dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_INT dwSubMb, AVS_INT PictureStructure, const BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaBSkipDirect16x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwCurrDistanceIndex, const BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);

AVS_HRESULT InterPredLumaB(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_INT dwMbWidth, AVS_INT dwMbHeight, 
                     AVS_INT dwCurrDistanceIndex, AVS_BOOL bPictureStructure, const BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);
AVS_HRESULT InterPredLumaB8x8(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwCurrDistanceIndex, AVS_BOOL bPictureStructure, AVS_DWORD dwSubMb, const BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);

AVS_HRESULT InterPredChormaB(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_INT dwMbWidth, AVS_INT dwMbHeight, BWREFINFO* pBwRefInfo, AVS_BYTE* pPred);

AVS_HRESULT InterPredChromaSym16x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwUV, AVS_BYTE* pPred);
AVS_HRESULT InterPredChromaSym16x8(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwSubMb, AVS_DWORD dwUV, AVS_BYTE* pPred);
AVS_HRESULT InterPredChromaSym8x16(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwSubMb, AVS_DWORD dwUV, AVS_BYTE* pPred);
AVS_HRESULT InterPredChromaSym8x8(MBINFO* pMbInfo, AVS_DWORD dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_DWORD dwMbWidth, AVS_DWORD dwMbHeight, AVS_DWORD dwSubMb, AVS_DWORD dwUV, AVS_BYTE* pPred);

AVS_HRESULT InterPredChromaB8x8(MBINFO* pMbInfo, AVS_INT dwMbIndex, const VIDEODATA** ppRefFrame, AVS_DWORD dwRefNum, AVS_INT dwMbWidth, AVS_INT dwMbHeight, AVS_INT dwSubMb, AVS_INT dwUV, AVS_BYTE* pPred);

void GetRefIndex(MBINFO* pMbInfo, AVS_DWORD dwRefNum, AVS_INT* pIdxFw, AVS_INT* pIdxBw);
#endif

⌨️ 快捷键说明

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