Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Discussion: preset editor #204

Open
ghost opened this issue May 10, 2019 · 5 comments
Open

Discussion: preset editor #204

ghost opened this issue May 10, 2019 · 5 comments

Comments

@ghost
Copy link

ghost commented May 10, 2019

I was reading here: http://wiki.winamp.com/wiki/MilkDrop_Preset_Authoring

What are the plans/status for preset editor in projectm? I would like to get this operation so the community can easily generate/share new presets.

@revmischa
Copy link
Collaborator

No plan right now, one would be great. A emscripten or SDL version would be ideal, because it would be nice and cross-platform.

Related issues:
#145
projectM-visualizer/frontend-sdl-cpp#8
#113

A live editor would be really nice. Especially if it could provide a basic abstraction over the raw preset file code, especially for editing shaders. Labeled fields for various parameters and a basic reference would be very helpful for newbies.
Keyboard and MIDI input to modify global parameters on the fly would be great for performances.

Any other suggestions/desires people have? Who wants to work on this?

@cyberic99
Copy link

I don't know if you are aware of this project: https://github.com/jberg/butterchurn

@revmischa
Copy link
Collaborator

I don't know if you are aware of this project: https://github.com/jberg/butterchurn

Yes, it's awesome, and we could do something very similar with projectM. There is some emscripten project configuration already in-tree and a stale PR #92 to improve it. It hasn't been revisited since switching to GLES-compatible GL, which should enable projectM to run in a web browser, finally. Someone just needs to do it.

@kblaschke
Copy link
Member

This is quite an old, stale topic as it seems, yet still relevant.

My personal take on this would be to implement a preset editor using the existing Qt GUI, which already has a simple text-based editing window, but that provides nothing more than opening the preset file in any other editor.

Since Qt is cross-platform, it works on all major desktop platforms and even Android and WebAssembly. The only non-portable portion of the application is the audio source, there are two separate applications to use either Pulseaudio or JACK, both Linux audio APIs. Replacing these platform-specific implementations with a cross-platform audio library and also adding a file-based audio source which simply streams an audio file into the visualizer would be a good thing to have.

As for the editor, I imagine something similar to Shadertoy would work well, having the editors for the different preset features on one side and a small preview renderer on the other which you can reload by pressing alt-return or something similar.

The preset parser already validates a lot of stuff, showing the error messages in the editor would also be of great use.

@revmischa
Copy link
Collaborator

Yeah agree 100% to all of that.
Other option is to build a web UI with emscripten. Anyone can go try their hand at writing presets without even downloading anything, and would make it a lot easier to share and publish presets.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants