Audio-Play-MPG123
view release on metacpan or search on metacpan
mpg123/mpg123.h view on Meta::CPAN
int print_version;
};
struct bitstream_info {
int bitindex;
unsigned char *wordpointer;
};
struct mpstr {
int bsize;
int framesize;
int fsizeold;
struct frame fr;
/* int (*do_layer)(struct mpstr *,struct frame *fr,int,struct audio_info_struct *); */
unsigned char bsspace[2][MAXFRAMESIZE+512]; /* MAXFRAMESIZE */
real hybrid_block[2][2][SBLIMIT*SSLIMIT];
int hybrid_blc[2];
unsigned long header;
int bsnum;
real synth_buffs[2][2][0x110];
int synth_bo;
struct bitstream_info bsi;
};
extern struct bitstream_info bsi;
struct reader {
int (*init)(struct reader *);
void (*close)(struct reader *);
int (*head_read)(struct reader *,unsigned long *newhead);
int (*head_shift)(struct reader *,unsigned long *head);
int (*skip_bytes)(struct reader *,int len);
int (*read_frame_body)(struct reader *,unsigned char *,int size);
int (*back_bytes)(struct reader *,int bytes);
int (*back_frame)(struct reader *,struct frame *,int num);
long (*tell)(struct reader *);
void (*rewind)(struct reader *);
long filelen;
long filepos;
int filept;
int flags;
unsigned char id3buf[128];
unsigned char *backbuf;
int mark;
int bufpos,bufstart,bufend;
int bufsize;
};
#define READER_FD_OPENED 0x1
#define READER_ID3TAG 0x2
extern struct reader *rd,readers[];
extern int halfspeed;
extern int buffer_fd[2];
extern txfermem *buffermem;
extern char *prgName, *prgVersion;
#ifndef NOXFERMEM
extern void buffer_loop(struct audio_info_struct *ai,sigset_t *oldsigset);
#endif
extern void readers_pushback_header(struct reader *rds,unsigned long aLong);
extern void readers_mark_pos(struct reader *rds);
extern void readers_goto_mark(struct reader *rds);
/* ------ Declarations from "httpget.c" ------ */
extern char *proxyurl;
extern unsigned long proxyip;
extern int http_open (char *url);
extern char *httpauth;
/* ------ Declarations from "common.c" ------ */
int sync_stream(struct reader *rds,struct frame *fr,int flags,int *skipped);
extern void audio_flush(int, struct audio_info_struct *);
extern void (*catchsignal(int signum, void(*handler)()))();
extern void print_header(struct frame *);
extern void print_header_compact(struct frame *);
extern void print_id3_tag(unsigned char *buf);
extern int split_dir_file(const char *path, char **dname, char **fname);
extern unsigned int get1bit(struct bitstream_info *);
extern unsigned int getbits(struct bitstream_info *,int);
extern unsigned int getbits_fast(struct bitstream_info *,int);
extern void backbits(struct bitstream_info *,int);
extern int getbitoffset(struct bitstream_info *);
extern int getbyte(struct bitstream_info *);
extern void set_pointer(int,long);
extern unsigned char *pcm_sample;
extern int pcm_point;
extern int audiobufsize;
extern int OutputDescriptor;
struct gr_info_s {
int scfsi;
unsigned part2_3_length;
unsigned big_values;
unsigned scalefac_compress;
unsigned block_type;
unsigned mixed_block_flag;
unsigned table_select[3];
unsigned subblock_gain[3];
unsigned maxband[3];
unsigned maxbandl;
unsigned maxb;
unsigned region1start;
unsigned region2start;
unsigned preflag;
unsigned scalefac_scale;
unsigned count1table_select;
real *full_gain[3];
( run in 2.715 seconds using v1.01-cache-2.11-cpan-b301d465b3d )