Autor Thema: [CUI] Foobar und verschiedene Codes/ Tags  (Gelesen 18035 mal)

Strictly4me

  • Akkordschreiber
  • *
  • Beiträge: 341
  • * Tutorialschreiber *
[CUI] Foobar und verschiedene Codes/ Tags
« am: 07. September 2006, 22:20:17 »
Foobar und verschiedene Codes

Hier einige Codes, die man vielleicht brauchen kann:

Abspielenden Titel blinken lassen
Einfügen unter Preferences/Display/Columns UI/Playlist view/Columns/Title/Display
Farben müssen gegebenfalls angepasst werden.

$if(%_isplaying%,
$select($add(1,$mod(%_time_elapsed_seconds%,2)),$rgb(255,255,255,72,72,255),$rgb(0,0,0,255,255,255)))%title%

Sieht so aus: abspielender_blinktitel.gif defekter link entfernt - grimes

Automatisches Rating
Nach Abspielmenge vom Playcounter. Kann im Code frei definiert werden.
Einfügen unter Preferences/Display/Columns UI/Playlist view/Columns/Hotness/Display
Farben müssen gegebenfalls angepasst werden.

$puts(rating,
$if2(%rating%,
$ifgreater(%play_counter%,70,5,
$ifgreater(%play_counter%,30,4,
$ifgreater(%play_counter%,15,3,
$ifgreater(%play_counter%,10,2,
$ifgreater(%play_counter%,5,1,0)))))))

$transition($repeat(●,$get(rating)),$rgb(0,0,0,0,0,0),$rgb(250,0,0,250,0,0))
$rgb(192,192,192,192,192,192)
$repeat(●,$sub(5,$get(rating)))

Sieht so aus: hotness.png defekter link entfernt - grimes

Bei diesem Code darf nicht manuell geratet sein, sonst wird das manuelle Rating von 1-5 angezeigt!
Darüber hinaus muss man den code %play_counter% gegebenfalls in %play_count% ändern.
Kommt darauf an, welches Playcount Ihr verwendet! (offizell oder inoffizell)

Farbverlauf einer Ausgabe
Hier am Beispiel vom Artist!
Einfügen unter Preferences/Display/Columns UI/Playlist view/Columns/Artist/Display
Farben müssen gegebenfalls angepasst werden.

[$transition(%Artist%,$rgb(229,232,222),$rgb(129,136,147))]
Sieht so aus: farbverlauf.png defekter link entfernt - grimes

Klammerinhalt bei Titeln färbig machen
Einfügen unter Preferences/Display/Columns UI/Playlist view/Columns/Title/Display
Farben müssen gegebenfalls angepasst werden.

$replace(%title%,'(',$rgb(72,72,255,72,72,255)'(',')',')')
Sieht so aus: klammern_in_blau.png defekter link entfernt - grimes

Eine Progressbar in der Playliste selbst
Hier in diesem Beispiel wird hinter dem abspielendem Titel eine Progressbar gesetzt!
Einfügen zum bestehendem Code für den Titel, unter Preferences/Display/Columns UI/Playlist view/Columns/Title/Display
Farben und Länge bzw. Symbole müssen gegebenfalls angepasst werden.

$if(%_isplaying%,
$puts(len,$muldiv(%_time_elapsed_seconds%,20,%_time_total_seconds%))
$rgb(220,107,107)$repeat(█,$get(len))
$rgb(235,238,252)$repeat(█,$sub(20,$get(len)))$rgb())

Sieht so aus: progress_playlist.png defekter link entfernt - grimes

Römische Ziffern für die Tracknummer
Einfügen unter Preferences/Display/Columns UI/Playlist view/Columns/Tracknumber/Display

$roman(%tracknumber%)
Sieht so aus: rf6m_ziffern.png defekter link entfernt - grimes

Tag-Matrix für fehlende Tags in den Songs
Einfügen unter Preferences/Display/Columns UI/Playlist view/Columns/Tag-Matrix/Display
Farben müssen gegebenfalls angepasst werden.

// checks if TITLE tag exists
$if($meta(title),$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))T' '
// checks if ALBUM tag exists
$if(%ALBUM%,$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))Al' '
// checks if ARTIST tag exists
$if($meta(artist),$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))Ar' '
// checks if GENRE tag exists
$if(%genre%,$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))G' '
// checks if DATE tag exists
$if(%date%,$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))D' '
// checks if TRACKNUMBER tag exists
$if(%tracknumber%,$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))#' '
// checks if replaygain TRACKGAIN exists
$if(%__replaygain_track_gain%,$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))Tg' '
// checks if replaygain ALBUMGAIN exists
$if(%__replaygain_album_gain%,$rgb(0,0,0,250,250,250),$rgb(72,72,255,72,72,255))Ag' '

Sieht so aus: tagmatrix.png defekter link entfernt - grimes
Hier noch ein etwas anderer Code:

// checks if Artist tag exists, Displayed in dark blue if the field exists, red else
$if($meta(artist),$rgb(7,17,105),$rgb(255,0,0))Art' '
// checks if title tag exists
$if($meta(title),$rgb(7,17,105),$rgb(255,0,0))Tit' '
// checks if tracknumber tag exists
$if(%tracknumber%,$rgb(7,17,105),$rgb(255,0,0))Trk' '
// checks if comment tag exists
$if(%comment%,$rgb(7,17,105),$rgb(255,0,0))Com' '
// checks if date tag exists
$if(%date%,$rgb(7,17,105),$rgb(255,0,0))Yr' '
// checks if replaygain track gain exists
$if(%__replaygain_track_gain%,$rgb(7,17,105),$rgb(255,0,0))RGT' '
// checks if replaygain talbum gain exists
$if(%__replaygain_album_gain%,$rgb(7,17,105),$rgb(255,0,0))RGA' '
// checks if genre tag exists
$if(%genre%,$rgb(7,17,105),$rgb(255,0,0))Gen' '
// checks if it is known as a Various artist album
$if($or(%track artist%,%various%),$rgb(7,17,105),$rgb(255,0,0))Var' '

Album Farbencode
Einfügen unter Preferences/Display/Columns UI/Playlist view/Columns/Albumcolor/Display
Farben müssen gegebenfalls angepasst werden.

$if(%album%,
$hsl($mod($add($crc32(%album%),$mul(%tracknumber%,2)),240),80,190)
$ifgreater(%tracknumber%,0,█,▄) ,$rgb(255,255,255))$hsl()

Sieht so aus: albumcolor.png defekter link entfernt - grimes

Unter Preferences/Display/Columns UI/Playlist view/Columns/Albumcolor/Style könnt Ihr dann noch diesen Code für einen schwarzen Hintergrund setzen:

$set_style(back,$rgb(0,0,0,0,0,0))
Verticale Progressbar
Einfügen in ein Trackinfo-Panel (nicht Trackinfo_mod!)
Farben und Länge bzw. Symbole müssen gegebenfalls angepasst werden, sowie Breite des Panels und Abstand der angezeigten Symbole.
Das bekommt Ihr schon hin.

//Set length
$puts(length,15)
//Set symbol
$puts(symbol,$char(9606))
//Set active color
$puts(active_color,$rgb(250,250,0))
//Set passive_color
$puts(passive_color,$rgb(100,100,0))
//*******************************************************************
//*******************************************************************
$puts(percent,$muldiv(%_time_elapsed_seconds%,100,%_time_total_seconds%))
$puts(progress,$muldiv($get(length),$get(percent),100))
$repeat($get(passive_color)$get(symbol)$char(10),$sub($get(length),$get(progress)))
$repeat($get(active_color)$get(symbol)$char(10),$get(progress))$char(10)

Sieht so aus:

So. Da hat sich ja einiges angesammelt! Vielleicht hat ja jemand noch welche für diesen Thread? Wäre schön!
Verbesserte oder anderwertige Codes sind gefragt.  ;)

((((( Strictly4me )))))



Zur Diskussion zu diesem Tutorial
« Letzte Änderung: 27. Januar 2014, 23:22:02 von grimes »

wallawalla

  • Ehrenmitglied
  • *
  • Beiträge: 455
  • * Tutorialschreiber *
Re: Foobar und verschiedene Codes
« Antwort #1 am: 08. September 2006, 19:39:25 »
Ratinganzeige anhand einer Farbleiste

Je wärmer die Farbe wird ums öfter wurde das Lied abgespielt. Hier der "Farbverlauf":



$ifgreater($meta(PLAY_COUNT),60,$set_style(back,$rgb(245,93,93),$rgb(243,77,77)),
$ifgreater($meta(PLAY_COUNT),45,$set_style(back,$rgb(245,128,93),$rgb(243,107,77)),
$ifgreater($meta(PLAY_COUNT),32,$set_style(back,$rgb(245,184,93),$rgb(243,172,77)),
$ifgreater($meta(PLAY_COUNT),20,$set_style(back,$rgb(245,240,93),$rgb(243,237,77)),
$ifgreater($meta(PLAY_COUNT),14,$set_style(back,$rgb(169,245,93),$rgb(154,243,77)),
$ifgreater($meta(PLAY_COUNT),9,$set_style(back,$rgb(93,245,98),$rgb(77,243,81)),
$ifgreater($meta(PLAY_COUNT),5,$set_style(back,$rgb(93,245,182),$rgb(77,243,170)),
$ifgreater($meta(PLAY_COUNT),2,$set_style(back,$rgb(93,171,245),$rgb(77,157,243)),
$ifgreater($meta(PLAY_COUNT),0,$set_style(back,$rgb(123,93,245),$rgb(102,77,243)),)))))))))

$set_style(frame-left,1,A8A8A8)
$set_style(frame-right,1,A8A8A8)

Einzufügen unter Preferences -> Display -> Columns UI -> Playlist View -> Columns -> Style

Achtung: "Use custom style spec" muss aktiviert sein und der Code funtkioniert nur wie gewünscht wenn die Playcount-Variable "play_count" heißt. Muss man halt evtl. umändern.

Hier ne kleine Vorschau:


Strictly4me

  • Akkordschreiber
  • *
  • Beiträge: 341
  • * Tutorialschreiber *
Re: Foobar und verschiedene Codes
« Antwort #2 am: 10. September 2006, 19:41:48 »
2 weitere Codes für das Trackinfo_mod Panel!

Playstatus (play, pause,stop) als Bild im Panel anzeigen lassen:

$imageabs($div($sub(%_width%,24),2),$div($sub(%_height%,24),2),icons\png\
$if(%ispaused%,pause.png,$if(%isplaying%,play.png,stop.png)),)

Sieht so aus:

Der Pfad zu den Bildern icons\png\ muss gegebenfalls angepasst werden!
Er muss bis zum jetzigen Zeitpunkt aber relativ zum Foobar-Hauptordner bleiben und es können nur *.png-Dateien angezeigt werden!

Extension/Codec (mp3, ogg, u.s.w.) des abspielenden Titels als Bild im Panel anzeigen lassen:

$if($strcmp($left(%path%,7),http$char(58)$char(47)$char(47)),
$imageabs($sub(%_width%,48),$sub(%_height%,52),icons\png\%codec%.png,),
$imageabs($sub(%_width%,48),$sub(%_height%,52),icons\png\$replace(%filename_ext%,%filename%.,).png,))

Sieht so aus:

Der Pfad zu den Bildern icons\png\ muss gegebenfalls angepasst werden!
Er muss bis zum jetzigen Zeitpunkt aber relativ zum Foobar-Hauptordner bleiben und es können nur *.png-Dateien angezeigt werden!

((((( Strictly4me )))))
« Letzte Änderung: 17. September 2006, 13:03:20 von Herzog »

download123

  • Ehrenmitglied
  • *
  • Beiträge: 235
    • ohnekontur.de
Re: Foobar und verschiedene Codes
« Antwort #3 am: 10. September 2006, 21:52:21 »
Ich hab hier noch ne alternative zu Wallwallas code:

$ifgreater(%PLAY_COUNT%,60,$rgb(245,93,93)∎,
$ifgreater(%PLAY_COUNT%,45,$rgb(245,128,93)∎,
$ifgreater(%PLAY_COUNT%,32,$rgb(245,184,93)∎,
$ifgreater(%PLAY_COUNT%,20,$rgb(245,240,93)∎,
$ifgreater(%PLAY_COUNT%,14,$rgb(169,245,93)∎,
$ifgreater(%PLAY_COUNT%,9,$rgb(93,245,98)∎,
$ifgreater(%PLAY_COUNT%,5,$rgb(93,245,182)∎,
$ifgreater(%PLAY_COUNT%,2,$rgb(93,171,245)∎,
$ifgreater(%PLAY_COUNT%,0,$rgb(123,93,245)∎,$rgb(102,77,243)∎)))))))))

Dieser code ganz normal in Display

Sw!ng

  • Gelegenheitsposter
  • *
  • Beiträge: 82
Re: Foobar und verschiedene Codes
« Antwort #4 am: 11. September 2006, 02:27:01 »
Horizontales Scrollen, bei "Überlänge" des Textes:
-Kann im Track-Info-Panel eingesetzt werden, evtl. auch i.d. Playlist, etc.

$puts(len,10)
$puts(title,Viiiiiiiiiiieeeeeeeeeeeeeel zu langer Text)

$iflonger($get(title),$get(len)
,$puts(diff,$sub($len($get(title)),$get(len)))
$puts(start,$add(1,$mod(%_time_elapsed_seconds%,$get(diff))))
$puts(start2,$select($add($div($add(1,$mod( %_time_elapsed_seconds%,$mul($get(diff),2))),$add($get(diff),1)),1),$get(start),$sub($add($get(diff),1),$get(start))))

$substr($get(title),$get(start2),$add($get(start2),$get(len)))
,$get(title))
(In der ersten Zeile wird die "erlaubte" Länge, in der zweiten der gewünschte Text gesetzt.)
« Letzte Änderung: 11. September 2006, 19:47:42 von Sw!ng »
It doooon't mean a Th!ng, if it aaaaiiin't got that Sw!ng ...!!

Strictly4me

  • Akkordschreiber
  • *
  • Beiträge: 341
  • * Tutorialschreiber *
Re: Foobar und verschiedene Codes
« Antwort #5 am: 20. September 2006, 10:47:42 »
Wechselnde Noten oder blinkender Pfeil hinter dem Titel in der Playliste

Code mit wechselnden Noten:

$if(%_isplaying%,
$select($add(1,$mod(%_time_elapsed_seconds%,2)),$rgb(0,0,0,0,0,0)'♪♫♩♬',$rgb(0,0,0,0,0,0)'♫♪♬♩'))

Hiermit werden alle Noten in schwarz angezeigt und gewechselt. Mit den Fabcodes kann man die Noten dann auch noch zum Blinken bringen, wenn man das will. Der Code gehört im Column "Titel" zum bestehenden Code unten angefügt, im Reiter "Display".
Benötigt wird Arial Unicode MS!

Code mit einem einzelnen Pfeil:

$if(%_isplaying%,
$select($add(1,$mod(%_time_elapsed_seconds%,2)),$rgb(255,255,255,72,72,255)'➨',$rgb(0,0,0,255,255,255)'➨'))

Der Code gehört im Column "Titel" zum bestehenden Code unten angefügt, im Reiter "Display".
Benötigt wirdArial Unicode MS! Ist hier zu sehen unter Abspielenden Titel blinken lassen.

((((( Strictly4me )))))
« Letzte Änderung: 29. Januar 2010, 10:02:45 von tedgo »

Spirit_of_the_ocean

  • * Tutorialschreiberin *
  • Ehrenmitglied
  • *
  • Beiträge: 1045
Re: Foobar und verschiedene Codes/ Tags
« Antwort #6 am: 09. März 2007, 10:03:12 »
Hier ist eine Ergänzung zum vorigen Post von Strictly4me.
Dieser Code hier
$if(%_isplaying%,
$select($add(1,$mod(%_time_elapsed_seconds%,2)),$rgb(0,0,0,0,0,0)'♪♫♩♬',$rgb(0,0,0,0,0,0)'♫♪♬♩'))
wird in den neuen Versionen von dem Track Display (ehemals Track info mod) und der Single Column Playlist wie im Panel ui nicht direkt unterstützt.
Beim Versuch diesen Code einfach hereinzukopieren werdet ihr statt Noten Fragezeichen sehen.

Lösung::
Die Zeichen die ihr zum Beispiel in einem Textverarbeitungsprogramm seht,  müssen in Dezimalzahlen umgewandelt werden.

Vorgehensweise:
Ihr öffnet den Rechner in Windows (unter Zubehör) geht unter Ansicht auf wissenschaftlich. Dann stellt ihr den Rechner auf Hex ein und geht den Wert für das gewünschte Zeichen ein. Dann schaltet ihr auf decimal um und es wird ein neuer Wert angezeigt.
Angezeigt wird das ganze mit $char(Wert).

Der neue Code lautet dann:
$if(%_isplaying%,
$select($add(1,$mod(%_time_elapsed_seconds%,2)),$rgb(0,0,0,0,0,0)$char(9834)$char(9835)$char(9833)$char(9836),$rgb(0,0,0,0,0,0)$char(9835)$char(9834)$char(9836)$char(9833)))   
                             
« Letzte Änderung: 09. März 2007, 10:05:30 von Spirit_of_the_ocean »

Legolas

  • Gelegenheitsposter
  • *
  • Beiträge: 29
Re: Foobar und verschiedene Codes/ Tags
« Antwort #7 am: 17. Mai 2007, 21:06:54 »
Rating und HoN System. Konfigurierbar und funktioniert auch mit eigenem Rating.

Für dieses Rating System sind die Komponenten Columns UI und CWB_Hooks notwendig.

Das Rating hat einige Variablen, die das Rating anpassen. Das Skript dafür seht ihr unter diesem text. dieses Skript muss in das Global Variables Feld eingefügt werden.
//////////////////////////////////////////////////////////////////////////////////////////////////////
//Rating und HoN Einstellung
//////////////////////////////////////////////////////////////////////////////////////////////////////
//Ab welchem Playcount ist das maximale Rating erreicht
$puts(iraMax,20)
//Farbe für HoN, beim max Placount
$set_global(raColMaxH,0)
$set_global(raColMaxS,200)
$set_global(raColMaxL,100)
//Farbe für HoN, beim min Playcount
$set_global(raColMinH,120)
$set_global(raColMinS,200)
$set_global(raColMinL,150)
//Der DayFactor bestimmt, wieviele playcount punkte abgezogen werden.
$set_global(raDayFactor,5)
//Globaler MaxPlaycount
$set_global(raMax,$get(iraMax))
//Ab welcher Punktzahl ist ein Ratingstern für Autorating zuzusprechen
//Ein Stern
$set_global(ra1,$div($mul($get(iraMax),5),100))
//Zwei Sterne
$set_global(ra2,$div($mul($get(iraMax),15),100))
//Drei Sterne
$set_global(ra3,$div($mul($get(iraMax),45),100))
//Viere Sterne
$set_global(ra4,$div($mul($get(iraMax),70),100))
//Fünf Sterne
$set_global(ra5,$get(iraMax))
//Rating Typ
//1 = Eigene Rating übereblendet das Autorating
//2 = Halbtransparenz
$set_global(raSetting,2)
//Rating Farben
//Voll (Auto und Eigene Rating
$set_global(raColFull1,$rgb(200,0,0,200,0,0))
$set_global(raColFull2,$rgb(240,20,20,240,20,20))
//Nur Eigene Rating
$set_global(raColHalf1,$rgb(255,180,0,255,180,0))
$set_global(raColHalf2,$rgb(255,200,0,255,200,0))
//Nur Auto Rating
$set_global(raColAuto1,$rgb(100,100,140,100,100,140))
$set_global(raColAuto2,$rgb(120,120,155,120,120,155))
//Kein Rating
$set_global(raColNone1,$rgb(200,200,210,200,200,210))
$set_global(raColNone2,$rgb(220,220,230,220,220,230))
//Rating Zeichen
//Verwendet
$set_global(raChar1,$char(9733))
//Nicht verwendet
$set_global(raChar2,$char(9734))

Zwei Rating spalten habe ich natürlich auch noch zur Verfügung. Die Skripte (Display, Style und Sort) findet ihr auch hier. unter den Skripten versuch ich noch ein wenig auf die Skripte einzugehen und zu den Settings.

Rating Spalte
Display:
$puts(raPlaycount,$sub(%play_count%,$div(
$ifgreater($len(%last_played%),9,
$cwb_datediff(%last_played%,%cwb_systemdatetime%),0),
$get_global(raDayFactor))))

$ifgreater(0,$get(raPlaycount),$puts(raPlaycount,0),)
$ifgreater($get(raPlaycount),$get_global(raMax),
$puts(raPlaycount,$get_global(raMax)),)

$if(%track_rating%,$puts(raMyRating,%track_rating%),$puts(raMyRating,0))
$ifgreater($get(raPlaycount),$sub($get_global(ra5),1),$puts(raStars,5),
$ifgreater($get(raPlaycount),$sub($get_global(ra4),1),$puts(raStars,4),
$ifgreater($get(raPlaycount),$sub($get_global(ra3),1),$puts(raStars,3),
$ifgreater($get(raPlaycount),$sub($get_global(ra2),1),$puts(raStars,2),
$ifgreater($get(raPlaycount),$sub($get_global(ra1),1),$puts(raStars,1),
$puts(raStars,0))))))

$ifequal($get_global(raSetting),1,
$ifequal($get(raMyRating),0,
$transition($repeat($get_global(raChar1),$get(raStars)),
$get_global(raColAuto1),$get_global(raColAuto2))
$transition($repeat($get_global(raChar2),$sub(5,$get(raStars))),
$get_global(raColNone1),$get_global(raColNone2)),
$transition($repeat($get_global(raChar1),$get(raMyRating)),
$get_global(raColFull1),$get_global(raColFull2))
$transition($repeat($get_global(raChar2),$sub(5,$get(raMyRating))),
$get_global(raColNone1),$get_global(raColNone2))),
$ifequal($get_global(raSetting),2,
$ifgreater($get(raStars),$get(raMyRating),
$transition($repeat($get_global(raChar1),$get(raMyRating)),
$get_global(raColFull1),$get_global(raColFull2))
$transition($repeat($get_global(raChar1),$sub($get(raStars),$get(raMyRating))),
$get_global(raColAuto1),$get_global(raColAuto2))
$transition($repeat($get_global(raChar2),$sub(5,$get(raStars))),
$get_global(raColNone1),$get_global(raColNone2)),
$transition($repeat($get_global(raChar1),$get(raStars)),
$get_global(raColFull1),$get_global(raColFull2))
$transition($repeat($get_global(raChar1),$sub($get(raMyRating),$get(raStars))),
$get_global(raColHalf1),$get_global(raColHalf2))
$transition($repeat($get_global(raChar2),$sub(5,$get(raMyRating))),
$get_global(raColNone1),$get_global(raColNone2)
)),))

Style bleibt aus

Sort
$if($stricmp(%playlist_name%,'Album View'),,
$puts(raPlaycount,$sub(%play_count%,$div(
$ifgreater($len(%last_played%),9,
$cwb_datediff(%last_played%,%cwb_systemdatetime%),0),
$get_global(raDayFactor))))

$ifgreater(0,$get(raPlaycount),$puts(raPlaycount,0),)
$ifgreater($get(raPlaycount),$get_global(raMax),
$puts(raPlaycount,$get_global(raMax)),)

$if(%track_rating%,$puts(raMyRating,%track_rating%),$puts(raMyRating,0))
$ifgreater($get(raPlaycount),$sub($get_global(ra5),1),$puts(raStars,5),
$ifgreater($get(raPlaycount),$sub($get_global(ra4),1),$puts(raStars,4),
$ifgreater($get(raPlaycount),$sub($get_global(ra3),1),$puts(raStars,3),
$ifgreater($get(raPlaycount),$sub($get_global(ra2),1),$puts(raStars,2),
$ifgreater($get(raPlaycount),$sub($get_global(ra1),1),$puts(raStars,1),
$puts(raStars,0))))))

$ifequal($get(raMyRating),0,$get(raStars),$get(raMyRating)))

Hot Or Not
Display bleibt aus

Style
$puts(raPlaycount,$sub(%play_count%,$div(
$ifgreater($len(%last_played%),9,
$cwb_datediff(%last_played%,%cwb_systemdatetime%),0),
$get_global(raDayFactor))))

$ifgreater(0,$get(raPlaycount),$puts(raPlaycount,0),)
$ifgreater($get(raPlaycount),$get_global(raMax),
$puts(raPlaycount,$get_global(raMax)),)

$puts(raCol,$hsl(
$add($div($mul(
$sub($get_global(raColMaxH),$get_global(raColMinH)),
$div($mul(100,$get(raPlaycount)),$get_global(raMax))
),100),$get_global(raColMinH)),
$add($div($mul(
$sub($get_global(raColMaxS),$get_global(raColMinS)),
$div($mul(100,$get(raPlaycount)),$get_global(raMax))
),100),$get_global(raColMinS)),
$add($div($mul(
$sub($get_global(raColMaxL),$get_global(raColMinL)),
$div($mul(100,$get(raPlaycount)),$get_global(raMax))
),100),$get_global(raColMinL))))

$set_style(back,$get(raCol),$get(raCol))
$set_style(frame-left,1,A8A8A8)
$set_style(frame-right,1,A8A8A8)

sort
$puts(raPlaycount,$sub(%play_count%,$div(
$ifgreater($len(%last_played%),9,
$cwb_datediff(%last_played%,%cwb_systemdatetime%),0),
$get_global(raDayFactor))))
$ifgreater(0,$get(raPlaycount),$puts(raPlaycount,0),)
$num($get(raPlaycount),3)

Die Hot Or Not Idee habe ich von WallaWalla abgekupfert und abgeändert. Die farben werden von 6 globalen variablen bestimmt. raColMin und raColMax. Die Farben werden im HSL bestimmt. Vordefiniert seht ihr ein kaltes Blau bei ColMin und ein tiefes Rot bei ColMax. Die Variable raMax bestimmt, ab welchem Playcount das maximale Rating für ein Lied erreicht ist. raDayFactor wird verwendet um Playcount Punkte abzuziehen, wenn das Lied länger nicht gehört wird. Alle 5 Tage wird ein Playcount Punkt abgezogen. kann ebenfalls geändert werden. Im Bild unten in der farbigen Spalte seht ihr das Ergebnis.

Das Rating ist auf 5 Zeichen begrenzt. Als Ratingfeld habe ich %Track_Rating% in meiner Sammlung verwendet. Falls das Feld bei euch anders heisst, muss das im Skript geändert werden. Auch hier wird der Playcount verwendet um ein automatisches rating zu ermitteln. Abhängig vom raDayFactor und raMax. Im Bild seht ihr rote, gelbe, dunkelgraue und hellgraue Sterne. Dunkelgrauen sind die sterne durch das Autorating. Rote sterne bedeutet, dass das Lied sowohl durch das automatische als auch durch das manuelle Rating den Stern verdient. Gelbe Sterne gibt's nur, wenn das eigene Rating größer ist als das Automatische. Die Hellgrauen bleiben aus. Sind also nicht verwendete. All diese Farben können über die Globalen variablen geändert werden. auch das Zeichen (hier die Sterne) können da geändert werden.

Viel Spaß damit. Für Fragen stehe ich jederzeit zur Verfügung.