mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-12-13 18:01:00 -05:00
96 lines
3 KiB
C
Vendored
96 lines
3 KiB
C
Vendored
/*
|
|
* GTK plotting routines source file
|
|
*
|
|
* Copyright (c) 1999 Mark Taylor
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Library General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2 of the License, or (at your option) any later version.
|
|
*
|
|
* This library 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
|
|
* Library General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Library General Public
|
|
* License along with this library; if not, write to the
|
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
* Boston, MA 02111-1307, USA.
|
|
*/
|
|
|
|
#ifndef LAME_GTKANAL_H
|
|
#define LAME_GTKANAL_H
|
|
|
|
|
|
#define READ_AHEAD 40 /* number of frames to read ahead */
|
|
#define MAXMPGLAG READ_AHEAD /* if the mpg123 lag becomes bigger than this
|
|
we have to stop */
|
|
#define NUMBACK 6 /* number of frames we can back up */
|
|
#define NUMPINFO (NUMBACK+READ_AHEAD+1)
|
|
|
|
|
|
|
|
struct plotting_data {
|
|
int frameNum; /* current frame number */
|
|
int frameNum123;
|
|
int num_samples; /* number of pcm samples read for this frame */
|
|
double frametime; /* starting time of frame, in seconds */
|
|
double pcmdata[2][1600];
|
|
double pcmdata2[2][1152 + 1152 - DECDELAY];
|
|
double xr[2][2][576];
|
|
double mpg123xr[2][2][576];
|
|
double ms_ratio[2];
|
|
double ms_ener_ratio[2];
|
|
|
|
/* L,R, M and S values */
|
|
double energy_save[4][BLKSIZE]; /* psymodel is one ahead */
|
|
double energy[2][4][BLKSIZE];
|
|
double pe[2][4];
|
|
double thr[2][4][SBMAX_l];
|
|
double en[2][4][SBMAX_l];
|
|
double thr_s[2][4][3 * SBMAX_s];
|
|
double en_s[2][4][3 * SBMAX_s];
|
|
double ers_save[4]; /* psymodel is one ahead */
|
|
double ers[2][4];
|
|
|
|
double sfb[2][2][SBMAX_l];
|
|
double sfb_s[2][2][3 * SBMAX_s];
|
|
double LAMEsfb[2][2][SBMAX_l];
|
|
double LAMEsfb_s[2][2][3 * SBMAX_s];
|
|
|
|
int LAMEqss[2][2];
|
|
int qss[2][2];
|
|
int big_values[2][2];
|
|
int sub_gain[2][2][3];
|
|
|
|
double xfsf[2][2][SBMAX_l];
|
|
double xfsf_s[2][2][3 * SBMAX_s];
|
|
|
|
int over[2][2];
|
|
double tot_noise[2][2];
|
|
double max_noise[2][2];
|
|
double over_noise[2][2];
|
|
int over_SSD[2][2];
|
|
int blocktype[2][2];
|
|
int scalefac_scale[2][2];
|
|
int preflag[2][2];
|
|
int mpg123blocktype[2][2];
|
|
int mixed[2][2];
|
|
int mainbits[2][2];
|
|
int sfbits[2][2];
|
|
int LAMEmainbits[2][2];
|
|
int LAMEsfbits[2][2];
|
|
int framesize, stereo, js, ms_stereo, i_stereo, emph, bitrate, sampfreq, maindata;
|
|
int crc, padding;
|
|
int scfsi[2], mean_bits, resvsize;
|
|
int totbits;
|
|
};
|
|
#ifndef plotting_data_defined
|
|
#define plotting_data_defined
|
|
typedef struct plotting_data plotting_data;
|
|
#endif
|
|
#if 0
|
|
extern plotting_data *pinfo;
|
|
#endif
|
|
#endif
|