Eric Wong
90847fc881
Replace strdup and {c,re,m}alloc with x* variants to check for OOM errors
...
I'm checking for zero-size allocations and assert()-ing them,
so we can more easily get backtraces and debug problems, but we'll
also allow -DNDEBUG people to live on the edge if they wish.
We do not rely on errno when checking for OOM errors because
some implementations of malloc do not set it, and malloc
is commonly overridden by userspace wrappers.
I've spent some time looking through the source and didn't find any
obvious places where we would explicitly allocate 0 bytes, so we
shouldn't trip any of those assertions.
We also avoid allocating zero bytes because C libraries don't
handle this consistently (some return NULL, some not); and it's
dangerous either way.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4690 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-08-26 06:25:57 +00:00
Avuton Olrich
54a1a9f2b6
Fix missing initializer in DISABLED_AUDIO_OUTPUT_PLUGIN();
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@4658 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-08-20 01:06:27 +00:00
Avuton Olrich
f79a70d1b9
Fix warnings for -Wmissing-prototypes
...
Add -Wmissing-prototypes if compiling with gcc
Static where possible
git-svn-id: https://svn.musicpd.org/mpd/trunk@4657 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-08-20 00:50:44 +00:00
Eric Wong
eb537f84f1
audio: malloc reductions
...
Just malloc all of the audioOutput array in one shot
to avoid fragmentation and to improve cache locality
when iterating through the array.
We also know name and type members of the AudioOutput
struct won't change in the config, so there's no
need to strdup them.
newAudioOutput => initAudioOutput
git-svn-id: https://svn.musicpd.org/mpd/trunk@4515 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-08-01 10:07:16 +00:00
Avuton Olrich
29a25b9933
Add mpd-indent.sh
...
Indent the entire tree, hopefully we can keep
it indented.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4410 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-20 16:02:40 +00:00
J. Alexander Treuman
b38157fc76
Committing qball's patch to list supported audio outputs in --version
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@4357 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-16 14:57:26 +00:00
J. Alexander Treuman
2fa7125cce
Change shank's email address
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@4333 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-14 19:37:45 +00:00
J. Alexander Treuman
ba9a2c349f
Use a macro to declare disabled audio output plugins
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@4321 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-14 17:39:14 +00:00
Avuton Olrich
a37348a74f
Huge header update, update the copyright and add
...
the GPL header where necessary
git-svn-id: https://svn.musicpd.org/mpd/trunk@4317 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-13 19:20:34 +00:00
Warren Dukes
8583a3bc4e
if no audioOutput specified, we no attempt to detect if there exists a usable oss or alsa device
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@3057 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-03-12 03:10:09 +00:00
Warren Dukes
b5e55a648f
we ne allow audioOutput plugins to set the final outAudioFormat that will be used. we now use alsa's _near functions to detect what to use.
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@3038 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-03-08 01:53:13 +00:00
Warren Dukes
92653f8474
implemented dropping of current buffered audio, works for oss, but there seems
...
to be a "blip" for alsa devices, needs more work
git-svn-id: https://svn.musicpd.org/mpd/trunk@3011 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2005-03-05 14:01:13 +00:00
Warren Dukes
1fd8d9a790
don't need to pass audioFormat to openDeviceFunc
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2708 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-11-19 15:09:01 +00:00
Warren Dukes
ee5d5d6330
abstract out audioFormat conversion from shout plugin to the audioOutput layer,
...
now format can be specified for each different audioOutput device
git-svn-id: https://svn.musicpd.org/mpd/trunk@2474 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-11-02 17:05:27 +00:00
Warren Dukes
0adfd8ae76
move audioOutput plugins to audioOutput directory
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2470 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-11-02 12:46:52 +00:00
Warren Dukes
58dbe4bb5d
merge shank-rewrite-config changes
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2375 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-10-28 05:14:55 +00:00
Warren Dukes
ce10ba4b11
fix a big time bug in metadataChunk (off by one in an array assignment)
...
also, now we have metadata in our streams
git-svn-id: https://svn.musicpd.org/mpd/trunk@2337 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-10-25 20:09:03 +00:00
Warren Dukes
23c59e8cda
wee found the audioFormatConversion bug, was actually a bug in shout plugin
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2311 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-10-23 12:58:59 +00:00
Warren Dukes
72a7740fd5
shout audioOutput will now connect and disconnect from icecast server
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2285 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-10-20 20:41:21 +00:00
Warren Dukes
f4d75d7596
ok, now we're using some of the new audioOutput layer stuff, needs some serious testing, and there maybe some serios BREAKAGE
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2279 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-10-20 16:48:22 +00:00
Warren Dukes
608ac668db
some work on the new audioOutput layer
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2277 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-10-20 16:05:13 +00:00
Warren Dukes
d05c3b510e
add audioOutput.c
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2205 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-10-10 13:51:33 +00:00
Warren Dukes
5b2748297d
beginnings of ao audioOutput plugin
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2115 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-09-08 02:16:08 +00:00
Warren Dukes
e846891693
definition for audioOutput plugin interface
...
git-svn-id: https://svn.musicpd.org/mpd/trunk@2111 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2004-09-06 19:15:12 +00:00