AIMP Forum
AIMP for PC => Вопросы / Questions => Topic started by: ivanlc on June 12, 2026, 16:02:38
-
Hi.
Is it possible to explicitly hide the playlist when starting AIMP from the command line, regardless of whether or not it was last opened with playlists visible?
I can't see anything in the command line switches list...
-
Is it possible to explicitly hide the playlist when starting AIMP from the command line, regardless of whether or not it was last opened with playlists visible?
No. What is your scenario?
-
Hi Artem.
Thanks for getting back to me.
The scenario as you (quite perfectly!) term it, is that my PC is always on because I have multiple AIMP windows open simultaneously, each muted and streaming a different radio station that I like (see screenshot).
The playlists are switched off for every instance except one; this instance has the playlist visible as it contains new/favourite songs that I've recently downloaded and will listen to when none of the streamed stations is playing a song I like.
I have RF speakers all around my house and a transmitter connected to one of my PC's audio outputs. I use an RDP app on my phone to view my PC and can quickly mute/unmute any station that begins playing a song that I like, wherever I am in the house/garden.
I only very recently discovered that Microsoft PowerToys Workspaces could be used to save a desktop layout, letting you specify the exact coordinate positions of any opened apps when the PC boots up. (Another, only very recent discovery is that AIMP can be launched from command line with various arguments - including playlist item numbers - which I've now set up in Workspaces so that each AIMP window will stream one of the 10-12 radio stations in my Radio Stations playlist.) :D
Prior to this, I'd have to manually drag each instance of AIMP to achieve the order shown in the screenshot each time the PC booted up, along with manually getting each instance to stream one of the 10/12 stations, which is quite a time consuming exercise.
Given how far I've now managed to come with the process of automating the startup and organisation of all my AIMP windows on boot, the *only* thing now missing is the ability to show or hide the playlist for each AIMP instance from the command line.
Given how powerful & flexible you've made this superb app Artem, I would not have thought that adding a command line switch to show or hide the playlist would have been at all difficult for you...(!) 🙏🤞
Warm & hopeful regards,
Ivan. 😊
-
You have a rather specific task. The layout of elements and the number of windows are set directly by the skin, so you cannot disable a particular window from the command line. In any case, the player restores the window state when it is launched, which was when it was closed. Alternatively, you can patch the configuration file of the used skin, where the window state is written when the program is closed.
-
Heh heh. Indeed, the task *is* "very specific"...! I *love* my music!! 🎧🎼 :D
I figured out awhile ago that the app starts up in the state it was in when last closed, so for the moment, I just make sure that I close the instance that has the playlist visible first before closing the others.
Looking in the skin's .ini file and doing a bit of testing, I can see that the "Visible" parameter under the [PlaylistFrame] section of the file changes between 0 and 1 depending on whether or not the playlist was visible when an instance of the app is closed.
Can I ask why you just didn't include a switch to show/hide the playlist, given how comprehensive/flexible you've made the switch options list - and how much extra room on the desktop the playlist can take, depending on the number of entries and the skin you're using?
-
Can I ask why you just didn't include a switch to show/hide the playlist, given how comprehensive/flexible you've made the switch options list - and how much extra room on the desktop the playlist can take, depending on the number of entries and the skin you're using?
Because AIMP is not console app. Almost functions can be used only from GUI.
-
...👍
So can I also assume that there's no way to pin each AIMP window other than by doing so via the GUI?
-
Or via configuration file
-
Do I set the variable that pins a window in the AIMP.ini file or the skin's .ini file?
Also, what is the pin variable name and which section of the .ini file should it appear under?
I really have to congratulate you on the creation of AIMP, its associated ecosystem - and how comprehensive you've made both, Artem.
I was a developer myself (only for 4 years until I had a bad car accident 2000) and so know the amount of work it takes to just create a working app!
I can't believe how much you've been able to create - and that you've done it all yourself...
Maksimal'ny respekt, moy drug...!!!🙇♂️
-
AIMP.ini file or the skin's .ini file?
Skin's ini
Also, what is the pin variable name and which section of the .ini file should it appear under
Section name is depended from used skin. As I say before, each skin has its own set of windows and its own names.
For example, in default skin it named "PlaylistWindow". There are all possible variables:
[PlaylistWindow]
Locked=0
Docked=1
Position=966,252,1365,969
StayOnTop=0
DPI=144
ToolbarMode=0,0,0,399
WindowState=0
Visible=1
PositionMagnets=0,0,0,0
PositionMagnetOffsets=0,0,0,0
ScreenSize=0,0,2560,1380
ScreenIndex=0
-
Hi again Artem.
I think the way the /PAUSE switch works is incorrect.
Since there is already a /PLAYPAUSE switch - which begins playback if the the previous state was paused and pauses playback if the previous state was playing - surely the /PAUSE switch should *always* start the indicated playlist in a paused state, rather than the opposite of the last state the player was in - which is what the /PLAYPAUSE switch already does, no...?
It's a similar thing for the /MUTE switch; I think an /UNMUTE option is required so you can explicitly specify whether an instance of AIMP is muted or not, rather than relying on the previous state of the app when it was last closed.
(You could perhaps add a /MUTE-UNMUTE switch which would function in a similar way to /PLAYPAUSE if you just wanted to do the opposite of the current setting - so essentially an XOR operation).
What do you think...?
🤔
-
I think the way the /PAUSE switch works is incorrect.
This command pauses or resume the currently playing track. It does not start playlist playback if playback is stopped.
/PLAYPAUSE can start the playlist playback if there is no playing track.
/VOLUME to specify target volume instead of /MUTE
Anyway, CLI is obsolete way to control the app. These switches was introduced 15-20 years ago. I recommend to write a plugin if you need to a control the player in automatic way.
-
Ok.
I've installed Visual Studio.
I was a pretty good C/C++ coder for the for the four years I was a software engineer before my brain injury in 2000; still remember more than I thought I would.
What do I need to know/where do I go in terms of API info to put together an AIMP plugin? Which libraries do I need and where do I download them?
It's been 26 years since I've done any sort of coding - plus my thinking/memory problems won't help things - so please forgive any stupid questions I send your way, Artem...(!) :-\
i.
-
What do I need to know/where do I go in terms of API info to put together an AIMP plugin? Which libraries do I need and where do I download them?
https://aimp.ru/?do=download&os=desktop&cat=sdk
There is help manual
-
Hi Artem.
I've realised that, unfortunately, writing a plugin for AIMP is a bit beyond me now, post brain injury.
There are a lot of things I've been able to do since my injury, but coding - especially using an unfamiliar development platform/environment - is most definitely not one of them, sadly. :(
I know you consider the command line obsolete, but in terms of my "very specific" requirements (as you referred to them) would it be at all possible for you to simply add an /UNMUTE switch in order to explicitly unmute an AIMP instance, instead of having just the /MUTE switch which mutes/unmutes an instance depending on the state the player was in when it was last closed?
The PowerToys Workspace script I've created works perfectly and opens/positions all eleven instances of AIMP on the desktop as and where I want them.
The only ONLY insurmountable issue is that because of the XOR-like way in which the /MUTE switch works, if the last closed instance of AIMP was muted, all eleven instances startup at full volume playing different streams - which is not ideal, as I'm sure you can imagine...! 🫣😖
As I said, I know you consider the command switches to be obsolete, but I'm sure that as skilled/experienced a coder as you clearly are, adding an explicit UNMUTE switch wouldn't take more than a few minutes of your time, whereas me trying to learn a new development paradigm and then having to try to write a plugin is just impossible. Prior to my accident, no problem; now - after the brain injury and 26 years of not having written a line of code - there's just no way. ???
NB: is it possible to mute/unmute AIMP instances via the AIMP.ini file? If so, this might be an alternative way to achieve my goal...🤔
-
Please, try on build 3070. I've added parameters for /MUTE switch: specify /MUTE=0 to unmute or /MUTE=1 to mute.
-
Hi Artem.
Maximum respect for creating this build for me. 🙇♂️
I didn't expect you to even bother replying, never mind creating a custom build! 🤗
... Unfortunately, however, build 3070 doesn't seem to support the /DEBUG switch; only one instance is allowed whether or not the /DEBUG switch is specified.
Also, I've tried specifying /MUTE=0 and /MUTE=1, but each time the one instance opens, it isn't muted; rather the volume is set to zero, which isn't the same thing. I can do this with the /VOLUME switches - which isn't ideal because it sets the volume to zero instead of muting it... :(
Is the /DEBUG functionality available in build 3070 at all or have you perhaps (unintentionally) omitted it...?
-
I didn't expect you to even bother replying, never mind creating a custom build!
This is not a custom build, I've added parameters to official branch.
Unfortunately, however, build 3070 doesn't seem to support the /DEBUG switch
Apparently, you haven't read the changelog, as AIMP6 has a separate key for running a second copy, and /DEBUG only activates debugging.
rather the volume is set to zero, which isn't the same thing
No, it does not. Of course, if you've set volume to zero, the mute will do nothing
-
Hi again Artem.
I need give you "props" (which means "proper respect" in English street jargon 😉) for officially implementing the /NEWINSTANCE switch...🙇♂️
This makes a lot more sense than /DEBUG did...(!) 👍/👌
(Although I can completely understand that in the early years of the app's development - before it (quite rightfully) became one of the most popular and feature-rich audio apps as it is now - running multiple instances would have been something that only you (as the developer) and serious audiophiles like myself would really have needed to do. 🎵:D🎶)
I also need to give you (even more👌) props for implementing the explicit /MUTE switch.
... Now I know how to use it correctly (initially, it didn't work because I'd put "=" between the word "MUTE" and the value...🤦♂️), all 12 instances of AIMP open exactly where I want them to on the desktop - and without the NOISE of 12 different radio stations all streaming at maximum volume...!! 😱/😖
Now could I also suggest adding a /PLAYLIST switch...?
The playlist window is typically much bigger than the player window and so takes up a lot more space on the desktop.
I think that being able to show or hide it for particular instances of the app with a "/PLAYLIST 1" and a "/PLAYLIST 0" switch would be an incredibly useful feature...🙏
... What do you think...?
-
Now could I also suggest adding a /PLAYLIST switch...?
The playlist window is typically much bigger than the player window and so takes up a lot more space on the desktop.
I think that being able to show or hide it for particular instances of the app with a "/PLAYLIST 1" and a "/PLAYLIST 0" switch would be an incredibly useful feature...🙏
As I say before, it depends from used skin. Some skin may not have separate playlist window.
-
Actually, it's no longer a problem. 8)
Since I always do a portable install, what I've done is install two copies of AIMP in two different directories.
Then, using PowerToys Workspaces, I simply start 12 copies - for each of which the playlist is turned off - each instance streaming one of the 12 stations I listen to.
I then start a single playlisted instance to the left of the other 12, which is set to play the tracks on the HDD which I want to play when not streaming.
Since i can now explicitly mute/unmute each instance thanks to your de-XORing the switch,
(🙇🏿♂️) the cacophony situation is avoided. 👍🏿
My only issue was that after carefully curating the index of the station each of the non-playlisted instance plays, PowerToys wouldn't start them. However, a restart of the system fixed this issue, so everything is now pretty much copasetic...😊