a-tg / voicemeeterfancyosd Goto Github PK
View Code? Open in Web Editor NEWOn-screen display for Voicemeeter that works with fullscreen apps.
License: MIT License
On-screen display for Voicemeeter that works with fullscreen apps.
License: MIT License
Add to OSD support for limiters. (Opts: AlwaysShowElements
, NeverShowElements
)
I'll be posting here as reference and information to whom is facing issues trying to open VMFOSD Voicemeeter Fancy OSD.
It seems WPF (which VMFOSD relies on) using DirectX9 cannot run applications using new generations (11th / 12th gen) of Intel processors with Iris GPU (which does not support DX9 natively).
When you try to open VMFOSD through Intel GPU nothing happens.
Here are some usefull information about:
https://community.intel.com/t5/Graphics/3D-rendering-issue-on-12th-gen-Intel-Core-i3/m-p/1407118/highlight/true#M109118
https://community.intel.com/t5/Graphics/Graphics-failure-with-WPF-3D-content-and-Iris-XE/td-p/1415196
microsoft/D3D9On12#52
dotnet/wpf#7076
Hi, this is a great app, I used on my old windows 10 laptop and worked fine, In got a windows 11 laptop and installed it and get this error (Attached image), I have installed .net desktop runtime from 5 version to 7 an I still have the same error, I have uninstalled the versions of .net runtime from 5 to 7 and reinstalled then and I still have the same error; I use windows 11 64 bits version, I haved run windows update to the latest, thanks for your help!!
Currently, the config.ini
file has an option to show the monitor display index (which is great btw), but is there a way to show it on multiple monitors or all monitors? Sometimes I'm only paying attention to one monitor, so I would like to just have it show on both my monitors. Would you be able to add this feature?
I'm using v0.13.0.0 and I get an empty text when the OSD appears and it stays stuck in color red
Might not be possible because effects in WPF are applied to all child elements and it breaks fonts. Not sure how to apply effects like DropShadowEffect (to emulate glowing) only to parent/root element.
An option to set mute icon OSD as persistent, i.e no fadeout.
Edit: Could also apply to other OSD elements.
If possible, add an option to resize the OSD, either individually for each element or as a whole global setting.
I had an older version (0.9.something) installed and configured, I updated to 10.x, and the app would exit with no message.
When I deleted the config and json files, It prompted me that I needed .NET 6.03, and asked me if I wanted to download it. Clicking yes did nothing.
I had 6.0, so I updated and now it works fine.
Thought you'd like to know. Thanks for the app!
del
Adding lnk to %Appdata%\Microsoft\Windows\Start Menu\Programs\Startup
Would it be possible to add an option to the config to change the border size, starting from 0 (where 0 means don't show it at all)?
Not a bug or anything, but just so you know, really appreciate this "plugin". Been using it for some months now and its sad that original voicemeeter doesen't come with this or use this. This one is a must.
https://github.com/A-tG/VoicemeeterFancyOSD/releases/tag/v0.12.0.0
; Scale of OSD. Maximum: 2, minimum: 0.5
Scale = 1.2
This version does not like floatting numbers and rounding to an integer.
Thanks for this very nice addition to the voicemeeter ecosystem :)
I've noticed one very small issue - I have dual displays here, and often use the secondary display only. This means that when I enable my primary display (read: turn on my other monitor), what was display '0' becomes display '1'.
I always want the popup to appear on that secondary display (as the primary is for gaming exclusively) so I have FancyOSD configured to use display 1.
When only the secondary is enabled, this fails gracefully and uses display 0, being the secondary monitor, and all is well.
When both displays are enabled, this works as configured and uses display 1, being the secondary monitor, and all is well.
But If I start FancyOSD with only the one (secondary) monitor enabled, then enable the primary monitor, the monitor enumeration changes during FancyOSD's run time, and the OSD appears on my primary display, display 0, in spite of being configured to use display 1.
No big stress about this but if there's a performant way to deal with it, that'd be nice, so I thought I should report it.
Originally posted by Glaived May 1, 2022
Add an option similar to AlwaysShowElements
, which will do the opposite, i.e. prevent the display of an element.
I use macros, and some apply many changes in the Voicemeeter mix.
The fact that these routing changes are all displayed on the OSD is not interesting to me since it is difficult to understand in 5s~ what was the will behind these changes. On the other hand, VB Macro Buttons allows me to understand this better, since I would have my macro in an ON state.
In my case, the NeverShowElements
option with value Buses
would be a great help since it would ignore the display of these changes.
If you have set Limiter
as a value for NeverShowElements
, when the limit value is changed, the OSD will not be displayed.
And if you change the gain, then the limit while the OSD is still displayed, only the gain change will be visually reflected.
Fast resize animation when new element is shown to add a smoothness to OSD.
System: windows 10 pro 21H2
So I download the program to latest release, double click VoicemeeterFancyOsd.exe
to get started.
The error message redirect me https://dotnet.microsoft.com/en-us/download/dotnet/6.0/runtime?cid=getdotnetcore to download .net 6.0 runtime.
I downloaded and installed the both x86 and x64 just in case. And try to open the .exe again, no luck. (shown in screenshot what I have on my machine and the error message)
I then download .net 6.0 SDK from : https://dotnet.microsoft.com/en-us/download/dotnet/6.0, now the .exe is able to run no problem.
What I have now in order to get the software running:
Not sure what's exactly new being added in the SDK. But I'd assume many non-dev user can not actually the software running with given instruction.
I am not sure how to reproduce this issue, but it happens to me at least a couple of times per day.
---------------------------
VoicemeeterFancyOSD
---------------------------
PRESS Ctrl + C TO COPY THIS TEXT
Unhandled exception:
Insufficient memory to continue the execution of the program. at System.Windows.Media.Composition.DUCE.Channel.SyncFlush()
at System.Windows.Interop.HwndTarget.UpdateWindowSettings(Boolean enableRenderTarget, Nullable`1 channelSet)
at System.Windows.Interop.HwndTarget.UpdateWindowPos(IntPtr lParam)
at System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
---------------------------
OK
---------------------------
Garbage collector doesn't release some UI elements and parameters properly. For example when user exits Voicemeeter Potato and launch Voicemeeter Banana while VoicemeeterFancyOSD is running.
No clues why its happening. Might be because of custom UserControl names, usage of x:Name, or some WPF internal bug.
Add an option to hide the tray icon.
Usage case: user want to enable ducking in MacroButtons and change "IgnoreStripsIndexes" accordingly, and then disable ducking and clear "IgnoreStripsIndexes"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.