aboutsummaryrefslogtreecommitdiffstats
path: root/src/audioOutputs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* alsa: fix memory leaks from snd_*_open*()Eric Wong2006-07-171-0/+2
| | | | | | | | | ALSA uses a global config structure that's overwritten (and not free'd) every time one of those functions is called, so we have to manually call snd_config_update_free_global() to release it. Hint taken from MEMORY-LEAK in the ALSA source code git-svn-id: https://svn.musicpd.org/mpd/trunk@4381 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* sparse: replace 0 (integer) usage with NULL where appropriateEric Wong2006-07-171-4/+5
| | | | | | Probably pedantic, but yes, might as well in case we run into strange platforms where NULL is something strange. git-svn-id: https://svn.musicpd.org/mpd/trunk@4380 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* sparse: ANSI-fy function declarationsEric Wong2006-07-173-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are just warnings from sparse, but it makes the output easier to read. I ran this through a quick perl script, but of course verified the output by looking at the diff and making sure the thing still compiles. here's the quick perl script I wrote to generate this patch: ----------- 8< ----------- use Tie::File; defined(my $pid = open my $fh, '-|') or die $!; if (!$pid) { open STDERR, '>&STDOUT' or die $!; exec 'sparse', @ARGV or die $!; } my $na = 'warning: non-ANSI function declaration of function'; while (<$fh>) { print STDERR $_; if (/^(.+?\.[ch]):(\d+):(\d+): $na '(\w+)'/o) { my ($f, $l, $pos, $func) = ($1, $2, $3, $4); $l--; tie my @x, 'Tie::File', $f or die "$!: $f"; print '-', $x[$l], "\n"; $x[$l] =~ s/\b($func\s*)\(\s*\)/$1(void)/; print '+', $x[$l], "\n"; untie @x; } } git-svn-id: https://svn.musicpd.org/mpd/trunk@4378 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* OSS: handle device disconnects and reconnects (w/o needing a mpd restart)Eric Wong2006-07-161-10/+11
| | | | | | | Like the ALSA patches, this allows OSS devices to be disconnected during playback and MPD will be able to reopen and reuse them without restarting. git-svn-id: https://svn.musicpd.org/mpd/trunk@4366 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* audio: attempt to gracefully handle disconnected/reconnected devicesEric Wong2006-07-161-0/+5
| | | | | | | | | | | Currently only ALSA is supported/tested, and only if the mixer device is not on the audio device being disconnected (software mixer). This patch allows me to disconnect my Headroom Total Airhead USB sound card, and resume playback (skips to the next song, which should be fixed) when the device is plugged back in. git-svn-id: https://svn.musicpd.org/mpd/trunk@4364 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* audioOutput_alsa: add use_mmap, period_time, buffer_time optionsEric Wong2006-07-161-15/+23
| | | | | | | ALSA support in libao supports configuring of these variables, and some hardware setups may benefit from having these things as tweakable. git-svn-id: https://svn.musicpd.org/mpd/trunk@4363 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* audioOutput_alsa: calculate period size from sample rateEric Wong2006-07-161-2/+5
| | | | | | | | | | | | | ... instead of hard-coding it to a ridiculously high value that makes bandwidth-starved devices unhappy. libao (in SVN) does the same thing, and this calculation was indeed taken from it. Low-bandwidth USB (1.1) sound devices seem to need this to prevent underrun / broken pipe errors (during hw setup, no less) from being triggered. git-svn-id: https://svn.musicpd.org/mpd/trunk@4362 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* De-inline non-trivial, non-performance-critical functionsEric Wong2006-07-151-1/+1
| | | | | | Functions that should stay inlined should have an explanation attached to them. git-svn-id: https://svn.musicpd.org/mpd/trunk@4355 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* [CLEANUP] Fix indentation to be like the rest ofAvuton Olrich2006-07-151-126/+130
| | | | | the repository git-svn-id: https://svn.musicpd.org/mpd/trunk@4348 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Use audio_output { name } for the stream name in PulseAudio, but do it The ↵J. Alexander Treuman2006-07-141-7/+2
| | | | | Right Way git-svn-id: https://svn.musicpd.org/mpd/trunk@4342 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Use audio_output { name } for the stream name in PulseAudioJ. Alexander Treuman2006-07-141-4/+8
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@4340 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Change shank's email addressJ. Alexander Treuman2006-07-147-7/+7
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@4333 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Use a macro to declare disabled audio output pluginsJ. Alexander Treuman2006-07-147-93/+13
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@4321 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Huge header update, update the copyright and addAvuton Olrich2006-07-137-6/+24
| | | | | the GPL header where necessary git-svn-id: https://svn.musicpd.org/mpd/trunk@4317 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Add PulseAudio supportJ. Alexander Treuman2006-07-131-0/+193
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@4316 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* OSS: correctly check for the device in oss_testDefault()Eric Wong2006-07-121-3/+4
| | | | | | | | | open(2) returns -1 on error (if the device does not exist), and -1 is true. Also, put shank's name in the copyright header since half the code is his (including this bug :P). git-svn-id: https://svn.musicpd.org/mpd/trunk@4310 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Remove unnecessary include, has always been pulledAvuton Olrich2006-07-051-1/+0
| | | | | in by vorbisenc.h git-svn-id: https://svn.musicpd.org/mpd/trunk@4298 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Reverting patch to "fix" the alsa plugin when used with dmix. It ended up ↵J. Alexander Treuman2006-06-111-1/+2
| | | | | breaking the alsa rate plugin, and dmix seems to work fine without it. Thanks to Skee from #mpd for testing. git-svn-id: https://svn.musicpd.org/mpd/trunk@4269 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* src/audioOutputs/audioOutput_oss.c: fix for big-endian machinesEric Wong2006-03-251-15/+19
| | | | | | | Patch by Qball. Signed-off-by: Eric Wong <normalperson@yhbt.net> git-svn-id: https://svn.musicpd.org/mpd/trunk@3935 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Hopefully the last of the spelling fixes :>Eric Wong2006-03-161-2/+2
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3923 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* potential fix for bug #466Warren Dukes2005-12-121-6/+6
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3726 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* remove C++ style commentsEric Wong2005-11-193-19/+21
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3689 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* gcc 2.95 fixesEric Wong2005-11-194-5/+8
| | | | | | | | | | audioOutput_osx.c, aac_decode.c, mp4_decode.c have NOT been thoroughly checked, but I nevertheless managed to eyeball and fix one incompatibility in audioOutput_osx.c All other files have been build successfully with gcc 2.95 git-svn-id: https://svn.musicpd.org/mpd/trunk@3688 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* Fixed (tested in Fink and DarwinPorts) osX output pluginQball Cow2005-10-021-2/+2
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3500 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* patch from Oliver Logghe for Hauppage Media MVP supportWarren Dukes2005-08-111-0/+296
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3432 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* fix warning reported gcc 4.0: x == y == z does not work as intendedEric Wong2005-08-071-1/+2
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3422 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* don't check errno unless we have an error (ret<0) from write()Eric Wong2005-07-031-1/+1
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3382 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* fix OSS audioOutput plugin, so that when dropAudioBuffer is called and the ↵Warren Dukes2005-04-061-5/+10
| | | | | oss device is closed, a subsequent call to playAudio will reopen the device git-svn-id: https://svn.musicpd.org/mpd/trunk@3198 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* destroy mutex's and condition'sWarren Dukes2005-03-241-0/+2
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3132 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* revert to r3105Warren Dukes2005-03-241-35/+59
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3131 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* fix compilation error in os x pluginWarren Dukes2005-03-231-3/+3
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3115 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* potentially fix OS X woesWarren Dukes2005-03-221-59/+35
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3113 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* some potential optimizations for OS XWarren Dukes2005-03-201-26/+55
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3105 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* print out bits in debug message output for OSS and ALSAWarren Dukes2005-03-192-4/+6
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3104 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* bump the OS X buffer up to 1sWarren Dukes2005-03-171-3/+3
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3098 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* dynamically allocate a buffer for 0.5s of audio for OS XWarren Dukes2005-03-171-13/+20
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3097 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* tweak OS X a bit moreWarren Dukes2005-03-171-1/+1
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3096 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* OS X tweaksWarren Dukes2005-03-171-4/+2
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3095 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* fix for dmixWarren Dukes2005-03-171-2/+1
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3094 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* slight tweak of avuton's idea of causing an error when no audio output's foundWarren Dukes2005-03-171-6/+1
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3093 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* cleanup debugging code and implement _dropBufferedAudio()Warren Dukes2005-03-161-32/+26
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3090 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* closing the audio device seems to work nowWarren Dukes2005-03-161-1/+9
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3089 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* attempt to close the osx deviceWarren Dukes2005-03-161-1/+13
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3088 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* playing audio in OS X now works, but far from finishedWarren Dukes2005-03-161-186/+143
| | | | | still need to implement closing the audio device git-svn-id: https://svn.musicpd.org/mpd/trunk@3086 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* broken os x outputWarren Dukes2005-03-141-3/+245
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3082 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* a little more error outputWarren Dukes2005-03-131-2/+3
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3078 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* some broken OS X stuffWarren Dukes2005-03-131-1/+19
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3075 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* add OS X configure stuff and added a skeleton audioOutput plugin for OS XWarren Dukes2005-03-131-0/+109
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3074 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* slight changes to alsa errorsWarren Dukes2005-03-131-3/+32
| | | git-svn-id: https://svn.musicpd.org/mpd/trunk@3072 09075e82-0dd4-0310-85a5-a0d7c8717e4f
* if no audioOutput specified, we no attempt to detect if there exists a ↵Warren Dukes2005-03-124-5/+67
| | | | | usable oss or alsa device git-svn-id: https://svn.musicpd.org/mpd/trunk@3057 09075e82-0dd4-0310-85a5-a0d7c8717e4f