mirror of https://github.com/tasks/tasks
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
194 lines
5.8 KiB
C
194 lines
5.8 KiB
C
13 years ago
|
/*
|
||
|
** Copyright 2003-2010, VisualOn, Inc.
|
||
|
**
|
||
|
** Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
** you may not use this file except in compliance with the License.
|
||
|
** You may obtain a copy of the License at
|
||
|
**
|
||
|
** http://www.apache.org/licenses/LICENSE-2.0
|
||
|
**
|
||
|
** Unless required by applicable law or agreed to in writing, software
|
||
|
** distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
** See the License for the specific language governing permissions and
|
||
|
** limitations under the License.
|
||
|
*/
|
||
|
/*******************************************************************************
|
||
|
File: voIndex.h
|
||
|
|
||
|
Content: module and ID definition
|
||
|
|
||
|
*******************************************************************************/
|
||
|
|
||
|
#ifndef __voIndex_H__
|
||
|
#define __voIndex_H__
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif /* __cplusplus */
|
||
|
|
||
|
#include "voType.h"
|
||
|
|
||
|
/* Define the module ID */
|
||
|
#define _MAKE_SOURCE_ID(id, name) \
|
||
|
VO_INDEX_SRC_##name = _VO_INDEX_SOURCE | id,
|
||
|
|
||
|
#define _MAKE_CODEC_ID(id, name) \
|
||
|
VO_INDEX_DEC_##name = _VO_INDEX_DEC | id, \
|
||
|
VO_INDEX_ENC_##name = _VO_INDEX_ENC | id,
|
||
|
|
||
|
#define _MAKE_EFFECT_ID(id, name) \
|
||
|
VO_INDEX_EFT_##name = _VO_INDEX_EFFECT | id,
|
||
|
|
||
|
#define _MAKE_SINK_ID(id, name) \
|
||
|
VO_INDEX_SNK_##name = _VO_INDEX_SINK | id,
|
||
|
|
||
|
#define _MAKE_FILTER_ID(id, name) \
|
||
|
VO_INDEX_FLT_##name = _VO_INDEX_FILTER | id,
|
||
|
|
||
|
#define _MAKE_OMX_ID(id, name) \
|
||
|
VO_INDEX_OMX_##name = _VO_INDEX_OMX | id,
|
||
|
|
||
|
#define _MAKE_MFW_ID(id, name) \
|
||
|
VO_INDEX_MFW_##name = _VO_INDEX_MFW | id,
|
||
|
|
||
|
enum
|
||
|
{
|
||
|
_VO_INDEX_SOURCE = 0x01000000,
|
||
|
_VO_INDEX_DEC = 0x02000000,
|
||
|
_VO_INDEX_ENC = 0x03000000,
|
||
|
_VO_INDEX_EFFECT = 0x04000000,
|
||
|
_VO_INDEX_SINK = 0x05000000,
|
||
|
_VO_INDEX_FILTER = 0x06000000,
|
||
|
_VO_INDEX_OMX = 0x07000000,
|
||
|
_VO_INDEX_MFW = 0x08000000,
|
||
|
|
||
|
// define file parser modules
|
||
|
_MAKE_SOURCE_ID (0x010000, MP4)
|
||
|
_MAKE_SOURCE_ID (0x020000, AVI)
|
||
|
_MAKE_SOURCE_ID (0x030000, ASF)
|
||
|
_MAKE_SOURCE_ID (0x040000, REAL)
|
||
|
_MAKE_SOURCE_ID (0x050000, AUDIO)
|
||
|
_MAKE_SOURCE_ID (0x060000, FLASH)
|
||
|
_MAKE_SOURCE_ID (0x070000, OGG)
|
||
|
_MAKE_SOURCE_ID (0x080000, MKV)
|
||
|
|
||
|
// define network source modules
|
||
|
_MAKE_SOURCE_ID (0x110000, RTSP)
|
||
|
_MAKE_SOURCE_ID (0x120000, HTTP)
|
||
|
|
||
|
// define CMMB source modules
|
||
|
_MAKE_SOURCE_ID (0x200000, CMMB)
|
||
|
_MAKE_SOURCE_ID (0x210000, CMMB_INNO)
|
||
|
_MAKE_SOURCE_ID (0x220000, CMMB_TELE)
|
||
|
_MAKE_SOURCE_ID (0x230000, CMMB_SIANO)
|
||
|
|
||
|
// define DVBT source modules
|
||
|
_MAKE_SOURCE_ID (0x300000, DVBT)
|
||
|
_MAKE_SOURCE_ID (0x310000, DVBT_DIBCOM)
|
||
|
|
||
|
// define other source modules
|
||
|
_MAKE_SOURCE_ID (0x400000, ID3)
|
||
|
|
||
|
// define video codec modules
|
||
|
_MAKE_CODEC_ID (0x010000, H264)
|
||
|
_MAKE_CODEC_ID (0x020000, MPEG4)
|
||
|
_MAKE_CODEC_ID (0x030000, H263)
|
||
|
_MAKE_CODEC_ID (0x040000, S263)
|
||
|
_MAKE_CODEC_ID (0x050000, RV)
|
||
|
_MAKE_CODEC_ID (0x060000, WMV)
|
||
|
_MAKE_CODEC_ID (0x070000, DIVX3)
|
||
|
_MAKE_CODEC_ID (0x080000, MJPEG)
|
||
|
_MAKE_CODEC_ID (0x090000, MPEG2)
|
||
|
_MAKE_CODEC_ID (0x0A0000, VP6)
|
||
|
|
||
|
// define audio codec modules
|
||
|
_MAKE_CODEC_ID (0x210000, AAC)
|
||
|
_MAKE_CODEC_ID (0x220000, MP3)
|
||
|
_MAKE_CODEC_ID (0x230000, WMA)
|
||
|
_MAKE_CODEC_ID (0x240000, RA)
|
||
|
_MAKE_CODEC_ID (0x250000, AMRNB)
|
||
|
_MAKE_CODEC_ID (0x260000, AMRWB)
|
||
|
_MAKE_CODEC_ID (0x270000, AMRWBP)
|
||
|
_MAKE_CODEC_ID (0x280000, QCELP)
|
||
|
_MAKE_CODEC_ID (0x290000, EVRC)
|
||
|
_MAKE_CODEC_ID (0x2A0000, ADPCM)
|
||
|
_MAKE_CODEC_ID (0x2B0000, MIDI)
|
||
|
_MAKE_CODEC_ID (0x2C0000, AC3)
|
||
|
_MAKE_CODEC_ID (0x2D0000, FLAC)
|
||
|
_MAKE_CODEC_ID (0x2E0000, DRA)
|
||
|
_MAKE_CODEC_ID (0x2F0000, OGG)
|
||
|
_MAKE_CODEC_ID (0x300000, G729)
|
||
|
|
||
|
// define image codec modules
|
||
|
_MAKE_CODEC_ID (0x410000, JPEG)
|
||
|
_MAKE_CODEC_ID (0x420000, GIF)
|
||
|
_MAKE_CODEC_ID (0x430000, PNG)
|
||
|
_MAKE_CODEC_ID (0x440000, TIF)
|
||
|
|
||
|
// define effect modules
|
||
|
_MAKE_EFFECT_ID (0x010000, EQ)
|
||
|
|
||
|
// define sink modules
|
||
|
_MAKE_SINK_ID (0x010000, VIDEO)
|
||
|
_MAKE_SINK_ID (0x020000, AUDIO)
|
||
|
_MAKE_SINK_ID (0x030000, CCRRR)
|
||
|
_MAKE_SINK_ID (0x040000, CCRRV)
|
||
|
|
||
|
_MAKE_SINK_ID (0x110000, MP4)
|
||
|
_MAKE_SINK_ID (0x120000, AVI)
|
||
|
_MAKE_SINK_ID (0x130000, AFW)
|
||
|
|
||
|
// define media frame module ID
|
||
|
_MAKE_MFW_ID (0x010000, VOMMPLAY)
|
||
|
_MAKE_MFW_ID (0x020000, VOMMREC)
|
||
|
_MAKE_MFW_ID (0x030000, VOME)
|
||
|
};
|
||
|
|
||
|
|
||
|
/* define the error ID */
|
||
|
#define VO_ERR_NONE 0x00000000
|
||
|
#define VO_ERR_FINISH 0x00000001
|
||
|
#define VO_ERR_BASE 0X80000000
|
||
|
#define VO_ERR_FAILED 0x80000001
|
||
|
#define VO_ERR_OUTOF_MEMORY 0x80000002
|
||
|
#define VO_ERR_NOT_IMPLEMENT 0x80000003
|
||
|
#define VO_ERR_INVALID_ARG 0x80000004
|
||
|
#define VO_ERR_INPUT_BUFFER_SMALL 0x80000005
|
||
|
#define VO_ERR_OUTPUT_BUFFER_SMALL 0x80000006
|
||
|
#define VO_ERR_WRONG_STATUS 0x80000007
|
||
|
#define VO_ERR_WRONG_PARAM_ID 0x80000008
|
||
|
#define VO_ERR_LICENSE_ERROR 0x80000009
|
||
|
|
||
|
/* xxx is the module ID
|
||
|
#define VO_ERR_FAILED 0x8xxx0001
|
||
|
#define VO_ERR_OUTOF_MEMORY 0x8xxx0002
|
||
|
#define VO_ERR_NOT_IMPLEMENT 0x8xxx0003
|
||
|
#define VO_ERR_INVALID_ARG 0x8xxx0004
|
||
|
#define VO_ERR_INPUT_BUFFER_SMALL 0x8xxx0005
|
||
|
#define VO_ERR_OUTPUT_BUFFER_SMALL 0x8xxx0006
|
||
|
#define VO_ERR_WRONG_STATUS 0x8xxx0007
|
||
|
#define VO_ERR_WRONG_PARAM_ID 0x8xxx0008
|
||
|
#define VO_ERR_LICENSE_ERROR 0x8xxx0009
|
||
|
// Module own error ID
|
||
|
#define VO_ERR_Module 0x8xxx0X00
|
||
|
*/
|
||
|
|
||
|
#define VO_PID_COMMON_BASE 0x40000000 /*!< The base of common param ID */
|
||
|
#define VO_PID_COMMON_QUERYMEM (VO_PID_COMMON_BASE | 0X0001) /*!< Query the memory needed; Reserved. */
|
||
|
#define VO_PID_COMMON_INPUTTYPE (VO_PID_COMMON_BASE | 0X0002) /*!< Set or get the input buffer type. VO_INPUT_TYPE */
|
||
|
#define VO_PID_COMMON_HASRESOURCE (VO_PID_COMMON_BASE | 0X0003) /*!< Query it has resource to be used. VO_U32 *, 1 have, 0 No */
|
||
|
#define VO_PID_COMMON_HEADDATA (VO_PID_COMMON_BASE | 0X0004) /*!< Decoder track header data. VO_CODECBUFFER * */
|
||
|
#define VO_PID_COMMON_FLUSH (VO_PID_COMMON_BASE | 0X0005) /*!< Flush the codec buffer. VO_U32 *, 1 Flush, 0 No * */
|
||
|
|
||
|
/*
|
||
|
// Module Param ID
|
||
|
#define VO_ID_Mdoule 0x0xxx1000
|
||
|
*/
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif /* __cplusplus */
|
||
|
|
||
|
#endif // __voIndex_H__
|