diff options
author | Max Kellermann <max@duempel.org> | 2014-05-22 11:24:40 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-05-22 12:35:20 +0200 |
commit | cc6f1020d01a6f8f814a6a6a211a00d490459f66 (patch) | |
tree | c54861d8c84ebc5accddefadbd1f2aba67ee7cb5 | |
parent | 316ddc2382c8060e8a1604752ec5accbb6fd35e4 (diff) | |
download | mpd-cc6f1020d01a6f8f814a6a6a211a00d490459f66.tar.gz mpd-cc6f1020d01a6f8f814a6a6a211a00d490459f66.tar.xz mpd-cc6f1020d01a6f8f814a6a6a211a00d490459f66.zip |
test/run_decoder: merge code into FakeDecoderAPI.cxx
Eliminate duplicate code.
-rw-r--r-- | Makefile.am | 9 | ||||
-rw-r--r-- | test/FakeDecoderAPI.cxx | 17 | ||||
-rw-r--r-- | test/FakeDecoderAPI.hxx | 32 | ||||
-rw-r--r-- | test/run_decoder.cxx | 136 |
4 files changed, 53 insertions, 141 deletions
diff --git a/Makefile.am b/Makefile.am index 2dcc2c590..913d4bddd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1598,13 +1598,13 @@ test_dump_playlist_LDADD = \ libpcm.a \ $(GLIB_LIBS) test_dump_playlist_SOURCES = test/dump_playlist.cxx \ - test/FakeDecoderAPI.cxx \ + test/FakeDecoderAPI.cxx test/FakeDecoderAPI.hxx \ $(DECODER_SRC) \ src/Log.cxx src/LogBackend.cxx \ src/IOThread.cxx \ src/TagSave.cxx \ src/TagFile.cxx \ - src/CheckAudioFormat.cxx \ + src/AudioFormat.cxx src/CheckAudioFormat.cxx \ src/DetachedSong.cxx if HAVE_FLAC @@ -1627,6 +1627,7 @@ test_run_decoder_LDADD = \ libutil.a \ $(GLIB_LIBS) test_run_decoder_SOURCES = test/run_decoder.cxx \ + test/FakeDecoderAPI.cxx test/FakeDecoderAPI.hxx \ test/stdbin.h \ src/Log.cxx src/LogBackend.cxx \ src/IOThread.cxx \ @@ -1651,11 +1652,11 @@ test_read_tags_LDADD = \ libutil.a \ $(GLIB_LIBS) test_read_tags_SOURCES = test/read_tags.cxx \ - test/FakeDecoderAPI.cxx \ + test/FakeDecoderAPI.cxx test/FakeDecoderAPI.hxx \ src/Log.cxx src/LogBackend.cxx \ src/IOThread.cxx \ src/ReplayGainInfo.cxx \ - src/CheckAudioFormat.cxx \ + src/AudioFormat.cxx src/CheckAudioFormat.cxx \ $(DECODER_SRC) if HAVE_ID3TAG diff --git a/test/FakeDecoderAPI.cxx b/test/FakeDecoderAPI.cxx index 4dfc545ee..155e7d5df 100644 --- a/test/FakeDecoderAPI.cxx +++ b/test/FakeDecoderAPI.cxx @@ -18,6 +18,7 @@ */ #include "config.h" +#include "FakeDecoderAPI.hxx" #include "decoder/DecoderAPI.hxx" #include "input/InputStream.hxx" #include "util/Error.hxx" @@ -26,11 +27,21 @@ #include <unistd.h> void -decoder_initialized(gcc_unused Decoder &decoder, - gcc_unused const AudioFormat audio_format, +decoder_initialized(Decoder &decoder, + const AudioFormat audio_format, gcc_unused bool seekable, - gcc_unused float total_time) + float duration) { + struct audio_format_string af_string; + + assert(!decoder.initialized); + assert(audio_format.IsValid()); + + fprintf(stderr, "audio_format=%s duration=%f\n", + audio_format_to_string(audio_format, &af_string), + duration); + + decoder.initialized = true; } DecoderCommand diff --git a/test/FakeDecoderAPI.hxx b/test/FakeDecoderAPI.hxx new file mode 100644 index 000000000..134e77117 --- /dev/null +++ b/test/FakeDecoderAPI.hxx @@ -0,0 +1,32 @@ +/* + * Copyright (C) 2003-2014 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 FAKE_DECODER_API_HXX +#define FAKE_DECODER_API_HXX + +#include "check.h" + +struct Decoder { + bool initialized; + + Decoder() + :initialized(false) {} +}; + +#endif diff --git a/test/run_decoder.cxx b/test/run_decoder.cxx index f33509211..b1c739405 100644 --- a/test/run_decoder.cxx +++ b/test/run_decoder.cxx @@ -20,7 +20,8 @@ #include "config.h" #include "IOThread.hxx" #include "decoder/DecoderList.hxx" -#include "decoder/DecoderAPI.hxx" +#include "decoder/DecoderPlugin.hxx" +#include "FakeDecoderAPI.hxx" #include "input/Init.hxx" #include "input/InputStream.hxx" #include "fs/Path.hxx" @@ -39,139 +40,6 @@ #include <stdlib.h> #include <stdio.h> -struct Decoder { - bool initialized; - - Decoder() - :initialized(false) {} -}; - -void -decoder_initialized(Decoder &decoder, - const AudioFormat audio_format, - gcc_unused bool seekable, - float duration) -{ - struct audio_format_string af_string; - - assert(!decoder.initialized); - assert(audio_format.IsValid()); - - fprintf(stderr, "audio_format=%s duration=%f\n", - audio_format_to_string(audio_format, &af_string), - duration); - - decoder.initialized = true; -} - -DecoderCommand -decoder_get_command(gcc_unused Decoder &decoder) -{ - return DecoderCommand::NONE; -} - -void -decoder_command_finished(gcc_unused Decoder &decoder) -{ -} - -double -decoder_seek_where(gcc_unused Decoder &decoder) -{ - return 1.0; -} - -void -decoder_seek_error(gcc_unused Decoder &decoder) -{ -} - -size_t -decoder_read(gcc_unused Decoder *decoder, - InputStream &is, - void *buffer, size_t length) -{ - return is.LockRead(buffer, length, IgnoreError()); -} - -bool -decoder_read_full(Decoder *decoder, InputStream &is, - void *_buffer, size_t size) -{ - uint8_t *buffer = (uint8_t *)_buffer; - - while (size > 0) { - size_t nbytes = decoder_read(decoder, is, buffer, size); - if (nbytes == 0) - return false; - - buffer += nbytes; - size -= nbytes; - } - - return true; -} - -bool -decoder_skip(Decoder *decoder, InputStream &is, size_t size) -{ - while (size > 0) { - char buffer[1024]; - size_t nbytes = decoder_read(decoder, is, buffer, - std::min(sizeof(buffer), size)); - if (nbytes == 0) - return false; - - size -= nbytes; - } - - return true; -} - -void -decoder_timestamp(gcc_unused Decoder &decoder, - gcc_unused double t) -{ -} - -DecoderCommand -decoder_data(gcc_unused Decoder &decoder, - gcc_unused InputStream *is, - const void *data, size_t datalen, - gcc_unused uint16_t kbit_rate) -{ - gcc_unused ssize_t nbytes = write(1, data, datalen); - return DecoderCommand::NONE; -} - -DecoderCommand -decoder_tag(gcc_unused Decoder &decoder, - gcc_unused InputStream *is, - gcc_unused Tag &&tag) -{ - return DecoderCommand::NONE; -} - -void -decoder_replay_gain(gcc_unused Decoder &decoder, - const ReplayGainInfo *rgi) -{ - const ReplayGainTuple *tuple = &rgi->tuples[REPLAY_GAIN_ALBUM]; - if (tuple->IsDefined()) - fprintf(stderr, "replay_gain[album]: gain=%f peak=%f\n", - tuple->gain, tuple->peak); - - tuple = &rgi->tuples[REPLAY_GAIN_TRACK]; - if (tuple->IsDefined()) - fprintf(stderr, "replay_gain[track]: gain=%f peak=%f\n", - tuple->gain, tuple->peak); -} - -void -decoder_mixramp(gcc_unused Decoder &decoder, gcc_unused MixRampInfo &&mix_ramp) -{ -} - int main(int argc, char **argv) { if (argc != 3) { |