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