📄 swdec.h
字号:
/*------------------------------------------------------------------------------
-- --
-- This software is confidential and proprietary and may be used --
-- only as expressly authorized by a licensing agreement from --
-- --
-- Hantro Products Oy. --
-- --
-- In the event of publication, the following notice is applicable: --
-- --
-- (C) COPYRIGHT 2004 HANTRO PRODUCTS OY --
-- ALL RIGHTS RESERVED --
-- --
-- The entire notice above must be reproduced on all copies. --
-- --
--------------------------------------------------------------------------------
--
-- MODULE NAME: SwDec
--
-- DESCRIPTION: sw-decoder top level functionality
--
-- PROVIDES:
-- SwDec_Init
-- SwDec_MemAlloc
-- SwDec_MemFree
-- SwDec_Decode
--
-------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------
Table of contents
1. Include headers
2. Module defines
3. Data types
4. Function prototypes
------------------------------------------------------------------------------*/
#ifndef SWDEC_H
#define SWDEC_H
/*------------------------------------------------------------------------------
1. Include headers
------------------------------------------------------------------------------*/
#include "SwDec_Container.h"
/*------------------------------------------------------------------------------
2. Module defines
------------------------------------------------------------------------------*/
/* SwDec_Decode() function return values
* DEC_RDY -> everything ok but no VOP finished
* DEC_VOP_RDY -> vop finished
* DEC_VOP_RDY_BUF_NOT_EMPTY -> vop finished but stream buffer not empty
* DEC_ERROR -> nothing finished, decoder not ready, cannot continue decoding
* before some headers received
* DEC_ERROR_BUF_NOT_EMPTY -> same as above but stream buffer not empty
* DEC_END_OF_STREAM -> nothing finished, no data left in stream
* DEC_VOS_END -> vos end code encountered, stopping
* DEC_HDRS_RDY -> either vol header decoded or short video source format
* determined
* DEC_HDRS_RDY_BUF_NOT_EMPTY -> same as above but stream buffer not empty
*
* Bits in the output have following meaning:
* 0 ready
* 1 vop ready
* 2 buffer not empty
* 3 error
* 4 end of stream
* 6 video object sequence end
* 7 headers ready
*/
enum {
DEC_RDY = 0x01,
DEC_VOP_RDY = 0x03,
DEC_VOP_RDY_BUF_NOT_EMPTY = 0x07,
DEC_ERROR = 0x08,
DEC_ERROR_BUF_NOT_EMPTY = 0x0C,
DEC_END_OF_STREAM = 0x10,
DEC_VOS_END = 0x40,
DEC_HDRS_RDY = 0x80,
DEC_HDRS_RDY_BUF_NOT_EMPTY = 0x84
};
/*------------------------------------------------------------------------------
3. Data types
------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------
4. Function prototypes
------------------------------------------------------------------------------*/
void SwDec_Init(decContainer_t *pDecContainer);
u32 SwDec_Decode(decContainer_t *pDecContainer);
u32 SwDec_MemAlloc(decContainer_t *pDecContainer);
void SwDec_MemFree(decContainer_t *pDecContainer);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -