web-dev-qa-db-ja.com

クレメンタインで未再生のアルバムを表示する方法

これまでに再生されたことがない、または特定の回数再生されたアルバムのみを表示できる、ある種のフィルターまたはスマートプレイリストはありますか?

「再生されたことがない」スマートプレイリストは、フルアルバムではなく、再生されたことのないランダムな曲を選択しているようです。

助言がありますか?

クレメンタイン1.2を使用しています

2
rfc1484

これは(まだ)スマートプレイリストでは実行できません。独自のスマートプレイリストを作成することもできますが、すべての基準はデータベースの曲と直接一致するだけです。見つかった曲間の比較や、一致する曲のグループ化はできません。最大で「未再生」のスマートプレイリストを編集して、アルバムごとに曲を並べ替えることができます(もちろん、まだ再生されていない曲のみ)

~/.config/Clementine/clementine.dbにあるクレメンタインのデータベースを見ると、クレメンタインは本質的にすべての曲を「songs」という名前の単一のテーブルで管理しているようです(アーティストやアルバム用の追加のテーブルはありません)。しかし、それはsqliteデータベースであるため、曲が再生されたことのないアルバムを見つけるために適切なクエリを実行する小さなプログラムを作成できるはずです。このようなもの:

select album, track, title, playcount, filename from songs 
  where album in (select distinct album from songs where playcount = 0) 
  and album not in (select distinct album from songs where playcount != 0) 
  order by album, track;

このリストからプレイリストを生成できます。データベースに直接挿入するかどうかはわかりませんが、.m3uまたは.plsをエクスポートすることは可能です。

考えられる問題は、複数のアーティストが同じアルバムを持っている可能性があることと、複数のアーティストが含まれているアルバムが存在する可能性があることです。したがって、アルバムの分離が問題になる可能性があります。

3
Adaephon

Adaephonは、現時点ではクレメンタインではこれが適切に不可能であると正しく答えていますが、音楽ライブラリがアーティスト/アルバム/tracknr-title.mp3のようなものをディスク上で注文した場合、大雑把な方法があります。この場合、検索語にPlay count equals 0が含まれ、次のページでSort songs by File name A-Z(パスを含む)と制限がShow all the songsであるスマートプレイリストを作成できます。ダイナミックモードなしでプレイリストを保存し、開始して、シャッフルモードをShuffle albumsにします。

この方法の欠点:マッチングは曲レベルで行われます。つまり、アルバムでいくつかの曲を再生したが、アルバム全体では再生しなかった場合、リストには表示されますが、すでに再生した曲は表示されません。

0
hansvschoot