Commit Graph

875 Commits

Author SHA1 Message Date
J. Alexander Treuman
e880a878bc Open the db file before daemonizing/creating the master process, so we can handle failures gracefully
git-svn-id: https://svn.musicpd.org/mpd/trunk@4454 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-24 19:21:27 +00:00
J. Alexander Treuman
48240740e7 Do normalization if there's replaygain data but replaygain is off
git-svn-id: https://svn.musicpd.org/mpd/trunk@4445 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-24 16:32:50 +00:00
Eric Wong
24c1f46353 audioOutput_alsa: better period_size auto-configuration
We'll try setting an initial value of 50ms, and halve it each
time snd_pcm_hw_params fails with -EPIPE.

This way we'll can use a larger (50ms) period_size whenever a device
supports it, and automatically pick smaller ones if we can't set
larger ones.

This removes the calculation borrowed from libao (svn) as well.

Other minor things:
"Alsa" => "ALSA" in error messages
_US appended to *_TIME constants so we won't get confused
(shank's request)

git-svn-id: https://svn.musicpd.org/mpd/trunk@4438 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-24 01:38:51 +00:00
J. Alexander Treuman
76528555dc If we're going to create the db file, make sure the parent path is a directory
git-svn-id: https://svn.musicpd.org/mpd/trunk@4437 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-23 23:42:16 +00:00
J. Alexander Treuman
c3bc1e5b3c Make checkDirectoryDB check that the db file is a regular file
git-svn-id: https://svn.musicpd.org/mpd/trunk@4436 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-23 23:35:35 +00:00
J. Alexander Treuman
bb9a5aaf2b Renaming stat struct to st, for consistency with the rest of mpd
git-svn-id: https://svn.musicpd.org/mpd/trunk@4435 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-23 23:12:44 +00:00
J. Alexander Treuman
af153d343b Tidying up code in checkDirectoryDB
git-svn-id: https://svn.musicpd.org/mpd/trunk@4434 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-23 23:10:31 +00:00
Warren Dukes
14eea124f6 chang the default period_time to 50ms. On my setup, setting the period_time to 0ms sounds like complete crap. 50ms is the default that xmms has used for years, so lets just stick with that.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4433 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-23 04:00:52 +00:00
Eric Wong
7f363eb9c1 Cleanup some now unnecessary variables from the id3/mad removal
git-svn-id: https://svn.musicpd.org/mpd/trunk@4431 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-22 23:28:26 +00:00
J. Alexander Treuman
6dfaa33f37 Fix the ipv6 bind issue in a nicer way
git-svn-id: https://svn.musicpd.org/mpd/trunk@4428 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-22 17:19:59 +00:00
J. Alexander Treuman
f22479e4d4 Fix bug when binding to both ipv6 and ipv4 on Linux
git-svn-id: https://svn.musicpd.org/mpd/trunk@4427 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-22 13:15:20 +00:00
J. Alexander Treuman
db76c2a444 Maybe we should actually commit the normalization code
git-svn-id: https://svn.musicpd.org/mpd/trunk@4425 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-22 01:14:29 +00:00
J. Alexander Treuman
cf90f8194f Adding on the fly volume normalization support. Code originally from mplayer, ported by syscrash, cleaned up by avuton, and further cleaned up by me (jat).
git-svn-id: https://svn.musicpd.org/mpd/trunk@4424 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-22 00:53:37 +00:00
J. Alexander Treuman
c4d1344f8c Adding fifo output plugin
git-svn-id: https://svn.musicpd.org/mpd/trunk@4423 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-22 00:25:46 +00:00
J. Alexander Treuman
c379533ba9 Fix a memory leak when removing a playlist
git-svn-id: https://svn.musicpd.org/mpd/trunk@4422 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-21 17:53:36 +00:00
J. Alexander Treuman
95af15ce8f Initialize more stuff before daemonizing so we exit properly on fatal errors
git-svn-id: https://svn.musicpd.org/mpd/trunk@4421 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-21 17:48:54 +00:00
J. Alexander Treuman
688166295a Remember kids: always test your code before committing
git-svn-id: https://svn.musicpd.org/mpd/trunk@4420 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-21 17:34:50 +00:00
J. Alexander Treuman
6dbacc71c7 Make getBoolConfigParam and save_absolute_paths_in_playlist less stupid
git-svn-id: https://svn.musicpd.org/mpd/trunk@4419 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-21 17:20:38 +00:00
J. Alexander Treuman
ac7ef037b5 Use getBoolConfigParam for save_absolute_paths_in_playlist
git-svn-id: https://svn.musicpd.org/mpd/trunk@4418 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-21 17:11:45 +00:00
J. Alexander Treuman
b892028b96 Add a getBoolConfigParam function
git-svn-id: https://svn.musicpd.org/mpd/trunk@4417 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-21 17:06:20 +00:00
Eric Wong
74c4f5364d audioOutput_alsa: oops, I broke autodetection in r4363, fixed
git-svn-id: https://svn.musicpd.org/mpd/trunk@4416 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-21 07:04:28 +00:00
J. Alexander Treuman
160dbe080c Rolling back change to when we redirect to logs. Turns out it silenced fatal audio_output errors.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4415 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-20 22:47:34 +00:00
J. Alexander Treuman
0623d6bee0 #include <string.h> in PulseAudio output for correctness
git-svn-id: https://svn.musicpd.org/mpd/trunk@4412 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-20 19:39:46 +00:00
Avuton Olrich
00e67be7c9 Add mpd-indent.sh
Add a few new options for indent to try to make
things a bit cleaner

git-svn-id: https://svn.musicpd.org/mpd/trunk@4411 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-20 18:53:56 +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
Avuton Olrich
099f0e103f Warnings fixes, since MPD uses different mp4ff they
obviously changed some stuff around

git-svn-id: https://svn.musicpd.org/mpd/trunk@4409 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 20:11:14 +00:00
Avuton Olrich
a150663e71 Remove useless buffer signedness warnings, use
void * rather than "x char *"

git-svn-id: https://svn.musicpd.org/mpd/trunk@4408 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 19:41:59 +00:00
Warren Dukes
c7c8bd43db bind to ipv4 and ipv6 addresses for "any"
git-svn-id: https://svn.musicpd.org/mpd/trunk@4407 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 18:56:54 +00:00
J. Alexander Treuman
adcc266250 Redirect to log files earlier to prevent some debug spam on console
git-svn-id: https://svn.musicpd.org/mpd/trunk@4406 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 18:22:06 +00:00
Avuton Olrich
0905630073 Fix whitespace->tabs in main.c, it was afu
git-svn-id: https://svn.musicpd.org/mpd/trunk@4405 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 18:04:15 +00:00
J. Alexander Treuman
3187eb300b s/ad/pd/ in the PluseAudio plugin (I forgot to rename when copying from alsa)
git-svn-id: https://svn.musicpd.org/mpd/trunk@4404 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 16:50:03 +00:00
J. Alexander Treuman
2728853ec1 Throttle PuleAudio connection attempts so we don't spam the error log
git-svn-id: https://svn.musicpd.org/mpd/trunk@4403 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 16:48:24 +00:00
J. Alexander Treuman
649a037e8d Use ERROR only once for our ogg vorbis errors, so we don't get a timestamp mid line
git-svn-id: https://svn.musicpd.org/mpd/trunk@4402 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 15:58:11 +00:00
Avuton Olrich
9f6364af45 Remove the internal mp4ff dependency
git-svn-id: https://svn.musicpd.org/mpd/trunk@4401 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-19 15:54:53 +00:00
J. Alexander Treuman
9774768b97 Initialize sigaction.sa_mask to an empty set in a few places we forgot to
git-svn-id: https://svn.musicpd.org/mpd/trunk@4400 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-18 23:38:21 +00:00
J. Alexander Treuman
ec19a53f23 Fix VBR mp3 seek accuracy bug
git-svn-id: https://svn.musicpd.org/mpd/trunk@4399 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-18 23:28:25 +00:00
J. Alexander Treuman
6ea0ba392a Cleaned up parse_xing, added support for Info magic, and added a parse_extension_headers function for when LAME tag support is added
git-svn-id: https://svn.musicpd.org/mpd/trunk@4398 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-18 18:18:02 +00:00
J. Alexander Treuman
e7566b9643 Reindenting parse_xing, since I need to work on it and it's a mess
git-svn-id: https://svn.musicpd.org/mpd/trunk@4397 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-18 16:28:58 +00:00
J. Alexander Treuman
e6b0d82c2e Don't bother freeing a bunch of stuff at exit, since it takes far too long and accomplishes nothing.
git-svn-id: https://svn.musicpd.org/mpd/trunk@4396 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-18 15:50:10 +00:00
Eric Wong
16c72e9742 inputPlugins/oggflac_plugin.c: remove unused var
git-svn-id: https://svn.musicpd.org/mpd/trunk@4389 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-18 09:55:06 +00:00
Warren Dukes
0bf396d610 some quick hacks to avoid signedness warnings with gcc4
git-svn-id: https://svn.musicpd.org/mpd/trunk@4387 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-17 21:46:32 +00:00
Eric Wong
c919ffd1bf audioOutput_mvp: remove unused variable
git-svn-id: https://svn.musicpd.org/mpd/trunk@4383 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-17 01:49:56 +00:00
Eric Wong
6f013cd9c4 inputPlugins/*_plugin.c: static-fication
Nothing here is ever exported for linkage besides the
InputPlugin structure, so mark them static to save a few bytes.

git-svn-id: https://svn.musicpd.org/mpd/trunk@4382 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-17 01:47:32 +00:00
Eric Wong
5f50870222 alsa: fix memory leaks from snd_*_open*()
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
2006-07-17 01:28:38 +00:00
Eric Wong
368034e199 sparse: replace 0 (integer) usage with NULL where appropriate
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
2006-07-17 00:15:52 +00:00
Eric Wong
232dcf4b94 sparse: fix a enum type mismatch in flac_plugin
Both values are compiled to zero, but this is more correct
since we're using the correct enum (in the unlikely case that
the FLAC library breaks compatibility).

git-svn-id: https://svn.musicpd.org/mpd/trunk@4379 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-17 00:15:49 +00:00
Eric Wong
a234780aab sparse: ANSI-fy function declarations
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
2006-07-17 00:15:34 +00:00
Eric Wong
0c24fc0cb3 add sparse-check target to makefiles
sparse is a semantic parser developed for the Linux kernel,
but works for any project written (ANSI) C.

You can get sparse via git here:
git clone git://www.kernel.org/pub/scm/devel/sparse/sparse.git

git-svn-id: https://svn.musicpd.org/mpd/trunk@4377 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-17 00:15:31 +00:00
J. Alexander Treuman
39615044e3 Will the leaks never end?!
git-svn-id: https://svn.musicpd.org/mpd/trunk@4375 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-16 19:55:01 +00:00
J. Alexander Treuman
25c37e9276 Sigh, another memory leak
git-svn-id: https://svn.musicpd.org/mpd/trunk@4374 09075e82-0dd4-0310-85a5-a0d7c8717e4f
2006-07-16 19:40:09 +00:00