Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2014-10-25 | OutputThread: fall back to PCM if given DSD sample rate is not supported | Max Kellermann | 1 | -0/+30 | |
Works around the "PCM conversion from f to dsd is not implemented" error message that prevents DSD playback. | |||||
2014-10-24 | OutputThread: close the output plugin after filter failure | Max Kellermann | 1 | -0/+1 | |
Fixes memory leak because ao_plugin_close() never gets called. | |||||
2014-10-24 | OutputThread: unlock mutex for CloseFilter() | Max Kellermann | 2 | -0/+14 | |
Be consistent. | |||||
2014-10-23 | output/roar: remove unnecessary "volatile" keyword | Max Kellermann | 1 | -1/+1 | |
A mutex acts as a memory barrier, and thus "volatile" is not necessary. | |||||
2014-09-27 | Add MusicBrainz' Release Track Id tag | Wieland Hoffmann | 1 | -0/+3 | |
The Release Track Id uniquely identifies a recording on a release - that is, even if a recording appears twice on a release (meaning that the combination of recording and release id are not enough to figure out which one it is), the release track id will allow differentiating the two. The tag names are taken from https://musicbrainz.org/doc/MusicBrainz_Picard/Tags/Mapping | |||||
2014-09-26 | output/alsa: change a few "dsd" to "dop" | Max Kellermann | 1 | -4/+4 | |
2014-09-05 | output/pulse: simplify _wait_for_operation() | Max Kellermann | 1 | -6/+3 | |
Eliminate the duplicate pa_operation_get_state() call. | |||||
2014-08-31 | output/alsa, pcm: rename "DSD over USB" to "DoP" | Max Kellermann | 1 | -20/+21 | |
The standard has been renamed since the early draft that was implemented in MPD. | |||||
2014-08-31 | output/alsa: fix endless loop at end of file in dsd_usb mode | Max Kellermann | 1 | -0/+9 | |
2014-08-31 | output/{alsa,oss}: add assertions | Max Kellermann | 2 | -0/+6 | |
2014-08-30 | *: add missing Compiler.h includes | Max Kellermann | 1 | -0/+1 | |
Necessary for "final" on gcc 4.6. | |||||
2014-08-30 | output/alsa: fix signed/unsigned comparison warning | Max Kellermann | 1 | -1/+1 | |
2014-08-29 | MusicChunk: use SignedSongTime for the time stamp | Max Kellermann | 1 | -2/+2 | |
2014-08-29 | MultipleOutputs: use SignedSongTime for elapsed_time | Max Kellermann | 2 | -8/+9 | |
2014-08-29 | Tag: use SignedSongTime for the song duration | Max Kellermann | 1 | -6/+10 | |
2014-08-26 | output/alsa: fix coding style | Max Kellermann | 1 | -5/+5 | |
2014-08-26 | output/alsa: merge Init() into Configure() | Max Kellermann | 1 | -6/+5 | |
2014-08-26 | output/alsa: add API documentation | Max Kellermann | 1 | -0/+17 | |
2014-08-26 | output/alsa: support native DSD playback | Max Kellermann | 1 | -0/+12 | |
Translate SampleFormat::DSD to SND_PCM_FORMAT_DSD_U8, which was added to alsa-lib 1.0.27.1. | |||||
2014-08-26 | output/alsa: move alsa_configure() into the class | Max Kellermann | 1 | -13/+15 | |
2014-08-26 | output/alsa: remove obsolete macros | Max Kellermann | 1 | -3/+0 | |
2014-08-12 | PcmExport: use class ConstBuffer | Max Kellermann | 2 | -2/+8 | |
2014-08-12 | Filter: FilterPCM() returns ConstBuffer | Max Kellermann | 1 | -58/+35 | |
API simplification. We can now avoid abusing a "size_t*" as additional return value. | |||||
2014-08-12 | MusicChunk: rename struct to MusicChunk | Max Kellermann | 4 | -24/+24 | |
2014-08-07 | fs/output, fs/TextFile: move to fs/io/ | Max Kellermann | 1 | -1/+1 | |
2014-07-30 | *Save, *State: use the OutputStream API instead of FILE* | Max Kellermann | 2 | -6/+7 | |
2014-07-14 | util/Cast: reimplement as template without macro | Max Kellermann | 1 | -10/+4 | |
2014-07-12 | Tag: add class const_iterator and methods begin(), end() | Max Kellermann | 2 | -9/+11 | |
Enables using range-based "for". | |||||
2014-07-09 | output/plugins/httpd/HttpdClient: fix build failure due to missing stdio.h ↵ | Gustavo Zacarias | 1 | -0/+1 | |
include Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> | |||||
2014-07-09 | output/HttpdClient: fix build failure due to missing stdio.h include | Gustavo Zacarias | 1 | -0/+1 | |
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> | |||||
2014-03-14 | MultipleOutputs: ensure input_audio_format is zero-initialised | Pete Beardmore | 1 | -0/+1 | |
-fixes SIGABRT when mpd is started from a previously paused state -regression introduced by commit: f5a923b9d16e4c63942a033d1bdb2ab150aae342: 'OutputAll: convert to class, move instance to class Partition' -input_audio_format was previously declared using the static modifier ensuring it was zero-initialised by default -the current default-initialised input_audio_format contains garbage at runtime which allows the AudioFormat.IsDefined() 'fail fast' test in MultipleOutputs::Update to pass and the SIGABRT follows in AudioOutput::Open when passed the invalid input_audio_format struct -switching AudioFormat.IsDefined() for AudioFormat.IsValid() is an alternative workaround | |||||
2014-03-04 | PulseOutputPlugin: set icon name | Pete Beardmore | 1 | -0/+1 | |
2014-03-02 | output/alsa: remove the obsolete Raspberry Pi workaround | Max Kellermann | 1 | -36/+0 | |
Has been superseded by the previous commit. | |||||
2014-03-02 | output/alsa: call snd_pcm_prepare() after snd_pcm_drop() | Max Kellermann | 1 | -0/+25 | |
Don't wait for an optimistic write to fail. This is an improved workaround for the infamous Raspberry Pi bug (see commit af991765). It works much better and comes without the negative side effects. The old workaround is now obsolete. | |||||
2014-03-01 | output/sles: support stereo | Max Kellermann | 1 | -5/+7 | |
2014-02-24 | output/pulse: remove bogus g_free() call | Max Kellermann | 1 | -2/+0 | |
2014-02-24 | output/httpd/client: eliminate GLib | Max Kellermann | 1 | -13/+11 | |
2014-02-24 | output/{shout,win32}: include cleanup | Max Kellermann | 2 | -3/+0 | |
2014-02-24 | output/openal: use usleep() instead of g_usleep() | Max Kellermann | 1 | -2/+2 | |
2014-02-24 | output/pulse: use setenv() instead of g_setenv() | Max Kellermann | 1 | -3/+2 | |
There is no advantage in using g_setenv(). | |||||
2014-02-24 | output/pulse: remove bogus g_free() call | Max Kellermann | 1 | -2/+0 | |
2014-02-22 | output/sles: new output plugin for Android | Max Kellermann | 7 | -0/+817 | |
2014-02-20 | ConfigGlobal: eliminate function config_get_next_param() | Max Kellermann | 1 | -3/+2 | |
2014-02-19 | Mixer: add class MixerListener | Max Kellermann | 4 | -11/+31 | |
Use a listener interface instead of GlobalEvents. | |||||
2014-02-19 | output/Init: pass AudioOutput references | Max Kellermann | 1 | -29/+29 | |
2014-02-19 | output/httpd: move to dedicated directory | Max Kellermann | 10 | -4/+349 | |
2014-02-19 | Timer: move to output/ | Max Kellermann | 5 | -3/+117 | |
2014-02-06 | mixer/Plugin: pass AudioOutput reference to init() | Max Kellermann | 7 | -50/+46 | |
Passing a void pointer is unsafe. | |||||
2014-02-06 | MixerPlugin: convert function pointers to Mixer virtual methods | Max Kellermann | 1 | -1/+1 | |
2014-02-05 | Mixer: use reference instead of pointer for MixerPlugin | Max Kellermann | 1 | -2/+2 | |