#plugins-and-tools
1 messages Β· Page 99 of 1
what exactly does the properties api not expose?
One thing I want is a UI element that is a list that is sort of like the UI list that appears in the settings where you select loaded plugins
but the properties API as far as I can tell only has combo box lists
I also would like to have nested popups if possible
such as an "are you sure"
i see
currently thinking of a source with custom properties, I'm sure theres one
just cant remember which
I guess another route would be for me to try to expose more UI elements through the properties API
but I'm new to OBS development
so I suspect that's a more involved thing
Does anobody know of a way or plugin to allow the webcam (single) used by multiple applications (here 2 OBS applications). I've heard its a limitation for Windows, but there is programs out there that prevents this. But there must be other ways
@silk bison i tried to find it and can't, sorry
first thing I could think of is adding it as a source in one OBS, then using Exeldros Virtual Camera Filter (https://github.com/exeldro/obs-virtual-cam-filter) to output that source to the virtual camera, and select that virtual camera in the second instance of OBS
thats okay, thats for trying
I will search around a bit more
its ultimately not the end of the world if I can't have a nicer UI, it's just... very clunky
Ill try thanks!
Do you know any plugins for a dynamic delay that supports audio?
Currently the way to do this is having two applications of OBS running, one recording and delaying that recording to the stream. Its just not really efficient though
hey guys anyone here for help ?
i have already updated my gpu driver and also my windows
if anyone please know how to solve this !?
A current log file is required to help fix your issue. Please post a link to your current log file.
- In OBS select Help > Log Files > Upload Current Log File.
- Click Copy URL and then paste the link here.
- Hardware-accelerated GPU Scheduler
- Mismatched Sample Rates
- Non-Standard Aspect Ratio
- Capture Interference
- Windows 10 2004 (OK)
- No Output Session
Intel Core i5-2500 @ 3.30GHz - Below cpu encoding requirements / Radeon R7 + R7 200 Dual - Possible bottleneck
you need to reproduce the issue before posting the log
as in, make the error appear, then post the log
- Hardware-accelerated GPU Scheduler
- Mismatched Sample Rates
- Non-Standard Aspect Ratio
- Capture Interference
- Windows 10 2004 (OK)
- No Output Session
Intel Core i5-2500 @ 3.30GHz - Below cpu encoding requirements / Radeon R7 + R7 200 Dual - Possible bottleneck
thiss ?
that's the same log file link as before
- make the error appear
- click Help -> Log Files -> Upload Current Log
okay wait
- post the new link
- Hardware-accelerated GPU Scheduler
- Mismatched Sample Rates
- Non-Standard Aspect Ratio
- Windows 10 2004 (OK)
- No Output Session
Intel Core i5-2500 @ 3.30GHz - Below cpu encoding requirements / Radeon R7 + R7 200 Dual - Possible bottleneck
the new link
04:06:27.123: [AMF] <Id: 3> Unable to set converter transfer characteristic, error AMF_NOT_FOUND (code 11) 04:06:28.998: [AMF] <Id: 3> Unable to initialize converter, error AMF_OPENCL_FAILED (code 19)
Looks like your encoder is misconfigured or incompatible. Post that log in #windows-support and ask your question again
ahh okay thanks broo β€οΈ
Hey, does anyone know anything about background-images not showing in browser sources? I get it to load properly when I load it into a browser, but no background-image textures load into OBS when I load my browser source
Hi, I tried to stream my oculus quest 2 using ndi capture hx to obs. However, I got the picture to show and the sound to be heard to obs but when I tried to record the gameplay then the game sound was not heard and the picture was cut off pretty badly. Are there any suggestions on how I can make the sound heard?
Hi all! I'm trying to connect Deckboard with OBS Studio but isn't working. I install the websocket, but nothing happens, can you guys help me?
the default css may strip away the background. If you remove it does that help?
If not, I got nothing π
If you need help or have questions about OBS, check out our #support-portal first!
- MP4/MOV Recording
- Windows 10 21H1 (OK)
- Not Admin
AMD Ryzen 5 5600X - OK! / Radeon RX 5500 XT - OK!
Record to FLV or MKV. If you record to MP4 and the recording is interrupted, the file will be corrupted and unrecoverable. If you require MP4 files for some other purpose like editing, remux them afterwards by selecting File > Remux Recordings in the main OBS Studio window.
Does anyone have any guidance on triggering a hotkey by name via obs-websocket when the hotkey has a space in the name? For example, having trouble getting a Downstream Keyer hotkey working with Touch Portal's trigger by name feature. The name in my scene collection's json file is "Show on DSK 1". I see someone else has the same issue - https://obsproject.com/forum/threads/downstream-keyer.142247/page-2#post-529149
@still pond and don't spam every channel with it, #tech-talk would've been enough
ok
yeah, thats not it. Looks more like it is an issue with obs not liking to access local files? I get the images to load if I pull them from a server, but not if I use things locally downloaded
yeah, thats possible, cant really say much without having the files and setup. You could use this to try to troubleshoot if you're comfortable with it.
!remotedebugging
To expose Chrome Dev Tools for your browser sources, add --remote-debugging-port=1234 to your OBS Studio shortcut (where 1234 is your preferred port number) and navigate to http://localhost:1234/ in Chrome to connect to the session
Thanks. The weird thing is that chrome renders the file just fine, its only OBS that is having problems
CEF is not chrome π
Also our CEF is older on Windows
move-transition seems to cause a crash [almost] every time I close OBS. has anyone experienced this?
stack is: move_source_tick -> update_item_transform -> signal_handler_signal - > pthread_mutex_unlock
wondering if some data the handler is relying on is getting destroyed before it runs, and sometimes stuff just happens to work anyway
it's mostly just an annoyance since it only happens on shutdown, but I imagine that if I'm experiencing it, probably other people are too. I don't think I can reduce it to an easy repro, unfortunately
race conditions are always fun to debug
yeah. though it might even just be a single-thread issue, where something gets "destroyed" and the memory just happens to not get trampled before being read
(sometimes)
are each of the plugins isolated? if move-transition crashes, does the whole process for all other plugins also crash? I guess that's my bigger concern
as-in, can it effectively leave some other sources/filters partially-saved or something
there is only one obs process
maybe CEF creates extra processes, but that's nothing to do with libobs
yeah, so I guess that's the only reason i even care that it crashes on close
i guess another possibility is the mutex handle is getting trampled over
sometime between the lock and the unlock
could be a double free issue
i remember running into double free issues when working on my plugin
Hey everyone, is there a plugin specialized for effects that have facial recognition? Like Instagram effects.
Did you mean something like this? I donβt think there is for now.
https://www.instagram.com/face.effects/?hl=en
Iβm interested in implementing the idea. Maybe it consists of face detection, face landmark detection, and putting textures on the face.
Your best bet at the moment is Snap Camera: https://snapcamera.snapchat.com/
Problem with gstreamer plugin : Instead of showing in the OBS display window, a new window opens which displays the video feed and hence not able to stream through OBS. I am using this command to start pipeline from Rpi "raspivid -t 0 -w 1280 -h 720 -hf -vf -fps 30 -b 2500000 -o - | gst-launch-1.0 -v fdsrc ! h264parse config-interval=1 ! rtph264pay ! udpsink host = xx.xx.xx.xx port= xxxx" and using this one in the OBS-gstreamer plugin "gst-launch-1.0 udpsrc port=xxxx ! application/x-rtp,encoding-name=H264,payload=96 ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink".
Yes, like the pixelated sunglasses effect being used live on stream
Thanks, I think that's the best option
After I uninstalled old version of Source Record to install the new version, SR is not showing up on my filters! Any idea why?
I am running OBS version 26
latest source record requires obs version 27
Thanks
It may need an update with the upcoming 27.1, at least I couldn't get it to show up on the nightly build π
Nightly build and OBS 27.1 should work fine with the current latest version of source record, did it show an error loading in your OBS log file?
I simply tried on whatever build !nightly was 2 days ago.
I didn't check the log file, I just couldn't see the plugin at all (the 6 others loaded fine). I can try and look, hold up.
14:06:44.493: [Source Copy] loaded version 0.1.3
14:06:44.513: [Source Dock] loaded version 0.1.1
14:06:44.531: [Source Record] loaded version 0.2.5
Strange.. 
Did you mean Source Record does not work with OBS 27.0?
No it works 27.0.1. Well, partially, we patiently waiting for 27.1 to allow some more functionality π
i dunno where i put this, but i do need help,
so i downloaded this .zip file called "obs-vintage-filter''
but i dunno how to use it, so if someone can help me, please dm me or get in a vc or call with me!!!
How to install plugins: https://obsproject.com/forum/resources/421/
List of available plugins: https://obsproject.com/forum/resources/categories/6/
i do not have a plugin folder
Hi Team!
do you have any plugin when starting live, opening a post on twitter?
Has anyone heard of inStreamly?
It allows streamers to show images in between their streams (like once per hour for 5 seconds) with just a browser source URL.
It looks like https://app.instreamly.com/campaigns?u=12345&t=ijcdu7od5hrgd3t5l2nhiq and only requirement from the streamer to use it is to put that URL as a browser source and lock it as the topmost layer. No setup or any other manual intervention needed from the streamer.
I want to know how is that possible? The URL might be sending the img to OBS I believe, but how does that URL tells OBS that it needs to be shown for 10 seconds every hour?
Reference 2 min video (https://www.youtube.com/watch?v=_uGJ7SqltgE)
Because there's a server sending information to the browser page.
Same way that alerts and any other number of stream overlay stuff works.
Pretty common concept.
closed athenascope, restarted everything.. still... https://obsproject.com/logs/qCpRVJAr9qXI_o47
- Windows 10 Game DVR
- Capture Interference
- Multiple Game Capture
- Windows 10 21H1 (OK)
- Windows 10 Game Mode
AMD Ryzen 7 5800X - OK! / GeForce RTX 3060 Ti - OK!
Hello, i have a problem with my streamlabs chatbot im using. My soundcommands are working with my chatbot and im hearing the sounds, but i send the commands to obs and twitch chat and my stream are not heraing them. what is wrong ?
You'll need to contact Streamlabs for assistance with their products.
i talked with streamlabs, but with there products iss it working. i hear the sounds by the chatbot, but live in obs not ?
You'll still need to work with them to ensure your OBS is configured to use their products, we don't support them here. Sorry!
Ok, i will talk with them soon, Thank you. π
@hard jay , do you have any plugin when starting live, opening a post on twitter?
^^ perfect use for something like the elgato streamdeck
Is there any plugins for a timer for Mac like a countdown timer?
i have a problem always that i transmit after a time my transmission stops, i leave an announcement that has been disconnected
Tools -> Scripts -> +
(Copied from windows-support)
Hi all, I tried building DarkDust's feature for a limitless slider from his Github repo, but I still can't load more than 13 slides. Here is the link to his repo: https://github.com/DarkDust/obs-studio/tree/feature/slideshow2a
Does anyone have experience with his repo?
Hmm, I don't really have experience with such things
But it looks like this might be an issue with the repo itself
Did you open an issue there?
Stijn, if you've the background required to compile C code, you've a debugger, I'm assuming, yes? You'll need to step through your problem.
OK, let me back up. I've an MS in CS. I've done precisely f-all with actual programming in the last 5 years. What is your experience with programming?
While I applaud your passion to solve the issue with the slide show in OBS, it kinda seems like you're disassembling a sub-compact car and trying to turbocharge it so it can haul more cargo, when the better solution would probably be to go and buy a truck.
When I use the Source Record plugin, the regular recordings have audio. The replay buffer recordings do not have audio. Any fixes? Thanks.
Good, I prefer a turbo'd honda civic over a ford f150 at all times
I only have experience in web development so excuse my unknowingness
So a early 2000's Ford Ranger? 
Ford rangers are sexy af though
Currently just removing max_mem_usage in plugins/image-source/obs-slideshow.c and see what that does
OK, which compiler/IDE were you using? Do you know how to program in C?
Cuz otherwise you're gonna need to learn Japanese to turbo that Honda you want
Sounds like a nice learning curve
hai, so desu ne
f me it worked
LUL
I can add unlimited images
I am very surprised. But congrats
Yeah, I was gonna mention that
Art of the bodge I guess
You may wanna just...ya know, add a few digits to that value instead
Rather than completely taking out the parking brake π
Yeah, gonna do that
Big kudo's to https://github.com/an0ndev
All you have to do is follow the normal build guide for your system, except before running make, edit plugins/image-source/obs-slideshow.c.
If you want to remove the limit entirely, remove the lines starting with #DEFINE BYTES_TO_MBYTES and #DEFINE MAX_MEM_USAGE as well as the if and break statements that check the memory usage against the maximum (if (ss->mem_usage >= MAX_MEM_USAGE) break; in two places).
Alternately, if you'd like to keep but raise the limit, you can leave everything in place but raise the number of megabytes in the MAX_MEM_USAGE definition.
To keep your change present while being able to update the source and rebuild, just add your change to Git (git add plugins/image-source/obs-slideshow.c from the obs-studio directory) and make a commit out of the change (git commit -m "obs-slideshow: removal of limit on VRAM usage"). Now, to update the source and rebuild, you can just run git pull and go through the build instructions again, skipping the beginning part where you run git clone.
I'm off
Nice.
how do i get the bongobs cat plugin
Go to this page, click Download on the top left. You will get a zip file.
https://obsproject.com/forum/resources/bongobs-cat-plugin.992/
i did it now how do i put it on obs
please tell me how to install the bongo cat into obs i am trying to find videos on how to but all of them are for the other bongo cat
ive been trying to find a way on how to install the bongo cat into obs for a while now but it seems that obs studi doesnt have bin, data and obs plugin anymore
it does and it works with OBS 27 (I used it myself)
make sure you have the correct folder
Once you open the zip and go into Bango Cat,
Steps 1, 2, 3, 4 in this guide should install the plugin. https://github.com/norihiro/obs-color-monitor/wiki/Install-Windows
ok i will try
You should go to two levels up directory obs-studio
click there
oh
then you will see the data and plugins folder
ok thank u so much
Thank you, H4ndy. I've edited my guide page to have the red circle as H4ndy's picture.
Hey guys, was wondering if there was a plugin or a script I could download that would show/hide a media source depending on whether my game capture is active. Ive been looking for over an hour now. Thanks β€οΈ
Hmm, let me see
I can't find it on the OBS Plugin page, but I could also be searching wrong
Maybe someone else knows it
Thank you anyway
i doubt that such a thing is feasible, the game capture plugin doesn't expose this data to the rest of the program
at least without a PR such as 2659
I want to +1 for that PR.
It looks Ryanβs requests were resolved but still the status is changes requested.
Hello, everyone. Yesterday, I came up with how to make "tricky" blend modes between any sources, using ShaderFilter Plus and you get something like this.
I think you wonβt loose width quality if you use a group that has double-size width.
Mmhhh... I doubt about it. Because (I think) plugin takes limited image from the source, being a group or nested scene. I mean, in my setup: 1920x1080. Also, groups are a bit buggy... I would like to use them more, but they are not stable.
Thanks for checking the link!
There's a github issue complaining it does not get audio from discord, despite the readme saying it doesn't work well with electron apps

Can you point me towards some guide or example please?
Hi, I'm having trouble getting the Move Transition plugin to appear in my scene transition drop down menu.
in my log file, it says the dll was not loaded.
everything appears to be installed in the right place.
A current log file is required to help fix your issue. Please post a link to your current log file.
- In OBS select Help > Log Files > Upload Current Log File.
- Click Copy URL and then paste the link here.
Log contains debug messages (browser/ftl/etc), for a filtered version click here
- Old Version
- Mismatched Sample Rates
- Multiple Game Capture
- Windows 10 20H2 (OK)
- No Output Session
Intel Core i7-4790K @ 4.00GHz - OK! / GeForce GTX 1070 Ti - OK!
yes it's an old version of obs studio, but it's to be able to work with obs.live
I don't think move transition works with 26.1
Oof.
how might I solve mismatched sample rates?
Click on the "Solutions / Full Analysis" button, it should tell you
thank you
I'm trying to isolate my xbox party audio so I can use just game audio. Currently using xbox companion on my computer to run the party so it comes in via the destop audio. My audio is through a mic so I can turn my voice off the recording. Any suggestions?
@steep tree you might be able to achieve this with voicemeeter. send the game audio to one virtual input and the xbox companion to the other. you would have to route each one of those to individual voicemeeter outputs, and thusly bring them into OBS on separate tracks. not 100% but i've done similar
Kind of along those same lines, does anyone know if there's a plugin out there that would allow for audio sources to be mixed down to a "master fader" which could then be effected as a whole? For example, strapping a mastering limiter across your final broadcast feed. I'm currently doing this outside of the box with hardware and just feeding a single stereo mix to OBS but would love to be able to do it right within OBS. This would eliminate the need for separate audio moves between scenes on the hardware.
@spring elbow i think obs studio music edition has something like this
i hope that's mergeable, because it would be a cool feature in general to have.
i'll look into it. Thanks!
and also thanks @obtuse hingeyo. haha. didn't mean to exclude.
i'm a mess. you get what i'm trying to say.π
Question: Is there a plug-in or filter that can bind a Text Source Object?
It's not a plugin but the Projector Window (obs-studio/UI/window-projector.cpp) has private text sources to show some labels.
A plugin obs-websocket has a mechanism to change the text property of text sources.
Is that something you are looking for?
im having ndi trouble. Is there where I cah ask those questions?
Is there a way I can put scenes in a group and get them to change to random scenes and get them to change the same time as the beginning of the next song?
Trying to register some hotkeys to be associated with one of my sources. I believe I should be using obs_hotkey_register_source, correct? I see that the "name" has to be unique, but what does it need to be unique with respect to? As-in globally unique with respect to all other registered hotkeys in the entire profile? Or just unique with respect to this specific source instance?
also, if I register a bunch of hotkeys with a source, and that source gets removed, do I need to unregister all of the hotkeys or does that happen automatically
I think you can refer this plugin. Itβs a filter but should not make much differences.
https://github.com/exeldro/obs-source-record/blob/master/source-record.c
thanks
I have this weird issue with the Plugin "Source Record". For some reason it does not record my game sounds, but does record everyone else's. So if I shoot a gun, nothing, but if someone in my group shoots then that is recorded.
If I record outside of the plugin, then everything is fine. So I am not sure what is going on. Anyone use that plugin to record?
Also does anyone know what the "different audio" and "audio track" above refers to?
is there a way to use a newer/custom ffmpeg binary w/OBS for recording? i see how to call ffmpeg with specific arguments, but that still uses OBS' included ffmpeg. any way to call another one?
does video_tick of a source run in a different thread from other callbacks?
has there ever been precedent of plugin functionality being ported into main OBS? asking because i'm following the development of https://obsproject.com/forum/resources/win-capture-audio.1338/ and this is quite huge in the sphere i operate in
[PC] Hi. I need a filter that I can put on an audio source. That source should become quieter by a dB value as soon as the microphone is turned on. (I'm not talking about a compressor!).
If I mute the mic again, the source gets louder again. With attack and release time it would be A+ of course. π
Is that possible?
the maintainers are aware, see #ideas-suggestions
It's happened before, but the developer of that plugin hasn't been in contact with us, and it would have to be something they wanted to do really.
MS is supposedly working on a noninvasive per-process audio capture API that should be easier to maintain going forward though. DLL injection is a pain to deal with.
-mute
i want to believe that claim.
@fierce lynx We do not have any "social" bot commands here, sorry
We use Dyno for moderation support only
<@&715347355565817879>
i know you've said no compressors, but is there a specific reason you can't just use a 1.5 ratio sidechain and tune the threshold until you get the desired reduction in volume? the effect would be almost the same
I guess they are looking for a binary gain control rather than proportional to the volume of the sidechain.
If that's the case, how about making an audio source dedicated for the sidechain having a very large gain to make it clip. When the microphone is turned on, small noise will be expanded and cause the compressor to reduce the gain. However, even if speaking, the reduction won't change because the sidechain has already been clipped.
The call back video_tick will be called from the graphics thread. The other call back video_render is usually called from the graphics thread as well but it could be called from another thread if taking screenshot from obs-websocket.
(I also followed the built-in screenshot code but I gave up to see how it works.)
Other call backs such as get_width and get_height could be called from several threads.
ah. so is the expectation that people always assume differrent threads? my concern is accessing data associated wt my sources.
I actually have the same question. Most of them are exclusive by calling obs_enter_graphics before the call back is called but looks not everywhere.
i wish this were a bit better documented. kind of important heh
Hi there, I need some help...I simply just want to update a text field inside a plugin inside OBS.
Here is my text field:
obs.obs_properties_add_text(props, "url", "XML PATH", obs.OBS_TEXT_DEFAULT)
I want to update the text inside of it but for the life of me can't...
Does anyone have some advice?
The text inside of it corresponds to the obs_data entry in your settings with the same name (in this case "url"). so you need to use the obs_data_set_*** family of functions (https://obsproject.com/docs/reference-settings.html)
however, if you do that programmatically while the properties are open, you will not get an immediate refresh of the value
I got that far and I am using obs_data_set_string
you can also have it initialized to a default, with the get_defaults callback
But when ever I click my button the text don't update and even gives me errors
when you click what button
`def browse_for_file(props, prop):
obs.obs_data_set_string(props, "url", "ThisIsTest")
obs.obs_data_release(props)
#root = tk.Tk()
#root.withdraw()
#file_path = filedialog.askopenfilename()
------------------------------------------------------------
`
you shouldnt be releasing props there (Edit: "props" is of type properties, you cannot use any of those obs_data_ functions on props)
In the template code it had it so I assumed that's what I needed
`def script_properties():
props = obs.obs_properties_create()
obs.obs_properties_add_text(props, "url", "XML PATH", obs.OBS_TEXT_DEFAULT)
obs.obs_properties_add_button(props, "button_br", "Browse", browse_for_file)
obs.obs_properties_add_int(props, "interval", "Update Interval (seconds)", 5, 3600, 1)
#MORE CODE AFTER THIS
return props`
This is where the button is being made
So how can I make this work? The docs really aren't much help haha I am still very new to Python let a lone doing it for OBS
these are two different types
you need to call obs_data_set_string on your settings object. this is not the same as the properties object
I hear ya but I am still lost xD
How do I pass that through to my button click handler ?
I think you're going to have to stash the settings from one of the other operations that gives you settings if you want your button to be able to update it internally.
(such as from the parameter of script_load)
however, If anyone else here has better advice on how to do what you are doing, trust them.
it is not obvious to me why "script_properties" isn't given the settings as a parameter, itself
or similarly the button callback
it may be that the API is trying to discourage interaction with settings
Would you be able to provide some pseudo code? I am working directly off examples since this is all still new to me
Yes, but with the disclaimer that I am also relatively new to working with the obs APIs, and what I suggest seems to be fighting against the API
if you define the "script_load" function for your script (https://obsproject.com/docs/scripting.html#script_load) it seems to be given the settings
so you can store that, for instance, to a global
and then your button (and/or script_properties) can reference it
this seems very... hacky, though. there may be a better way to do what you are trying, I just do not know offhand given the API
def script_load(settings): global scope_settings scope_settings = settings
Like that?
yeah, something like that
and then similarly refer to the global inside of your callbacks
I tried that and the text field did not update π¦
are you returning true from your button callback?
returning true should tell it to update the properties
(your browse_for_file function)
NameError: name 'true' is not defined
`def browse_for_file(props, prop):
obs.obs_data_set_string(scope_settings, "url", "ThisIsTest")
obs.obs_data_release(scope_settings)
return true
#root = tk.Tk()
#root.withdraw()
#file_path = filedialog.askopenfilename()
------------------------------------------------------------
`
True
np!
again, though, it's entirely possible there is a better way to do this
glad it worked though
π
Hey does anyone here use WebSockets for Touch Portal because for the life of me I cannot get them to connect. I have the pro version so that's not the issue.
Im using-https://obsproject.com/forum/resources/obs-virtualcam.539/ i need some help setting it up all i get now is a black screen
is there a reason you chose to use this plugin instead of the built in version that comes with updated versions of OBS? @minor lily
I dont think the built in one works on discord right?
it does π
oh ill use that then! can you help ne set it up?
how?
did you use the installer?
if so, you can just close OBS, and go to add/remove programs (just like you uninstall any other program), and find the virtualcam in there
done :)
cool. and you've installed the latest version of OBS? You see the "start virtualcam" in the bottom right?
perfect π Now we need to add what you want to show in discord (to your OBS)
what are you looking to have shown?
anything, something that looks cool tho
the virtualcam will just show whatever is in your OBS (currently the black box)
ok, add a cool picture or a video
that looks like an empty overlay
you dont wanna add anythign to that? Like gameplay, your desktop etc?
Not yet
ok, well, i cant help you with an overlay. You would have to make the overlay (graphics) yourself, or download some (paid or free), or you could pay someone to make one for you
#stream-setup would be the place to ask about stuff like that.
this has nothing to do with the virtualcam, it just shows what is in your OBS, which is currently nothing
smt like this?
ok, then add that π
we should move to #stream-setup then π
kk
has anyone here ever used the Tuna plugin by univrsal? https://github.com/univrsal/tuna
I'm trying to use the Web Browser song source, and everything's working fine (I think?) on the Browser side, however it's telling me in the Output Editor that "The selected music source does not support one or more of the used format options", and it's telling me that for every single one (except whitespace and linebreak but... well)... ssooo am I just stupid or is that a weird bug with the web browser source mode?
Just don't wanna report it as a bug when I don't know if it might be me
actually I get the same when I set it to Spotify which.. is natively implemented? I don't get it
at least in the case of spotify though it feels like a bug... cause the code checks whether the format is valid:
https://github.com/univrsal/tuna/blob/ea7b6e2948fe1f39661f390c7873383aa85d53fa/src/gui/output_edit_dialog.cpp#L104
and spotify always returns true:
https://github.com/univrsal/tuna/blob/ea7b6e2948fe1f39661f390c7873383aa85d53fa/src/query/spotify_source.cpp#L104
Made a browser based overlay (runs from local source) for someone I know and thought all this looks pretty nice so made a few improvements and here's how it looks like https://youtu.be/mdfwXWwmSo4
anyone knows if there is any plugins that give me a better cpu monitoring on obs?
You can get more in-depth CPU monitoring in the Task Manager (if you are using Windows)
yeah i know but i cant have task manager and obs open at same time. screen is small
The cpu % as reported in obs is just for core obs usage. Not full cpu load
@proud relic Cannot start GStreamer: could not link bin to queue2 any idea what this is about?
I'm trying to receive an SRT stream
srtsrc uri="srt://10.0.0.1:9710?mode=listener" name=bin ! queue ! video. bin. ! queue ! audio.
might have something wrong here
probably you are missing tranport protocl demuxer and decoder. srt is just a transport protocol.. you can transmit any format over it.
!decodebin is all I needed apparently
it has an autodetection included, yes
if this is finally the solution I needed to solve all my problems I will poop my pants
My state machine plugin is almost ready. Check it out! https://www.youtube.com/watch?v=anoOVe7ZJTw
The way I do the actions here is how I sort of wish move-source worked (feature request?). Often times in a move-source chain I want to trigger something arbitrary, and sometimes complicated actions span between different scenes. By just allowing hookins to arbitrary hotkeys, that becomes easy.
Hi, I'm having issues with creating a Replay for my stream, can someone lend me a hand? I'm trying to use Dynamic Delay right now, but I'm open to other suggestions
Hi, im having an issue with my alerts not showing up on my stream i do use own3d pro if anyone could help me that would be great!
Is there a plugin I can get that will allow me to stream to muiltiplatform?
!multirtmp @worldly rain
@worldly rain
A third party plug-in for streaming to multiple RTMP servers is available for OBS Studio. https://obsproject.com/forum/resources/multiple-rtmp-outputs-plugin.964
Hi, does anyone have a suggestion (workflow, tools, plugin) for matching 2 sources of camera?
usually I calibrate by taking 2 images and perform color matching in photoshop, then made a LUT to be applied to each source on OBS.
I tried to scripting for histogram matching, but still cannot get it right. at least I want to have both of them have same distribution by numbers, since I can't really rely on laptop monitor
i was working on a fix for that but haven't pushed it yet
anywhere German?
Sadly no
Ah that explains that, thank you.
Now I'm just wondering why the files don't end up being filled with the information coming from the browser.
When I console.log in the browser before sending it to OBS, all the values seem fine, and it can connect as soon as OBS is running (got an error when it wasn't).
So I'm wondering if anything is off between the browser and OBS, or anything else. Are there any logs what happens on OBS' side when it receives data from the browser?
Do I still have to download the Virtualcam plugin or is it added in the update?
Windows: OBS v26 and above contains a basic virtual camera. For advanced usage, such as preview or specific scene/source output, try the third party plugin.
macOS: OBS v26.1 and above contains a standard virtual camera. Having issues with specific programs? Check this guide.
Linux: OBS v26.1 and above contains a standard virtual camera. v4l2loopback is required, best installed via the v4l2loopback-dkms package.
I know there is a plugin to auto switch scenes, but is there a way to just hide/show sources instead? I could just duplicate the entire scene and have them switch, but that is a little too clunky personally lol
Yes, you can, there is an eye icon that allows you to hide them.
Mind you: Hiding them won't stop them capturing stuff, it's just invisible
i meant using the auto scene switcher plugin or a similar one to hide sources. i know you can manually do it
Hmm, not sure
@ancient matrix Just found something: https://obsproject.com/forum/resources/source-switcher.941/
hello
yeah I think I already fixed that but haven't made a release
so I'm a total noob with audio and such but I'm trying to make a plugin that can play arbitrary MP3 files. I've got the plugin working, but the audio sounds slowmo/garbled. I know this is a can of worms but does anyone have a good primer for understanding audio streams? In this context of the plugin: the confusion I have here is taking an MP3 "frame" (output by https://crates.io/crates/minimp3) and translating that to something obs_source_output_audio accepts. Here's my code:
let mut source_audio = obs_wrapper::obs_sys::obs_source_audio {
data: [std::ptr::null(); 8],
format: obs_wrapper::obs_sys::audio_format_AUDIO_FORMAT_16BIT, // the data from the mp3 library is defined as i16... is this correct?
frames: 0,
speakers: obs_wrapper::obs_sys::speaker_layout_SPEAKERS_MONO,
timestamp: data.timestamp.unwrap(),
samples_per_sec: frame.sample_rate as u32,
};
source_audio.data[0] = frame.data.as_ptr() as *const u8;
// this is setting "frames" to the number of samples
source_audio.frames = (frame.data.len() / frame.channels) as u32;
unsafe {
obs_wrapper::obs_sys::obs_source_output_audio(
data.source.id() as *mut obs_wrapper::obs_sys::obs_source_t,
&source_audio as *const obs_wrapper::obs_sys::obs_source_audio,
)
}
// this is clearly wrong but there's no video -- does this matter too much?
data.timestamp = data.timestamp.map(|ts| ts + 1);
like i said, this "works" but bridging from the MP3 container to the "raw" format OBS expects is a huge gap for me
huh nvm, I can just do my entire plugin in a browser source I think... it would greatly simplify things
this plugin is okay
if you have slowdown or speedup you probably do not resample the output correctly
but yeah you can use browser source or media source which already support MP3
How can i have an overlay to know im recording, so i won't forget to stop recording
??
how to install plugins
How to install plugins: https://obsproject.com/forum/resources/421/
List of available plugins: https://obsproject.com/forum/resources/categories/6/
with voicemeeter bannana how can I set this to the default without just dragging it "close enough"
Double click it I believe
worked, thanks!
I want to do a livestream of a livestream presentation. I want to be able to hear audio from the livestream presentation, but also set up audio to where the viewers can also hear. Would some headphones work for this?
@simple flame go to edit>advanced audio properties, and set monitoring to "monitor and output"
Would wireless headphones work for this?
@simple flame
If your audio is muting when you launch OBS, and you're using a Bluetooth headset, it's caused by the underlying design of Bluetooth. To fix this, you can either switch to a wired headset, don't use the Bluetooth headset's mic, or set your sound to go through the HFP device for your headset.
Note: HFP offers lower sound quality.
The headset I want to use doesnβt have a mic on it. Itβs a Beats wireless headphone
So I need to set monitor and output to the desktop audio option?
@simple flame this shouuldn't require any special setup, you should be able to hear it and stream it without monitoring
So I donβt need to do anything then?
@simple flame try it, see if it works
I did. And it worked! All I did was set up my headphones to my laptop via Bluetooth, and set it as an audio input
Hi, can anyone recommend a plugin to change the Hz bands (to change the voice for a stream)? π
!no
Thanks
hi there @real rampart -- you'll need to check out our rules
we don't allow advertising content
Can someone help me , I want to run two virtual camera for 2 scenes but I am not able to select a particular virtual camera for each scene
Hi, is it possible to access general obs settings and encoder settings in another plugin? I'd like to be able to do some auto configure in a separate plugin
Could you suggest a plugin which would specifically suite that
what's the latest version of the move transition plugin? trying to cross check some stuff
2.4.4
ty
How can i have an overlay to know im recording, so i won't forget to stop recording
seems like frontend api doesn't give access to encoder settings
looks like the only way is to copy the whole encoder plugin into the custom plugin?
that's not good...
??????
seems fairly obvious. you want a big on screen overlay to tell you that you are recording.
you are not the first to ask for it. and not the last.
isn't there any plugin?
unfortunately not. Having overlays over the game is not as easy as it might seem. THere is a plugin called srbeep that will make a noise when you record etc, but its not a continually updated information on whether you're recording or not
can't find any other way though
Does anyone have time to give me a hand with Advanced Scene Switcher? I'm having issues
!hi
Welcome to the OBS community support channel. If you have a question, go ahead and ask it, and if someone is available to help they'll respond. Try to be detailed, and provide a log if you are having issues with streaming/recording (Help -> Log Files -> Upload Current Log). Please be patient if someone doesn't respond right away!
is there a way i can set up a bot on my discord so itll notify everyone in my discord when i go live?
@mortal harbor yeah, there is, but that question is better suited for #tech-talk There are no OBS plugins that will do that for you, as its not really made to host bots π
hey there! im just diving in to OBS plugins for the first time and had an idea for a plugin that i cant seem to find anywhere
is there a way to implement a "new window" function that creates a full-screenable window for extra docs and tools you want on a separate monitor from your preview, chat and mixer and such. but still keep as a part of that instance of OBS?
@tough lion no, no such thing exists, though some devs are considering working on it
currently, you can detach any dock into its own standalone window, is that enough?
possibly, only problem is ive had bad experiences wit getting detached docs loading back into their proper locations wen that instance is closed and restarted
thats why i asked Xp
weird desu
i tried it and it didn't break, maybe it was fixed later?
or, maybe you're using the obs-multi-rtmp plugin, their dock tends to forget its location
it was like 6 months ago so that might be a good shout
il give it a try later
but hey, least i don't have to waste my time looking for something that dosent exist now lol
also, another possibly stupid question, is there a way to dock a filter tied to a specific source? like a filter slider?
@tough lion no, not possible
cool XP
sorry to ping you again about this, I just tried the CI build from here: https://github.com/univrsal/tuna/actions/runs/1156146119 which should be the latest commit, but I still get the message in the output editor.
The output file seems to be OK though, so it seems just a display bug.
Only thing that doesn't seem to work is the album %a? I'm sending album_url like it does on the Yandex part of the script, but the file just outputs a as the content π€ also tried album instead with no effect
edit: actually same for artist, output file is just m although I'm sending artists like the existing services are
On a sidenote: where would I send PRs/improvements to the tampermonkey script? I can't find it on the repo and can't find a PR-esque feature on Tampermonkey either
I don't think I've committed the changes yet. As for the tamper monkey script, just get it from the tampermonkey site and then create a pull request with the changed script located in the deps folder of the repository. Then it'll be in the repo for any future pull requests
OK π
How do I get Websockets to open in obs?
I tried moving the files to the plugin folder
Does anyone know of a good timer plugin?
@solar narwhal a timer for what, to show on screen?
I need a countdown timer that starts when I make the source visible @untold jay
@solar narwhal there's already a script that does this, go to Tools>Scripts and add Countdown.lua, then add a text source for it to write text to
thank you very much @untold jay
the plugin that allows per-application audio capture has received a full rewrite, making it much more stable, and it now requires windows 10 2004 or newer, you can try it at https://github.com/bozbez/win-capture-audio/releases
Yeah it's no longer injecting a dll
This is probably asked rather frequently but is it possible to run advanced-timer.lua twice? I wanted to implement two countdowns in my stream.
Make a copy of the file and rename it
I tried that. It immediately locked up OBS and I'm in the process of trying to get it to even open again
I assumed it was simply referencing the same code/variables and didn't like that
I deleted the copy but OBS still won't open
you can rename both scripts so they wont' load at startup anymore
Ah, it had to be both. Thanks. I'd just deleted the copy and expected that'd solve it
Well...I suppose that's good and bad. Renaming the script lets OBS load. Putting the name back freezes it up again. Guess I'm not using scripts anymore
Curious. I guess that's why I didn't use this in the past. It works just fine setting up one, but if I restart, OBS fails to load. I have to rename the file to get it to work again. Not seeing any errors in the log file. Even more curious that just trying to start two of them also hangs it up.
Is there another log file? It's not crashing so I'm not getting those
Even verbose gives me nothing to indicate why it's hanging up
@azure totem development questions usually go to #development
Oh sorry, I thought plugin question etc, y'know. Will move it
Well I'll be damned. It works in my "Testing" scene collection
Usually that means it's unhappy with the config
and it doesn't barf if I make two countdowns in the "Testing" scene collection. But how am I to figure out what in the production collection is interfering with it?
Oh god what if it's just the font or something
I didn't bother setting the font all nicely
Well π€
It takes like 90 seconds to switch back to production
Nope, that ain't it. Default Text (GDI) source or not, it hangs. So if it shows nothing of note in the logs, what's the recourse? Just duplicate the OBS-studio folder, launch a sacrificial duplicate and start deleting sources until it'll open?
Cuz that sounds like a job foooor!...
...another time! π
Someone actually made a plugin that allows obs to capture audio from a specific application
oh shit, thats actually huge
some games the virtual cables thing isnt even an option because they dont let you select audio device (it goes by system default)
ahhh it works
Omg yay
It works!!
Now i can finally control spotify volume while streaming now π
Thank you so much! Life saver
@silk bison @vagrant kite it's truly a huge breakthrough from all the confusing VB cables and Voicemeeter! I'm currently waiting for other reviews and developments about this plugin but so far so good π
Voicemeeter is stupidly strong of a program. But the learning curve is infurating and it feels like no one knows how it works and those who do refuse to share there secrets.
hey, i don't refuse to share them, i'm just too dumb to explain it to someone else properly
Ngl I donβt even remember how I made the program itself to work , all I know is that I went through a lot of try and error , BSOD and all that etc
why is this so relatable
along with windows and their ever annoying driver issues that are impossible to troubleshoot
on windows I just installed VB cable and that was it, restart and it worked...
It's nice that you just had to restart because for some they had to 'reset'. pun intended..
what I'm saying is I'm not sure whats wrong with your systems that this happens lol
anyone know how to get my elgato wave 3 mic to sound better on obs
It depends what is your problem you are facingβ¦
- If your loudness of the voice fluctuates, you can use compressor to reduce the louder voice to make the overall voice even.
- If you have a background noise, I think there are some noise suppression filters.
Hey all. I'm wondering if there is a record plugin that allows you to set a timer for your record? To have it basically shut off at a set amount of time.
I always know exactly how long of a record I need but I find myself running back and forth or setting external timers to go and stop the recording if I'm not sitting at the PC while it's doing the record.
π€
Tools menu at top of obs. Output timer
ππ€¦π½ββοΈ!!! I literally had no idea lol.
This will speed so many things up. Thank you @vale vine

Hey @weak escarp
Testing RC1 with your Source Record.
It seemed to be somewhat working (few bugs I'd talk about later). However, after AFKing for 15 mins, coming back to pc and going to the source > left clicking on the source record filter (Set to Buffering 20 sec NVENC (new)) it instant shut down OBS, without any error or log.
I tried booting OBS up again, but nothing happened. I tried again; got the message "OBS already running". Checked background processes, it boots up in the backend but never launches the frontend.
I rebooted PC, it persisted.
I deleted scenes, added my scenes again (backup) and OBS booted. I assume something in the Source Record plugin corrupted/broke the Scene Collection and disallowed OBS to boot after that. Any input/ideas? 
Since I wanted to do the update, obs keeps crashing when I want to launch it with obs live. Is there anything I can do?
you mean the beta/rc? I dont think you should attempt to use that with obs.live
yo, anyone know if there is a slow-mo plugin out there that can do the following:
- slow down the scene for a set time
- after the set time expires snap back to the current time
there is a slow mo plugin out there but it doesn't seem to support the instant snap back I want, it can only fast forward the stream until it catches up with the current stream time
unless I'm misunderstanding what it's capable of
please drop me a ping if you have anything tyhanks
maybe an obs log file can shed some light on what the problem is?
my dynamic delay plugin has an skip to end hotkey to snap back to real-time
Hello... so I've been developing a piece of software (for a couple of years now) that interacts with OBS via a python script and OBSWebsockets.
It's a mainly a Transform and Filter(using StreamFx, OBS, Shaders etc) animation system with a timeline feature.
Here's a short demo: https://www.kapwing.com/e/612866a40f14d700be800458 I use it on my streams and think it could be useful for others!
What do people think?
so, whats happened to the "stream information" dock?
suddenly disappeared
its not in the drop down menu either?
Settings > stream. Disconnect and reconnect your account @errant talon
i'd like it
but is there a way to remotely trigger it? via redeems
I've played around with the plugin and yeah, it does what I want, but is there any way to activate the plugin without a hotkey? (enabling/disabling visibility etc) Because my redeem triggers isn't able to use hotkeys, only enable/disable filters and sources
You can trigger the hotkey via obswebsocket or use the "Dummy Source to Execute Commandβ plugin
Or use a lua or python script to do it.
dummy source to command sounds interesting, I'll go look for it, thanks mate
Please DM i can help with Gstreamer piplien
I mean I have it working
But I switched to Media source, more reliable
My biggest problem is keeping the audio and video in sync, idk if you can help with that
How much would it be to for someone to basically fix the monitor ID thing? I want to identify monitors for display capture based on said monitor's name, not the device ID (that in windows changes all the time, in my case whenver i plug in/unplug a monitor or restart my system)
i think this might end up being a source code mod; although it would hopefully get integrated into OBS in a near update
monitor names aren't unique, are they?
normally they are
i mean if it shuffles identically named ones i guess u could go by something else but i dont think that is an issue
No they aren't
They're named by model
If you have two identical monitors, your theory falls
yes but like... still having it as a primary sorting option would be nice
cuz all my monitors are different
so it would fix the ID thing
Yeah
But it would bring other issues too
Example
You connect your monitor by hdmi instead of displayport, that's a different monitor even though is the same one
i mean i guess but it shows up as the same model regardless of connector type
just more options besides ID, ex. resolution and framerate, would be super nice as windows is stupid in this regard
Once more
That way wouldn't work
My monitor doesn't even have a name
just device properties in general
or actually, "what monitor is at these coornates"
there, the best solution
because whatever monitor is to my left, for example, would just be at (-1, 0)
and top would be like (0, 1081)
if anyone knows the bongobs plugin, id really like to be able to find more versions but the discord link from the original bongobs cat plugin on github has expired, does anyone know a place that i can get more versions?
this is the version i have right now
but i have seen cooler versions like these:
i was wondering if anyone knew where i could find these? or if anyone is in the bongobs cat discord and could invite me to it so i could get more modes? thanks
ping me or dm me if you think you can help
When I click 'View' then' Docks' then 'Chat' I do not see the chat dock anywhere.
Go to settings > stream. Disconnect then reconnect your account @tulip sparrow
hola alguien habla espaΓ±ol
neecsito saber si alguien sabe sobre aplicar luts en obs
??
Is there any specific plugin that I can get this result or would it be a python script?
Welcome to the official OBS Community Discord server! Unfortunately, our support volunteers can only provide support in English. Most of our support documents and guides are also only in English. If you feel comfortable using a service like Google Translate, feel free to use that to send messages to us. We'll do our best to understand your intent, and we'll try to help you as much as we can.
Translate
If you need help or have questions about OBS, check out our #support-portal first!
@opaque blaze looks doable with the move transition plugin, but expect to spend a lot of effort manually animating most of this
I believe that is not it. Where I saw this effect the person does the rescue and the position changes to several different positions and with a single rescue in the Twitch points channel.
@opaque blaze that was my only guess, and if it's wrong, i have nothing else to suggest, maybe try asking later
I did some testing changing the x and y position in transition move, but I was not successful. It would be many sequential commands to get the result. Thanks for answering.
@opaque blaze the move transition plugin allows chaining multiple transitions together, which would hopefully allow recreation of this animation, but every keyframe would need to be done by hand
I know that, but it doesn't make much sense for the effect I saw on the person's live. The guys did the rescue and the camera went to several different positions on the screen with a single rescue in the points channel. And the rescuer never repeated the same position, it was always a random position in several different ways
no idea how they'd do this
I believe it could be a script. I'm researching to see if I can find something related.
if you can't find it, it's most likely a custom-made script they're unlikely to share
I thought that too. It could be something he created for his own use.
or, more likely, commissioned
Hi guys, i have a question: can I receive text messages from chat via obs-browser plugin (e.g from twitch.tv chat) or another one?
exactly the text buffer of messages
it's not impossible for a plugin to offer that feature. but as far as i know, none does
@high jackal if you want twitch chat messages in plaintext, try Chatty, it can output chat log in plaintext
ty for the answer
my idea is to take text from youtube / goodgame / twitch and create a beauty chat for them
@high jackal i don't know of any pre-made software solutions for this, you might have to make one
yes i want to create it myself
but for this I need to grab the text buffer from streaming services
just by link ?
i'm not a programmer, i can't answer that
obs-studio natively supports python 3.6 and lua, need scripting reference for them?
no ty, i want to use c++
!plugintemplate @high jackal
@high jackal
A template for new OBS plugins including boilerplate code and CI scripts can be found at https://github.com/obsproject/obs-plugintemplate
if you need help writing plugins, or compiling, or something else related, it's best to ask in #development
ok ty so much
apologies if this has been asked a million times (im sure it has), but i updated OBS and the browser plug-in isn't working, and the link to download it again is broken. how do i get the browser plug in back?
i was under the expression that was a stock plugin that's included in the install
hmm hold on let me try one more thing
do you have obs.live?
it keeps prompting me to download obs.live when i open obs, even though ive already done it.
i tried the one more thing and it didn't work
!se we cant help you with obs.live, we dont make that. If you would like to remove it, we can probably help with that
whoops, wrong command
!sehelp
If you need help with StreamElements plugins or services, please join their Discord server or submit a support ticket as we cannot provide further assistance here.
nice work π Happy to help
Yo! I have some software I've been working on and hoping for a release 'soon'. You'd definitely be able to create something similar with it!
Hello? I was wondering if there is an option or a plugin to have your chat show up on a stream
Like how some popular streamers have it
they use the browser source plugin for that
I ended up discovering a software called PollyPop, but it's very confusing and I couldn't really understand the logic of the program.
Elaborate?
Hello, does anyone here know how to add a poll on a stream?
Example would be like the viewers will pick between A or B and after a certain amount of time the results of the poll will be shown in the stream.
@unique gorge where, on twitch?
FB Live, basically what we are trying to do is to let the audience decide the course of the story and the results will be shown in the stream
ohh so it's automatic if ever?
Yeah, on FB Live, it's also done on the live dashboard
@unique gorge no, it's just done from the streaming platform's website, not from OBS
I see I see thanks! To clarify the results will be shown if ever right?
?
At any rate, this isn't really related to plugins and tools for OBS. You should probably talk about this in #stream-setup or #off-topic
alright thanks! Appreciate it
Woah this is dope??
Is there ETA for that :0
!csgo
Valve has implemented a Trusted mode which does not allow OBS to hook CS:GO using Game Capture. Read more in their announcement post. Additionally, they have no plans on allowing OBS in Trusted mode.
We recommend running the game in either windowed or borderless fullscreen and using a Window Capture source instead.
Alternately, you can launch the game with -allow_third_party_software .
Hello guys,
I installed RTMP plugin and its great but I looking for how to start and stop it automatically. i welcome your suggestions.
thank you
check the plugin's resource page on the forums
thanks matt. for your ressponse. i will check it.
(I realize I'm replying to a question that is months old) @storm stirrup Have you found ptz-controls? https://obsproject.com/forum/resources/ptz-controls.1284/
I've been looking through the documentation, but I'm having trouble working out how plugins should hold references to sources. Is there a guide somewhere on when a plugin should hold a reference or a weak reference to a source?
For the obs-ptz plugin I want to associate a PTZ device with a particular source, but I haven't worked out the lifecycle rules yet
Hi matt checked resource page on the forms. but i dont find automatic restart of RTMP plugin. could you please suggest some alternative.. thank you
there is no comparable plugin to this currently to my knowledge
Hi H4ndy, thank you for your responds. i would like to ask you, that is there any kind of software that can manage plugins in obs. thank you in advance
Currently no, but it's high our agenda: https://ideas.obsproject.com/posts/14/add-a-plugin-manager
Thank you for share
Any guides/example projects on developing plugins? I've gone through the plugins page on docs and can kind of understand source, output, etc.
A template for new OBS plugins including boilerplate code and CI scripts can be found at https://github.com/obsproject/obs-plugintemplate
Hey, when I got to tools the websocket bit isn't showing. Help?
!clog @knotty eagle
@knotty eagle
A current log file is required to help fix your issue. Please post a link to your current log file.
- In OBS select Help > Log Files > Upload Current Log File.
- Click Copy URL and then paste the link here.
- Windows 10 21H1 (OK)
- No Output Session
- No Scenes/Sources
AMD Ryzen 7 3700X - OK! / GeForce RTX 2060 SUPER - OK!
Did an entirely fresh install and copied the websocket plug in back in, no dice
11:32:09.563: Module '../../obs-plugins/64bit/obs-websocket.dll' not loaded
Its possible they refuse to load if its an older verison, but your OBS is newer. I'm honestly not quite sure
probably good to grab the latest version π
!websocket
OBS can be controlled remotely with the obs-websocket plugin.
@knotty eagle What version of obs-websocket do you have installed?
4.9.1 should work fine on that. However 5.0.0-alpha1 is only for 27.1.0 or above
And @analog ruin we don't purposefully block it from loading on older versions, but we tend to implement API calls found only in the latest versions of OBS, so it fails to load when we use a function from a version of OBS that doesn't have that

thank you tt π good to know
would an issue like this possibly happen if its incomplete?
like if I copy only the plugin dll (there are more stuff, right)? @wary wasp
(missing imageformats)
It won't fail to load if there are missing files. Possible issues arising from incomplete installations are:
- If the image extensions are not installed correctly, not all image formats will be available for requests like
TakeSourceScreenshot. On windows it's DLL's that the installer adds to the OBS folder. On linux I believe it'sqt5-image-formats-plugins - If the locales are missing, then strings displayed in the plugin will show only the translation id instead of the string itself
perfect, thanks π
Available image formats are determined on runtime, so it doesn't have issues with missing dll's because it doesn't make assumptions that they are available
Hoping for a beta release next week. Just fixing a couple of issues.
So sorry if this isn't the correct channel in advance but I'm having an annoying issue with chatbot and thought I would come here for help since I'm struggling to find an answer on youtube or anywhere else
I'm having a really annoying issue with chatbot that's started ever since I stopped using Streamlabs OBS and started using OBS studio and I could use some help ironing out the problem. Basically, anytime I go online now, I can't use any of my commands and it doesn't say "online" in the top right corner..
anytime I try to do a shout out command it sats "failed to send the message..are you connected with the account that you're trying to send a message?" I don't understand, I'd imagine I was connected already since when I go online on OBS, the chat is displaying in chatbot..so, what is going wrong?
I'm assuming you should reach out to support for that chat bot
hmm
Being an application outside of OBS, is this using obs-websocket?
Hey. Yes is it. It's using Obs-websockets just to get the initial values, names etc... but the main 'animate' part is in a python script I've written.
Interesting. Any reason not to do everything in obs-websocket?
My very first attempt was to exclusively use obs-websockets and update it all the parameters with that. But I ran into issues when increasing the amount of commands being sent when the animations got large. So went a different route
It worked...but was limited
I see. Did you happen to try using batch requests as a way to perform the requests at higher throughput?
I... I..... umm no. Hmm. *hopes I haven't overlooked a much easier solution *
Batch requests work where you send an array of requests to be performed, and obs-websocket processes them with much higher precision than sending them individually. Combined with Sleep requests, you get the ability to essentially "compile" animations and send them as one request
I see. It's a while since I tried the obs-websocket route. I'll look into it. Although my current implementation works really well. Essentially now my software build the list of commands and the python script executes them frame by frame.
I had it working with obs-websockets and maybe the batch system would have been better π«
Ah you're using the script_tick() callback?
That gives me an idea. We could possibly implement per-frame batch requests. Where each request gets tagged with a frame number of which frame to perform the request
Do you help develop obs-websockets?
π
Yes I'm the current active maintainer
Ah sweet!
We're developing obs-websocket 5.0.0 which uses a whole new protocol and is a much more modern plugin.
Nice. I look forward to it!
But yeah... I probably should have spoke up in here what I was creating earlier. I can give you the beta soon if you'd like to see what I've made. I've already used a earlier version on my stream for like 2 years with no issues at all
Yeah I'd love to check it out
Sweet. I've already moved from exclusively obs-websocket commands to my own system but would totally move it back if you implemented some kind of per frame batch system like you said.
Are the best lights on twitch gonna get better?!
ha! hey!! This software is not light related, but who knows in the future π
Ohhh, I went and got my hopes up 
No worries, I just saw it last night actually, have not tested it out. I have 3 older foscam ptz 720p cans that I'm going to see if it works with. I'll let you know if I get any good results.
ΰΉΰΈ«ΰΈ₯ΰΈΰΈ’ΰΈ±ΰΈΰΉΰΈ
Welcome to the official OBS Community Discord server! Unfortunately, our support volunteers can only provide support in English. Most of our support documents and guides are also only in English. If you feel comfortable using a service like Google Translate, feel free to use that to send messages to us. We'll do our best to understand your intent, and we'll try to help you as much as we can.
Translate
What plugin do i need to use for my elgato stream deck in order for it to work on my macbook pro air with big sur os
My advanced scene switcher wonβt install
What can I do to get my elgato stream deck to connect to my OBS so I can set it up for all my transitions and so fourth. Iβm having a major issue figuring it out.
so Tori, did you attempt to install it already?
I installed it once yes
!clog @quasi garnet just wanted to check if its try to load it
@quasi garnet
A current log file is required to help fix your issue. Please post a link to your current log file.
- In OBS select Help > Log Files > Upload Current Log File.
- Click Copy URL and then paste the link here.
So I need the link to advanced scene switcher?
nah, I just thought we would get a regular log, so we could see if its trying to load it, or if it cant find it at all
!clogi
or do you just want to try installing it from scratch?
I did but it keeps failing
what keeps failing? The installer? Does it give you an error message?
The installer but itβs not there when I check on the app
but it dosent give you an error message?
No
ok, please post the log in here. #plugins-and-tools message
if there's 5 inputs but in the end they go to the same 2 outputs what's the point in having all of these?
- Insufficient Hardware
- Old Version (26.1.0)
- Integrated GPU
- Windows 10 1903 (EOL)
- 32-bit OBS on 64-bit Windows
- Browser Not Accelerated
- Not Admin
- No Output Session
Intel Pentium G3240 @ 3.10GHz - Below minimum requirements / Intel HD Graphics 620 - Possible bottleneck
@quasi garnet why do you think its the wrong link? The link is to send here, because it containts information about your machine that I need
you're running an old version of OBS, so you need to upgrade it before you can use advanced scene switcher
I would re-install the correct version of OBS while you're at it. (you are using 32bit instead of 64)
but it worked for me before
perhaps your launching the wrong version?
yeah, but they update the plugin to support newer versions of OBS, and that can also cause the updated versions of plugins to no longer work on ord versions of OBS
you have 26
so i need to install obs 64bit?
I would recommend doing so, yes. But most importantly you need to update in order for the plugin to be supported
now it won't install
what wont install?
obs 64bit
did you uninstall 32bit OBS first?
I believe you need to do that first. That means you will also need to re-install any plugins you have, and potentially copy any scripts you are using
hmm, ok. Yeah, then you need to close obs first. If you believe it is closed already, you'll have to end it in task manager, or reboot the computer
oh great
I need to head out, but the people over in #windows-support can assist with re-installing the correct OBS version.
Looks like the only script you had added is missing, and I can only see one other plugin
!help
If you need help or have questions about OBS, check out our #support-portal first!
!commands
A list of commands can be found here: https://obsbot.rodney.io/
it worked
Do that in #off-topic next time please
ok
it's fixed
How do I go about making a OBS plugin? Is there a JS or C# library available?
OBS plugins are in C or C++ from what I remember
A template for new OBS plugins including boilerplate code and CI scripts can be found at https://github.com/obsproject/obs-plugintemplate
C and C++ are the only sane ways of making an OBS plugin. If you're looking to go an insane route, I know a guy building an OBS plugin in rust
Is there a way I can get the advanced scene switcher to switch scenes in time with music tracks?
hello is there a way to mirror my phone's screen to my pc that doesnt devore my cpu?
Android or iOS?
android
looking for just a screen mirror, without controlling the phone's screen would be perfect
ScrCpy is your friend then https://github.com/Genymobile/scrcpy
using scrcpy and my pc still lagging when the phone has high ram usage
what is the difference between an audio/video plugin and an effect plugin? why are a/v plugins limited to certain sources? and given that limitation, why would i want to make one instead of an effect plugin?
The effect filter is applied to a frame data in GPU. Usually the effect filter is written in shader and some code to control the shader.
On the other hand, the A/V filter is applied to a data in CPU.
Some video source directly render it's frame data in GPU so that such sources cannot get the A/V filter.
why would i want to make one instead of an effect plugin?
What you can do with the effect filter is limited. For example, GPU has smaller memory than CPU, so the GPU delay has only 0.5s delay at max but the Async Delay has more delay because the Async Delay uses the main memory that can access from CPU.
I will be honest, I did not know this
Is there something wrong?
I cannot honestly answer that question as I do not know π
ah, that makes sense, thanks
As someone suggested to discuss on this thread, I'd like to comment to this message here.
#development message
I'm also thinking how to do this but I still don't have the concrete idea.
The plugin [1] is implemented in Qt.
The plugin [2] is implemented in the backend of libobs.
Maybe, the frequency of the message would be more than 15 times per second.
One idea is sending Qt message from [2] to [1] but not sure how to find the window of the plugin [1].
Another idea might be using callback; registering a callback from [1] to [2] so that [2] can calls to [1]. However, I actually don't know much about the callback and not sure it is really feasible.
I feel both of my ideas are not so good. Is there any idea to communicate some data between them?
I've also thought about using Qt signals. This would probably work as signals in Qt are thread safe. It would require both plugins to use the Qt library, but would not need to use the UI elements.
Already I've got a backend/frontend split where the part of my plugin that would expose an API doesn't need to provide UI elements.
It would be possible to abuse the source or filter structure for one plugin to discover the other and pass data between, either for setting up signals or assigning callbacks
What you're looking for sounds like proc handlers @stable olive
If you're operating on an input, register procedures to the input's proc handler. If it's for the plugin itself, create a proc handler object and register something like [pluginname]_get_proc in the OBS core proc handler, which would fetch your custom proc handler. Then, calls can be made with it.
libobs already has plenty of options to implement this
That sounds like exactly what I need. Thanks! I'll go read that code
You can grep the OBS code to find instances of proc handlers being used. It's not used very often but it's pretty much designed for instances like this
Thank you, tt2468. It looks get_nb_frames is one of the usage; querying from transition-stinger to obs-ffmpeg-source.
Yep, it's very useful.
We'll be developing a standard soon that will allow plugins/sources to add their own obs-websocket functionality
That's sound useful. I was thinking my another plugin obs-text-pthread to keep scrolling dynamic text fed from a script that connect through obs-websocket. That idea requires script-side to retrieve some information from the backend plugin.
@hollow stirrup I'll look into creating proc handlers for both querying information about cameras and sending pan/tilt/zoom commands
@wary wasp Are calls via proc handlers thread safe?
I believe that proc handlers themselves are threadsafe, but it is up to you to make the callback threadsafe
As in the callback gets called in the context of the caller?
Yes when you call a procedure, the callback is executed in the same thread as the caller
Gotcha. Thanks. I think within the plugin I can use Qt signals to transfer the message to the UI thread.
Then, inside the callback need to be threadsafe I guess.
Also looking at the proc handler code (which is only 92 lines, lol), proc handlers do not have any synchronization primitives. So while you can use proc_handler_call() in multiple threads at once, using proc_handler_add is not threadsafe
And I'll need to be careful not to block the calling thread
So don't add procedures to a handler after the fact
Yes
for (size_t i = 0; i < handler->procs.num; i++) {
struct proc_info *info = handler->procs.array + i;
if (strcmp(info->func.name, name) == 0) {
info->callback(info->data, params);
return true;
}
}```
this is the core of proc_handler_call()
There are no shared mutexes or anything
I think the handlers will be registered by proc_handler_add in the .create. At that moment, the source cannot be found because the source is under creation. After that, obs-ptz can find an instance of obs-face-tracker by enumerating sources/filters.
Yes that would be appropriate usage
can we add alerts of multistream platforms to obs
Hi folks, hope you are all safe and sound. I have a question regarding the websocket-plugin that connects the Touch Portal app on the phone to the computer - how can I get the plugin into a second (portable) instance of OBS that is running at the same time as the local OBS instance? I need this because I am recording a tutorial video on using TP, but I can only see it under Tools in the main OBS instance.
@hollow stirrup I think it needs to be the other way around. obs-ptz should advertise the PTZ devices available, and the face tracker should call into obs-ptz to get the list and to send commands to the cameras. obs-ptz shouldn't need to know anything about the face tracker plugin
you may enjoy a feature i added to prochandlers in my pr.
https://github.com/obsproject/obs-studio/pull/2659
now you can probe if a proc handler exists without trying to call it
Can I just put the websocket plugin files in the portable OBS plugins folder?
proc_handler_exists() ayy
@hollow stirrup, have you tried to get VISCA over TCP working on the Jimcom hardware?
@hollow stirrup @stable olive So I'm working on a PR to make proc handlers threadsafe like signal handlers are. Do you think procedures should be mutexed? (Eg. a given procedure can only be called once at any time. Execution protected by a mutex)
Technically they don't need to be mutexed from what I understand
I actually tried another library for VISCA and it succeeded to send and receive commands. I'm not so familiar with Qt and wanted to try CLI so that I tried this approach.
https://github.com/norihiro/libvisca-ip
Basically, I just replaced the backend connecting to the serial port with TCP socket. Same approach should be applicable for Qt's implementation.
I don't think so. As long as I know that calls may be multithreaded then I can handle making the plug-in thread safe
I think current implementation is sufficient so far. The proc handler list won't be changed after returning from the .create .
Ah, you're using Damien's libvisca. I started with that library, but ran into architecture problems because all the calls are blocking.
Yes, so, I'm thinking multithread.
The obs-ptz code is reentrant, and I'll make sure the ABI calls are non-blocking so that you don't need to use threads if you want to avoid them
Then I'll just mutex the handler itself
That sounds much better.
Do you have some other use cases in mind for the call of procedure from obs-websocket?
I agree your point. obs-ptz send advertisement to obs-face-tracker with the pointer to the Qt's widget. Then, obs-face-tracker can send Qt signal to request pan/tilt/zoom movement.
Since pan/tilt can be inverse-proportional to current zoom, either of us need to query the current zoom. Do you prefer to do that calculation in obs-ptz side? Or, just send the zoom to obs-face-tracker and obs-face-tracker multipliy 1/zoom?
Well the general idea for the implementation is:
- Create procedure in the core proc handler to fetch obs-websocket's proc handler (obs-websocket will have their own proc handler to not clog up the core one)
- Outside implementations use the proc handler to add their own functionality to obs-websocket. Whether this will be actual events and requests or subroutines is yet to be determined
We would distribute a header file which 3rd parties would implement into their plugins which would have function methods available to do this easily
I'm hoping that the face tracker won't need to know anything about Qt. You'll be able to just call the advertized proc and obs-ptz will take care of the signal internally
I'm happy to do either. I can provide an API that does proprotional moves; or I can create an API that returns the current zoom state.
That sounds more simple. However, when closing OBS Studio, we need to ensure not to call the advertised proc.
just don't call proc handlers on destroyed sources.
Itβs opposite, a source is calling a proc belonging to a front end plugin.
So if you wanted to add face tracker requests to obs-websocket, you'd do something like
#include "obs-websocket-api.h"
obs_data_t *example_request_callback(obs_data_t *requestData)
{
obs_data_t *ret = obs_data_create();
obs_data_set_string(ret, "test_string", "pp");
return ret;
}
void register_requests()
{
obs_websocket_handle_t *handle = obs_websocket_get_handle();
obs_websocket_vendor_handle_t *v_handle = obs_websocket_register_vendor("obs-ptz");
obs_websocket_register_request(v_handle, "TestRequest", example_request_callback);
}
Maybe, destroying sources is earlier than deleting front end plugins.
i seem to recall not being happy with how sources are destroyed at shutdown
something about ignoring reference counts
Well if everything used the source_remove signal, there wouldn't really be any issues
But when you delete the last scene item for an input, it's never called
hmmm... It would be interesting to expose the PTZ controls via websocket too.
In that case, stand-alone tool is sufficient, isnβt it?
must add more source type callbacks. it worked fine for controlling playback of media sources. /S
I need to PR a fix to the UI where it calls source_remove during scene item deletion if it's the last scene item, in order to get plugins to release it appropriately
shouldn't every scene item count as a reference to a source?
If I want to reference a source in callback parameters, what is the best way to do that? Passing the char* name? or char* id?
bump the count when you create the item, reduce it when you delete the item.
i'd go with a void *
I'm assuming I should not pass a pointer reference to the obs_source_t
Use void* to pass a obs_weak_source_t*?
Yes, it does.
However take a situation where a reference to an input is being held by a plugin. If the last scene item is removed, there will be no more scene items for the source, but the source will not get destroyed because there is one last reference and the plugin does not know to release its reference, because neither source_destroyed or source_removed were called.
Do you mean return a source in calldata response from a procedure?
Oh, hi goodmorning
No. I'm thinking of PTZ devices associated with sources. So, when the facetracker asks for a camera move, it would make a call with the source and the movement direction as arguments
Which might not be the best API design. I'm still thinking through the best way to do this
I was thinking obs-ptz send a pointer with the proc. Then, obs-face-tracker send PTZ control function with the pointer received.
The problem is what data the pointer is pointing.
Are you thinking a seperate function is created for each PTZ device?
I think you should instead just provide commands through the specific source's proc handler
If multi-camera environment, there are multiple sources but there is one obs-ptz.
If it is acceptable for obs-ptz to register callbacks on the source's proc handler, then that would be easiest
Can obs-ptz have an instance of proc hander, then send the proc hander to obs-face-tracker instances?
The source should register its own procedures
I don't think it's appropriate to create a proc handler for obs-ptz. I think it would be best for each source to register procedures to its own proc handler
So if you want to call a procedure for a camera, you get the source's proc handler, then call the procedure
Because each source is a camera, right?
Not really. The camera devices are logically separate from the actual video input
The source is camera such as NDI. And, the source has a filter called obs-face-tracker, which has face-detection algorithm.
Ok so you're saying I can have two different sources outputting the same feed from one camera
e.g., The video source may be NDI or HDMI, but obs-ptz uses a separate control path to move the camera
One camera has one feed of video.
In the obs-ptz plugin I need to associate a PTZ device instances with a video source, which could be any video capture devices
Watching a tutorial for the plugin right now
But control of multiple cameras could be tied to one interface such as RS-232C.
obs-face-tracker was originally a standalone filter not using PTZ. The tutorial might not be helpful to understand what we are doing in the furture.
Oh I see, so theres not really any association between the input source itself and the controls?
Not yet. Right now there is a soft association by name; but it is pretty ugly (e.g., if the PTZ name matches the source name then they are assumed to be connected)
Is this obs-ptz functionality or obs-face-tracker?
obs-ptz
And what does the association between input and obs-ptz camera do? Like what features rely on it
When source is visible in preview, it changes the active PTZ device to that camera. This is so that the controls by default adjust the preview camera, not the live one
obs-face-tracker (FT) detect where the face is and how the camera should point. Then, FT send the pan/tilt/zoom control information into obs-ptz.
not the live one
Live is also under control.
I'll also be adding a feature to block out camera moves when the source is live.
Hmmm.
My major target is controlling live camera to follow a person.
Well don't register calls to a proc handlers you don't own (unless it's the core proc handler)
Just keep that in mind
obs-ptz and ptz-face-tracker have diverged a bit.
It sounds like the two plugins just need to stay isolated to me
Gotcha. I think it will be simplest to register a obs-ptz handler, and then have the face tracker pass in which source it wants to move
Unfortunately that means any facetracker controlled camera cannot be manually moved, and vice versa
Especially for RS-232C connected device. Also UDP-connected devices.
Ah because connections cant be shared
I'll try prototyping with a dedicated proc handler and see how it goes
If you can make your prototype in a branch at your repo, I can pull it and compile to test.
So here's what I suggest then, and it's similar to what you already want to do:
- Create your own proc handler in
obs-ptz. - Register the proc handler in the OBS core proc handler
- Make it so that proc handler is as modular as possible. E.g. have even obs-ptz's calls go through the proc handler. This will help you stay organized in the long run
- Other plugins can use the proc handler just as obs-ptz does
- Register the proc handler in the OBS core proc handler
I didn't notice there is a core proc hander.
And remember that once you register a procedure, remember that you cannot unregister it.
How about I provide a function in the form: ptz_move_relative(const char* device_name, float pan, float tilt) where float and tilt are in degrees. ?
I don't like relative but prefer speed.
One caveat to this is that if obs-ptz is maintaining a system tying inputs to cameras, you might want to break the suggestion on line #3 and more closely integrate the proc handler with obs-ptz's functionality. So that you can both use those associations
If using move-relative, the camera don't return until it stops so that it keeps move and stop.
What works better? Drive commands? Or absolute?
Ah, okay, so is this better? ptz_drive(const char *device_name, float pan_speed, float tilt_speed, float focus_speed)
Yes, that's it. Not focus but zoom.
It should keep moving until the next drive call arrives so that the camera moves smoothly.
oops, that's what I meant to write. void ptz_drive(const char *device_name, float pan_speed, float tilt_speed, float zoom_speed) where speed values are signed, and +/-1.0 is fastest, and 0.0 is full stop.
The speed vs. binary-code would be different for camera. Are you going to implement the table for some models?
I could change it to rad/s or deg/s. Unfortunately that information isn't always available
Let's do this way.
Internally right now obs-ptz maps the float values to whatever the dynamic ranges of the ptz controller is
I appreciate tt2468 for a lot of help. Also Henke37.
Indeed! Thanks @wary wasp and @white dune
Yes, it should work.
Ping me whenever you get your prototype done if you'd like me to review the code
Self-advertisement or advertisement for others is not allowed on this server unless it's directly relevant to a discussion or question. Please read the rules in the #rules channel.
I say that's perfectly fine. the plugin knows when it wants to release the source. of course, this means that plugins have to decide when they stop caring about the source.
I think that it could also be fine though for plugins to ignore the source_removed signal if they still want to use it
Though its probably not intended behavior
Iβm currently using the advanced switcher to change scene to play different videos with transitions - but would like to be able to have a playlist of videos from a folder or something and still have transitions between themβ¦ is this possible?
how is this related?
so the async delay plugin... it just adds the received video frames to a FIFO, then pops off and returns an earlier frame that it stored previously?
and that is okay?
so for example i could make a plugin that re-orders frames? it would be useless... but it is valid?
filter_video receives an obs_source_frame as an argument. does it have to return the same one? is it valid to return a different pointer to an earlier frame? or do i have to memcpy the framebuffers around?
can i return the same frame pointer multiple times?
oh its also a wrapper
Well each frame has an attached timestamp, so depending on what you're doing you may have to generate new timestamps for the frames in order for the graphics thread to accept them. I believe it's technically possible to submit the same frame multiple times (with timestamps modified), but I'm not sure if there are negative implications (like performance or memory usage) to it.
i'm hacking on obs-backscrub. it removes camera background without a greenscreen using tensorflow
the problem is it can't quite run in real time
so currently the background region it removes actually belongs to an earlier frame
so i want to delay the frames so that they match the mask
the maskgen is run on a separate thread, so you get a frame, pass it to the thread, then some time later when you get another frame, pull the (now out of date) mask from the thread
so i'm thinking two queues, push frames, pull frame+mask and return it
the video will then be delayed, but it will match the mask, and it opens the possibility to use more than one worker thread
Whatever you do, you can't block the graphics thread for things like synchronization primitives.
You can also make your processing thread submit the frames directly to libobs, with a timestamp attached, where OBS will manage the buffering required
by the graphics thread, you mean the "main" thread from the plugin pov?
Well from a plugin's POV, there really is no main thread. Execution can be performed in any of the 3 threads pretty easily
i consider the main thread to be the thread that calls .filter_video
In the case of outputting video though, yes it would be the graphics thread
I consider the main thread to be the UI thread personally
i'm not interacting with that from within the context of a filter plugin though
anyway, i know i can't block in .filter_video, and the current code doesn't - at least not for any significant length of time (there's a minimum amount of locking, way less than 1 frame)
Oh I was not aware you are developing a filter and not an input, sorry
why obs does not render a scene when im on the another screen , my mean is i send a scene preview to a monitor and my choised scene is another one ,,, the last scene on monitor and ndi output is black.. thats mean obs dont render that
i'm trying to switch to obs portable mode, but for some reason websocket doesn't seem to work. if I use my regular obs install i can connect with SL Chatbot just fine, but using OBS in portable mode doesn't seem to work. websocket appears to be installed correctly and i'm using the same credentials, but chatbot just doesn't connect. anyone have any suggestions?
The Portable folder is separate from the install. I copied all my config from appdata into the portable dir, all the scenes are there. and unzipped the websocket plugin into the portable dir. websocket appears in the menu, but chatbot just doesn't connect to portable, but it does to the normal install
same exact problem here
websocket seems to be broken on portable mode
oh no π¦ it's not listed as an issue on the websocket github
I tried to use the websocket for my stream deck but it wouldn't connect on portable
I hope it's just something we're missing, because I stream from a different PC that I'll be using to change config and stuff, would be cool to just change it in one place
well I just used the official obs plugin from my stream deck instead of barraider's garbage so at least I got it fixed lol
ah yeah I'm not using streamdeck π¦
can someone help me? I use scrcpy and is there anyway for me to record phone internal audio on my pc?
there's a 2nd tool "sndcpy" for that or you can use a line aux cable from your headphone jack -> line-in of your computer
unfortunately capturing androids is a bit finicky
so sndcpy?
@versed knoll websocket works perfectly fine in portable mode here. and also it works fine with SL chatbot in portable mode as well. must be some particular culprit in your case.
thank you. I will do a little more investigation. That sounds promising!
Does anyone know of a tool that could create a text input with advance option like the right side bar featured here in PTI? Not looking for scrolling text, but something that could move on to the next in the list essentially when needed.
are there any obs plugins that maybe provide a filter that's like... "when this thing is showing, hide or show this other thing"?
Streamer.bot may be able to do that with custom if/logic statements
Lioranboard, which I've not used, I imagine should be capable too
i'm trying to figure out how to use the obs-source-record plugin to stream a scene that contains my content (via virtual camera) and twitch overlays while simultaneously recording just the content, but i want to have different twitch overlay layouts
i've got the scene streaming separately
i just don't have any idea how i could turn on/off different overlay "layout" sources in that scene when i change other scenes
Already using multiple obs instances?
no, just one
That might make your life "easier"
the obs-source-record plugin enables this
well, wouldn't it be even harder to turn sources on and off if they're in a whole separate obs instance?
Nested scenes and multiple scenes with various overlays?
but i need to record an overlay-less version while streaming the overlay version
If you're enabling disabling an overlay anyway you may as well change scene
so i have to separate the overlays from the scenes
2 instances for this might actually be the ideal approach
You put your gameplay in a nested scene. Put that scene into your main scene
what would 2 instances give me that one instance can't?
ok but i have a dozen scenes with vastly different layouts
that i want to switch between
It's almost like having many different overlays and layouts require different scenes :)
well, let's say 3 layouts
I think you are missing how the nested scene functions
That's why they exist, scenes
Or maybe I'm missing your end game?
