aboutsummaryrefslogtreecommitdiffstats
path: root/test (follow)
Commit message (Collapse)AuthorAgeFilesLines
* output/roar: export volume methodsMax Kellermann2011-09-171-0/+18
| | | | Use these instead of exposing the internal roar_t struct.
* input_stream: non-blocking I/OMax Kellermann2011-09-164-31/+45
| | | | | | | | | Add GMutex, GCond attributes which will be used by callers to conditionally wait on the stream. Remove the (now-useless) plugin method buffer(), wait on GCond instead. Lock the input_stream before each method call. Do the same with the playlist plugins.
* input_plugin: add method check()Max Kellermann2011-09-161-0/+6
| | | | | To check for errors without reading. The decoder thread wants to do that, before it passes the input stream to the plugin.
* test/test_queue_priority: work around "set but not used" warningMax Kellermann2011-09-161-0/+1
|
* test/read_tags: initialize the tag_pool libraryMax Kellermann2011-09-131-0/+5
|
* test/read_tags: call g_thread_init()Max Kellermann2011-09-131-0/+1
| | | | Needed for the I/O thread.
* conf: move duplicate check to _read_name_value()Max Kellermann2011-09-091-1/+1
| | | | config_add_block_param() cannot fail, which makes it easier to use.
* output_control: move code to audio_output_destruct()Max Kellermann2011-08-301-2/+1
| | | | .. and destruct the output object properly in test/run_output.
* test/run_output: clean up after open failureMax Kellermann2011-08-301-50/+61
|
* ntp_server: move code to udp_server.cMax Kellermann2011-08-301-78/+5
|
* ntp_server: use the I/O threadMax Kellermann2011-08-292-12/+20
|
* test/run_ntp_server: quit on SIGINT or SIGTERMMax Kellermann2011-08-293-1/+103
| | | | Clean up the process before exiting.
* ntp_server: add debug program "run_ntp_server"Max Kellermann2011-08-291-0/+137
|
* input/soup: new input plugin based on libsoupMax Kellermann2011-08-244-0/+42
| | | | | | | | To demonstrate the new I/O thread. libsoup is well-integrated into the GLib main loop, which made this plugin pretty easy to write. As a side effect, we have to initialize the I/O thread in all debug programs that use the input API.
* output/raop: consistently use GErrorMax Kellermann2011-08-241-1/+2
|
* queue: implement song "priorities"Max Kellermann2011-07-191-0/+174
| | | | | Sorts remaining songs by priority. This can be used for the much-demanded "queue feature".
* Merge branch 'v0.16.x'Max Kellermann2011-07-192-13/+8
|\ | | | | | | | | | | Conflicts: NEWS configure.ac
| * test/run_filter: remove unused variable "frame_size"Max Kellermann2011-07-031-3/+0
| |
| * test/read_conf: make variables more localMax Kellermann2011-07-031-9/+7
| |
| * test/read_conf: fix -Wunused-but-set-variableMax Kellermann2011-07-031-1/+1
| |
* | test/read_mixer: add workaround for missing RAOP symbolsMax Kellermann2011-01-291-0/+18
| |
* | copyright year 2011Max Kellermann2011-01-2914-14/+14
| |
* | player_control: removed the global variable "pc"Max Kellermann2011-01-101-1/+4
|/ | | | | | | Allocate a player_control object where needed, and pass it around. Each "client" object is associated with a "player_control" instance. This prepares multi-player support.
* test/run_decoder: dump replay gainMax Kellermann2010-07-201-1/+12
|
* test/dump_playlist: print open-ended rangeMax Kellermann2010-06-251-1/+5
|
* test: added debug program "run_inotify"Max Kellermann2010-05-301-0/+93
|
* test: enable binary mode on stdin/stdoutMax Kellermann2010-05-209-0/+37
| | | | | Declaring the global variable _CRT_fmode is a documented hack. What an ugly platform!
* mixramp: Adjust MixRamp threshold to account for ReplayGain.Tim Phipps2010-05-082-2/+6
|
* replay_gain: added mode "auto"Daniel Seuthe2010-04-252-0/+6
|
* Add support for MixRamp tagsTim Phipps2010-03-212-0/+16
| | | | | Adds mixrampdb and mixrampdelay commands. Reads MIXRAP_START and MIXRAMP_END tags from FLAC files and overlaps instead of crossfading.
* replay_gain: optionally use hardware mixer to apply replay gainMax Kellermann2010-02-171-0/+8
| | | | | | | | | | Add an option for each audio output which enables the use of the hardware mixer, instead of the software volume code. This is hardware specific, and assumes linear volume control. This is not the case for hardware mixers which were tested, making this patch somewhat useless, but we will use it to experiment with the settings, to find a good solution.
* replay_gain: reimplement as a filter pluginMax Kellermann2010-02-172-0/+12
| | | | | | | Apply the replay gain in the output thread. This means a new setting will be active instantly, without going through the whole music pipe. And we might have different replay gain settings for each audio output device.
* decoder_api: removed function decoder_get_uri()Max Kellermann2010-01-182-10/+0
| | | | Use input_stream.uri.
* test/run_convert: implement a GLib log callbackMax Kellermann2010-01-161-0/+12
| | | | | Log to stderr instead of the default stdout. We need a pristine stdout for the conversion result.
* test/run_convert: use fifo_buffer to adapt to odd sample sizesMax Kellermann2010-01-161-3/+26
| | | | | Ensure that the pcm_convert() length argument is aligned to the sample size.
* decoder_api: added function decoder_replay_gain()Max Kellermann2010-01-042-4/+14
| | | | | | This function replaces the replay_gain_info parameter for decoder_data(). This allows the decoder to announce replay gain changes, instead of having to pass the same object over and over.
* input_stream: return allocated input_stream objectsMax Kellermann2010-01-014-27/+23
| | | | | | | | Major API redesign: don't let the caller allocate the input_stream object. Let each input plugin allocate its own (derived/extended) input_stream pointer. The "data" attribute can now be removed, and all input plugins simply cast the input_stream pointer to their own structure (with an "struct input_stream base" as the first attribute).
* Update copyright notices.Avuton Olrich2009-12-3112-12/+12
|
* decoder_plugin: added method stream_tag()Max Kellermann2009-12-311-0/+14
| | | | | This is like tag_dup(), but works with an input_stream object instead of a file path.
* Makefile.am: added unit tests for the archive pluginsMax Kellermann2009-12-313-0/+30
|
* song: added support for selecting a time rangeMax Kellermann2009-12-271-0/+8
| | | | | | Added attributes start_ms, end_ms. This allows us to address a portion of a song file (important for CUE support). There is no support yet for storing these attributes in the state file.
* decoder_api: added function decoder_timestamp()Max Kellermann2009-12-262-2/+14
| | | | | | Remove the data_time parameter from decoder_data(). This patch eliminates the timestamp counting in most decoder plugins, because the MPD core will do it automatically by default.
* output_init: use the normalize filter pluginMax Kellermann2009-12-251-14/+6
| | | | | | Use the plugin instead of the glue code in normalize.c. This is used wrapped inside a "autoconv" filter, to enable normalization for all input file formats.
* input_stream: return errors with GErrorMax Kellermann2009-12-154-14/+43
|
* Merge branch 'v0.15.x'Max Kellermann2009-12-151-41/+64
|\ | | | | | | | | | | | | | | Conflicts: src/archive/bz2_plugin.c src/archive_api.h src/input/file_input_plugin.c test/run_input.c
| * test/run_input: deinitialize everything after open() errorMax Kellermann2009-12-151-40/+50
| | | | | | | | This enables valgrind debugging after an error occurred.
| * test/run_input: initialize archive pluginsMax Kellermann2009-12-151-0/+15
| | | | | | | | Enable archive plugin debugging.
* | input_plugin: method init() returns errors with GErrorMax Kellermann2009-12-144-4/+27
| | | | | | | | | | Not used by any plugin currently, but this eliminates the g_error() call in input_plugin_config(), so it's worth it.
* | input_stream: moved input_stream_global_init() to input_init.cMax Kellermann2009-12-144-0/+4
| |
* | test/run_{decoder,filter}: implemented GLib log callbackMax Kellermann2009-12-142-0/+25
| | | | | | | | Log to stderr, not to stdout (which broke PCM output).