OBS Voicemeeter

OBS Voicemeeter 1.0.0

ryantheleach

New Member
Looking at the remote API, it seems like you have a limited amount of external applications. When adding multiple VM sources, does the plugin use a single 'client' ?
 

ryantheleach

New Member
I've been experiencing issues where OBS-Voicemeeter no longer shows the inputs in the mixer. Restarting OBS after VoiceMeeter has started does not fix this.
 

n3v3rm1nd

Member
Changing the latency in my ASIO outpuit device (Soundblaster Z) stops any sound coming in to OBS. I have to restart OBS completely, removing the source or changing stuff does not work.
 

I3ordo

Member
All my problems about OBs and voicemeeter are gone now.
except this.
Sometime when i launch OBS, the plugin cant receive from Voicemeeter, i have to make changes to the Voicemeeter Source in OBS, if it s in output mode, make it input, hit ok
then reconfigure to be "output" hit ok and now it works again.

I wish this was not necessary or a re-initialize feature via hotkey.
 

I3ordo

Member
sometimes, it stops picking up audio from "Voicemeeter Insert/output B1.

to fix that, i go to properties, change mode from "Voicemeeter Insert/output" to "Voicemeeter main " hit ok, and re enter configuration, revert to ""Voicemeeter Insert/output" again. That's cumbersome as it sounds and it can happen anytime, not frequent though...

Irreplaceable plugin for me and i wish there was a cure when it stops working.

I have been waiting to make a tutorial video about this plugin but this issue just makes me wait a bit more.
 

Swamp_Spirit

New Member
Is anyone else having the problem that whenever you have OBS open then all of the audio turns all staticy? If so, does anyone know how to fix it? Please, I really want this to work, it seems really cool/useful.
 

I3ordo

Member
Is anyone else having the problem that whenever you have OBS open then all of the audio turns all staticy? If so, does anyone know how to fix it? Please, I really want this to work, it seems really cool/useful.
hey!
*Make sure all audio devices (both playback and input devices) set to same rate and hz (48000 - 16 bit in my case), I have a mic which has only 16000hz and 16bit support and it does not create problems.
*All sound devices allow exclusive control and application priority.


if all else fails, which i think it wont, run as a administrator
 

vburel

New Member
hello, just saw this thread recently, if required we can check with the developer if all our process are well implemented.

To make Voicemeeter working well with a client application attached to one of our internal callback, there are basically two pre-requisites:
1- On Voicemeeter side, the main stream (given by output A1 device) must be stable and using not too small buffer (> 128, between 256 and 1024 samples buffer is the right range) if the stream is not stable enough with 256 samples buffer, simply try 512.
2- On the Client application side, The callback must process audio buffers in time. it means that for each call, the processing in the callback must stay below the buffer time. if it goes over, it will produce a cut in the sound (because the callback is strictly synchronized with a swap buffer with the Voicemeeter main stream).
 

I3ordo

Member
Hello Mr VB!
I am just a regular user of this great plugin and have no knowledge on the development side of things however i am very curious if it is possibility at all to fix this plugin's one huge downfall. If you restart the audio engine of "VM" , or change the preferred bitrate of "VM"(as changing bitrate restarts the VM engine as well), this neat plugin will stop receiving any data from "VM" until the next launch of OBS. Is it really impossible to re-establish the link between VM and the plugin?

Btw , this great plugin lets you:
*Have multiple copies of a "sound device/audio input source" which in turn lets you have, RAW game along with the side-chained Game audio. It is the same for mics and BUS sources.
*It also much easier to main the sound sources if they are added to OBS via this plugin. Normally, i mean without this plugin, you have to specifically assign devices to sources within OBS and if you change the UBS port, or give the device a different name, all connections, filters, side-chains are are lost and have to be linked in. But if you use this plugin, you just assign strips and BUSes and you wont have to look out for broken assignments.

Now, i dont want to start with "what VM helps you achieve in OBS" as it would take a much longer post :)
 

vburel

New Member
ok, there is maybe a problem to manage the stream restart inside the plug-in. but i can help only if the developer can take a look on some particular points i could indicate and adjust them if required...
 

I3ordo

Member
Thank you for your brilliant plugin @Andersama , maybe you imagined it as just a faster, latency free link source type but it provoked many usage scenarios and became irreplaceable for me, everyday i endure it s problematic nature and wish it's annoyances gone but it s the best there is and even a better one comes, i will be grateful for your efforts.

Wish you good luck on your upcoming adventures.
 

vburel

New Member
It's open source, also it's rude to call out that 'development is over' when the plugin still (mostly) works.

@vburel as it's open source, I'd be tempted to learn, fork, and PR this plugin if you are willing to say publicly what you need looked at.

https://github.com/Andersama/obs-studio/tree/voicemeeter-integration

yes, "open source" does not warrant anything about maintenance, especially when programmers are becoming more and more rare...

Anyway i took a quick look on the source , in obs-voicemeeter.cpp function audioCallback, the solution is to find a way to implement a PostMessage() in the section case VBVMR_CBCOMMAND_CHANGE: to notify the main thread to call again iVMR.VBVMR_AudioCallbackStart(); (like it's done in obs_module_load(void) function). I don't know the plug-in infrastructure enough to be more precise, but you cannot call VBVMR_AudioCallbackStart inside the callback, and it requires a temporisation: a Sleep(100) before calling it is recommended (to let the time to the callback to finish its own process).
 

I3ordo

Member
Anyone interested in developing this neat plugin further, can contact me for testing and features @ discord I3ordo#0663
 

therealdadbeard

New Member
Anyone interested in developing this neat plugin further, can contact me for testing and features @ discord I3ordo#0663

Are you continuing developement or just looking for someone? As I heard developing of this plugin stopped because the creator got barred from the OBS project or something.
 

ryantheleach

New Member
I have a (very mild) interest in maintaining this plugin, (Read, no major new features, permanently looking for a new dev) If I can learn what's needed to develop OBS plugins.

I don't see the need of having 2 mixers, once all the virtual audio cables are used, but I'm guessing my usecase of this as a low-latency integration, to simplify my UI slightly is fairly basic compared to @I3ordo .

My only fear is that I may need to upgrade to a full DAW setup in the near future, as I think VM may not have enough inputs for my next project.
 

Andersama

Member
@vburel I went back to look at the code, from memory iVMR.VBVMR_RunVoicemeeter() was the function that didn't appear to do anything on my system. My impression was that it was a synchronous launch of the voicemeeter application, and then the later function calls were to start the audio engine.
 
Top