]> git.sesse.net Git - vlc/commitdiff
input: Add support for AlbumArtist meta
authorUwe L. Korn <uwelk@xhochy.com>
Sat, 22 Nov 2014 22:01:17 +0000 (22:01 +0000)
committerJean-Baptiste Kempf <jb@videolan.org>
Sat, 22 Nov 2014 23:11:45 +0000 (00:11 +0100)
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
include/vlc/libvlc_media.h
include/vlc_meta.h
lib/media.c
modules/lua/libs/input.c
src/input/meta.c

index 948230a3f17569091b982038ec2c66b48e1a4398..9c2d38359fb35e366eb375e84a2b05c59a0095f3 100644 (file)
@@ -73,7 +73,8 @@ typedef enum libvlc_meta_t {
     libvlc_meta_Season,
     libvlc_meta_Episode,
     libvlc_meta_ShowName,
-    libvlc_meta_Actors
+    libvlc_meta_Actors,
+    libvlc_meta_AlbumArtist
     /* Add new meta types HERE */
 } libvlc_meta_t;
 
index c3bf801e11201513ab8133c76f134db7baffcbf6..290fa8be901f5433d16e4f91b34670f155cd667d 100644 (file)
@@ -55,9 +55,10 @@ typedef enum vlc_meta_type_t
     vlc_meta_Episode,
     vlc_meta_ShowName,
     vlc_meta_Actors,
+    vlc_meta_AlbumArtist
 } vlc_meta_type_t;
 
-#define VLC_META_TYPE_COUNT 23
+#define VLC_META_TYPE_COUNT 24
 
 #define ITEM_PREPARSED       1
 #define ITEM_ARTURL_FETCHED  2
@@ -137,6 +138,7 @@ VLC_API int input_item_WriteMeta(vlc_object_t *, input_item_t *);
 #define vlc_meta_SetEpisode( meta, b )     vlc_meta_Set( meta, vlc_meta_Episode, b )
 #define vlc_meta_SetShowName( meta, b )    vlc_meta_Set( meta, vlc_meta_ShowName, b )
 #define vlc_meta_SetActors( meta, b )      vlc_meta_Set( meta, vlc_meta_Actors, b )
+#define vlc_meta_SetAlbumArtist( meta, b ) vlc_meta_Set( meta, vlc_meta_AlbumArtist, b )
 
 #define VLC_META_TITLE              vlc_meta_TypeToLocalizedString( vlc_meta_Title )
 #define VLC_META_ARTIST             vlc_meta_TypeToLocalizedString( vlc_meta_Artist )
@@ -160,6 +162,7 @@ VLC_API int input_item_WriteMeta(vlc_object_t *, input_item_t *);
 #define VLC_META_EPISODE            vlc_meta_TypeToLocalizedString( vlc_meta_Episode )
 #define VLC_META_SHOW_NAME          vlc_meta_TypeToLocalizedString( vlc_meta_ShowName )
 #define VLC_META_ACTORS             vlc_meta_TypeToLocalizedString( vlc_meta_Actors )
+#define VLC_META_ALBUMARTIST        vlc_meta_TypeToLocalizedString( vlc_meta_AlbumArtist )
 
 #define VLC_META_EXTRA_MB_ALBUMID   "MB_ALBUMID"
 
index 1f6fb9e8a1283add3aaee094114586f00beb30b9..3caaf5b98046b8c887af12c35e9c0283a51373c5 100644 (file)
@@ -68,7 +68,8 @@ static const vlc_meta_type_t libvlc_to_vlc_meta[] =
     [libvlc_meta_Season]       = vlc_meta_Season,
     [libvlc_meta_Episode]      = vlc_meta_Episode,
     [libvlc_meta_ShowName]     = vlc_meta_ShowName,
-    [libvlc_meta_Actors]       = vlc_meta_Actors
+    [libvlc_meta_Actors]       = vlc_meta_Actors,
+    [libvlc_meta_AlbumArtist]  = vlc_meta_AlbumArtist
 };
 
 static const libvlc_meta_t vlc_to_libvlc_meta[] =
@@ -95,7 +96,8 @@ static const libvlc_meta_t vlc_to_libvlc_meta[] =
     [vlc_meta_Season]       = libvlc_meta_Season,
     [vlc_meta_Episode]      = libvlc_meta_Episode,
     [vlc_meta_ShowName]     = libvlc_meta_ShowName,
-    [vlc_meta_Actors]       = libvlc_meta_Actors
+    [vlc_meta_Actors]       = libvlc_meta_Actors,
+    [vlc_meta_AlbumArtist]  = libvlc_meta_AlbumArtist
 };
 
 /**************************************************************************
index 6e7640074c6f999cd81eee0d8843c6bfb9b6ef3d..e75424205b6bcd2ba7a0d7db37c331782c33d1b6 100644 (file)
@@ -338,6 +338,7 @@ static int vlclua_input_item_set_meta( lua_State *L )
         META_TYPE( Episode, "episode" )
         META_TYPE( ShowName, "show_name" )
         META_TYPE( Actors, "actors" )
+        META_TYPE( AlbumArtist, "album_artist" )
     };
 #undef META_TYPE
 
index 9b17be498f230a73f7156c25c8c9bed124dbadde..e96b9bae14d40640bb6ff6614d46610f2f08bb77 100644 (file)
@@ -50,7 +50,7 @@ struct vlc_meta_t
 /* FIXME bad name convention */
 const char * vlc_meta_TypeToLocalizedString( vlc_meta_type_t meta_type )
 {
-    static const char posix_names[][17] =
+    static const char posix_names[][18] =
     {
         [vlc_meta_Title]       = N_("Title"),
         [vlc_meta_Artist]      = N_("Artist"),
@@ -75,6 +75,7 @@ const char * vlc_meta_TypeToLocalizedString( vlc_meta_type_t meta_type )
         [vlc_meta_Episode]     = N_("Episode"),
         [vlc_meta_ShowName]    = N_("Show Name"),
         [vlc_meta_Actors]      = N_("Actors"),
+        [vlc_meta_AlbumArtist] = N_("Album Artist")
     };
 
     assert (meta_type < (sizeof(posix_names) / sizeof(posix_names[0])));