diff options
-rw-r--r-- | src/Makefile.am | 6 | ||||
-rw-r--r-- | src/audiofile_decode.h | 36 | ||||
-rw-r--r-- | src/inputPlugin.c | 2 | ||||
-rw-r--r-- | src/inputPlugins/audiofile_plugin.c (renamed from src/audiofile_decode.c) | 51 | ||||
-rw-r--r-- | src/tag.c | 19 |
5 files changed, 49 insertions, 65 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 39706f692..478b6c2ef 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -2,13 +2,13 @@ bin_PROGRAMS = mpd SUBDIRS = $(ID3_SUBDIR) $(MAD_SUBDIR) $(MP4FF_SUBDIR) mpd_inputPlugins = inputPlugins/mp3_plugin.c inputPlugins/ogg_plugin.c \ - inputPlugins/flac_plugin.c + inputPlugins/flac_plugin.c inputPlugins/audiofile_plugin.c mpd_headers = buffer2array.h interface.h command.h playlist.h ls.h \ song.h list.h directory.h tables.h utils.h path.h \ tag.h player.h listen.h conf.h volume.h \ audio.h playerData.h stats.h myfprintf.h sig_handlers.h decode.h log.h \ - audiofile_decode.h charConv.h permission.h mpd_types.h pcm_utils.h \ + charConv.h permission.h mpd_types.h pcm_utils.h \ mp4_decode.h aac_decode.h signal_check.h utf8.h inputStream.h \ outputBuffer.h replayGain.h inputStream_file.h inputStream_http.h \ inputPlugin.h @@ -16,7 +16,7 @@ mpd_SOURCES = main.c buffer2array.c interface.c command.c playlist.c ls.c \ song.c list.c directory.c tables.c utils.c path.c \ tag.c player.c listen.c conf.c volume.c \ audio.c playerData.c stats.c myfprintf.c sig_handlers.c decode.c log.c \ - audiofile_decode.c charConv.c permission.c pcm_utils.c mp4_decode.c \ + charConv.c permission.c pcm_utils.c mp4_decode.c \ aac_decode.c signal_check.c utf8.c inputStream.c outputBuffer.c \ replayGain.c inputStream_file.c inputStream_http.c inputPlugin.c \ $(mpd_headers) $(mpd_inputPlugins) diff --git a/src/audiofile_decode.h b/src/audiofile_decode.h deleted file mode 100644 index 82dc565ec..000000000 --- a/src/audiofile_decode.h +++ /dev/null @@ -1,36 +0,0 @@ -/* the Music Player Daemon (MPD) - * (c)2003-2004 by Warren Dukes (shank@mercury.chem.pitt.edu) - * This project's homepage is: http://www.musicpd.org - * - * libaudiofile (wave) support added by Eric Wong <normalperson@yhbt.net> - * - * 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 AUDIOFILE_DECODE_H -#define AUDIOFILE_DECODE_H - -#include "../config.h" - -#ifdef HAVE_AUDIOFILE - -#include "playerData.h" - -int audiofile_decode(OutputBuffer * cb, DecoderControl * dc); - -int getAudiofileTotalTime(char * file); - -#endif /* HAVE_AUDIOFILE */ -#endif /* AUDIOFILE_DECODE_H */ -/* vim:set shiftwidth=4 tabstop=8 expandtab: */ diff --git a/src/inputPlugin.c b/src/inputPlugin.c index 325ebfcfd..2295f7b51 100644 --- a/src/inputPlugin.c +++ b/src/inputPlugin.c @@ -70,6 +70,7 @@ InputPlugin * getInputPluginFromName(char * name) { extern InputPlugin mp3Plugin; extern InputPlugin oggPlugin; extern InputPlugin flacPlugin; +extern InputPlugin audiofilePlugin; void initInputPlugins() { inputPlugin_list = makeList(NULL); @@ -78,6 +79,7 @@ void initInputPlugins() { loadInputPlugin(&mp3Plugin); loadInputPlugin(&oggPlugin); loadInputPlugin(&flacPlugin); + loadInputPlugin(&audiofilePlugin); } void finishInputPlugins() { diff --git a/src/audiofile_decode.c b/src/inputPlugins/audiofile_plugin.c index 8e6c779b9..8c1089e1b 100644 --- a/src/audiofile_decode.c +++ b/src/inputPlugins/audiofile_plugin.c @@ -18,15 +18,15 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#include "audiofile_decode.h" +#include "../inputPlugin.h" #ifdef HAVE_AUDIOFILE -#include "command.h" -#include "utils.h" -#include "audio.h" -#include "log.h" -#include "pcm_utils.h" +#include "../utils.h" +#include "../audio.h" +#include "../log.h" +#include "../pcm_utils.h" +#include "../playerData.h" #include <stdio.h> #include <unistd.h> @@ -139,5 +139,42 @@ int audiofile_decode(OutputBuffer * cb, DecoderControl * dc) { return 0; } +MpdTag * audiofileTagDup(char * file) { + MpdTag * ret = NULL; + int time = getAudiofileTotalTime(file); + + if (time>=0) { + if(!ret) ret = newMpdTag(); + ret->time = time; + } + + return ret; +} + +char * audiofileSuffixes[] = {"wav", NULL}; + +InputPlugin audiofilePlugin = +{ + "audiofile", + NULL, + audiofile_decode, + audiofileTagDup, + INPUT_PLUGIN_STREAM_FILE, + audiofileSuffixes, + NULL +}; + +#else + +InputPlugin audiofilePlugin = +{ + NULL, + NULL, + NULL, + NULL, + 0, + NULL, + NULL +}; + #endif /* HAVE_AUDIOFILE */ -/* vim:set shiftwidth=4 tabstop=8 expandtab: */ @@ -19,9 +19,6 @@ #include "tag.h" #include "path.h" #include "myfprintf.h" -#include "audiofile_decode.h" -#include "mp4_decode.h" -#include "aac_decode.h" #include "utils.h" #include "utf8.h" #include "log.h" @@ -154,22 +151,6 @@ MpdTag * id3Dup(char * file) { return ret; } -#ifdef HAVE_AUDIOFILE -MpdTag * audiofileTagDup(char * utf8file) { - MpdTag * ret = NULL; - int time = getAudiofileTotalTime(rmp2amp(utf8ToFsCharset(utf8file))); - - if (time>=0) { - if(!ret) ret = newMpdTag(); - ret->time = time; - } - - if(ret) validateUtf8Tag(ret); - - return ret; -} -#endif - #ifdef HAVE_FAAD MpdTag * aacTagDup(char * utf8file) { MpdTag * ret = NULL; |