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

📄 quant.h

📁 一个用于智能手机的多媒体库适合S60 WinCE的跨平台开发库
💻 H
字号:
/* *			GPAC - Multimedia Framework C SDK * *			Copyright (c) Jean Le Feuvre 2000-2005 *					All rights reserved * *  This file is part of GPAC / BIFS codec sub-project * *  GPAC is free software; you can redistribute it and/or modify *  it under the terms of the GNU Lesser General Public License as published by *  the Free Software Foundation; either version 2, or (at your option) *  any later version. *    *  GPAC 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 Lesser General Public License for more details. *    *  You should have received a copy of the GNU Lesser General Public *  License along with this library; see the file COPYING.  If not, write to *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  * */#ifndef __QUANTIZE_H#define __QUANTIZE_H#include <gpac/internal/bifs_dev.h>//#define QP_PI		3.1415926535897932384626433832795/*Quantization Categories*/enum{	QC_NONE				=	0,	QC_3DPOS			=	1, 	QC_2DPOS			=	2, 	QC_ORDER			=	3, 	QC_COLOR			=	4, 	QC_TEXTURE_COORD	=	5, 	QC_ANGLE			=	6, 	QC_SCALE			=	7, 	QC_INTERPOL_KEYS	=	8, 	QC_NORMALS			=	9, 	QC_ROTATION			=	10, 	QC_SIZE_3D			=	11, 	QC_SIZE_2D			=	12, 	QC_LINEAR_SCALAR	=	13, 	QC_COORD_INDEX		=	14, 	QC_RESERVED			=	15,	QC_NOTDEF			=	16,};GF_Err gf_bifs_dec_pred_mf_field(GF_BifsDecoder * codec, GF_BitStream *bs, GF_Node *node, GF_FieldInfo *field);Bool Q_IsTypeOn(M_QuantizationParameter *qp, u32 q_type, u32 *NbBits, SFVec3f *b_min, SFVec3f *b_max);/*QP14 decode*/u32 gf_bifs_dec_qp14_get_bits(GF_BifsDecoder *codec);void gf_bifs_dec_qp14_enter(GF_BifsDecoder * codec, Bool Enter);void gf_bifs_dec_qp14_reset(GF_BifsDecoder * codec);void gf_bifs_dec_qp14_set_length(GF_BifsDecoder * codec, u32 NbElements);/*QP decoder (un)registration*/GF_Err gf_bifs_dec_qp_set(GF_BifsDecoder *codec, GF_Node *qp);GF_Err gf_bifs_dec_qp_remove(GF_BifsDecoder *codec, Bool ActivatePrev);SFFloat gf_bifs_dec_mantissa_float(GF_BifsDecoder * codec, GF_BitStream *bs);GF_Err gf_bifs_dec_unquant_field(GF_BifsDecoder * codec, GF_BitStream *bs, GF_Node *node, GF_FieldInfo *field);/*QP14 encode*/u32 gf_bifs_enc_qp14_get_bits(GF_BifsEncoder *codec);void gf_bifs_enc_qp14_enter(GF_BifsEncoder *codec, Bool Enter);void gf_bifs_enc_qp14_reset(GF_BifsEncoder *codec);void gf_bifs_enc_qp14_set_length(GF_BifsEncoder *codec, u32 NbElements);/*QP encoder (un)registration*/GF_Err gf_bifs_enc_qp_set(GF_BifsEncoder *codec, GF_Node *qp);GF_Err gf_bifs_enc_qp_remove(GF_BifsEncoder *codec, Bool ActivatePrev);void gf_bifs_enc_mantissa_float(GF_BifsEncoder * codec, SFFloat val, GF_BitStream *bs);GF_Err gf_bifs_enc_quant_field(GF_BifsEncoder * codec, GF_BitStream *bs, GF_Node *node, GF_FieldInfo *field);/*		Predictive MFField decode - mainly IM1 code (GPL H263 AA coder used)*/typedef struct _aamodel GF_AAModel;GF_AAModel *gp_bifs_aa_model_new();void gp_bifs_aa_model_del(GF_AAModel *model);void gp_bifs_aa_model_init(GF_AAModel *model, u32 nbBits);typedef struct _aadecoder GF_AADecoder;GF_AADecoder *gp_bifs_aa_dec_new(GF_BitStream *bs);void gp_bifs_aa_dec_del(GF_AADecoder *dec);void gp_bifs_aa_dec_flush(GF_AADecoder *dec);/*get input bit*/s32 gp_bifs_aa_dec_get_bit(GF_AADecoder *dec);/*resync after input bit has been fetched (full buffer (16 bit) rewind in source stream)*/void gp_bifs_aa_dec_resync_bit(GF_AADecoder *dec);/*resync bitstream*/void gp_bifs_aa_dec_resync(GF_AADecoder *dec);/*decode symbol in given model*/s32 gp_bifs_aa_decode(GF_AADecoder *dec, GF_AAModel *model);/*reset decoder - called after each parsed I frame*/void gp_bifs_aa_dec_reset(GF_AADecoder *dec);#endif	

⌨️ 快捷键说明

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