aboutsummaryrefslogtreecommitdiffstats
path: root/src/output/plugins (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-12-09output/oss: make the static arrays "constexpr"Max Kellermann1-3/+3
2014-12-04util/DivideString: add option "strip"Max Kellermann1-1/+1
2014-12-04util/SplitString: new utility classMax Kellermann2-28/+14
Replaces GLib's g_strsplit().
2014-12-04output/jack: use usleep() instead of g_usleep()Max Kellermann1-1/+2
2014-12-03util/SplitString: rename to DivideStringMax Kellermann1-2/+2
2014-12-02output/ao: use class SplitString instead of g_strsplit()Max Kellermann1-6/+4
2014-12-01output/httpd/IcyMetaDataServer: use CopyString() instead of g_strlcpy()Max Kellermann1-18/+7
2014-12-01output/httpd/IcyMetaDataServer: don't use GLib typesMax Kellermann1-13/+13
2014-12-01output/httpd/IcyMetaDataServer: make variables more localMax Kellermann1-19/+14
2014-11-28Compiler.h: add macro CLANG_OR_GCC_VERSION()Max Kellermann1-1/+1
2014-10-25Set pulseaudio channel map to WAVE-EXSteven Newbury1-1/+5
Pulseaudio expects clients to specify their channel-map if the default (ALSA) map does not route the audio to the expected speakers. Many Google results suggest dealing with this by re-routing the audio channels with the appropriate ALSA plugin, but this will then simply break any clients which expect the default ALSA mapping. Virtually all media files and codecs, certainly flac, dca, a52, and of course anything based on Microsoft's WAVEFORMAT_EXTENSIBLE specification, assume the layout in the table here: http://en.wikipedia.org/wiki/Surround_sound#Standard_speaker_channels Fortunately, pulseaudio directly addresses this with a built-in channel map for WAVE-EX which can be set automatically in the stream sample-spec.
2014-10-23output/roar: remove unnecessary "volatile" keywordMax Kellermann1-1/+1
A mutex acts as a memory barrier, and thus "volatile" is not necessary.
2014-09-27Add MusicBrainz' Release Track Id tagWieland Hoffmann1-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-26output/alsa: change a few "dsd" to "dop"Max Kellermann1-4/+4
2014-09-05output/pulse: simplify _wait_for_operation()Max Kellermann1-6/+3
Eliminate the duplicate pa_operation_get_state() call.
2014-08-31output/alsa, pcm: rename "DSD over USB" to "DoP"Max Kellermann1-20/+21
The standard has been renamed since the early draft that was implemented in MPD.
2014-08-30*: add missing Compiler.h includesMax Kellermann1-0/+1
Necessary for "final" on gcc 4.6.
2014-08-30output/alsa: fix signed/unsigned comparison warningMax Kellermann1-1/+1
2014-08-29Tag: use SignedSongTime for the song durationMax Kellermann1-6/+10
2014-08-26output/alsa: fix coding styleMax Kellermann1-5/+5
2014-08-26output/alsa: merge Init() into Configure()Max Kellermann1-6/+5
2014-08-26output/alsa: add API documentationMax Kellermann1-0/+17
2014-08-26output/alsa: support native DSD playbackMax Kellermann1-0/+12
Translate SampleFormat::DSD to SND_PCM_FORMAT_DSD_U8, which was added to alsa-lib 1.0.27.1.
2014-08-26output/alsa: move alsa_configure() into the classMax Kellermann1-13/+15
2014-08-26output/alsa: remove obsolete macrosMax Kellermann1-3/+0
2014-08-12PcmExport: use class ConstBufferMax Kellermann2-2/+8
2014-07-14util/Cast: reimplement as template without macroMax Kellermann1-10/+4
2014-07-12Tag: add class const_iterator and methods begin(), end()Max Kellermann2-9/+11
Enables using range-based "for".
2014-07-09output/plugins/httpd/HttpdClient: fix build failure due to missing stdio.h ↵Gustavo Zacarias1-0/+1
include Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
2014-03-04PulseOutputPlugin: set icon namePete Beardmore1-0/+1
2014-03-01output/sles: support stereoMax Kellermann1-5/+7
2014-02-24output/httpd/client: eliminate GLibMax Kellermann1-13/+11
2014-02-24output/{shout,win32}: include cleanupMax Kellermann2-3/+0
2014-02-24output/openal: use usleep() instead of g_usleep()Max Kellermann1-2/+2
2014-02-24output/pulse: use setenv() instead of g_setenv()Max Kellermann1-3/+2
There is no advantage in using g_setenv().
2014-02-24output/pulse: remove bogus g_free() callMax Kellermann1-2/+0
2014-02-22output/sles: new output plugin for AndroidMax Kellermann6-0/+813
2014-02-19output/httpd: move to dedicated directoryMax Kellermann9-3/+348
2014-02-19Timer: move to output/Max Kellermann3-3/+3
2014-02-06mixer/Plugin: pass AudioOutput reference to init()Max Kellermann6-48/+44
Passing a void pointer is unsafe.
2014-02-06MixerPlugin: convert function pointers to Mixer virtual methodsMax Kellermann1-1/+1
2014-01-29output: move functions into the AudioOutput structMax Kellermann16-17/+17
2014-01-29AudioOutput: pass plugin to constructorMax Kellermann16-33/+59
Make it "const".
2014-01-28AudioOutput: add constructor and destructorMax Kellermann16-76/+1
2014-01-28output: rename source filesMax Kellermann1-1/+1
2014-01-28output: rename struct audio_output to AudioOutputMax Kellermann17-141/+141
2014-01-28OutputPlugin: rename struct audio_output_plugin to AudioOutputPluginMax Kellermann32-32/+32
2014-01-24Mixer*: move to mixer/Max Kellermann5-6/+6
2014-01-24Config*: move to config/Max Kellermann5-5/+5
2014-01-23output/*: move to output/plugins/Max Kellermann35-0/+8690