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

📄 common.h

📁 该程序用于采样频率的转化
💻 H
字号:
/*** Copyright (C) 2002-2004 Erik de Castro Lopo <erikd@mega-nerd.com>**** This program is free software; you can redistribute it and/or modify** it under the terms of the GNU General Public License as published by** the Free Software Foundation; either version 2 of the License, or** (at your option) any later version.**** This program 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 General Public License for more details.**** You should have received a copy of the GNU General Public License** along with this program; if not, write to the Free Software** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.*/#ifndef COMMON_H_INCLUDED#define COMMON_H_INCLUDED#ifdef HAVE_STDINT_H#include <stdint.h>#elif (SIZEOF_INT == 4)typedef	int		int32_t ;#elif (SIZEOF_LONG == 4)typedef	long	int32_t ;#endif#define	SRC_MAX_RATIO			256#define	SRC_MIN_RATIO_DIFF		(1e-20)#define	MAX(a,b)	(((a) > (b)) ? (a) : (b))#define	MIN(a,b)	(((a) < (b)) ? (a) : (b))#define	MAKE_MAGIC(a,b,c,d,e,f)	((a) + ((b) << 4) + ((c) << 8) + ((d) << 12) + ((e) << 16) + ((f) << 20))#include "samplerate.h"enum{	SRC_FALSE	= 0,	SRC_TRUE	= 1,	SRC_MODE_PROCESS	= 555,	SRC_MODE_CALLBACK	= 556} ;enum{	SRC_ERR_NO_ERROR = 0,	SRC_ERR_MALLOC_FAILED,	SRC_ERR_BAD_STATE,	SRC_ERR_BAD_DATA,	SRC_ERR_BAD_DATA_PTR,	SRC_ERR_NO_PRIVATE,	SRC_ERR_BAD_SRC_RATIO,	SRC_ERR_BAD_PROC_PTR,	SRC_ERR_SHIFT_BITS,	SRC_ERR_FILTER_LEN,	SRC_ERR_BAD_CONVERTER,	SRC_ERR_BAD_CHANNEL_COUNT,	SRC_ERR_SINC_BAD_BUFFER_LEN,	SRC_ERR_SIZE_INCOMPATIBILITY,	SRC_ERR_BAD_PRIV_PTR,	SRC_ERR_BAD_SINC_STATE,	SRC_ERR_DATA_OVERLAP,	SRC_ERR_BAD_CALLBACK,	SRC_ERR_BAD_MODE,	SRC_ERR_NULL_CALLBACK,	/* This must be the last error number. */	SRC_ERR_MAX_ERROR} ;typedef struct SRC_PRIVATE_tag{	double	last_ratio, last_position ;	int		error ;	int		channels ;	/* SRC_MODE_PROCESS or SRC_MODE_CALLBACK */	int		mode ;	/* Pointer to data to converter specific data. */	void	*private_data ;	int		(*process) (struct SRC_PRIVATE_tag *psrc, SRC_DATA *data) ;	void	(*reset) (struct SRC_PRIVATE_tag *psrc) ;	/* Data specific to SRC_MODE_CALLBACK. */	src_callback_t	callback_func ;	void			*user_callback_data ;	long			saved_frames ;	float			*saved_data ;} SRC_PRIVATE ;/* In src_sinc.c */const char* sinc_get_name (int src_enum) ;const char* sinc_get_description (int src_enum) ;int sinc_set_converter (SRC_PRIVATE *psrc, int src_enum) ;/* In src_linear.c */const char* linear_get_name (int src_enum) ;const char* linear_get_description (int src_enum) ;int linear_set_converter (SRC_PRIVATE *psrc, int src_enum) ;/* In src_zoh.c */const char* zoh_get_name (int src_enum) ;const char* zoh_get_description (int src_enum) ;int zoh_set_converter (SRC_PRIVATE *psrc, int src_enum) ;#endif	/* COMMON_H_INCLUDED *//*** Do not edit or modify anything in this comment block.** The arch-tag line is a file identity tag for the GNU Arch ** revision control system.**** arch-tag: 737d46dc-a2f8-4025-bb88-fc8915c69085*/

⌨️ 快捷键说明

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