It is currently April 24th, 2024, 4:46 am

Is this posible???

Get help with creating, editing & fixing problems with skins
User avatar
Bayushi Tai
Posts: 13
Joined: July 17th, 2012, 4:50 am

Is this posible???

Post by Bayushi Tai »

Hello brothers, I want to make a skin with a button and when I press it more buttons with music artists appears (that I know how to) but I want to make click on an artist and (here comes the tricky part) I want RainMeter plays that entire folder of that artist with my default player... I don't want to make it that triggers into a Playlist, because every time I would add songs there (in that artist's folder) I would have to make a new Playlist file for each artist... That's why I want to RainMeter plays that entire folder no matter what songs are in the folders, wich are always changing... All I need is the command or trigger to do that...
Thanks for reading!!
mak_kawa
Posts: 908
Joined: December 30th, 2015, 9:47 am

Re: Is this posible???

Post by mak_kawa »

This code is really not smart, and incomplete. But anyway plays all mp3 files in a specific folder randomly by music player.
In this case, the default music player for music file must be equal to the player supported by NowPlaying plugin. Maybe this code has wrong concept...:-)

Code: Select all

[Rainmeter]
Update=1000
BackgroundMode=2
SolidColor=192,192,192,192

[Variables]
ArtistFolderPath="X:\YYYY\ZZZ\"

[MeasureFolder]
Measure=Plugin
Plugin=FileView
Recursive=2
Path=#ArtistFolderPath#
Extensions=mp3

[MeasureCount]
Measure=Plugin
Plugin=FileView
Path=[MeasureFolder]
Type=FileCount

[MeasureRandom]
Measure=Calc
Formula=Random
UpdateRandom=1
UniqueRandom=1
LowBound=1
HighBound=[MeasureCount:]
DynamicVariables=1

[MeasureMP3Path]
Measure=Plugin
Plugin=FileView
Path=[MeasureFolder]
Type=FilePath
IgnoreCount=1
Index=[MeasureRandom]
DynamicVariables=1

[mPlayer]
Measure=Plugin
Plugin=NowPlaying.dll
PlayerName=WMP
PlayerType=Duration

[mPlayerPosition]
Measure=Plugin
Plugin=NowPlaying.dll
PlayerName=[mPlayer]
PlayerType=Position

[PlayBegin]
Measure=Calc
Formula=1
OnUpdateAction=[!CommandMeasure mPlayer OpenPlayer][!EnableMeasure mPlayRandom][!DisableMeasure PlayBegin]

[CalcPositionM]
Measure=Time
TimeStamp=[mPlayerPosition]
TimeStampFormat=%M:%S
Format=%M
DynamicVariables=1

[CalcPositionS]
Measure=Time
TimeStamp=[mPlayerPosition]
TimeStampFormat=%M:%S
Format=%S
DynamicVariables=1

[CalcPosition]
Measure=Calc
Formula=60*[CalcPositionM]+[CalcPositionS]
DynamicVariables=1

[CalcDurationM]
Measure=Time
TimeStamp=[mPlayer]
TimeStampFormat=%M:%S
Format=%M
DynamicVariables=1

[CalcDurationS]
Measure=Time
TimeStamp=[mPlayer]
TimeStampFormat=%M:%S
Format=%S
DynamicVariables=1

[CalcDuration]
Measure=Calc
Formula=60*[CalcDurationM]+[CalcDurationS]
DynamicVariables=1

[CheckEnd]
Measure=Calc
Formula=1
IfCondition=([CalcPosition]=[CalcDuration])
IfTrueAction=[!EnableMeasure mPlayRandom]
DynamicVariables=1

[mPlayRandom]
Measure=Calc
Formula=1
OnUpdateAction=["[MeasureMP3Path]"][!DisableMeasure mPlayRandom]
DynamicVariables=1
Disabled=1

[MeterPlayMP3]
Meter=String
X=5
Y=5
W=250
H=40
ClipString=2
Text=[MeasureMP3Path]
DynamicVariables=1

[MeterProgress]
Meter=String
MeasureName=mPlayerPosition
MeasureName2=mPlayer
X=5
Y=35
W=100
H=20
Text=%1 / %2
mak_kawa
Posts: 908
Joined: December 30th, 2015, 9:47 am

Re: Is this posible???

Post by mak_kawa »

Maybe, just maybe, this is another improved version of the above code.

Code: Select all

[Rainmeter]
Update=1000
BackgroundMode=2
SolidColor=192,192,192,192
OnCloseAction=[!CommandMeasure mPlayer ClosePlayer]

[Variables]
ArtistFolderPath="X:\YYYYYY\ZZZ\"

[MeasureFolder]
Measure=Plugin
Plugin=FileView
Recursive=2
Path=#ArtistFolderPath#
Extensions=mp3
FinishAction=[!EnableMeasure MeasureList][!UpdateMeasure MeasureList]

[MeasureCount]
Measure=Plugin
Plugin=FileView
Path=[MeasureFolder]
Type=FileCount

[MeasureList]

;Random--
Measure=Calc
Formula=Random
UniqueRandom=1
LowBound=1
HighBound=[MeasureCount:]
;--Random

;Sequential--
;Measure=Loop
;StartValue=1
;EndValue=[MeasureCount:]
;--Sequential

DynamicVariables=1
OnUpdateAction=[!EnableMeasure PlayFirst]
UpdateDivider=-1
Disabled=1

[MeasureMP3Path]
Measure=Plugin
Plugin=FileView
Path=[MeasureFolder]
Type=FilePath
IgnoreCount=1
Index=[MeasureList]
DynamicVariables=1

[mPlayer]
Measure=Plugin
Plugin=NowPlaying.dll
PlayerName=WMP
PlayerType=Duration

[mPlayerPosition]
Measure=Plugin
Plugin=NowPlaying.dll
PlayerName=[mPlayer]
PlayerType=Position

[PlayFirst]
Measure=Calc
Formula=1
OnUpdateAction=[!CommandMeasure mPlayer OpenPlayer][!EnableMeasure mPlayList][!UpdateMeasure mPlayList][!DisableMeasure PlayFirst]
Disabled=1

[CalcPositionM]
Measure=Time
TimeStamp=[mPlayerPosition]
TimeStampFormat=%M:%S
Format=%M
DynamicVariables=1

[CalcPositionS]
Measure=Time
TimeStamp=[mPlayerPosition]
TimeStampFormat=%M:%S
Format=%S
DynamicVariables=1

[CalcPosition]
Measure=Calc
Formula=60*[CalcPositionM]+[CalcPositionS]
DynamicVariables=1

[CalcDurationM]
Measure=Time
TimeStamp=[mPlayer]
TimeStampFormat=%M:%S
Format=%M
DynamicVariables=1

[CalcDurationS]
Measure=Time
TimeStamp=[mPlayer]
TimeStampFormat=%M:%S
Format=%S
DynamicVariables=1

[CalcDuration]
Measure=Calc
Formula=60*[CalcDurationM]+[CalcDurationS]
DynamicVariables=1

[CheckEnd]
Measure=Calc
Formula=1
IfCondition=([CalcPosition]=[CalcDuration])
IfTrueAction=[!UpdateMeasure MeasureList][!EnableMeasure mPlayList][!UpdateMeasure mPlayList]
DynamicVariables=1

[mPlayList]
Measure=Calc
Formula=1
OnUpdateAction=["[MeasureMP3Path]"][!DisableMeasure mPlayList]
DynamicVariables=1
UpdateDivider=-1
Disabled=1

[MeterPlayMP3]
Meter=String
X=5
Y=5
W=250
H=50
ClipString=2
Text=[MeasureMP3Path]
DynamicVariables=1

[MeterProgress]
Meter=String
MeasureName=mPlayerPosition
MeasureName2=mPlayer
X=5
Y=10R
W=100
H=20
Text=%1 / %2
Or... this is not what you want? If so, I am really absurd. :-)