如何获取节奏盒以查看具有相同名称的不同专辑?


8

我的Rhythmbox资料库中既有《后代》精选,也有《皇后》精选。当我按专辑排序时,它看起来像这样:

在此处输入图片说明

我怎样才能让节奏节奏盒按专辑排序,以免交错不同名字的不同艺术家的专辑?


2
我不知道这样做的任何方式,但因为这是一个很好的问题,我很好奇自己,如果这可以解决我建议你的邮件就此问题向开发商的Rhythmbox 他们的网站是在这里,因为他们”它将能够告诉您解决方案,如果它已经起作用,或者告诉您它不起作用,那么您可以在以后的版本中建议它作为补充,并为使其成为更好的音乐播放器做出贡献;)
Oyibo

Answers:


4

Rhythmbox不能立即区分不同的“最热门”专辑,因为它将专辑标题视为唯一标识符。

通过rhythmbox插件coverart-browser,我们将专辑标题和专辑艺术家都视为唯一标识符。

伊姆古尔

如图所示-两位具有相同“最高热门”标题的艺术家,但由于它们是不同的艺术家,所以专辑分开显示。

您应该注意-翻录CD时,专辑歌手通常不会被翻录,而是留空。

更糟糕的是,对于多艺术家专辑(合辑),专辑艺术家和艺术家字段也都留为空白。因此,您可以留下两张标题完全相同的专辑。

这里的技巧是选择专辑的所有曲目,右键单击并选择属性,然后填写专辑艺术家字段以使其独特

在此处输入图片说明

请参阅下面的链接以获取安装说明。

链接的问题:


2

我已经在各种各样的系统上和不同的播放器上看到了这个问题,而我想出的唯一解决方案是为艺术家加前缀的专辑命名。

例如:

“红辣椒最热门”,而不仅仅是“最精选”。

我知道它的工作量很大,但是如果有人有更好的方法,我很想听听。


我收到了2票赞成票,我感到困惑,因为我的答案是目前我唯一能实现问题要求的机会。回答这是不可能的,但是我提供了一种可行的替代方法。
CoalaWeb 2012年

将专辑名称更改为不正确的名称并不是所有人的解决方案。此解决方法很可能会中断,因为它会使相册标题不正确。使用自动修复元数据的任何工具的任何人都将覆盖此类更改。您的回答也将引起进一步的讨论。唯一正确的答案是,它当前是无法解决的错误,需要这样报告并在上游修复。
dobey 2012年

我不同意我使用该系统已有多年,因此在当前情况下是一个可行的解决方案。您做出诸如“唯一正确答案”之类的笼统声明,即提交一个错误报告,而该错误报告很可能要花费数月甚至数年的时间才能实施,因此,在此过程发生时,我将提供替代方法(我并没有强迫任何人都可以使用它)。我的原始评论表明,我认为没有必要投两票否定票,可以随时不投票赞成我的答案,但这与给予否定票有很大不同。
CoalaWeb

2

您无法在Rhythmbox中执行此操作。但是,我认为这是一个错误。如果尚未打开,则应在上游打开一个错误。当您按专辑排序时,应该做的是按专辑排序,然后按专辑艺术家,艺术家,碟片编号,曲目编号排序。但是,它当前不这样做。


2

从专辑中选择所有曲目,右键单击,选择属性。请勿更改艺术家或专辑标签。如果愿意,请设置“专辑艺术家”,或单击“排序”标签。在这里,您可以设置艺术家和专辑标签,这些标签不会显示,但将专门用于排序。例如,如果您将“专辑排序顺序”设置为“最高匹配1”,而将另一张专辑的“专辑排序顺序”设置为“最高匹配2”,则它们在库中仍都将显示为“最高匹配”,但会被排序作为单独的专辑。更好的解决方案是将“艺术家排序顺序”字段更改为相应的艺术家名称。对于有多位艺术家的专辑,这也是一个很好的解决方案。

如果您喜欢按时间顺序对专辑进行排序,也可以使用此功能,因为Rhythmbox不具有我在iTunes中仅见过的“按年专辑”功能。

使用“ Artist”(艺术家)标题而不是“ Album”(专辑)对图书馆进行分类将更容易解决此问题;您的专辑仍将按字母顺序排序,其音轨依序排列,并且同一位艺术家的专辑将被分组在一起。这样,“后代”和“皇后”甚至不会彼此靠近,更不用说像这样混杂在一起了。

我知道这个问题已经很老了,但是似乎没有人发布过这个解决方案。希望我能帮助别人。


0

我是一名开发人员,并将“按艺术家排序”添加到“ rhythmdb_query_model_album_sort_func”中-参见下文。

如果您是最终用户,可以为构建软件包做好准备的系统,修补源代码,构建新软件包,安装然后继续!;-)

此修补程序是使用rb v2.97完成的,较新的版本可能具有不同的行号(尚未检查),但是基本上代码应该相同。

Description: sort albums with same title first by artist, remove unnecesary space and tab
--- rhythmbox-2.97.orig/rhythmdb/rhythmdb-query-model.c
+++ rhythmbox-2.97/rhythmdb/rhythmdb-query-model.c
@@ -2192,7 +2192,7 @@ rhythmdb_query_model_drag_data_received
        return FALSE;
 }

-/* 
+/*
  * determines whether reordering is possible by checking up
  * the chain for a model with a sort function set.
  */
@@ -2921,7 +2921,7 @@
  * @data: nothing
  *
  * Sort function for sorting by album.  Sorts by album, then
- * disc number, then track number, then title.
+ * artist, then disc number, then track number, then title.
  *
  * Returns: result of sort comparison between a and b.
  */
@@ -2959,6 +2959,31 @@ rhythmdb_query_model_album_sort_func (Rh
        if (ret != 0)
                return ret;

+       /* Then by artist */
+        a_val = rhythmdb_entry_get_string (a, RHYTHMDB_PROP_ARTIST_SORTNAME_SORT_KEY);
+        if (a_val[0] == '\0') {
+                a_val = rhythmdb_entry_get_string (a, RHYTHMDB_PROP_ARTIST_SORT_KEY);
+        }
+        b_val = rhythmdb_entry_get_string (b, RHYTHMDB_PROP_ARTIST_SORTNAME_SORT_KEY);
+        if (b_val[0] == '\0') {
+                b_val = rhythmdb_entry_get_string (b, RHYTHMDB_PROP_ARTIST_SORT_KEY);
+        }
+
+        if (a_val == NULL) {
+                if (b_val == NULL)
+                        ret = 0;
+                else
+                        ret = -1;
+        } else if (b_val == NULL)
+                ret = 1;
+        else
+                ret = strcmp (a_val, b_val);
+
+        if (ret != 0)
+                return ret;
+        /*else
+                return rhythmdb_query_model_album_sort_func (a, b, data); */
+
        /* Then by disc number (assume 1 if non-existent) */
        a_num = rhythmdb_entry_get_ulong (a, RHYTHMDB_PROP_DISC_NUMBER);
        b_num = rhythmdb_entry_get_ulong (b, RHYTHMDB_PROP_DISC_NUMBER);
@@ -3168,7 +3193,7 @@
                                    gpointer data)
 {
        gulong a_val, b_val;
-       
+
        if (rhythmdb_entry_is_lossless (a)) {
                if (rhythmdb_entry_is_lossless (b))
                        return rhythmdb_query_model_location_sort_func (a, b, data);

有关此处此处的软件包构建的更多说明


1
欢迎来到Ask Ubuntu! ;-)您能否详细说明最终用户如何激活此功能以进行分发?(认为​​最终用户)
Fabby

下次,不要以匿名用户的身份提出这些更改,而先登录然后再进行编辑,因此不必进行审阅过程。现在您很幸运地连续两次获得同一位审稿人,但是我们当中有100位评论员,下次您将不会那么幸运! :P
Fabby
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.