GithubHelp home page GithubHelp logo

milkdrop2077 / milkdrop3 Goto Github PK

View Code? Open in Web Editor NEW
387.0 18.0 18.0 168.96 MB

MilkDrop 3.0, supports any audio source, double-preset (.milk2), loading presets based on beat detection and much more...

Home Page: https://twitter.com/MilkDrop2077

C++ 67.15% C 18.97% HLSL 0.79% HTML 13.10%
audio audio-visualizer audioreact audiovisualizer beatdrop milkdrop milkdrop2 music-visualisation music-visualizer projectm

milkdrop3's People

Contributors

milkdrop2077 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

milkdrop3's Issues

Request: Android port.

Long shot. Any chance you might port this to Android? Would be kinda slick with an Android TV box on a home theater. Guessing not, but hey, maybe it's something on your list.

Spout paramater control or other interface support ?

Hey there,

first of all: great work!
I went for the paid version MilkDrop3.30 on buy-me-a-coffee and I enjoy the Spout support.

Is there a way to control Milkdrop 3 via Spout or some other interface ?
I.e. drive commands from external sources like triggering a softcut or specifically setting the color instead of getting a random one.

I want to control Milkdrop 3 from OPENRNDR (on the Java Virtual Machine) or Resolume with the highest degree of control possible.
Thanks in advance !

foobar2000 component (music player plugin) + Discord streaming

Would it be possible to integrate the program as a component (plugin) for foobar2000? The benefits I see are for streaming, in particular streaming via Discord: When screen-sharing the fb2k app to be able to stream in stereo (screen-sharing just a screen is in mono I believe), if MilkDrop3 was part of foobar2000 as a UI element (or even as a child popup window) then both the stereo music and the visualizations could be streamed simultaneously.

Streaming often entails using some loopback device (VoiceMeeter) to merge multiple audio sources, and in my case MilkDrop3 isn't responding to fb2k because fb2k is set to use a different output rather than the Primary Sound Driver. If MilkDrop3 was a component, it could be made to respond no matter fb2k's chosen output. Granted, an audio output selector could be implemented into the standalone application would be more universal.

Not sure what other benefits there could be, but I understand that maintaining plugins for various players would require a lot more effort compared to just the one standalone app.

Maybe there's some other solution to being able to stream a single app which both has the music and the visualizations in one. Could MilkDrop3 forward the audio somehow? Then streaming the MilkDrop3 app would be the solution, no plugin needed.

Thanks.

Standalone

Is it possible to create milkdrop-pngs from e.g. a wave-file via command-line?
Best wishes!

Stuck in fullscreen

I'll preface this post by praising your work and thanking you for refreshing this beautiful masterpiece. Truly appreciative of your work!

Now for the issue at hand, I found myself stuck in fullscreen on my first run. From what I gathered, I'm supposed to be able to hit escape and leave FS, but I had to mess around with task manager, etc. in order to maintain control of my PC without a reboot. I have yet to retest before reporting in case I get stuck again and give up momentarily. (already troubleshooting a network problem that's got me ready to call it a day).
I'm on a fully updated Windows 10 system. Let me know if you need any other info or need me to test anything.
Thanks! I'll go play around with it some more and see if I experience a similar lockup.

exe fails to start

the executable fails to start on my win 10 machine. no error message and no error log to find :(
any way to check what is going on ?

vj_mode=1 not respecting text outputs to console

Messages that should appear on the Milkdrop Console while vj_mode=1 are instead being displayed inside the main window.
Things like:
[F2] FPS changer
[F9] Dual-preset toggle
[P] Dual-preset pattern
[U] Preset flipper

VJ mode should respect the setting to have text displayed in the console only.

One time support possible?

Sorry to ask here (got no twitter) but is there a way to give a one time donation? Don't want to use Pateron for supporting.

Mac Version?

I understand that it's 99% not possible but...

Feature Request: Control which monitor(s) for fullscreen

I'm in a situation where I have 4 screens, but I want a fullscreen milkdrop that spans only 3 of them.

Currently the only choice is "1" or "all". I'd like the option to simply set it at the command line, like: --fullscreen --use-monitors:1,2,4

SBS 3-D? Pretty please?

I have a 3-D TV that does standard side-by-side 3-D ("SBS 3-D", sometimes you see movies for download in this format).

I know Milkdrop can do anaglyph RGB glasses, so i know Milkdrop can do two renderings at once (red and blue)

Instead of red and blue, can we just get two side-by-side renderings on both halves of the screen?
{and maybe a HOU/horizontal over under as well}

That way we could use a 3DTV and level-up milkdrop to three dimensions without the red-blue color distortion of old-school anaglyph 3-d glasses and see THE MOST AMAZING MILKDROP EVERRRRRRRRRRRRRRRRRRRRRR

Unpacked MilkDrop 3.exe doesn't run

When I double-click the MilkDrop 3.exe, it doesn't run. It doesn't show an error.
There aren't errors showing in the Event Log viewer of Windows.
I have DirectX installed on Windows 10.

change the audio device MilkDrop3 listens to

I have a complicated setup with Voicemeeter Banana and route my audio into a virtual input and have voicemeeter send the audio over HDMI to my TV.

Unless I have the default audio device set in Windows as my HDMI, MilkDrop3 didn't seem to react to any audio. Is there a way to tell it to listen to my virtual input?

High FPS speed compensation

As a user without experience modifying the presets who uses a 144hz display, I would like to be able to adjust the 'speed' (i.e. how quickly the visualizer appears to move) of milkdrop (either on a preset-by-preset basis OR globally).

Forgive my naivety if this is simply impossible given how milkdrop renders each frame, but I would like to be able to have the smooth motion of the higher framerates without some presets becoming 'hyperactive' when set above 30fps.

no way to know if ` or ~ to locked or unlocked current preset

I appreciate that the F1 menu says ` / ~ [un]lock current present

But there's no way to know if it's currently locked, currently unlocked, or if you pushing the button had any effect, without sitting there for like 30 seconds.

The menu really needs to also give the current status, and change when you press the key.

I just spent like 60 seconds on changing the preset. Turns out that i did get things unstuck, but i had no way of knowing without waiting 30 seconds.

And I had no way of knowing I'd accidentally locked the current preset, because the menu overlooks printing out the current status

It's truly a best UI practice to have F1 pulldown menu also give their current values of things. For this reason.

Messages / Sprites?

Is it possible to use custom messages and sprites in MilkDrop3? It was mentioned in earlier issues requesting displaying song titles an lyrics, but I'm just interested in things like messages in the msg.ini file. I see lots of the code is there, but it's not clear if it's being used, or is just cruft left over from MilkDrop2.

Minimize Milkdrop in the system tray

Hello milkdrop2077, thank you for your fabulous work on MilkDrop3!

Can you add a function to minimize MilkDrop3 in the system tray like Spotify does to free up space in the taskbar.
And possibly a context menu to close the application with the right click on the icon.

Thanks :)

Realtek ALC1220-VB codec / ESS SABRE9118 DAC incompatibility?

Hello,

Just wanted to submit a potential bug report regarding the Realtek ALC1220-VB audio codec and ESS SABRE9118DAC included on my Gigabyte AORUS Master X570 mobo. When attempting to run MilkDrop 3.24 via the ESS SABRE9118DAC, the visualizer appears unresponsive to the audio output (using Spotify as my primary music source).

My device is connected to an LG Ultragear 27GR95QE-B via displayport and when using the LG 27GR95QE-B as my primary audio output, I am able to utilize the 27GR95QE-B 3.5mm jack to output sound to my speakers. With the 27GR95QE-B as my primary audio device, Milkdrop 3.24 correctly visualizes to the audio output when using Spotify.

I am not sure if this issue steams from Realtek's drivers or the ESS SABRE9118DAC iteself? I am willing to provide more information if needed.

Basic Sysinfo included below:

OS Name Microsoft Windows 11 Pro
Version 10.0.22631 Build 22631
Other OS Description Not Available
OS Manufacturer Microsoft Corporation
System Name SLOTHALLEN-PC
System Manufacturer Gigabyte Technology Co., Ltd.
System Model X570 AORUS MASTER
System Type x64-based PC
System SKU Default string
Processor AMD Ryzen 9 5900X 12-Core Processor, 3701 Mhz, 12 Core(s), 24 Logical Processor(s)
BIOS Version/Date American Megatrends International, LLC. F37g, 2023-09-20
SMBIOS Version 3.3
Embedded Controller Version 255.255
BIOS Mode UEFI
BaseBoard Manufacturer Gigabyte Technology Co., Ltd.
BaseBoard Product X570 AORUS MASTER
BaseBoard Version Default string
Platform Role Desktop
Secure Boot State Off
PCR7 Configuration Elevation Required to View
Windows Directory C:\Windows
System Directory C:\Windows\system32
Boot Device \Device\HarddiskVolume2
Locale United States
Hardware Abstraction Layer Version = "10.0.22621.2506"
User Name SLOTHALLEN-PC\sloth
Time Zone Eastern Standard Time
Installed Physical Memory (RAM) 32.0 GB
Total Physical Memory 31.9 GB
Available Physical Memory 23.3 GB
Total Virtual Memory 36.7 GB
Available Virtual Memory 24.2 GB
Page File Space 4.75 GB
Page File C:\pagefile.sys
Kernel DMA Protection Off
Virtualization-based security Running
Virtualization-based security Required Security Properties
Virtualization-based security Available Security Properties Base Virtualization Support, DMA Protection, UEFI Code Readonly, Mode Based Execution Control
Virtualization-based security Services Configured Hypervisor enforced Code Integrity
Virtualization-based security Services Running Hypervisor enforced Code Integrity
Windows Defender Application Control policy Enforced
Windows Defender Application Control user mode policy Off
Device Encryption Support Elevation Required to View
A hypervisor has been detected. Features required for Hyper-V will not be displayed.

Sound device Info:

Name Realtek High Definition Audio
Manufacturer Realtek
Status OK
PNP Device ID HDAUDIO\FUNC_01&VEN_10EC&DEV_1220&SUBSYS_1458A0CD&REV_1001\5&26C86C12&0&0001
Driver C:\WINDOWS\SYSTEM32\DRIVERS\RTKVHD64.SYS (6.0.9373.1, 5.89 MB (6,174,016 bytes), 2021-02-17 4:40 AM)

Name NVIDIA High Definition Audio
Manufacturer NVIDIA
Status OK
PNP Device ID HDAUDIO\FUNC_01&VEN_10DE&DEV_00A4&SUBSYS_10DE1794&REV_1001\5&919AB42&1&0001
Driver C:\WINDOWS\SYSTEM32\DRIVERS\NVHDA64V.SYS (1.3.40.14, 119.02 KB (121,880 bytes), 2023-10-07 9:20 PM)

Name NVIDIA Virtual Audio Device (Wave Extensible) (WDM)
Manufacturer NVIDIA
Status OK
PNP Device ID ROOT\UNNAMED_DEVICE\0000
Driver C:\WINDOWS\SYSTEM32\DRIVERS\NVVAD64V.SYS (4.49.0.0, 58.52 KB (59,928 bytes), 2023-11-23 4:22 PM)

Have Milkdrop Monitor a textfile for title data vis splash?

I agree that having this as a separate app is nice and it shouldn't really need to be integrated as others have suggested. So the thought was that perhaps allowing Milkdrop3 monitor a folder for an expected CurrentSong.txt file or similar. This would allow an easy solution or compromise as other people could just then make a simple component or plugin that writes to a file the current playing song that Milkdrop could just read on "content changes" and display that data within milkdrop3. Nothing to maintain on your end other then the read file content or whatever extra lines you might expose to the end user to read in for visuals.

Others out there could probably take it further beyond the scope of the main point,

A more advance option for those who may want to DJ or stream with this or something would have Milkdrop3 find matching songname.xml lyrics of current song, if Milkdrop finds matching SongName.txt or XML This TXT file could have Lyrics of said song and vised out close to synced, with some basic timestamps that would need to handled on our end (probably better as an XML).

CurrentSong.txt

Bla Bla & Garfunkel
The Sound of Silence

Song Name.XML that has the lyrics as such

<lyrics>
    <verse time="0">
        Hello, darkness, my old friend
    </verse>
    <verse time="10">
        I've come to talk with you again
    </verse>
    <verse time="20">
        Because a vision softly creeping
    </verse>
    <verse time="30">
        Left its seeds while I was sleeping
    </verse>
    <verse time="40">
        And the vision that was planted in my brain
    </verse>
    <verse time="50">
        Still remains
    </verse>
    <verse time="60">
        Within the sound of silence
    </verse>
</lyrics>

No audio input

Hi!

Where does MD3 get the audio input from?
I downloaded MD3 it worked that day. I wondered where to configure audio input, but it just worked.

Today, a few days later, no preset is responding to any audio playback. Tried winamp and browser.

Is there a possibility to configure?

Soundcard: Focusrite Scarlett Solo 3rd Gen.

I even tried a workaroud through VB-Audio Hifi-Cable (virtual audiorouting) to route winamp through the virtual audio out, then audio in, then this to my soundcard...

Thanks for your help!

Feature Request: Displayed Lyrics

I recently switched from the Butterchurn plugin on Cider and I really like how it displays live-lyrics via Musixmatch api.
Since Milkdrop3 can identify the player and current playing song is there anyway to implement Musixmatch api to display lyrics?

https://github.com/musixmatch/musixmatch-sdk

Once that is figured out, eventually it would be cool to have the lyrics blend into the visualizer after each frame like whenever you change a setting and text displays.

I'd like to help develop if you are interested.

Lyrics/Sprites/Song Names/Custom Text

I'm curious if it's possible to incorporate karaoke style lyrics? Maybe it could even pull some images to display on the sides and melt into the visuals. I remember the original had options to add sprites to hotkeys and your own text presets as well, so I can't imagine that part of it would be terribly difficult. I'm not sure of how and where lyrics can be pulled from, let alone how say, Spotify times the lyrics to music, but it sure would be cool feature. Currently I only see "Milkdrop 3" when I hit H for hard cutting. It used to be whenever the song changed it would display the song name. I realize this is a technical limitation of Milkdrop only listening to sound and not being directly connected to the music service, however I know you can link into your Spotify api via the dev section: https://developer.spotify.com/. Maybe it can be utilized somehow by those who would want to link directly to their Spotify for a more feature rich experience?

Edit: This sis supposed to be a feature request, but I can't find the option anywhere.

Help to avoid FP

Hi, your app is great, it's good to finally see something happening with milkdrop.

My two cents to avoid any FP:
-Don't use UPX, EXE compression is a thing of the past.
-Use Microsoft's SignTool to sign your app.

Have a nice day

Can't run it.

When i try to run the exe it says it can't run on my pc..? I don't know why that would be...any idea?
Win 10, i7, gtx 1080, 16gb ram.

Delete mode not working for me

I'm always getting an error message: "unable to delete the file".

It's odd, because everything is in my user folder and should be freely accessible.
It also makes no difference when I run Milkdrop with elevated rights.

I installed some stupid 8k+ presets pack and figured I'd just use the delete function whenever I see ugly ones, but I guess it wasn't meant to be ๐Ÿ˜†

Fullscreen on Second Monitor

Fullscreen on second monitor makes taskbar on first monitor disappear, taskbar on second monitor still functional. Bit more investigation windows key works on Monitor one this on Windows 10 not 11. I do use 'Start10' from stardock also when taskbar is transparent or not same issue.

Option to choose an input device

This project is awesome however I was wondering if there was a way to use it with a different audio source as it doesn't work very well with my audio setup. That's because I use voicemeter banana to mix several inputs together and out to my interface. Spotify is one of the inputs I've separated out, so it's not playing on a default device, but instead over a virtual cable. Being able to choose an input would make this pretty tidy, but right now it's a bit annoying to work with. If there is already a way to just set this then my bad, and thanks for any help.

Confusion about the folder structure

It's quite irritating to have a "Milkdrop3" folder in a "Milkdrop3" folder ;-)
When updating I also have problems doing this in the windows/program folder as I get various error messages.

MilkDrop3 does not respect the Maximum Pixel Shader read via milk3.ini.

Hey! You have implemented an algorithm that load presets very fast. I have changed something on the milk3.ini file, such as MaxPSVersion=1.
I have opened Milkdrop3 and it reads all the presets, but not respecting the PS_VERSIONS in the .milk/.milk2 file. Same happened when the Preset Rating is activated or not activated.
Any ideas why?

[Feature] Adding to Spicetify Marketplace

"Feature" request: adding this awesome plugin to the Spicetify Marketplace, where it will be found and used by thousands of fellow Spotifiers, who otherwise won't know how to find it.

Likewise, Spicetify will also provide a polished framework for embedding your plugin directly into Spotify's interface (if interested, though not required).

Winamp

Thanks for these great presets.
Is it possible to create a vis_milk3.dll so the presets can be loaded into Winamp?

Running MD 3 as a windows screensaver

You can currently change the file extension of the exe to .scr, then right click and "install" to use natively in windows as the screensaver. Thought this was cool, only problem is it does not start in full screen mode.

To start in full screen mode, the exe would need to accept command line argument

/s

See

https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ms686421(v=vs.85)?redirectedfrom=MSDN#command-line-options

Command Line Options
When Windows runs your screensaver, it launches it with one of three command line options:

/s โ€“ Start the screensaver in full-screen mode.
/c โ€“ Show the configuration settings dialog box.
/p #### โ€“ Display a preview of the screensaver using the specified window handle.

desktop mode / startup options please

The new MilkPanel.exe is great!!

But I'd like to be able to choose:

  1. to run in desktop mode

  2. to be able to checkbox which monitors to span it across (so i could use 2 out of 4, for example) for both desktop and fullscreen mode

Thank you!

The default windowed size is very tiny on a 4K screen, and resizing it is nigh impossible with Windows 10 removing the ability to make thicker borders. But then if you go full screen you can't really use your computer. I just want to be able to enjoy both milkdrop and my computer.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.