Commit 6a427247 authored by Rafaël Carré's avatar Rafaël Carré

Ignore empty vorbis comments (closes #704)

Comment unusued artist & album musicbrainz ids
parent a743fab8
...@@ -72,8 +72,10 @@ struct vlc_meta_t ...@@ -72,8 +72,10 @@ struct vlc_meta_t
char *psz_encodedby; char *psz_encodedby;
char *psz_arturl; char *psz_arturl;
char *psz_trackid; char *psz_trackid;
#if 0 //not used
char *psz_artistid; char *psz_artistid;
char *psz_albumid; char *psz_albumid;
#endif
int i_status; int i_status;
#if 0 #if 0
...@@ -104,8 +106,10 @@ struct vlc_meta_t ...@@ -104,8 +106,10 @@ struct vlc_meta_t
#define vlc_meta_SetEncodedBy( meta, b ) vlc_meta_Set( meta, encodedby, b ); #define vlc_meta_SetEncodedBy( meta, b ) vlc_meta_Set( meta, encodedby, b );
#define vlc_meta_SetArtURL( meta, b ) vlc_meta_Set( meta, arturl, b ); #define vlc_meta_SetArtURL( meta, b ) vlc_meta_Set( meta, arturl, b );
#define vlc_meta_SetTrackID( meta, b ) vlc_meta_Set( meta, trackid, b ); #define vlc_meta_SetTrackID( meta, b ) vlc_meta_Set( meta, trackid, b );
#if 0 //not used
#define vlc_meta_SetArtistID( meta, b ) vlc_meta_Set( meta, artistid, b ); #define vlc_meta_SetArtistID( meta, b ) vlc_meta_Set( meta, artistid, b );
#define vlc_meta_SetAlbumID( meta, b ) vlc_meta_Set( meta, albumid, b ); #define vlc_meta_SetAlbumID( meta, b ) vlc_meta_Set( meta, albumid, b );
#endif
static inline vlc_meta_t *vlc_meta_New( void ) static inline vlc_meta_t *vlc_meta_New( void )
...@@ -129,8 +133,10 @@ static inline vlc_meta_t *vlc_meta_New( void ) ...@@ -129,8 +133,10 @@ static inline vlc_meta_t *vlc_meta_New( void )
m->psz_encodedby = NULL; m->psz_encodedby = NULL;
m->psz_arturl = NULL; m->psz_arturl = NULL;
m->psz_trackid = NULL; m->psz_trackid = NULL;
#if 0 //not used
m->psz_artistid = NULL; m->psz_artistid = NULL;
m->psz_albumid = NULL; m->psz_albumid = NULL;
#endif
m->i_status = 0; m->i_status = 0;
return m; return m;
} }
...@@ -153,8 +159,10 @@ static inline void vlc_meta_Delete( vlc_meta_t *m ) ...@@ -153,8 +159,10 @@ static inline void vlc_meta_Delete( vlc_meta_t *m )
free( m->psz_publisher ); free( m->psz_publisher );
free( m->psz_encodedby ); free( m->psz_encodedby );
free( m->psz_trackid ); free( m->psz_trackid );
#if 0 //not used
free( m->psz_artistid ); free( m->psz_artistid );
free( m->psz_albumid ); free( m->psz_albumid );
#endif
free( m->psz_arturl ); free( m->psz_arturl );
free( m ); free( m );
...@@ -184,8 +192,10 @@ static inline void vlc_meta_Merge( vlc_meta_t *dst, vlc_meta_t *src ) ...@@ -184,8 +192,10 @@ static inline void vlc_meta_Merge( vlc_meta_t *dst, vlc_meta_t *src )
COPY_FIELD( publisher ); COPY_FIELD( publisher );
COPY_FIELD( encodedby ); COPY_FIELD( encodedby );
COPY_FIELD( trackid ); COPY_FIELD( trackid );
#if 0 //not used
COPY_FIELD( artistid ); COPY_FIELD( artistid );
COPY_FIELD( albumid ); COPY_FIELD( albumid );
#endif
COPY_FIELD( arturl ); COPY_FIELD( arturl );
} }
/** \todo Track meta */ /** \todo Track meta */
......
...@@ -626,38 +626,59 @@ static void ParseVorbisComments( decoder_t *p_dec ) ...@@ -626,38 +626,59 @@ static void ParseVorbisComments( decoder_t *p_dec )
psz_name, psz_value ); psz_name, psz_value );
if( !strcasecmp( psz_name, "artist" ) ) if( !strcasecmp( psz_name, "artist" ) )
{ {
vlc_meta_SetArtist( p_input->input.p_item->p_meta, if( psz_value && ( *psz_value != '\0' ) )
psz_value ); {
input_ItemAddInfo( p_input->input.p_item, vlc_meta_SetArtist( p_input->input.p_item->p_meta,
_(VLC_META_INFO_CAT), _(VLC_META_ARTIST), psz_value );
input_ItemAddInfo( p_input->input.p_item,
_(VLC_META_INFO_CAT),
_(VLC_META_ARTIST),
"%s", psz_value ); "%s", psz_value );
}
} }
else if( !strcasecmp( psz_name, "title" ) ) else if( !strcasecmp( psz_name, "title" ) )
{ {
vlc_meta_SetTitle( p_input->input.p_item->p_meta, if( psz_value && ( *psz_value != '\0' ) )
{
vlc_meta_SetTitle( p_input->input.p_item->p_meta,
psz_value ); psz_value );
p_input->input.p_item->psz_name = strdup( psz_value ); p_input->input.p_item->psz_name = strdup( psz_value );
}
} }
else if( !strcasecmp( psz_name, "album" ) ) else if( !strcasecmp( psz_name, "album" ) )
{ {
vlc_meta_SetAlbum( p_input->input.p_item->p_meta, if( psz_value && ( *psz_value != '\0' ) )
{
vlc_meta_SetAlbum( p_input->input.p_item->p_meta,
psz_value ); psz_value );
}
} }
else if( !strcasecmp( psz_name, "musicbrainz_trackid" ) ) else if( !strcasecmp( psz_name, "musicbrainz_trackid" ) )
{ {
vlc_meta_SetTrackID( p_input->input.p_item->p_meta, if( psz_value && ( *psz_value != '\0' ) )
{
vlc_meta_SetTrackID( p_input->input.p_item->p_meta,
psz_value ); psz_value );
}
} }
#if 0 //not used
else if( !strcasecmp( psz_name, "musicbrainz_artistid" ) ) else if( !strcasecmp( psz_name, "musicbrainz_artistid" ) )
{ {
vlc_meta_SetArtistID( p_input->input.p_item->p_meta, if( psz_value && ( *psz_value != '\0' ) )
{
vlc_meta_SetArtistID( p_input->input.p_item->p_meta,
psz_value ); psz_value );
}
} }
else if( !strcasecmp( psz_name, "musicbrainz_albumid" ) ) else if( !strcasecmp( psz_name, "musicbrainz_albumid" ) )
{ {
vlc_meta_SetAlbumID( p_input->input.p_item->p_meta, if( psz_value && ( *psz_value != '\0' ) )
{
vlc_meta_SetAlbumID( p_input->input.p_item->p_meta,
psz_value ); psz_value );
}
} }
#endif
} }
/* FIXME */ /* FIXME */
var_SetInteger( p_input, "item-change", p_input->input.p_item->i_id ); var_SetInteger( p_input, "item-change", p_input->input.p_item->i_id );
......
...@@ -91,7 +91,7 @@ static void ParseID3Tag( demux_t *p_demux, uint8_t *p_data, int i_size ) ...@@ -91,7 +91,7 @@ static void ParseID3Tag( demux_t *p_demux, uint8_t *p_data, int i_size )
} }
i++; i++;
} }
#if 0 //not used
i = 0; i = 0;
while( ( p_frame = id3_tag_findframe( p_id3_tag, "TXXX", i ) ) ) while( ( p_frame = id3_tag_findframe( p_id3_tag, "TXXX", i ) ) )
...@@ -118,7 +118,7 @@ static void ParseID3Tag( demux_t *p_demux, uint8_t *p_data, int i_size ) ...@@ -118,7 +118,7 @@ static void ParseID3Tag( demux_t *p_demux, uint8_t *p_data, int i_size )
free( psz_desc ); free( psz_desc );
i++; i++;
} }
#endif
i = 0; i = 0;
while( ( p_frame = id3_tag_findframe( p_id3_tag , "T", i ) ) ) while( ( p_frame = id3_tag_findframe( p_id3_tag , "T", i ) ) )
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment