/*************************************************************************** * * Copyright 2015-2019 BES. * All rights reserved. All unpublished rights reserved. * * No part of this work may be used or reproduced in any form or by any * means, or stored in a database or retrieval system, without prior written * permission of BES. * * Use of this work is governed by a license granted by BES. * This work contains confidential and proprietary information of * BES. which is protected by copyright, trade secret, * trademark and other intellectual property rights. * ****************************************************************************/ /******************************************************************************* ** namer£ºCVSD CODEC header ** description£ºCVSD encoder and CVSD decoder header ** version£ºV1.0 ** author: xuml ** modify£º2015.8.21. *******************************************************************************/ #ifndef _CVSD_CODEC_H_ #define _CVSD_CODEC_H_ //Q fixed #define CVSD_Q 10 struct CvsdEncSt { unsigned short CvsdEncJudgeAlpha; int CvsdEncLastData; int CvsdEncDelta; int CvsdEncFirstFrameFlag; int FilterState0[3]; int FilterState1[3]; int FilterState2[3]; }; //decoder struct CvsdDecSt { unsigned short CvsdDecJudgeAlpha; int CvsdDecLastData; int CvsdDecDelta; int FilterState0[3]; int FilterState1[3]; int FilterState2[3]; }; #ifdef __cplusplus extern "C" { #endif //encoder void CvsdEncInit(struct CvsdEncSt *CvsdEnc); int CvsdEncode(struct CvsdEncSt *CvsdEnc, short *pInPutData, short *pOutPutdata, int iEncSize); //decoder void CvsdDecInit(struct CvsdDecSt *CvsdDec); int CvsdDecode(struct CvsdDecSt *CvsdDec, short *pInPutData, short *pOutPutdata, int iDecSize); #ifdef __cplusplus } #endif #endif