|
|
发表于 2008-10-5 20:14:13
|
显示全部楼层
格式什么的倒是支持很多,而且可以添加任何目录里面的歌曲文件。这点比mpd好。
前端好像有控制台下的,不过我没用过
cue文件支持也是要打个补丁 patch -p1 -i
- commit cee22c84e6be8ae4c89c333695fa5b50c63ea036
- Author: Florian Ragwitz <rafl@debian.org>
- Date: Sun Sep 30 00:15:57 2007 +0200
- BUG(1637): honor startms.
- diff --git a/src/xmms/output.c b/src/xmms/output.c
- index 6f5933c..4f5e0b1 100644
- --- a/src/xmms/output.c
- +++ b/src/xmms/output.c
- @@ -251,6 +251,7 @@ typedef struct {
- xmms_output_t *output;
- xmms_xform_t *chain;
- gboolean flush;
- + guint startms;
- } xmms_output_song_changed_arg_t;
-
- static void
- @@ -285,6 +286,21 @@ song_changed (void *data)
- if (arg->flush)
- xmms_output_flush (arg->output);
-
- + if (arg->startms > 0) {
- + xmms_error_t err;
- + xmms_error_reset (&err);
- +
- + XMMS_DBG ("Got startms. Trying to seek to %u.", arg->startms);
- +
- + arg->output->filler_state = FILLER_SEEK;
- + arg->output->filler_seek = xmms_sample_ms_to_samples (arg->output->format, arg->startms);
- + g_cond_signal (arg->output->filler_state_cond);
- +
- + if (xmms_error_iserror (&err)) {
- + XMMS_DBG ("Failed to seek to startms");
- + }
- + }
- +
- xmms_object_emit_f (XMMS_OBJECT (arg->output),
- XMMS_IPC_SIGNAL_OUTPUT_CURRENTID,
- XMMS_OBJECT_CMD_ARG_UINT32,
- @@ -404,6 +420,8 @@ xmms_output_filler (void *arg)
- xmms_medialib_entry_t entry;
- xmms_output_song_changed_arg_t *arg;
- xmms_medialib_session_t *session;
- + gchar *tmp;
- + gint startms = 0;
-
- g_mutex_unlock (output->filler_mutex);
-
- @@ -435,10 +453,21 @@ xmms_output_filler (void *arg)
- continue;
- }
-
- + if (xmms_xform_metadata_get_str (chain, "startms",&tmp)) {
- + gchar *endptr;
- +
- + startms = g_ascii_strtoull (tmp, &endptr, 10);
- +
- + if (*endptr != '\0') {
- + startms = 0;
- + }
- + }
- +
- arg = g_new0 (xmms_output_song_changed_arg_t, 1);
- arg->output = output;
- arg->chain = chain;
- arg->flush = last_was_kill;
- + arg->startms = startms;
- xmms_object_ref (chain);
-
- last_was_kill = FALSE;
复制代码 |
|