Re: [Easytag-mailing] [PATCH 3/3] Actually save ALBUM ARTIST= tags in OGG files



If we write both ALBUMARTIST and "ALBUM ARTIST" to ogg, should we be
doing the same for FLAC?

See bce4a885
[ http://easytag.git.sourceforge.net/git/gitweb.cgi?p=easytag/easytag;a=commit;h=bce4a885b4d38c76394cd8b7eb648437320300f8 ]
and aa832ab4
[ http://easytag.git.sourceforge.net/git/gitweb.cgi?p=easytag/easytag;a=commit;h=aa832ab4ce9e41d84e7747d079d0438b75c7aced ]

For ALBUMARTIST vs "ALBUM ARTIST" there seems to be neither standard nor
consensus so writing both seems like the right thing to do.

ciao
  Mark


On Fri, Mar 16, 2012 at 06:07:09PM +0100, Christoph J. Thompson wrote:
> Actually save ALBUM ARTIST= tags in OGG files. This has also been 
> throroughly tested for over two years.
> 
> 	modified:   src/ogg_tag.c
> ---
>  src/ogg_tag.c |   28 ++++++++++++++++++++++++++++
>  1 files changed, 28 insertions(+), 0 deletions(-)
> 
> diff --git a/src/ogg_tag.c b/src/ogg_tag.c
> index 826d661..15cfe98 100644
> --- a/src/ogg_tag.c
> +++ b/src/ogg_tag.c
> @@ -279,6 +279,25 @@ gboolean Ogg_Tag_Read_File_Tag (gchar *filename, File_Tag *FileTag)
>          g_free(string);
>      }
>  
> +    /****************
> +     * Album Artist *
> +     ****************/
> +    field_num = 0;
> +    while ( (string = vorbis_comment_query(vc,"ALBUM ARTIST",field_num++)) != NULL )
> +    {
> +        string = Try_To_Validate_Utf8_String(string);
> +
> +        if ( g_utf8_strlen(string, -1) > 0 )
> +        {
> +            if (FileTag->album_artist==NULL)
> +                FileTag->album_artist = g_strdup(string);
> +            else
> +                FileTag->album_artist = g_strconcat(FileTag->album_artist,MULTIFIELD_SEPARATOR,string,NULL);
> +        }
> +
> +        g_free(string);
> +    }
> +
>      /*******************************
>       * Disc Number (Part of a Set) *
>       *******************************/
> @@ -557,6 +576,7 @@ gboolean Ogg_Tag_Read_File_Tag (gchar *filename, File_Tag *FileTag)
>            && strncasecmp(vc->user_comments[i],"ARTIST=",           7) != 0
>            && strncasecmp(vc->user_comments[i],"ALBUMARTIST=",     12) != 0
>            && strncasecmp(vc->user_comments[i],"ALBUM=",            6) != 0
> +          && strncasecmp(vc->user_comments[i],"ALBUM ARTIST=",    13) != 0
>            && strncasecmp(vc->user_comments[i],"DISCNUMBER=",      11) != 0
>            && strncasecmp(vc->user_comments[i],"DATE=",             5) != 0
>            && strncasecmp(vc->user_comments[i],"TRACKNUMBER=",     12) != 0
> @@ -720,6 +740,14 @@ gboolean Ogg_Tag_Write_File_Tag (ET_File *ETFile)
>          Ogg_Write_Delimetered_Tag(vc,"ALBUM=",FileTag->album);
>      }
>  
> +    /****************
> +     * Album Artist *
> +     ****************/
> +    if ( FileTag->album_artist )
> +    {
> +        Ogg_Write_Delimetered_Tag(vc,"ALBUM ARTIST=",FileTag->album_artist);
> +    }
> +
>      /***************
>       * Disc Number *
>       ***************/
> -- 
> 1.7.4.4
> 
> 
> -- 
> 
> ------------------------------------------------------------------------------
> This SF email is sponsosred by:
> Try Windows Azure free for 90 days Click Here 
> http://p.sf.net/sfu/sfd2d-msazure
> _______________________________________________
> Easytag-mailing mailing list
> Easytag-mailing lists sourceforge net
> https://lists.sourceforge.net/lists/listinfo/easytag-mailing

Attachment: signature.asc
Description: Digital signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]