1 /* EasyTAG - tag editor for audio files
2  * Copyright (C) 2015  David King <amigadave@amigadave.com>
3  *
4  * This program is free software; you can redistribute it and/or modify it
5  * under the terms of the GNU General Public License as published by the Free
6  * Software Foundation; either version 2 of the License, or (at your option)
7  * any later version.
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
12  * more details.
13  *
14  * You should have received a copy of the GNU General Public License along with
15  * this program; if not, write to the Free Software Foundation, Inc., 51
16  * Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
17  */
18 
19 #ifndef ET_FILE_INFO_H_
20 #define ET_FILE_INFO_H_
21 
22 #include <glib.h>
23 
24 G_BEGIN_DECLS
25 
26 /*
27  * Structure containing informations of the header of file
28  * Nota: This struct was copied from an "MP3 structure", and will change later.
29  */
30 typedef struct
31 {
32     gint version;               /* Version of bitstream (mpeg version for mp3, encoder version for ogg) */
33     gint mpeg25;                /* Version is MPEG 2.5? */
34     gsize layer; /* "MP3 data" */
35     gint bitrate;               /* Bitrate (kb/s) */
36     gboolean variable_bitrate;  /* Is a VBR file? */
37     gint samplerate;            /* Samplerate (Hz) */
38     gint mode;                  /* Stereo, ... or channels for ogg */
39     goffset size;               /* The size of file (in bytes) */
40     gint duration;              /* The duration of file (in seconds) */
41     gchar *mpc_profile;         /* MPC data */
42     gchar *mpc_version;         /* MPC data : encoder version  (also for Speex) */
43 } ET_File_Info;
44 
45 ET_File_Info * et_file_info_new (void);
46 void et_file_info_free (ET_File_Info *file_info);
47 
48 G_END_DECLS
49 
50 #endif /* !ET_FILE_INFO_H_ */
51