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

📄 decoder.h

📁 MPEG 2的音频编码软件。喜欢多媒体的开发人员可以看看。
💻 H
📖 第 1 页 / 共 2 页
字号:
#define  DFLT_OPEXT_DEC	   ".dec"  	/* default output file name extension */
#define  DFLT_OPEXT_LFE	   "_lfe.dec" 	/* 10/31/95 R.S. output for lfe pcm-file */
#define  DFLT_OPEXT_ML	   ".ml" 	/* default MultiLingual output file name extension */
#define	 FILTYP_DEC_AIFF   "AIFF"	/* '-> " . 7/13/92. sr */
#define	 FILTYP_DEC_BNRY   "TEXT"	/* '-> " . 7/13/92. sr */
#define	 CREATR_DEC_AIFF   "Sd2a"	/* '-> " . 7/13/92. sr */
#define	 CREATR_DEC_BNRY   "????"	/* '-> " . 7/13/92. sr */

#define   SYNC_WORD         (long) 0xfff
#define   SYNC_WORD_LNGTH   12

#define   MUTE              0
#define   STEP		    0.03125	 /* 13.10.93 R.S. step for prediction */
#define   PREDDEL           (2+7)        /* max. delay in prediction, HP 08-nov-94 */

#define   EXTENSION_CRC_CHECK
/***********************************************************************
*
*  Decoder Type Definitions
*
***********************************************************************/

/***********************************************************************
*
*  Decoder Variable External Declarations
*
***********************************************************************/
 
/***********************************************************************
*
*  Decoder Function Prototype Declarations
*
***********************************************************************/

/* The following functions are in the file "musicout.c" */

#ifdef   PROTO_ARGS
extern void   usage(void);
#else
extern void   usage();
#endif

/* The following functions are in the file "decode.c" */

#ifdef   PROTO_ARGS
extern void   decode_info(Bit_stream*, frame_params*);
extern void   mc_header(Bit_stream*, frame_params*);
extern void   mc_composite_status_info(Bit_stream*, frame_params*, int, int);
#ifdef Augmentation_7ch
extern void   mc_aug_composite_status_info(Bit_stream*, frame_params*, int, int);
#endif
extern void   I_decode_bitalloc(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT], int);
extern void   II_decode_bitalloc(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT], int);
extern void   II_decode_bitalloc_mc(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT], int*, int*, int);
#ifdef Augmentation_7ch
extern void   II_decode_bitalloc_aug(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT], int*, int*, int);
#endif
extern void   II_decode_bitalloc_ml(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT], int*);
extern void   I_decode_scale(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT],
					   unsigned int[7][3][SBLIMIT],
					   int, int);
extern void   II_decode_scale(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT],
					   unsigned int[7][SBLIMIT], unsigned int[7][3][SBLIMIT],
					   int*, int*, int);
extern void   II_decode_scale_ml(Bit_stream*, frame_params*, unsigned int[7][SBLIMIT],
					   unsigned int[7][SBLIMIT], unsigned int[7][3][SBLIMIT],
					   int*);
extern void   I_buffer_sample(Bit_stream*, frame_params*, unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT]);
extern void   II_buffer_sample(Bit_stream*, frame_params*, unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT]);
extern void   II_buffer_sample_mc(Bit_stream*, frame_params*, unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT], int, int, int);
#ifdef Augmentation_7ch
extern void   II_buffer_sample_aug(Bit_stream*, frame_params*, unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT], int);
#endif
extern void   II_buffer_sample_ml(Bit_stream*, frame_params*, unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT], int*);
extern void   I_dequantize_sample(unsigned int[7][3][SBLIMIT], int,
					   unsigned int[7][SBLIMIT], double[7][SBLIMIT][3][12],
					   frame_params*, int*);
extern void   II_dequantize_sample(unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT], double[7][SBLIMIT][3][12],
					   frame_params*, int*);
extern void   II_dequantize_sample_mc(unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT], double[7][SBLIMIT][3][12],
					   frame_params*, int, int, int*);
#ifdef Augmentation_7ch
extern void   II_dequantize_sample_aug(unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT], double[7][SBLIMIT][3][12],
					   frame_params*, int*);
#endif
extern void   II_dequantize_sample_ml(unsigned int[7][3][SBLIMIT],
					   unsigned int[7][SBLIMIT], double[7][SBLIMIT][3][12],
					   frame_params*, int*, int*);
extern void   II_lfe_calc(frame_params*);
extern void   I_denormalize_sample(double[7][SBLIMIT][3][12],
					   unsigned int[7][3][SBLIMIT], int, frame_params*, int*);
extern void   II_denormalize_sample(double[7][SBLIMIT][3][12],
					   unsigned int[7][3][SBLIMIT], frame_params*, int, int*);
extern void   II_denormalize_sample_mc(double[7][SBLIMIT][3][12],
					   unsigned int[7][3][SBLIMIT], frame_params*, int, int, int, int*);
#ifdef Augmentation_7ch
extern void   II_denormalize_sample_aug(double[7][SBLIMIT][3][12],
					   unsigned int[7][3][SBLIMIT], frame_params*, int, int*);
#endif
extern void   II_denormalize_sample_ml(double[7][SBLIMIT][3][12],
					   unsigned int[7][3][SBLIMIT], frame_params*, int, int*, int*);
extern int    SubBandSynthesis(double*, int, long*);
extern int    SubBandSynthesis_ml(double*, int, long*);
extern void   out_fifo(long[7][3][SBLIMIT], int, frame_params*, int, FILE*, unsigned long*,int);
extern void   out_fifo_ml(long[7][3][SBLIMIT], int, frame_params*, int, FILE*, unsigned long*);
extern void   buffer_CRC(Bit_stream*, unsigned int*);
extern void   recover_CRC_error(long[7][3][SBLIMIT], int, frame_params*,FILE*,unsigned long*,int);
extern void   dematricing_mc(double[7][SBLIMIT][3][12], frame_params*, double[2][8][36+PREDDEL]);
#ifdef Augmentation_7ch
extern void   dematricing_aug(double[7][SBLIMIT][3][12], frame_params*);
#endif
extern void   denormalizing_mc(double[7][SBLIMIT][3][12], frame_params*, int); 
#ifdef Augmentation_7ch
extern void   denormalizing_aug(double[7][SBLIMIT][3][12], frame_params*); 
#endif
#else
extern void   decode_info();
extern void   mc_header();
extern void   mc_composite_status_info();
#ifdef Augmentation_7ch
extern void   mc_aug_composite_status_info();
#endif
extern void   I_decode_bitalloc();
extern void   II_decode_bitalloc();
extern void   II_decode_bitalloc_mc();
#ifdef Augmentation_7ch
extern void   II_decode_bitalloc_aug();
#endif
extern void   II_decode_bitalloc_ml();
extern void   I_decode_scale();
extern void   II_decode_scale();
extern void   II_decode_scale_ml();
extern void   I_buffer_sample();
extern void   II_buffer_sample();
extern void   II_buffer_sample_mc();
#ifdef Augmentation_7ch
extern void   II_buffer_sample_aug();
#endif
extern void   II_buffer_sample_ml();
extern void   I_dequantize_sample();
extern void   II_dequantize_sample();
extern void   II_dequantize_sample_mc();
#ifdef Augmentation_7ch
extern void   II_dequantize_sample_aug();
#endif
extern void   II_dequantize_sample_ml();
extern void   II_lfe_calc();
extern void   I_denormalize_sample();
extern void   II_denormalize_sample();
extern void   II_denormalize_sample_mc();
#ifdef Augmentation_7ch
extern void   II_denormalize_sample_aug();
#endif
extern void   II_denormalize_sample_ml();
extern int    SubBandSynthesis();
extern int    SubBandSynthesis_ml();
extern void   out_fifo();
extern void   out_fifo_ml();
extern void   buffer_CRC();
extern void   recover_CRC_error();
extern void   dematricing_mc();
#ifdef Augmentation_7ch
extern void   dematricing_aug();
#endif
extern void   denormalizing_mc(); 
#ifdef Augmentation_7ch
extern void   denormalizing_aug(); 
#endif
#endif

⌨️ 快捷键说明

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