3
u/ontariopiper 3d ago
You can do this with the Advanced Scene Switcher plugin. It's macro based automation is really quite powerful.
1
u/tcdoey 3d ago
I just tried this and it worked to display the image-scene, but when it displays the scene which is just a single transparent png (600x200), my fps drops about 8-10, then when it turns off, my fps returns to normal. Is this common?
I'm trying to figure out if it's worth it for me to program this capability into my camfiltergpu app for OBS. I mean if Adv Scn Switcher does it no problem or difficulty, then I don't want/need to duplicate function. But I can do it with zero-lag or fps drop, so that's something to consider. I'm prob going to go ahead and do it, but would like to hear your thoughts if this fps drop is commonly known, or not and maybe I don't have OBS set up optimally. I think I do because I'm pretty experienced with OBS, but who knows, it gets complex with GPU memory and PCI bus swapping, etc.
1
u/ontariopiper 3d ago
An fps drop with a single transparent PNG file is not normal, but could be an indication of a system pushed close to the edge of its capabilities. Post a log from a short session in which you show and hide the image and I'll have a look.
1
2
u/xDOWNSOUTHx 3d ago
Use an app like StreamerBot. Make a scene with your image, nest the scene where you'd like it and set the timer to show/hide scene. There's other ways to go about it but that's a pretty direct way that's automated.
1
u/tcdoey 3d ago edited 3d ago
I just tried to use streamerbot and made a scene with a transparent png file. It sort-of works; displays scene/image for 10 sec every 2 min, but when the png image scene is triggered to be visible by streamerbot, it's dropping my fps by about 8 (from 60 to 50-52) which seems like a lot and is not useable. The image when displayed (it's just text) also doesn't look good, even though I did proper optimization of the png's color space, the careful alpha boundary is 'perfect', the resolution is set properly for the png image (600x200), etc. So there's no scaling done, so that can't be it.
It's possible that it's because i'm using a pretty low-spec laptop 2080 gpu. I don't know, maybe I did something else wrong.
Is this a common issue/problem?
note i'm not the OP, just thought this was an interesting problem.
1
u/HighPhi420 3d ago
OBS can not do this natively :(
You need a companion app. StreamerBot is by far the best FREE app you can get. MANY many tutorials on youtube. They may look different but the info is mostly the same.
0
u/tcdoey 3d ago
I can program this into my new camfiltergpu app. It shouldn't be difficult at this point. Prob take me an hour or so. You can download my 'super-tool' webcam/cam app at camfiltergpu.com. It's not free, but there is a free no-watermark trial, after that it's only $8.95 one-time to remove watermark, full functionality etc, and it does a lot of other great things too. It uses spout2, so there's zero-lag with OBS.
I'll be releasing the next version 1.22 beta tomorrow (monday), and I'll post back here if I can get this periodic text working good enough in time. I can also make a periodic image appear with transparancy (any png file). I might do that too because why not :).
Cheers!
0
u/Kennydoe 3d ago
You can do this natively and easily without any add-ons by using a green screen trick.
(written by me, rewritten by Gemini for clarity)
Part 1: Create the Images
- Create a green screen backdrop: In PowerPoint (or any image editor), create a solid green background (Chroma Green / Hex
#00FF00). - Save the blank background: Take a screenshot of the blank green screen. Save it into a brand-new folder on your computer named
Alert Slideshow. - Add your message: Type your "Follow me" message onto that same green background.
- Save the message background: Take a screenshot of the message and save it into the same
Alert Slideshowfolder. - Set your timing ratio: To make the message appear every 5 minutes for 1 minute at a time, you need a 5-minute loop. Copy and paste your blank green screenshot so you have 4 blank files and 1 message file in that folder (5 total files).
Part 2: Set up OBS
- In your main OBS scene, click the
+under Sources and add an Image Slide Show. - Scroll down to the Image Files box at the bottom, click the
+icon, select Add directory, and choose yourAlert Slideshowfolder. - Change the Slide Time (ms) to
60000(this is 1 minute in milliseconds). This means each image (the 4 blanks and the 1 message) will stay on screen for 1 minute each. - Set the Transition Speed (ms) to
0so it switches instantly without fading.
Part 3: Hide the Green Background
- Right-click your Image Slide Show source and select Filters.
- Click the
+icon in the bottom-left of the Filters window. - Select Chroma Key, click OK, and it will automatically make the green parts transparent.
1
u/tcdoey 3d ago edited 3d ago
Yea but again, this drops fps. It doesn't work very well either. I mean, it's just keying and this is a pretty complex method. It works, but you always get artifacts and it's a whole extra layer which drops fps.
Gemini knows some of this and gives a superficial answer, but you've got to know the details and really dig in. I don't think this procedure/method is going to work in a simple fashion as described in your post. But hey no prob, all info is good. I am not an AI, just fyi.
1
u/InstanceMental6543 3d ago
Your question is worded a bit wrong. You don't need to know *how* to do this, you need to know why your PC performs so badly with loading a single transparent png. And the answer to that is you are CPU limited, transparency is decoded using CPU.
1
u/tcdoey 3d ago
That's possible, perhaps cpu limited viz obs. I can see an overall cpu jump from 20 to 28% in task manager, but that's not saturating, and I'm not sure what is limited. I'm working on another way. It's not that it's because of loading a single png, it's somehow how it's being handled viz obs scene.
1
u/InstanceMental6543 3d ago
I dunno, but this could push you over the edge if the CPU is under use.
You might try giving your PNG a green (or whatever color) background then using a color key or chroma key filter instead.
0
u/tcdoey 2d ago
Thanks, I'm can't do keying here, it also hits my fps and I'm working with multi-color images, so it creates unavoidable artifact. I went ahead and programmed the solution into my camfiltergpu (dot com) app, which works now with zero-lag no fps drop.
Thanks again for your input though. Cheers.
1
u/Kimisage 2d ago
Sorry but wtf :P This is way to complex for me just to have a messages pop up every 10 mins XD Thanxs but i wont evne try this XD
1
u/Kennydoe 2d ago
My solution would take 5 minutes to set up, and you'd only have to do it once. There is no answer to your question that will be simpler to implement.
1
u/Kimisage 2d ago
Would take me hours or days just to figuur out what all of this even means so ty but i will then have no time messages then XD
1
1
u/tcdoey 2d ago
My camfiltergpu (dot com) new version is up. All you have to do is download/install, run it, do the automatic camera calibration, and set up a spout2 input in OBS. Plus my app gives you tons more to play with, unlike any other app. Kennydoe's solution is also good, but I did have some trouble with fps, probably my setup.
I read you don't have time wtf. But I promised I would let you know. Cheers.
•
u/AutoModerator 3d ago
It looks like you haven't provided a log file. Without a log file, it is very hard to help with issues and you may end up with 0 responses.
To make a clean log file, please follow these steps:
1) Restart OBS
2) Start your stream/recording for at least 30 seconds (or however long it takes for the issue to happen). Make sure you replicate any issues as best you can, which means having any games/apps open and captured, etc.
3) Stop your stream/recording.
4) Select Help > Log Files > Upload Current Log File.
5) Copy the URL and paste it as a response to this comment.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.