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

📄 mpegimdc.i

📁 mp3解码源代码
💻 I
📖 第 1 页 / 共 4 页
字号:
 struct __stdio_file {  unsigned char *bufpos;      unsigned char *bufread;     unsigned char *bufwrite;    unsigned char *bufstart;    unsigned char *bufend;      int fd;    int mode;  char unbuf[8];	      struct __stdio_file * next;};typedef struct __stdio_file FILE;typedef off_t fpos_t;extern FILE stdin[1];extern FILE stdout[1];extern FILE stderr[1]; extern int setvbuf  (FILE*, char*, int, size_t)  ; extern void setbuffer  (FILE*, char*, int)  ;static __inline__ void setbuf(FILE *stream, char *buf) {	return(setbuffer(stream, buf, (500) ));}extern int fgetc  (FILE*)  ;extern int fputc  (int, FILE*)  ;extern int fclose  (FILE*)  ;extern int fflush  (FILE*)  ;extern char *fgets  (char*, size_t, FILE*)  ;extern FILE *__fopen  (const  char*, int, FILE*, const  char*)  ;extern int fseek  (FILE*, long, int)  ;extern long ftell  (FILE*)  ;extern void rewind  (FILE*)  ;extern int fgetpos  (FILE *, fpos_t *)  ;extern int fsetpos  (FILE *, fpos_t *)  ;extern size_t fread  (void *, size_t, size_t, FILE *)  ;extern size_t fwrite  (const void *, size_t, size_t, FILE *)  ;extern int fputs  (const  char*, FILE*)  ;extern int puts  (const  char*)  ;extern int printf  (const  char*, ...)  ;extern int fprintf  (FILE*, const  char*, ...)  ;extern int sprintf  (char*, const  char*, ...)  ;extern int vscanf  (const  char*, va_list)  ;extern int vfscanf  (FILE*, const  char*, va_list)  ;extern int vsscanf  (const  char*, const  char*, va_list)  ;extern int snprintf  (char *str, size_t size, const  char *format, ...)  ;extern int vprintf  (const  char*, va_list)  ;extern int vfprintf  (FILE*, const  char*, va_list)  ;extern int vsprintf  (char*, const  char*, va_list)  ;extern int vsnprintf  (char*, size_t, const  char*, va_list)  ;extern int scanf  (const  char *format, ...)  ;extern int fscanf  (FILE*, const  char*, ...)  ;extern int sscanf  (const  char *str, const  char *format, ...)  ;extern int ungetc  (int c, FILE * stream)  ;extern FILE *popen  (const  char *, const  char *)  ;extern int pclose  (FILE *)  ;extern void perror  (const  char *)  ;extern int remove  (const  char *)  ;extern char *tmpnam  (char *)  ;extern char *tempnam  (const  char *, const  char *)  ;# 168 "/home/gerg/new-wave.5249/lib/libc/include/stdio.h" # 31 "defs.h" 2# 1 "/home/gerg/new-wave.5249/lib/libc/include/stdlib.h" 1 # 1 "/home/gerg/new-wave.5249/lib/libc/include/sys/types.h" 1# 1 "/home/gerg/new-wave.5249/lib/libc/include/stddef.h" 1   # 30 "/home/gerg/new-wave.5249/lib/libc/include/stddef.h"# 1 "/home/gerg/new-wave.5249/lib/libc/include/sys/types.h" 2# 1 "/home/gerg/new-wave.5249/lib/libc/include/linux/version.h" 1# 3 "/home/gerg/new-wave.5249/lib/libc/include/sys/types.h" 2# 3 "/home/gerg/new-wave.5249/lib/libc/include/stdlib.h" 2   extern void * malloc  (size_t)  ;extern void * calloc  (size_t, size_t)  ;extern void free  (void *)  ;extern void * realloc  (void *, size_t)  ;# 40 "/home/gerg/new-wave.5249/lib/libc/include/stdlib.h"extern int rand  (void)  ;extern void srand  (unsigned int seed)  ;extern void srandom  (unsigned int seed)  ;extern long random  (void)  ;extern long strtol  (const char * nptr, char ** endptr, int base)  ;extern unsigned long strtoul  (const char * nptr,				   char ** endptr, int base)  ;extern double strtod  (const char * nptr, char ** endptr)  ;extern char *getenv  (const  char *__name)  ;extern int putenv  (const  char *__string)  ;extern int setenv  (const  char *__name, const  char *__value,                        int __replace)  ;extern void unsetenv  (const  char *__name)  ;extern int system  (const  char *__command)  ;extern void qsort  (void *base, int num, int size, int (*cmp)(const  void *, const  void *))  ;extern void *bsearch  (const  void *key, const  void *base, size_t nmemb,				size_t size, int (*compar)(const  void *, const  void *))  ;extern char * gcvt  (double number, size_t ndigit, char * buf)  ; typedef struct  {    int quot;			     int rem;			   } div_t; typedef struct  {    long int quot;		     long int rem;		   } ldiv_t;extern void exit  (int __status)   __attribute__ ((__noreturn__));extern int atexit  (void (*function)(void))  ;extern int system  (const  char *__command)  ;extern int abs  (int __x)   __attribute__ ((__const__));extern int atoi  (const  char *__nptr)  ;extern long atol  (const  char *__nptr)  ;extern long long atoll  (const  char *__nptr)  ;extern void abort  (void)   __attribute__ ((__noreturn__));extern int mkstemp  (char * __template)  ;extern char * mktemp  (char * __template)  ;extern char *realpath  (const  char *__restrict __name,			 	char *__restrict __resolved)  ; # 32 "defs.h" 2# 1 "/home/gerg/new-wave.5249/lib/libc/include/string.h" 1# 1 "/home/gerg/new-wave.5249/lib/libc/include/sys/types.h" 1# 1 "/home/gerg/new-wave.5249/lib/libc/include/stddef.h" 1   # 30 "/home/gerg/new-wave.5249/lib/libc/include/stddef.h"# 1 "/home/gerg/new-wave.5249/lib/libc/include/sys/types.h" 2# 1 "/home/gerg/new-wave.5249/lib/libc/include/linux/version.h" 1# 3 "/home/gerg/new-wave.5249/lib/libc/include/sys/types.h" 2# 5 "/home/gerg/new-wave.5249/lib/libc/include/string.h" 2# 1 "/home/gerg/new-wave.5249/lib/libc/include/stddef.h" 1   # 30 "/home/gerg/new-wave.5249/lib/libc/include/stddef.h"# 6 "/home/gerg/new-wave.5249/lib/libc/include/string.h" 2  extern size_t strlen  (const  char* __str)  ;extern char * strcat  (char*, const  char*)  ;extern char * strcpy  (char*, const  char*)  ;extern char * stpcpy  (char*, const  char*)  ;extern int strcmp  (const  char*, const  char*)  ;extern char * strncat  (char*, const  char*, size_t)  ;extern char * strncpy  (char*, const  char*, size_t)  ;extern int strncmp  (const  char*, const  char*, size_t)  ;extern char * strchr  (const  char*, int)  ;extern char * strrchr  (const  char*, int)  ;extern char * strdup  (const  char*)  ; extern void * memcpy  (void*, const  void*, size_t)  ;extern void * memccpy  (void*, const  void*, int, size_t)  ;extern void * memchr  (const  void*, const  int, size_t)  ;extern void * memset  (void*, int, size_t)  ;extern int memcmp  (const  void*, const  void*, size_t)  ;extern void * memmove  (void*, const void*, size_t)  ; static __inline int strcoll(const  char *s1, const  char *s2){	return(strcmp(s1, s2));}static __inline size_t strxfrm(char *dest, const  char *src, size_t n) {	strncpy(dest, src, n);	return(n);} static __inline char *index(const  char *s, int c) { return(strchr(s, c)); }static __inline char *rindex(const  char *s, int c) { return(strrchr(s, c)); } extern int strcasecmp  (const  char*, const  char*)  ;extern int strncasecmp  (const  char*, const  char*, size_t)  ;char *strpbrk  (const  char *, const  char *)  ;char *strsep  (char **, const  char *)  ;char *strstr  (const  char *, const  char *)  ;char *strcasestr  (const  char *, const  char *)  ;char *strtok  (char *, const  char *)  ;char *strtok_r  (char *, const  char *, char **)  ;size_t strspn  (const  char *, const  char *)  ;size_t strcspn  (const  char *, const  char *)  ; extern void bzero(void *s, int n);static __inline int bcmp(const  void *s1, const  void *s2, int n){	return(memcmp(s1, s2, n));} char *strfry  (char *)  ; # 33 "defs.h" 2# 1 "/home/gerg/new-wave.5249/lib/libc/include/assert.h" 1 extern void __assert  (const char *, const char *, int)  ;# 34 "defs.h" 2 typedef char		INT8;typedef short		INT16;typedef long		INT32;typedef unsigned char	UINT8;typedef unsigned short	UINT16;typedef unsigned long	UINT32;typedef float		REAL;typedef short		BOOL; # 28 "mpegimdc.c" 2# 1 "mpegaud.h" 1    # 1 "bitstr.h" 1       typedef struct {	long	(*open)(char *stream_name, long buffer_size, long *stream_size);	void	(*close)(long handle);	long	(*read)(long handle, void *buffer, long num_bytes);	int	(*seek)(long handle, long abs_byte_seek_pos);} BITSTREAM_ACCESS;typedef struct {	BITSTREAM_ACCESS baccess;	long		file_handle;	long		buffer_size;	unsigned int 	*buffer;	unsigned int 	*buffer_ptr;	long		remain_bytes;	long		bitstream_size;	int		end_of_stream;	unsigned int	bit_cache;	int		cache_size;	unsigned int	bits;	long		buffer_len;	long		buffer_pos;} BITSTREAM;extern BITSTREAM	*BSTR_open(BITSTREAM_ACCESS *bs_access,				char *filename, long buffer_size);extern unsigned long	BSTR_read_byte(BITSTREAM *b);extern unsigned int	BSTR_read_bytes(BITSTREAM *b, unsigned int count,				char *buffer);extern unsigned long	BSTR_read_bit_cache(BITSTREAM *bitstream);extern unsigned long	BSTR_read_bits_cache(BITSTREAM *bitstream,				unsigned int bit_count);extern void		BSTR_close(BITSTREAM *bitstream);extern int		BSTR_seek( BITSTREAM *bitstream, long seek_byte_pos );extern long		BSTR_pos( BITSTREAM *bitstream ); # 31 "mpegaud.h" 2# 1 "huff.h" 1    typedef struct {	int		buffer_size;	unsigned char	*buffer;	int		write_index;	int		read_index;	unsigned long	bit_cache;	int		cache_size;	unsigned long	bits;	INT16		nul_begin;  } HUFFMAN;  extern HUFFMAN	*HUFF_open(void);extern void	HUFF_close(HUFFMAN *h);extern int	HUFF_reset(HUFFMAN *h);extern void	HUFF_fill_bytes(HUFFMAN *h, unsigned int count, char *buffer);extern int	HUFF_set_start(HUFFMAN *h, int start_pos);extern int	HUFF_seek(HUFFMAN *h, int seek_pos);extern int	HUFF_decode_pair(HUFFMAN *h, INT16 table, INT16 count,			INT16 *x);extern int	HUFF_decode_quad(HUFFMAN *h, INT16 table, INT16 max_bits,			INT16 val_count, INT16 val_top, INT16 *x);extern unsigned long	HUFF_read_bit_cache(HUFFMAN *h);extern unsigned long	HUFF_read_bits_cache(HUFFMAN *h, unsigned int count); # 32 "mpegaud.h" 2   

⌨️ 快捷键说明

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