Sophie

Sophie

distrib > Mandriva > 2011.0 > i586 > media > contrib-release-debug > by-pkgid > 483531b3cd3e5dd7eebc9b89beec10ba > files > 147

gnomoradio-debug-0.15.1-9mdv2011.0.i586.rpm

/*
 * MPEG Layer3 header info extraction routines
 *
 * Author: Erik Gustavsson, <cyrano@algonet.se>
 *
 * This software is released under the GNU General Public License.
 * Please read the included file COPYING for more information.
 * This software comes with no warranty of any kind, use at you own risk!
 */

#ifndef MP3HEAD_H
#define MP3HEAD_H

/* mpeg audio header   */
typedef struct
{
	int sync;			/* 1 if valid sync */
	int id;
	int option;
	int prot;
	int br_index;
	int sr_index;
	int pad;
	int private_bit;
	int mode;
	int mode_ext;
	int cr;
	int original;
	int emphasis;
} MPEGHeader;


/* ID3v2 Tag Header */
typedef struct {
	char id_str[3];
	unsigned char version[2];
	unsigned char flags[1];
	unsigned char size[4];
} ID3V2Header;


int get_bitrate(unsigned char *buf,int bufsize);
int get_samprate(unsigned char *buf,int bufsize);
int get_mpgver(unsigned char *buf,int bufsize);
int get_stereo(unsigned char *buf,int bufsize);

int get_header_info (unsigned char *buf, unsigned int n, MPEGHeader *h);
int get_header_info_extended (unsigned char *buf, unsigned int n, MPEGHeader *h, int *bitrate);

#endif