decoder/{flac,vorbis}: move tag table to XiphTags.c
Merge duplicate data.
This commit is contained in:
		| @@ -588,6 +588,7 @@ endif | |||||||
|  |  | ||||||
| if HAVE_XIPH | if HAVE_XIPH | ||||||
| libdecoder_plugins_a_SOURCES += \ | libdecoder_plugins_a_SOURCES += \ | ||||||
|  | 	src/decoder/XiphTags.c src/decoder/XiphTags.h \ | ||||||
| 	src/decoder/ogg_codec.c src/decoder/ogg_codec.h | 	src/decoder/ogg_codec.c src/decoder/ogg_codec.h | ||||||
| endif | endif | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										28
									
								
								src/decoder/XiphTags.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/decoder/XiphTags.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | |||||||
|  | /* | ||||||
|  |  * Copyright (C) 2003-2012 The Music Player Daemon Project | ||||||
|  |  * http://www.musicpd.org | ||||||
|  |  * | ||||||
|  |  * 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., | ||||||
|  |  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #include "config.h" | ||||||
|  | #include "XiphTags.h" | ||||||
|  |  | ||||||
|  | const struct tag_table xiph_tags[] = { | ||||||
|  | 	{ "tracknumber", TAG_TRACK }, | ||||||
|  | 	{ "discnumber", TAG_DISC }, | ||||||
|  | 	{ "album artist", TAG_ALBUM_ARTIST }, | ||||||
|  | 	{ NULL, TAG_NUM_OF_ITEM_TYPES } | ||||||
|  | }; | ||||||
							
								
								
									
										28
									
								
								src/decoder/XiphTags.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/decoder/XiphTags.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | |||||||
|  | /* | ||||||
|  |  * Copyright (C) 2003-2012 The Music Player Daemon Project | ||||||
|  |  * http://www.musicpd.org | ||||||
|  |  * | ||||||
|  |  * 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., | ||||||
|  |  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | #ifndef MPD_XIPH_TAGS_H | ||||||
|  | #define MPD_XIPH_TAGS_H | ||||||
|  |  | ||||||
|  | #include "check.h" | ||||||
|  | #include "tag_table.h" | ||||||
|  |  | ||||||
|  | extern const struct tag_table xiph_tags[]; | ||||||
|  |  | ||||||
|  | #endif | ||||||
| @@ -19,6 +19,7 @@ | |||||||
|  |  | ||||||
| #include "config.h" | #include "config.h" | ||||||
| #include "flac_metadata.h" | #include "flac_metadata.h" | ||||||
|  | #include "XiphTags.h" | ||||||
| #include "replay_gain_info.h" | #include "replay_gain_info.h" | ||||||
| #include "tag.h" | #include "tag.h" | ||||||
| #include "tag_handler.h" | #include "tag_handler.h" | ||||||
| @@ -184,13 +185,6 @@ flac_copy_comment(const FLAC__StreamMetadata_VorbisComment_Entry *entry, | |||||||
| 	return false; | 	return false; | ||||||
| } | } | ||||||
|  |  | ||||||
| static const struct tag_table flac_tags[] = { |  | ||||||
| 	{ "tracknumber", TAG_TRACK }, |  | ||||||
| 	{ "discnumber", TAG_DISC }, |  | ||||||
| 	{ "album artist", TAG_ALBUM_ARTIST }, |  | ||||||
| 	{ NULL, TAG_NUM_OF_ITEM_TYPES } |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| static void | static void | ||||||
| flac_scan_comment(const char *char_tnum, | flac_scan_comment(const char *char_tnum, | ||||||
| 		  const FLAC__StreamMetadata_VorbisComment_Entry *entry, | 		  const FLAC__StreamMetadata_VorbisComment_Entry *entry, | ||||||
| @@ -209,7 +203,7 @@ flac_scan_comment(const char *char_tnum, | |||||||
| 		g_free(name); | 		g_free(name); | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	for (const struct tag_table *i = flac_tags; i->name != NULL; ++i) | 	for (const struct tag_table *i = xiph_tags; i->name != NULL; ++i) | ||||||
| 		if (flac_copy_comment(entry, i->name, i->type, char_tnum, | 		if (flac_copy_comment(entry, i->name, i->type, char_tnum, | ||||||
| 				      handler, handler_ctx)) | 				      handler, handler_ctx)) | ||||||
| 			return; | 			return; | ||||||
|   | |||||||
| @@ -19,6 +19,7 @@ | |||||||
|  |  | ||||||
| #include "config.h" | #include "config.h" | ||||||
| #include "vorbis_comments.h" | #include "vorbis_comments.h" | ||||||
|  | #include "XiphTags.h" | ||||||
| #include "tag.h" | #include "tag.h" | ||||||
| #include "tag_table.h" | #include "tag_table.h" | ||||||
| #include "tag_handler.h" | #include "tag_handler.h" | ||||||
| @@ -95,13 +96,6 @@ vorbis_copy_comment(const char *comment, | |||||||
| 	return false; | 	return false; | ||||||
| } | } | ||||||
|  |  | ||||||
| static const struct tag_table vorbis_tags[] = { |  | ||||||
| 	{ "tracknumber", TAG_TRACK }, |  | ||||||
| 	{ "discnumber", TAG_DISC }, |  | ||||||
| 	{ "album artist", TAG_ALBUM_ARTIST }, |  | ||||||
| 	{ NULL, TAG_NUM_OF_ITEM_TYPES } |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| static void | static void | ||||||
| vorbis_scan_comment(const char *comment, | vorbis_scan_comment(const char *comment, | ||||||
| 		    const struct tag_handler *handler, void *handler_ctx) | 		    const struct tag_handler *handler, void *handler_ctx) | ||||||
| @@ -119,7 +113,7 @@ vorbis_scan_comment(const char *comment, | |||||||
| 		g_free(name); | 		g_free(name); | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	for (const struct tag_table *i = vorbis_tags; i->name != NULL; ++i) | 	for (const struct tag_table *i = xiph_tags; i->name != NULL; ++i) | ||||||
| 		if (vorbis_copy_comment(comment, i->name, i->type, | 		if (vorbis_copy_comment(comment, i->name, i->type, | ||||||
| 					handler, handler_ctx)) | 					handler, handler_ctx)) | ||||||
| 			return; | 			return; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Max Kellermann
					Max Kellermann