Can I stream 3 AXIS IP Cameras to 3 Live Streams on YouTube at the same time.

John Zapf

Member
I have 3 AXIS IP cameras that I stream to 3 Live YouTube streams on my channel. I would like to start using OBS to do this. My question is can I have 3 completely separate 24/7 365 Live streams going at the same time on 1 OBS server.

Camera 1 to Live Stream 1 on YouTube.
Camera 2 to Live Stream 2 on YouTube.
Camera 3 to Live Stream 3 on YouTube.

All on the same YouTube channel.
 

AaronD

Active Member
3 independent streams require 3 instances of OBS. Normally, OBS complains about that, but there's a command-line switch to tell it not to.
obs --multi gets you that part, but you also want them each to start with different settings so they don't run over each other. More command-line flags.
obs --help in a terminal (Command Prompt in Windows) to see all that you can do there. :-)

Just make sure that the total load doesn't exceed your machine's capacity. I have 2 instances in one of my rigs, and it works just fine.
 

John Zapf

Member
3 independent streams require 3 instances of OBS. Normally, OBS complains about that, but there's a command-line switch to tell it not to.
obs --multi gets you that part, but you also want them each to start with different settings so they don't run over each other. More command-line flags.
obs --help in a terminal (Command Prompt in Windows) to see all that you can do there. :-)

Just make sure that the total load doesn't exceed your machine's capacity. I have 2 instances in one of my rigs, and it works just fine.
Thank you, I will end up running all in Linux, I assume it will be the same there?
 

John Zapf

Member
3 independent streams require 3 instances of OBS. Normally, OBS complains about that, but there's a command-line switch to tell it not to.
obs --multi gets you that part, but you also want them each to start with different settings so they don't run over each other. More command-line flags.
obs --help in a terminal (Command Prompt in Windows) to see all that you can do there. :-)

Just make sure that the total load doesn't exceed your machine's capacity. I have 2 instances in one of my rigs, and it works just fine.
Also, I am looking at getting a used "HP Pavilion Gaming Desktop - Nvidia 1650 Super - Ryzen 5" to put Linux on and use for the 3 streams, do you think that will work fine? any input on this? thanks.
 

John Zapf

Member
So I have another question regarding this how am I going to have 3 instances that automatically open back up and save the live stream setup that I have in there because this is something that's going to go 24/7 365. So when I have to reboot the computer for some reason or whatever I need these three sessions to come back up with the right camera going to the right stream each session's going to have its own camera and stream.
 

AaronD

Active Member
I figured it out. this was a good tutorial on hout to do. https://www.youtube.com/watch?v=g5JUAR-ayHo
You don't need all that. The same installation with different profiles and scene collections works just fine. Those are command-line options just like --portable is.
Like I said, obs --help in a terminal, to see all that you can do there. :-)

Unless of course, you want to have different versions and/or different plugins for each. But I really don't see the problem with keeping everything on the same version on the same machine, or with having some plugins turned off or set to do nothing. It keeps everything consistent that way.

Thank you, I will end up running all in Linux, I assume it will be the same there?
So I have another question regarding this how am I going to have 3 instances that automatically open back up and save the live stream setup that I have in there because this is something that's going to go 24/7 365. So when I have to reboot the computer for some reason or whatever I need these three sessions to come back up with the right camera going to the right stream each session's going to have its own camera and stream.
At this point, put a line in your crontab (crontab -e in a terminal), that calls a bash script @reboot. In that script, you start all 3 instances of OBS with their different options, with a '&' on the end of each one:
obs --options &
The '&' forks off a new thread, and the script continues to run in parallel. Without it, it waits for the command to finish before moving on.

Windows batch scripts can do the same thing, but they work completely differently:
cd "Path\to\obs"
start "" "obs.exe" --options

As above, obs --help in a terminal, to see all that you can do there. :-)
 

AaronD

Active Member
Also, I am looking at getting a used "HP Pavilion Gaming Desktop - Nvidia 1650 Super - Ryzen 5" to put Linux on and use for the 3 streams, do you think that will work fine? any input on this? thanks.
Since you're running 3 streams, you're going to have 3x the load of a normal stream. Can that machine handle that?

If you haven't chosen a distro yet, I'd strongly recommend Ubuntu Studio. (of course, everyone's going to recommend what they themselves use!) It's based on Ubuntu, which is the most popular flavor of Linux, so there's lots of support for it from the regular Ubuntu community, and it has a TON of stuff preinstalled that "just works", right out of the box. OBS is one of them...except that it's an old version.

Install the OS, then install the PPA as below, then do a normal update to get the current version, and THEN start customizing:
sudo apt-add-repository ppa:obsproject/obs-studio
 

qhobbes

Active Member
From what I recall, OBS used very little CPU when I was streaming (single camera, 3 images and some text) and most Nvidia cards can do 3 encodes with NVENC so it should be able to handle it but depends on resolution, frame rate, content and other stuff OBS and computer may doing.
 

John Zapf

Member
Since you're running 3 streams, you're going to have 3x the load of a normal stream. Can that machine handle that?

If you haven't chosen a distro yet, I'd strongly recommend Ubuntu Studio. (of course, everyone's going to recommend what they themselves use!) It's based on Ubuntu, which is the most popular flavor of Linux, so there's lots of support for it from the regular Ubuntu community, and it has a TON of stuff preinstalled that "just works", right out of the box. OBS is one of them...except that it's an old version.

Install the OS, then install the PPA as below, then do a normal update to get the current version, and THEN start customizing:
sudo apt-add-repository ppa:obsproject/obs-studio
Thank you for the info.
 

John Zapf

Member
From what I recall, OBS used very little CPU when I was streaming (single camera, 3 images and some text) and most Nvidia cards can do 3 encodes with NVENC so it should be able to handle it but depends on resolution, frame rate, content and other stuff OBS and computer may doing.
I figured the GPU would be the most important. the streams will be normal HD 30 FPS. here is my channel and the 3 live streams I would like to move to OBS. https://www.youtube.com/@artisticimages
 

John Zapf

Member
I'm a quick learner and should be able to get up to speed on all this fairly fast but I have no idea of how to do anything in OBS at this point. I ran through a few trials yesterday and everything went well and seemed easy enough. So now for all the plugins. Where do I find them and how do I find them. Is there one website or are they all over the place?

For instance I like the way they do the time on the top of this one and I like the way the bottom bar looks in the way the ticker scrolls up after a certain time. Not sure how to find this plugin? https://www.youtube.com/watch?v=Jm8wRjD3xVA

this stream is very similar with the date and time up in the top left and the bottom bar does the same thing and I like the weather in the lower right corner I'm guessing these are all plugins? https://www.youtube.com/watch?v=tS2PHJmvJzo
 

AaronD

Active Member
I'm a quick learner and should be able to get up to speed on all this fairly fast but I have no idea of how to do anything in OBS at this point. I ran through a few trials yesterday and everything went well and seemed easy enough. So now for all the plugins. Where do I find them and how do I find them. Is there one website or are they all over the place?

For instance I like the way they do the time on the top of this one and I like the way the bottom bar looks in the way the ticker scrolls up after a certain time. Not sure how to find this plugin? https://www.youtube.com/watch?v=Jm8wRjD3xVA

this stream is very similar with the date and time up in the top left and the bottom bar does the same thing and I like the weather in the lower right corner I'm guessing these are all plugins? https://www.youtube.com/watch?v=tS2PHJmvJzo
Maybe. Not necessarily. For each element, you might consider it to be a layer, kinda like a PowerPoint slide, except that everything becomes a video stream before it's "layered up". Static images become a stream of identical frames, etc., all inside of OBS itself, and then they're stacked in the order you specify, and the resulting frame is sent to the encoder.

So for each element, how would you get <that image>? Figure that out separately for each one, and then putting them together is relatively easy. Some might be a plugin that adds a filter or a new source or something like that. Some might be an external app that puts what you want on *its* window, and then you Window Capture that in OBS. Some might be a different computer via a capture card. Etc.

The officially supported plugins are here:
But there are others that someone just has on their github page with no other documentation, and probably a few others on someone's local hard drive that no one else will ever know about. OBS is open-source, which means that anyone can see how it works and write stuff to work with it, or modify the app itself for their own purpose.
 

John Zapf

Member
And one of my main objectives for doing this is on this stream until nest season starts in the spring. https://www.youtube.com/watch?v=lMp80-1dNts I would like to put a text box on the right side, say 100 by 400 I don't know I'm just guessing. But we have hundreds of facts and I would like to have it rotate through those facts. Have it post the text and then after 2 minutes post the next fact text for two minutes and so on and so on I just don't know how to do that and if it's possible I know I can put it in a text document but I don't know how to time it so it reads or puts up one section of text and then goes to the next section in the next section and so on. But this is one of my main reasons for switching over to OBS so I'm just trying to figure out all the things I want to be able to do before I switch everything over.
 

John Zapf

Member
Maybe. Not necessarily. For each element, you might consider it to be a layer, kinda like a PowerPoint slide, except that everything becomes a video stream before it's "layered up". Static images become a stream of identical frames, etc., all inside of OBS itself, and then they're stacked in the order you specify, and the resulting frame is sent to the encoder.

So for each element, how would you get <that image>? Figure that out separately for each one, and then putting them together is relatively easy. Some might be a plugin that adds a filter or a new source or something like that. Some might be an external app that puts what you want on *its* window, and then you Window Capture that in OBS. Some might be a different computer via a capture card. Etc.

The officially supported plugins are here:
But there are others that someone just has on their github page with no other documentation, and probably a few others on someone's local hard drive that no one else will ever know about. OBS is open-source, which means that anyone can see how it works and write stuff to work with it, or modify the app itself for their own purpose.
So yeah that PowerPoint presentation might be the best way to do the facts I'll have to see is there a plugin for adding PowerPoint to OBS?
 

John Zapf

Member
Well actually that's not gonna work I don't think it has to go automatically I'm not gonna sit there and switch the slides for the 100 facts.
 

AaronD

Active Member
PowerPoint itself doesn't go into OBS to my knowledge. It's just a similar concept. But you might be able to window-capture or display-capture a PPT show...

Or, you could use the Advanced Scene Switcher plugin to read a file and change the text source:
There was a discussion not too long ago about doing something with similar mechanics, but I don't remember the details. It might be old enough now to be okay if you just asked again:

A single macro to do all of it might look something like this (not complete!):
1690996149947.png

Somehow, you can get the content that was read in the condition (top box), manipulate it, and stick it into the source settings. Then it waits 2 minutes at the end. And it needs to loop somehow too.

Or, you might drop the 2-minute wait, and use the Run action in a different macro that itself runs every 2 minutes regardless, to trigger something that puts the next thing in the file. Then the one above sees the file change and updates the text.

Or you might skip the intermediate file and use variables instead. Again, ask in the discussion thread above about how to do that.
1690996502422.png

"Plugin running" is always true, and the "only on change" box is unchecked, so this will loop forever, and the Wait action controls the speed.

If the "only on change" box were checked, then the always-true condition would have it run once on startup and never again. So you can set things up in that one, that might have been left weird from the last session.
 

John Zapf

Member
PowerPoint itself doesn't go into OBS to my knowledge. It's just a similar concept. But you might be able to window-capture or display-capture a PPT show...

Or, you could use the Advanced Scene Switcher plugin to read a file and change the text source:
There was a discussion not too long ago about doing something with similar mechanics, but I don't remember the details. It might be old enough now to be okay if you just asked again:

A single macro to do all of it might look something like this (not complete!):
View attachment 96355
Somehow, you can get the content that was read in the condition (top box), manipulate it, and stick it into the source settings. Then it waits 2 minutes at the end. And it needs to loop somehow too.

Or, you might drop the 2-minute wait, and use the Run action in a different macro that itself runs every 2 minutes regardless, to trigger something that puts the next thing in the file. Then the one above sees the file change and updates the text.

Or you might skip the intermediate file and use variables instead. Again, ask in the discussion thread above about how to do that.
View attachment 96356
"Plugin running" is always true, and the "only on change" box is unchecked, so this will loop forever, and the Wait action controls the speed.

If the "only on change" box were checked, then the always-true condition would have it run once on startup and never again. So you can set things up in that one, that might have been left weird from the last session.
Very nice. thanks
 

John Zapf

Member
I'm stuck right now on how to pull up my individual profiles. I can't figure out the right syntax for the profile command I have three shortcuts to obs64.exe, and at the end of the target path I'm adding --profile profile name or --profile <profile name> I've tried everything it's not opening up my profiles that I've made. and as far as that goes under the profile tab when I click the different profiles it's not switching them I don't get it they're both named separate they're both using different scenes but they seem to be the same profile whatever I click on I must be missing something
 

AaronD

Active Member
I'm stuck right now on how to pull up my individual profiles. I can't figure out the right syntax for the profile command I have three shortcuts to obs64.exe, and at the end of the target path I'm adding --profile profile name or --profile <profile name> I've tried everything it's not opening up my profiles that I've made. and as far as that goes under the profile tab when I click the different profiles it's not switching them I don't get it they're both named separate they're both using different scenes but they seem to be the same profile whatever I click on I must be missing something
What are they actually called, and what are you actually putting there?

Put the double-quote character around anything with spaces in it, as a first guess. Spaces on every system, are used to separate arguments, so it's probably looking for just the first part of the name and not finding *that* as a complete name. For example, if you had a profile called:
My profile
and you did:
--profile My profile
then it would look for something called:
My
and give an error for:
profile
because that's not a valid argument by itself. But if you did:
--profile "My profile"
then that should work.

I've gotten into the habit of avoiding spaces altogether if at all possible. Use dashes or underscores instead, which means I actually have *two* types of spaces that I can use as different levels of delimiters, all without running into this problem!
 
Top