# HG changeset patch # User nenolod # Date 1150367879 25200 # Node ID 6d9c45d157f9a5a3480f680057b74ca5ac0d93e9 # Parent aa946696351211c827245790be748467c4aca697 [svn] - this is a hack until I find a better solution diff -r aa9466963512 -r 6d9c45d157f9 ChangeLog --- a/ChangeLog Thu Jun 15 01:22:24 2006 -0700 +++ b/ChangeLog Thu Jun 15 03:37:59 2006 -0700 @@ -1,3 +1,13 @@ +2006-06-15 08:22:24 +0000 William Pitcock + revision [1408] + - tuple builder for mp4 files (not AAC, sorry but nobody uses that crap anymore) + + + Changes: Modified: + +46 -0 trunk/Plugins/Input/aac/src/libmp4.c + +13 -15 trunk/Plugins/Input/aac/src/mp4_utils.c + + 2006-06-15 08:04:41 +0000 William Pitcock revision [1406] - tuple builder for musepack files diff -r aa9466963512 -r 6d9c45d157f9 audacious/plugin.h --- a/audacious/plugin.h Thu Jun 15 01:22:24 2006 -0700 +++ b/audacious/plugin.h Thu Jun 15 03:37:59 2006 -0700 @@ -32,7 +32,7 @@ #include -#include "libaudacious/titlestring.h" +#include "audacious/titlestring.h" #define INPUT_PLUGIN(x) ((InputPlugin *)(x)) #define OUTPUT_PLUGIN(x) ((OutputPlugin *)(x)) diff -r aa9466963512 -r 6d9c45d157f9 audacious/titlestring.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/audacious/titlestring.h Thu Jun 15 03:37:59 2006 -0700 @@ -0,0 +1,82 @@ +/* + * Copyright (C) 2001, Espen Skoglund + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + * 02111-1307, USA. + * + */ +#ifndef XMMS_TITLESTRING_H +#define XMMS_TITLESTRING_H + +#include +#include + + +/* + * Struct which is passed to xmms_get_titlestring(). An input struct + * is allocated and initialized with XMMS_NEW_TITLEINPUT(). Before + * passing the struct to xmms_get_titlestring() it should be filled + * with appropriate field values. + */ + +typedef struct { + gint __size; /* Set by XMMS_NEW_TITLEINPUT() */ + gint __version; /* Ditto */ + + gchar *performer; /* %p */ + gchar *album_name; /* %a */ + gchar *track_name; /* %t */ + gint track_number; /* %n */ + gint year; /* %y */ + gchar *date; /* %d */ + gchar *genre; /* %g */ + gchar *comment; /* %c */ + gchar *file_name; /* %f */ + const gchar *file_ext; /* %e *//* is not always strdup'ed, see xmms_input_get_song_info and plugins! */ + gchar *file_path; /* %F */ + gint length; /* not displayable */ +} TitleInput; + +typedef TitleInput BmpTitleInput; + + +/* + * Using a __size field helps the library functions detect plugins + * that use a possibly extended version of the struct. The __version + * field helps the library detect possible future incompatibilities in + * the struct layout. + */ + +#define XMMS_TITLEINPUT_SIZE sizeof(TitleInput) +#define XMMS_TITLEINPUT_VERSION (1) + +#define XMMS_NEW_TITLEINPUT(input) G_STMT_START { \ + input = g_new0(TitleInput, 1); \ + input->__size = XMMS_TITLEINPUT_SIZE; \ + input->__version = XMMS_TITLEINPUT_VERSION; \ +} G_STMT_END + + +G_BEGIN_DECLS + +TitleInput *bmp_title_input_new(void); +void bmp_title_input_free(BmpTitleInput * input); + +gchar *xmms_get_titlestring(const gchar * fmt, TitleInput * input); +GtkWidget *xmms_titlestring_descriptions(gchar * tags, gint rows); + +G_END_DECLS + +#endif /* !XMMS_TITLESTRING_H */