📄 fmt_container.h
字号:
/*//////////////////////////////////////////////////////////////////////////////
//
// INTEL CORPORATION PROPRIETARY INFORMATION
// This software is supplied under the terms of a license agreement or
// nondisclosure agreement with Intel Corporation and may not be copied
// or disclosed except in accordance with the terms of that agreement.
// Copyright(c) 2006 Intel Corporation. All Rights Reserved.
//
// Intel(R) Integrated Performance Primitives
//
// Outlook 2003 Add-In sample
//
// By downloading and installing this sample, you hereby agree that the
// accompanying Materials are being provided to you under the terms and
// conditions of the End User License Agreement for the Intel(R) Integrated
// Performance Primitives product previously accepted by you. Please refer
// to the file ippEULA.rtf or ippEULA.txt located in the root directory of your Intel(R) IPP
// product installation for more information.
//
// Purpose: Spech codecs and format libraries header file.
*/
#ifndef __FMT_CONTAINER_H__
#define __FMT_CONTAINER_H__
#include "usc.h"
#include "amrwbusc.h"
#include "gsmamrusc.h"
#include "umc_speech_codec.h"
#include "ippdefs.h"
#define USC_MAKE_FORMAT_DET_VERSION(major,minor) (((major&0xFF)<<8)|\
(minor&0xFF))
#define USC_MAKE_FORMAT_DET(vad,hpf,pf,truncate,law) (((law&0x3)<<5)|\
((truncate&0x1)<<4)|\
((pf&0x1)<<3)|\
((hpf&0x1)<<2)|\
(vad&0x3))
#define GET_VAD_FROM_FORMAT_DET(fmtDet) (fmtDet&0x3)
#define GET_HPF_FROM_FORMAT_DET(fmtDet) ((fmtDet>>2)&0x1)
#define GET_PF_FROM_FORMAT_DET(fmtDet) ((fmtDet>>3)&0x1)
#define GET_TRUNC_FROM_FORMAT_DET(fmtDet) ((fmtDet>>4)&0x1)
#define GET_LAW_FROM_FORMAT_DET(fmtDet) ((fmtDet>>4)&0x3)
class USC_Formats
{
public:
USC_Formats()
{
}
~USC_Formats()
{
}
Ipp32s GetFormatsInfoVersion();
Ipp32s GetNumFormats(void);
Ipp32s GetNameByFormatTag(Ipp32s lFormatTag, Ipp8s *pDstCodecName);
Ipp32s GetFormatDetailsByFormatTag(Ipp32s lFormatTag, Ipp32s *pFormatDetails);
Ipp32s GetFormatTagByNameAndByDetails(const Ipp8s *pSrcCodecName, Ipp32s fmtDetails, Ipp32s *lFormatTag);
protected:
Ipp32s CompareDetails(Ipp32s SrcDetails, Ipp32s RefDetails);
};
#define BY_FORMATTAG 0x1
#define BY_NAME 0x2
#define MAX_CHANNELS 2 /*Stereo file*/
typedef struct _LoadedCodec {
Ipp8s codecName[8];
Ipp32s lFormatTag;
Ipp32s lIsVad;
Ipp32s nChannels;
void *USC_Fns;
} LoadedCodec;
class USC_LoadCodec
{
public:
USC_LoadCodec()
{
uscFmtContainer = new USC_Formats;
}
~USC_LoadCodec()
{
delete uscFmtContainer;
}
USC_Formats *uscFmtContainer;
Ipp32s GetNumCodecs();
Ipp8s *GetCodecName(Ipp32s index);
Ipp32s LoadUSCCodecByName(LoadedCodec *codec);
Ipp32s GetUSCCodecParamsByFormat(LoadedCodec *codec,Ipp32s lQuery,Ipp32s VADEnabled,
UMC::SpeechCodecParams *cParams);
};
#endif /* __FMT_CONTAINER_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -