aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-02-22shout: use the new encoder APIMax Kellermann5-559/+102
Removed shout's encoder plugin API in favor of the new generic encoder plugin API.
2009-02-22encoder: added lame mp3 encoderMax Kellermann3-0/+292
This new LAME encoder plugin is based on the existing shout_mp3.c plugin.
2009-02-22encoder: added vorbis encoderMax Kellermann3-0/+397
This new vorbis encoder plugin is based on the existing shout_ogg.c plugin.
2009-02-22added the encoder APIMax Kellermann5-0/+306
The new generic encoder API will replace shout's custom encoder API.
2009-02-22shout: merged open_shout_conn() into my_shout_open_device()Max Kellermann1-10/+2
The method implementation my_shout_open_device() consists of only one line, the call to open_shout_conn(). Merge both functions into one.
2009-02-22shout: bool return values instead of intMax Kellermann1-27/+28
Return true/false instead of 0/-1.
2009-02-21pcm: added API documentationMax Kellermann6-1/+130
2009-02-20crossfade: added API documentationMax Kellermann1-0/+21
2009-02-20path: don't export path_set_fs_charset()Max Kellermann2-3/+2
The function path_set_fs_charset() is only used in path.c.
2009-02-20path: validate configured character setMax Kellermann1-0/+11
2009-02-19decoder_api: fixed shadow warning, rename "wait"Max Kellermann1-2/+2
The parameter name "wait" overlaps with the POSIX wait() function. Rename it.
2009-02-19utils: use g_usleep() instead of my_usleep()Max Kellermann6-24/+4
Now that I've found this nice function in the GLib docs, we can finally remove our custom sleep function. Still all those callers of g_usleep() have to be migrated one day to use events, instead of regular polling.
2009-02-19faad: use faacDecFrameInfo instead of NeAACDecFrameInfoMax Kellermann1-1/+1
Don't use libfaad's internal type names.
2009-02-19added G_LOG_DOMAIN macros to several librariesMax Kellermann4-0/+12
Define the GLib logging domain in the following libraries: conf, daemon, event_pipe, log.
2009-02-19conf: log the effective configuration file nameMax Kellermann1-0/+2
For better debugging aid when something goes wrong, log the name of the effective configuration file.
2009-02-19log: added log_early_init() for early debug messagesMax Kellermann3-0/+25
2009-02-19Makefile.am: add new headers to $(mpd_headers)Max Kellermann1-0/+5
I forgot to add these, and this broke "make distcheck".
2009-02-19mms: fix assertion in input_stream_openPeter Colberg1-0/+1
Hi, upon trying to play an MMS stream added to the play list, I got this: mpd: /tmp/mpd/./src/input_stream.c:85: input_stream_open: Assertion `is->plugin->open == ((void *)0) || is->plugin == plugin' failed. With the following patch applied, it works perfectly. Thanks for having implemented MMS support :-). Best regards, Peter
2009-02-18pcm_volume: optimized pcm_volume_change_24() on i386Max Kellermann1-1/+40
Added an inline assembly function for the 64 bit multiplication. Benchmark results on a Pentium II 266 MHz, 512 MB of 24 bit PCM data: dd if=/dev/zero bs=64k count=8k | time ./test/software_volume 48000:24:2 >/dev/null Before this patch 22.94s, after this patch 7.24s.
2009-02-18mp4ff: always free the mp4ff_read_sample() bufferMax Kellermann1-2/+2
When mp4ff_read_sample() returns a value bigger than zero, it guarantees that the buffer is set. Remove the check.
2009-02-18mp4ff: don't allocate seek_table when input is not seekableMax Kellermann1-2/+10
Don't waste any precious memory when the seek_table cannot be used.
2009-02-18mp4ff: include cleanupMax Kellermann1-4/+4
Don't include limits.h, use GLib constants instead.
2009-02-18mp4ff: use faacDecInit2() to find the AAC trackMax Kellermann1-49/+36
Use faacDecInit2() instead of AudioSpecificConfig() to detect the AAC track in the MP4 file. This has a great advantage: it initializes the libfaad decoder, which the caller would normally do anyway - but now we can go without the AudioSpecificConfig() call. When decoder==NULL (called from mp4_tag_dup()), fall back to a mp4ff_get_track_type()==1 check, like other audio players do.
2009-02-18mp4ff: moved code to mp4_faad_new()Max Kellermann1-53/+65
Moved the libfaad decoder initialization to mp4_faad_new(), and also fill the audio_format struct there. This eliminates a little bit of complexity in mp4_decode().
2009-02-18mp4ff: call decoder_initialized() after libfaad initializationMax Kellermann1-23/+32
Don't wait for the first frame to be decoded. We already have the sample rate and the channel count from faacDecInit2().
2009-02-18mp4ff: merged mp4_load_tag() into mp4_tag_dup()Max Kellermann1-7/+1
The function mp4_load_tag() is used only once, and mp4_tag_dup() is a one-liner. Merge them.
2009-02-17player_thread: don't drop audio buffers when not seekableMax Kellermann1-1/+2
When a file is not seekable, MPD dropped the audio buffers before even attempting to seek. This caused noticable sound corruption. Fix: first attempt to seek, and only if that succeeds, call audio_output_all_cancel().
2009-02-17faad: variable cleanupMax Kellermann1-9/+4
Make some variables more local, and eliminate superfluous ones.
2009-02-17faad: added source code commentsMax Kellermann1-1/+36
2009-02-17faad: faad_decoder_init() returns an audio_formatMax Kellermann1-25/+23
Instead of returning the sample rate and channel count as separate values, fill an audio_format struct.
2009-02-17faad: call decoder_initialized() after libfaad initializationMax Kellermann1-18/+27
Don't wait for the first frame to be decoded. We already have the sample rate and the channel count from faacDecInit().
2009-02-17faad: removed DECODE_COMMAND_SEEK checkMax Kellermann1-2/+0
The MPD core will never send a SEEK command to a decoder which has declared to be not seekable.
2009-02-17input_file, input_curl, icy_metadata: added GLib log domainsMax Kellermann3-0/+9
Define G_LOG_DOMAIN.
2009-02-17faad: use the decoder_buffer libraryMax Kellermann1-152/+155
Replace this plugin's own buffer library with the new decoder_buffer library.
2009-02-17faad: check the result of adts_find_frame()Max Kellermann1-4/+2
Instead of checking if the buffer is empty after adts_find_frame(), check adts_find_frame()'s return value. This is more robust.
2009-02-17faad: added libfaad wrappersMax Kellermann1-42/+61
Moved libfaad API quirks to the wrapper functions faad_decoder_init() and faad_decoder_decode().
2009-02-17faad: functions return duration, no float pointerMax Kellermann1-15/+18
Instead of writing the song duration into a float pointer, return it from the function.
2009-02-17faad: removed length==NULL check in faad_song_duration()Max Kellermann1-5/+1
There are no callers which pass NULL here.
2009-02-17faad: fill buffer in adts_find_frame()Max Kellermann1-4/+2
All callers of adts_find_frame() use faad_buffer_fill() before that. Move that faad_buffer_fill() call into adts_find_frame() instead. adts_find_frame() will get its own logic for on-demand filling.
2009-02-17added the "decoder buffer" libraryMax Kellermann3-0/+236
The decoder buffer library may be used by decoder libraries such as "faad".
2009-02-17faad: converted length check to assertion in adts_check_frame()Max Kellermann1-3/+2
adts_check_frame() must not be called with a buffer length smaller than 8. We can eliminate that duplicate check, and convert it into an assertion.
2009-02-17faad: added length check before comparing "ADIF"Max Kellermann1-1/+1
It's not valid to use the buffer's data without ensuring that the buffer contains enough data.
2009-02-17faad: renamed internal functionsMax Kellermann1-12/+12
"aac" -> "faad"
2009-02-17wavpack: added GLib log domainMax Kellermann1-0/+3
2009-02-17pcm_convert: removed pcm_convert_size()Max Kellermann2-20/+0
The function is unused, since we added the pcm_buffer library.
2009-02-17pcm_buffer: set size after allocationMax Kellermann1-1/+2
When I implemented the pcm_buffer library, I forgot to set the new buffer size. This caused a new allocation in each pcm_buffer_get(), fortunately no memory was leaked.
2009-02-17decoders: added and fixed GLib log domainsMax Kellermann6-9/+22
Fixed the log domains of the renamed decoders. Added G_LOG_DOMAIN macros in decoders which don't have one already.
2009-02-17renamed decoder plugin "mpc" to "mpcdec"Max Kellermann3-4/+4
This plugin is based on "libmpcdec".
2009-02-17renamed decoder plugin "mp4" to "mp4ff"Max Kellermann3-4/+4
This plugin is based on "libmp4ff".
2009-02-17tag: fixed typo in MUSICBRAINZ_TRACKID tag nameMax Kellermann1-1/+1