Max Kellermann
7f34e9410e
pcm: added pcm_convert_deinit(), pcm_resample_deinit()
...
Free memory allocated by libsamplerate when the output or the decoder
is closed.
2009-01-07 22:20:30 +01:00
Max Kellermann
97b844ec72
pcm_volume: changed PCM_VOLUME_1 to 1024
...
1024 is 2^10, and allows gcc to use bit shift operations instead of
multiplication / division.
2009-01-07 21:40:35 +01:00
Max Kellermann
04a2138b33
pcm: pass void pointers to PCM functions
...
In generic PCM functions allowing all sample formats, pass a void
pointer instead of a char pointer.
2009-01-07 19:00:02 +01:00
Max Kellermann
bb01016400
Makefile.am: added mixer_api.h to mpd_headers
2009-01-07 18:55:26 +01:00
Max Kellermann
b40428b3fd
pcm_utils: moved conversion code to pcm_convert.c
...
All what's left in pcm_utils.h is the pcm_range() utility function,
which is only used internally by pcm_volume and pcm_mix.
2009-01-07 18:53:36 +01:00
Max Kellermann
8b19c74e8e
pcm_format: pass struct pcm_dither_24 to pcm_convert_to_16()
...
The function does not need the full pcm_convert_state struct.
2009-01-07 18:19:22 +01:00
Max Kellermann
df30a29391
pcm_utils: moved code to pcm_format.c
...
Moved all code which converts the sample format to a separate library.
2009-01-07 18:19:09 +01:00
Max Kellermann
6768581c41
pcm_volume: rename pcm_dither() to pcm_volume_dither()
2009-01-07 18:08:26 +01:00
Max Kellermann
b7b5e3f9c3
pcm_prng: renamed prng() to pcm_prng()
2009-01-07 18:07:19 +01:00
Max Kellermann
3fd1fa31ca
pcm_utils: moved code to pcm_mix.c
...
Moved the software mixing code (used by crossfading) to a separate
library.
2009-01-07 18:06:22 +01:00
Max Kellermann
9d0579996c
pcm_utils: moved code to pcm_volume.c
...
Moved the software volume code to a separate library.
2009-01-07 18:05:38 +01:00
Max Kellermann
e8c323ed7e
pcm_utils: export pcm_range()
...
We are going to split the pcm_utils.c library, and pcm_range() will be
useful for several sub libraries.
2009-01-07 18:03:53 +01:00
Max Kellermann
9cb76856c0
removed dlist.h
...
Get rid of the non-portable Linux list library, part III (final).
2009-01-07 16:31:47 +01:00
Max Kellermann
a4a8ac0cc3
curl: use GQueue instead of dlist.h for buffer list
...
Get rid of the non-portable Linux list library, part II.
2009-01-07 16:30:43 +01:00
Max Kellermann
fa503e31e7
client: use GList instead of dlist.h
...
Get rid of the non-portable Linux list library, part I.
2009-01-07 16:30:40 +01:00
Max Kellermann
91dfeff4b9
input_curl: disable "seekable" when icy-metadata is enabled
...
Fix a typo in the icy-metadata patch.
2009-01-07 10:31:30 +01:00
Max Kellermann
493f661fa4
locate: fix strcmp() return value check
...
Yesterday's patch set changed tagItemFoundAndMatches() and moved the
strcmp() return value into a bool, but forgot to add the ==0 check.
2009-01-05 12:50:04 +01:00
Max Kellermann
d9c2960a55
fix G_BYTE_ORDER check
...
"#ifdef G_BYTE_ORDER == G_BIG_ENDIAN" cannot work, of course.
2009-01-05 12:40:57 +01:00
Max Kellermann
0fb21e67ef
configure.ac: use AC_CHECK_HEADERS to check for locale.h
...
AC_CHECK_HEADERS defines HAVE_LOCALE_H, so we don't have to manually
define HAVE_LOCALE.
2009-01-05 09:31:09 +01:00
Max Kellermann
ac0fe98ffb
use GLib byte order macros
2009-01-05 08:17:22 +01:00
Max Kellermann
3516d8fc1d
tag: allocate space for null terminator in clear_non_printable()
...
Use g_strndup() instead of g_memdup().
2009-01-04 21:24:22 +01:00
Max Kellermann
200ef56d4d
database: use stdbool
...
Make db_load(), db_save() and db_check() return bool instead of int.
2009-01-04 21:18:40 +01:00
Max Kellermann
82166b715c
database: db_init() initializes library, does not update
...
For updating the database, directory_update_init() should be called
explicitly.
2009-01-04 21:18:16 +01:00
Max Kellermann
6acba73509
stats: added stats_update()
2009-01-04 20:57:06 +01:00
Max Kellermann
5c477f6067
removed the "condition" library
...
It's unused.
2009-01-04 20:42:53 +01:00
Max Kellermann
60f809b331
update: use notify.h instead of condition.h
...
The notify library is easier to use, and has no disadvantages.
2009-01-04 20:42:43 +01:00
Max Kellermann
21173ea4a9
event_pipe: removed the unused function event_pipe_wait()
2009-01-04 20:32:45 +01:00
Max Kellermann
e4a53df7db
don't exit after --create-db
...
Start the daemon after --create-db. This makes --create-db a flag
which discards the old database and starts with a fresh one.
2009-01-04 20:31:23 +01:00
Max Kellermann
6fb8c54939
update: refresh stats when database update is finished
2009-01-04 20:30:27 +01:00
Max Kellermann
a9bd64b1dd
update: splitted reap_update_task()
...
Handle the DELETE and UPDATE events in separate callbacks:
song_delete_event() safely deletes a song, and update_finished_event()
is called when database update is complete.
2009-01-04 20:30:23 +01:00
Max Kellermann
5e6ac50583
initialize GError pointers
...
GLib mandates that you initialize all GError objects with NULL prior
to passing it.
2009-01-04 19:51:54 +01:00
Max Kellermann
530f0b71de
path, tag: don't allocate GError for charset conversion
...
Pass NULL instead of &error to g_convert(). We're not interested in
the error object.
2009-01-04 19:50:22 +01:00
Max Kellermann
da69382273
path: removed pfx_dir()
...
Use GLib's g_build_filename() instead of pfx_dir().
2009-01-04 19:37:19 +01:00
Viliam Mateicka
1a04e57168
renaming mixer.h to mixer_api.h
2009-01-04 19:15:18 +01:00
Max Kellermann
fed719197c
song: allocate the result of song_get_url()
2009-01-04 19:09:34 +01:00
Max Kellermann
ea8ae68e6f
directory: added directory_is_root()
...
directory_is_root() is cheaper than
isRootDirectory(directory_get_path()).
2009-01-04 19:08:52 +01:00
Max Kellermann
923d2c966f
mapper: allocate the result of map_fs_to_utf8()
2009-01-04 18:59:47 +01:00
Max Kellermann
8c5470a3db
playlist: log errors during loadPlaylist()
...
Don't call command_error() if loading a song from the playlist fails.
This may result in assertion failures, since command_error() may be
called more than once.
2009-01-04 18:59:32 +01:00
Max Kellermann
49ac6fa996
playlist: use GLib logging
2009-01-04 18:17:37 +01:00
Max Kellermann
45597cc571
ls: renamed functions, no CamelCase
2009-01-04 17:46:42 +01:00
Max Kellermann
6a008b52d1
update: removed struct delete_data
...
The struct delete_data has only one member left and can be eliminated.
2009-01-04 17:28:34 +01:00
Max Kellermann
ff72fff68d
ls: removed hasMusicSuffix() and get_archive_by_suffix()
...
Determine the suffix manually, and use decoder_plugin_from_suffix()
and archive_plugin_from_suffix() instead.
This way, song_file_update_inarchive() can be optimized: it does not
have to translate its path.
2009-01-04 17:26:22 +01:00
Max Kellermann
d6b229e35c
update: moved code to update_regular_file()
2009-01-04 17:26:18 +01:00
Max Kellermann
8a562c9c71
song: removed duplicate '\n' check
...
Newline characters are already checked in skip_path() (update.c).
2009-01-04 17:26:15 +01:00
Max Kellermann
77d3643036
ls: include cleanup
...
Don't include headers which are not used. Fix some includes in
decoder_thread.c.
2009-01-04 17:26:12 +01:00
Max Kellermann
599d5820bc
update: moved code to directory_exists(), fix typo
...
Reverse the condition: delete directories which don't exist anymore.
This typo caused a slowdown during partial database update.
2009-01-04 17:26:07 +01:00
Max Kellermann
17d8bdb427
playlist: use uri_has_scheme() instead of isRemoteUrl()
...
For internal checks (i.e. not in command.c), we need to check whether
an URI is in the databse, in the local file system or a remote URI
with a scheme.
2009-01-04 16:23:33 +01:00
Max Kellermann
7d87f71d83
command: check URI scheme in "addid"
...
Check if the URI scheme is supported by MPD, and print an error
message if not. Optimize the checks in "add" and "playlistadd".
2009-01-04 16:22:08 +01:00
Max Kellermann
ef0b328a3c
command: added variable "uri" to command handlers
...
Don't work with argv[1], give it the better name "uri".
2009-01-04 16:19:45 +01:00
Max Kellermann
55b6fd2f0c
player_thread: fix cross-fading duplicate chunk bug
...
When the decoder of the new song is not fast enough, the player thread
has to wait for it for a moment. However the variable "nextChunk" was
reset to -1 during that, making the next loop iteration assume that
cross-fading has not begun yet. This patch overwrites it with "0"
while waiting.
2009-01-04 14:55:02 +01:00