Commit Graph

5231 Commits

Author SHA1 Message Date
Avuton Olrich ed78955f8d configure.ac: Move Solaris to Audio Output Plugins (nonstreaming), add header. 2010-04-21 07:10:15 -07:00
Avuton Olrich cab16f8e1e configure.ac: Move MVP to Audio Output Plugins (nonstreaming), add header. 2010-04-21 07:10:14 -07:00
Avuton Olrich 24db28072f configure.ac: Add header for Pipe Output and Pulseaudio. 2010-04-21 07:10:14 -07:00
Avuton Olrich e20d3d49b3 configure.ac: Move OSX to Audio Output Plugins (nonstreaming), add header. 2010-04-21 07:10:14 -07:00
Avuton Olrich 33641df09c configure.ac: Move OSS to Audio Output Plugins (nonstreaming), add header. 2010-04-21 07:10:14 -07:00
Avuton Olrich 294cce2710 configure.ac: Move OpenAL to Audio Output Plugins (nonstreaming), add header. 2010-04-21 07:10:14 -07:00
Avuton Olrich 9fb31aafb3 configure.ac: Move libao to Audio Output Plugins (nonstreaming), add header. 2010-04-21 07:10:14 -07:00
Avuton Olrich 791ddc566a configure.ac: Move JACK to Audio Output Plugins (nonstreaming), add subheader. 2010-04-21 07:10:14 -07:00
Avuton Olrich 7d2b2e371c configure.ac: Move FIFO to Audio Output Plugins (nonstreaming), add subheader. 2010-04-21 07:10:13 -07:00
Avuton Olrich c3ecb5aa5e configure.ac: Move ALSA to Audio Output Plugins (nonstreaming), add subheader. 2010-04-21 07:10:13 -07:00
Avuton Olrich 191e520999 configure.ac: Move converter plugins up with other aux plugins. 2010-04-21 07:10:13 -07:00
Avuton Olrich dd5fdbc540 configure.ac: Move archive plugins around (alphabetize), add subheaders. 2010-04-21 07:10:13 -07:00
Avuton Olrich b39855731c configure.ac: Add subheaders to Input/Sticker/Autodiscovery/Metadata and Misc. 2010-04-21 07:10:13 -07:00
Avuton Olrich e27dd7280f configure.ac: Move libid3tag to "Metadata Plugins" 2010-04-21 07:10:13 -07:00
Avuton Olrich a9ff134e9f configure.ac: Move inotify to "Miscellaneous Libraries". 2010-04-21 07:10:13 -07:00
Avuton Olrich 11fbb1c807 configure.ac: Move all AC_ARG* functions to a single place in the configure.ac. 2010-04-21 07:10:12 -07:00
Avuton Olrich 15998c0db9 configure.ac: Add better headers to improve readability.
This changes no code, makes no moves; this merely adds some headers
to improve readability.
2010-04-21 07:08:16 -07:00
Max Kellermann cf3ada3d04 Merge branch 'master' of git://github.com/mcfiredrill/mpd 2010-04-20 21:16:39 +02:00
Avuton Olrich 7df94b1718 lame.m4: Remove unused macro file 2010-04-15 20:23:53 -07:00
Avuton Olrich c2d788f6de configure.ac: Check for LAME libraries the same way others are checked for.
Check for LAME libraries the same way other libraries are checked for, in line
with the configure and outside the buggy macro. This will fix problems with
cross compilation.
2010-04-15 20:23:35 -07:00
Avuton Olrich fa8992fc63 configure.ac: Don't allow UNIX IPC to be configured for a native Windows build. 2010-04-13 19:09:26 -07:00
Max Kellermann 8d631b346a inotify_update: start update when directory is created
This is useful at the maximum depth level, to update newly created
directories.  It is however questionable if the hard-coded 5 seconds
delay is enough to create new directory trees with all of their files,
but we might make that delay configurable in the future.
2010-04-13 23:37:44 +02:00
Max Kellermann 393bcd961a inotify: added setting "auto_update_depth"
Limits the depth of the watched directories.  This is useful to keep
resource usage down and speed up MPD startup.
2010-04-13 21:31:57 +02:00
Max Kellermann 4d1eedbaa2 conf: added function config_get_unsigned() 2010-04-13 21:19:07 +02:00
Max Kellermann a1a03deed2 decoder/mad: properly calculate ID3 size without libid3tag
Without libid3tag, we were trying to skip the ID3 frame (since
0.15.2).  Its length however was not calculated at all, we were just
dropping everything from the current input buffer.  This lead to the
first few seconds of the file being skipped.  This patch attempts to
calculate the ID3v2 frame size with the formula from:

 http://www.id3.org/id3v2.4.0-structure 3.1 and 6.2
2010-04-13 08:51:29 +02:00
Charles Kerr 6a95898038 decoder/ffmpeg: fix crash on startup in mpd_ffmpeg_log_callback()
What's happening is the `ptr' argument to that function is NULL for me
every time. `ptr' is unconditionally dereferenced to generate a log
message, and this is where mpd crashes.

Attached is a simple patch that tests for NULL and omits the log. With
this patch the crash disappeared and mpd went back to working well.
2010-04-11 19:18:30 +02:00
Tony Miller 9d55b16998 Decoder for game music emulation library.
Supports a number of videogame music formats, more info here:
http://www.fly.net/~ant/libs/audio.html

I wrote this plugin for the latest svn, get it here:
http://code.google.com/p/game-music-emu/source/checkout
2010-04-10 01:05:16 -07:00
James Pike c52f469c9c output/httpd: added name/genre/website configuration 2010-04-05 13:11:10 +02:00
Orivej Desh 50c0c4b701 cue: fix code style 2010-04-01 08:12:25 +02:00
Max Kellermann 8446b70ddc decoder/ffmpeg: print item name in log callback 2010-03-28 19:48:57 +02:00
Orivej Desh 635791d1cd cue: prepend pregap to the beginning of the track
.. rather then append to the end of the previous one

Cuebreakpoints from the cuetools package has three modes of operation,
and the default is to append pregap (INDEX 00) to the end of the
previous track. This is the behavior most compliant to the existing
cue files.

Here is the patch which fixes the issue. I borrowed bits of
implementation from cuebreakpoints. I assumed that the whole audio
file must be covered by head-to-head going tracks, which is how
hardware CD players probably work. In cue_tag I changed rounding from
rounding up to rounding down because the thing in mpd which calculates
actual track duration (and current position) rounds it down, and I
didn't want to see in my playlist values different from whose in a
now-playing progress bar.

I've compared the resultant mpd behaviour with "mplayer -ss MM:SS.MS"
where the time was supplied by cuebreakpoints and noticed that mplayer
started each track a bit earlier then mpd, though this was the same
before the patch.
2010-03-28 19:34:16 +02:00
Max Kellermann e9beea072d Merge release 0.15.9 from branch 'v0.15.x'
Conflicts:
	NEWS
	configure.ac
	src/cue/cue_tag.c
	src/decoder/mpcdec_decoder_plugin.c
	src/player_thread.c
2010-03-28 19:31:47 +02:00
Max Kellermann e69bb3b337 Makefile.am: distribute pcm_pack.h
Fix distcheck.
2010-03-28 19:31:02 +02:00
Avuton Olrich 06f86b4532 Add support for building httpd_output plugin for win32 2010-03-22 07:15:39 -07:00
Avuton Olrich 68ece2fef3 Define winnt or greater on mingw32 to take advantage of get*info(). 2010-03-21 18:45:32 -07:00
Avuton Olrich 4953ea90c2 strtok() is recursive by default on win32. 2010-03-21 18:24:24 -07:00
Avuton Olrich 0dcd865c2e Modify version string to post-release version 0.15.10~git 2010-03-21 17:25:18 -07:00
Avuton Olrich d612e5e0ab mpd version 0.15.9 2010-03-21 17:25:18 -07:00
Tim Phipps e7a515c8b1 Add support for MixRamp tags
Adds mixrampdb and mixrampdelay commands.  Reads MIXRAP_START and
MIXRAMP_END tags from FLAC files and overlaps instead of crossfading.
2010-03-21 18:21:47 +01:00
Aleksei Kaveshnikov 73ba4ea3da decoder/mpcdec: fix replay gain formula with v8
"When playing musepack files with mpd v0.15.8, rg seems to have no effect.

Using sample file below, mpd says 'computing ReplayGain album scale with gain 122.879997, peak 0.549150'.

One thing though, if I build mpd against old libmpcdec-1.2.6, rg works
as expected: 'computing ReplayGain album scale with gain 16.820000,
peak 0.099765'"
2010-03-19 10:26:08 +01:00
Max Kellermann cbfaa4a266 player_thread: postpone song tags during cross-fade
Previously, tags of the new song being cross-faded in were sent
immediately.  That can cause wrong information being displayed,
because the "previous" song might send its tag at the end again,
overriding the "next" song's tag.  This patch saves & merges the tag
of the next song, and sends it when cross-fading is finished, and the
next song really starts.
2010-03-17 23:14:54 +01:00
Max Kellermann 2e72a9b262 tag: added function tag_merge_replace()
Like tag_merge(), but can deal with NULL parameters, and frees both
tag objects.
2010-03-17 23:12:21 +01:00
Max Kellermann e9b75d462c AudioCompress: explicitly include stdint.h
For int16_t.
2010-03-17 18:29:56 +01:00
Max Kellermann 68017b1254 decoder_api: use the correct format to calculate elapsed time
When decoder->timestamp is calculated, the PCM data is already
converted to out_audio_format; using in_audio_format may cause funny
speedups/slowdowns.
2010-03-17 18:26:36 +01:00
Piotr Gozdur 96033e4b4e decoder/mpcdec: fix negative shift on fixed-point samples
"There is a bug in fixed-point musepack (musepack_src_r435) playback.
In floating-point audio is OK but in fixed audio is distorted.  I have
made a patch for this"
2010-03-17 17:54:21 +01:00
Max Kellermann 469c9b5def command: allow "update" with slash or empty path
When handle_update() was modified to use uri_safe_local(), suddently
"mpc update ''" and "mpc update '/'" stopped working, because both are
not a "safe" local URI.  This patch adds a special case for these, to
retain backwards compatibility.
2010-03-12 17:58:16 +01:00
Max Kellermann e686d19154 output: added option "always_on" for radio stations
Did you ever accidently click "stop" while feeding a radio station?
This option sets the output device to "pause" to disable the "close"
method.  It falls back to "pause" then, which is specific to the
plugin.  Some plugins implement it by feeding silence.
2010-03-10 19:49:31 +01:00
Max Kellermann 762565e9d1 output/jack: drain the ring buffers during pause
If we're not doing this, and a new song is played after pause ends,
then you will hear the rest of the previous song.
2010-03-10 19:48:49 +01:00
Max Kellermann 41a4662c8c output/jack: synchronize all channels
Always use the same number of samples from each channel's ring
buffer.  This ensures that all channels are kept in sync.
2010-03-10 19:48:34 +01:00
Max Kellermann 5842015b90 decoder/ffmpeg: fix indentation 2010-03-07 19:20:34 +01:00