If anyone is using/testing WebRTC I would love to hear how it is working for them :) I am hoping Simulcast makes a impact with smaller streamers/site operators.
* Cheaper servers. More competition and I want to see people running their own servers.
* Better video quality. Encoding from source is going to be better then transcoding.
* No more bad servers. Send video to your audience and server isn't able to do modification/surveillance with E2E Encryption via WebRTC.
* Better Latency. No more time lost transcoding. I love low latency streaming where people are connected to community. Not just blasting one-way video.
I've been waiting for the WHEP support PR to be merged so I can input video from a stream into OBS and mix it before outputting it again with WHIP. Or am I thinking about it wrong ?
I would love to host an ultra high quality stream on my own web server, and then have that exact stream piped to YouTube live via OBS. Is there an easy way to do that now?
YouTube likely won't support streaming 3440x1440 60FPS video, and while discord technically supports it, they usually compress the footage fairly aggressively once it's sent up to the client, so I'd like to host my own; it only needs to support a few people. I wouldn't mind hosting it so my friends and side project partners can watch me code and play games in high quality.
You can try it out at https://b.siobud.com to see if you like it first. It if fits your needs then go for the self host :) I run my instance on Hetzner
I want to add more features to it, but I have been focused on OBS mostly lately. If you have any ideas/needs that would make it work for you and your friends I would love to hear! Join the discord and would love to chat.
What I want to do next is make a 're-broadcast feature'. So friends can stream to it + hang out. When they are ready they hit a button and then goes to Twitch/YouTube etc...
I'd never heard of vdo.ninja. It sounds like the base use case, according to their main page, is the opposite? Phone to webrtc:
> In its simplest form, VDO.Ninja brings live video from a smartphone, tablet, or remote computer, directly into OBS Studio or other browser-enabled software.
I really hope I'm processing what they're saying incorrectly but this sure sounds like they are doing a video encode for each peer, which is madness & obviously bad.
VDO.Ninja is a peer-to-peer system. This means for each new person viewing your feed, a new encode is processed. It also is CPU bound since encoding usually takes place on the CPU. Take care not to overload your system. Keep an eye on your CPU usage.
The intro video also emphasizes that each person has to send video to all peers, that in fact it's not about sending to OBS, it's about having people in a room. And warns that room size of 10 is about as good as you'll get. Seemingly because of these limits.
But if it does what the original purpose states, of streaming to OBS (a single consumer), it doesn't really matter. I am piqued to see how it handles maybe sending multiple people's streams to OBS: if that's what the room is for that's very rad (even if weird anti-efficient at it?)!
I really like the idea of web based tools for video capture. And for some video production. It's cool that vdo.ninja is here. But what the heck; this sounds not good.
Also I find it a weird claim that anyone would have heard of vdo.ninja but not webrtc. 3 results for https://hn.algolia.com/?q=vdo.ninja , about a thousand for webrtc. Always an interesting world, interesting people.
First I have to choose one. Second I have to trust a 3rd party. Third, I have to figure out how to use/install it. All this for functionality that should be right there with all the other audio things that are bundled with it.
BTW I hate needing plug-ins or add-ons for other software too for similar reasons - Gnome comes to mind.
If there's a 3-band EQ built in, it should probably be an 8-band instead. 3-band is hardly worth using, 8-band lets you do a decent job of balancing most various audio equipment well enough. Should be hardly any additional code complexity or maint burden for a significant functional upgrade.
>> If there's a 3-band EQ built in, it should probably be an 8-band instead.
My thoughts exactly. When I used OBS there was no equalizer. Later I decided to try making one and found they had a new 3-band which was useful for learning how to make audio tools and I was happy to bring my 8-band idea to life. I submitted a PR and one of the devs shepherded me through a few cleanups to make it acceptable. Then they rejected it as somehow non wanted in the project. As an OSS maintainer myself I get it - even though I don't understand the reasons they seemed divided on it since one of them helped with the PR. I try not to speculate on the why, so I have just kept my fork there with the 1 commit to add the 8-band. It's probably way out of date so I should rebase it on latest release. Sounds like there might be some naming convention changes too but I need to find time to look into it.
Neither the Windows Game Bar nor MacOS's QuickTime offer any sort of meaningful control over the codec or destination. Once you have OBS installed, you have pretty much zero reason to use start-g or cmd-shift-5.
Plus, on a Mac you can't even record your audio using the built in recording solution, you need a third party audio driver for that.
In OBS, add a new "Source". Which choice you use will depend on your operating system, but on macOS they're using the built-in APIs in the OS to do the captures. I think on Linux and Windows it's "Application Capture" or "Window Capture". Choose your Zoom meeting window. Mess with the size/position as you please, and hit record. The OOBE setup that OBS takes you through on first launch should choose reasonable settings for output and audio pickup, but do a test recording first in your Personal Room and see if its picking up everything right. At least on Linux/Windows I don't think anything special needs to be done to pick up Desktop Audio. On macOS, you might need to add a "macOS Audio Capture" source as well.
I use OBS all the time in the opposite direction, using the Virtual Cam plugin to serve video and content to a Zoom share. I have kinda draft of a walkthrough of my setup, with some explaination of like, the hierarchy of things and terms in the UI and how it all mixes together, that I haven't published but if there is a dearth of good basic setup docs for stuff it might light a fire under my ass to actually publish what I have and add some stuff for recording.
I'd love to hear more about your setup. The last time I tried messing with virtual webcams on macOS, most of the OSS options were still using the deprecated DAL API, which stopped working in Sonoma (without setting a `system-override` from Recovery Mode).
Do you know if your setup is using the new CMIO APIs? Or did you need to set the `legacy-camera-plugins-without-sw-camera-indication` override?
Complicated interaction with macOS Sequoia though. I’m on apple silicon and trying to capture on a multimon setup (although only capturing one screen) and the capture freezes painfully often. Going to window capture helps but doesn’t eliminate the problem. Seems to be related to ScreenCaptureKit. I’ve tried a lot to debug it but so far failed.
OBS is a great solution if you're on a budget or doing very simple streams, but I really urge anybody who is serious about live streaming professional shows to check out vMix. It's an incredible piece of software that is versatile and packed full of so many features professional broadcasts need all baked in.
This is absolutely correct, VMix is excellent software. When you pair it with the correct hardware even low cost hardware, it is very stable and reliable (and powerful). it’s also very reasonably priced, for one particular client twice a year I do a large 2 to 3 day livestream. We buy two copies of their $50 a month pro version (by default it is not a reoccurring subscription), each event. Every aspect of vmix can be automated or scripted, and they have a very easy to use XML based API (I can code but I’m definitely not a coder). Over the years we’ve built some incredible automated graphics for displaying on large billboards at the event, as well as using the second copy to produce the livestream where we pull in five professional ptz cams (via rtsp) and 2x sdi video feeds (via a capture card). We also use the NDI app on two iPhones to add their video into the mix (using the built-in vmix scripting, when someone presses the send button in the NDI app, V-Mix notices the audio level going above zero, and switches that live video feed into program). Note to do ndi over iphone wifi we use a dedicated ruckus R610 access point with no other clients on it, the video has ZERO latency, and amazing 4k quality). We also use companion running on a raspi5, connected to 2x stream decks, so that the entire set up can be controlled via the stream deck buttons.
I'd be interested to know as well. I may be in the minority, but I'll take a FOSS project with 80% of the features over a proprietary one with 100% of the features, almost every time. The philosophy of freedom is usually more important to me than squeezing out every last drop of functionality in exchange for a black box that I have to pay for and rely on some company that may or may not exist in a few years to develop it.
I’m pretty sure this has changed now, but when I first looked at OBS versus vmix, OBS did not have good NDI Support. Since the twice a year video production I put on is kind of like a hobby although I get paid, I just went with VMix and haven’t looked back. (Video is not my main job)
Agreed! I tried to make OBS work for a video podcast, and it was a very unpleasant experience. vMix has great features: built-in remote callers, audio buses, MIDI controller support, titles; just to name a few that I use.
I love and use free software a lot, but vMix blows OBS out of the water for semi-professional video productions.
If anyone is using/testing WebRTC I would love to hear how it is working for them :) I am hoping Simulcast makes a impact with smaller streamers/site operators.
* Cheaper servers. More competition and I want to see people running their own servers.
* Better video quality. Encoding from source is going to be better then transcoding.
* No more bad servers. Send video to your audience and server isn't able to do modification/surveillance with E2E Encryption via WebRTC.
* Better Latency. No more time lost transcoding. I love low latency streaming where people are connected to community. Not just blasting one-way video.
I've been waiting for the WHEP support PR to be merged so I can input video from a stream into OBS and mix it before outputting it again with WHIP. Or am I thinking about it wrong ?
No you are thinking about it right!
I think the best way to do it today is via a Browser Source. It is hard to get people excited because it is already technically possible.
I will keep working on that PR!
I would love to host an ultra high quality stream on my own web server, and then have that exact stream piped to YouTube live via OBS. Is there an easy way to do that now?
YouTube likely won't support streaming 3440x1440 60FPS video, and while discord technically supports it, they usually compress the footage fairly aggressively once it's sent up to the client, so I'd like to host my own; it only needs to support a few people. I wouldn't mind hosting it so my friends and side project partners can watch me code and play games in high quality.
I would send your high quality stream to something like Broadcast Box with Simulcast enabled.
Then you can forward your lowest quality stream to YouTube with FFmpeg/GStreamer. Hopefully no re-encoding needed!
Do you have any resources for someone who would want to get started in small-time self hosted options?
Context here is just self-hosting my own site for friends to stream to friends (instead of whatever we squeeze out of Discord).
The WebRTC work sounds awesome, would like to try it out.
Yes! I maintain https://github.com/glimesh/broadcast-box for this.
You can try it out at https://b.siobud.com to see if you like it first. It if fits your needs then go for the self host :) I run my instance on Hetzner
I want to add more features to it, but I have been focused on OBS mostly lately. If you have any ideas/needs that would make it work for you and your friends I would love to hear! Join the discord and would love to chat.
What I want to do next is make a 're-broadcast feature'. So friends can stream to it + hang out. When they are ready they hit a button and then goes to Twitch/YouTube etc...
The only thing I know about webRTC is that vdo ninja uses it https://docs.vdo.ninja/getting-started/vdo.ninja-basics#powe...
OBS outputs WebRTC, so you can push directly into vdo ninja now.
If you want more control over your video quality/capture it's nice to not have to use your browser. Trade off is its way harder to setup.
Is that using the WHIP output or something else?
Yep WHIP output!
* PR - https://github.com/obsproject/obs-studio/pull/7926
* RFC - https://datatracker.ietf.org/doc/rfc9725/
I'd never heard of vdo.ninja. It sounds like the base use case, according to their main page, is the opposite? Phone to webrtc:
> In its simplest form, VDO.Ninja brings live video from a smartphone, tablet, or remote computer, directly into OBS Studio or other browser-enabled software.
I really hope I'm processing what they're saying incorrectly but this sure sounds like they are doing a video encode for each peer, which is madness & obviously bad.
VDO.Ninja is a peer-to-peer system. This means for each new person viewing your feed, a new encode is processed. It also is CPU bound since encoding usually takes place on the CPU. Take care not to overload your system. Keep an eye on your CPU usage.
The intro video also emphasizes that each person has to send video to all peers, that in fact it's not about sending to OBS, it's about having people in a room. And warns that room size of 10 is about as good as you'll get. Seemingly because of these limits.
But if it does what the original purpose states, of streaming to OBS (a single consumer), it doesn't really matter. I am piqued to see how it handles maybe sending multiple people's streams to OBS: if that's what the room is for that's very rad (even if weird anti-efficient at it?)!
I really like the idea of web based tools for video capture. And for some video production. It's cool that vdo.ninja is here. But what the heck; this sounds not good.
Also I find it a weird claim that anyone would have heard of vdo.ninja but not webrtc. 3 results for https://hn.algolia.com/?q=vdo.ninja , about a thousand for webrtc. Always an interesting world, interesting people.
If you build OBS from source and would like more than a 3-band equalizer without a plugin, I've still got my eq8 branch getting stale here:
https://github.com/phkahler/obs-studio/tree/eq8
I should rebase that...
BTW they do not want it upstream for whatever reasons. I'm not complaining, I get it. But some of us like this built-in so I'm keeping it around.
What's the drawbacks of having equalizer as a plugin as opposed to core?
First I have to choose one. Second I have to trust a 3rd party. Third, I have to figure out how to use/install it. All this for functionality that should be right there with all the other audio things that are bundled with it.
BTW I hate needing plug-ins or add-ons for other software too for similar reasons - Gnome comes to mind.
If there's a 3-band EQ built in, it should probably be an 8-band instead. 3-band is hardly worth using, 8-band lets you do a decent job of balancing most various audio equipment well enough. Should be hardly any additional code complexity or maint burden for a significant functional upgrade.
>> If there's a 3-band EQ built in, it should probably be an 8-band instead.
My thoughts exactly. When I used OBS there was no equalizer. Later I decided to try making one and found they had a new 3-band which was useful for learning how to make audio tools and I was happy to bring my 8-band idea to life. I submitted a PR and one of the devs shepherded me through a few cleanups to make it acceptable. Then they rejected it as somehow non wanted in the project. As an OSS maintainer myself I get it - even though I don't understand the reasons they seemed divided on it since one of them helped with the PR. I try not to speculate on the why, so I have just kept my fork there with the 1 commit to add the 8-band. It's probably way out of date so I should rebase it on latest release. Sounds like there might be some naming convention changes too but I need to find time to look into it.
I like how OBS has subsumed (often low-quality) screen recording apps for me; apart from the apps original intent for streaming
Screen recording isn't built into your OS?
Neither the Windows Game Bar nor MacOS's QuickTime offer any sort of meaningful control over the codec or destination. Once you have OBS installed, you have pretty much zero reason to use start-g or cmd-shift-5.
Plus, on a Mac you can't even record your audio using the built in recording solution, you need a third party audio driver for that.
a bit more information on the new features: https://obsproject.com/forum/threads/obs-studio-32-1-beta.19...
I wanted to thank the OBS team from the bottom of my heart.
What similar software runs on a raspberry pi?
I think OBS can be built and ran on a raspberry pi.
https://obsproject.com/forum/threads/support-for-raspberry-p...
Is this kind of a hack or officially supported?
Holy moly the new source picker is awesome. Anxiously awaiting the full release of this version.
Does anyone use OBS to record Teams or Zoom meetings? If so, what is the best way to set it up?
I wish their website had a getting started guide for this purpose but I haven't found one.
In OBS, add a new "Source". Which choice you use will depend on your operating system, but on macOS they're using the built-in APIs in the OS to do the captures. I think on Linux and Windows it's "Application Capture" or "Window Capture". Choose your Zoom meeting window. Mess with the size/position as you please, and hit record. The OOBE setup that OBS takes you through on first launch should choose reasonable settings for output and audio pickup, but do a test recording first in your Personal Room and see if its picking up everything right. At least on Linux/Windows I don't think anything special needs to be done to pick up Desktop Audio. On macOS, you might need to add a "macOS Audio Capture" source as well.
I use OBS all the time in the opposite direction, using the Virtual Cam plugin to serve video and content to a Zoom share. I have kinda draft of a walkthrough of my setup, with some explaination of like, the hierarchy of things and terms in the UI and how it all mixes together, that I haven't published but if there is a dearth of good basic setup docs for stuff it might light a fire under my ass to actually publish what I have and add some stuff for recording.
I'd love to hear more about your setup. The last time I tried messing with virtual webcams on macOS, most of the OSS options were still using the deprecated DAL API, which stopped working in Sonoma (without setting a `system-override` from Recovery Mode).
Do you know if your setup is using the new CMIO APIs? Or did you need to set the `legacy-camera-plugins-without-sw-camera-indication` override?
On macOS with current OBS, "Screen Capture" will include the system audio automatically, while "Window Capture" will not.
Complicated interaction with macOS Sequoia though. I’m on apple silicon and trying to capture on a multimon setup (although only capturing one screen) and the capture freezes painfully often. Going to window capture helps but doesn’t eliminate the problem. Seems to be related to ScreenCaptureKit. I’ve tried a lot to debug it but so far failed.
OBS is a great solution if you're on a budget or doing very simple streams, but I really urge anybody who is serious about live streaming professional shows to check out vMix. It's an incredible piece of software that is versatile and packed full of so many features professional broadcasts need all baked in.
This is absolutely correct, VMix is excellent software. When you pair it with the correct hardware even low cost hardware, it is very stable and reliable (and powerful). it’s also very reasonably priced, for one particular client twice a year I do a large 2 to 3 day livestream. We buy two copies of their $50 a month pro version (by default it is not a reoccurring subscription), each event. Every aspect of vmix can be automated or scripted, and they have a very easy to use XML based API (I can code but I’m definitely not a coder). Over the years we’ve built some incredible automated graphics for displaying on large billboards at the event, as well as using the second copy to produce the livestream where we pull in five professional ptz cams (via rtsp) and 2x sdi video feeds (via a capture card). We also use the NDI app on two iPhones to add their video into the mix (using the built-in vmix scripting, when someone presses the send button in the NDI app, V-Mix notices the audio level going above zero, and switches that live video feed into program). Note to do ndi over iphone wifi we use a dedicated ruckus R610 access point with no other clients on it, the video has ZERO latency, and amazing 4k quality). We also use companion running on a raspi5, connected to 2x stream decks, so that the entire set up can be controlled via the stream deck buttons.
what features does vMix have, which OBS doesnt, that would be worth switching to a proprietary and paid program instead of a free, open source one?
I'd be interested to know as well. I may be in the minority, but I'll take a FOSS project with 80% of the features over a proprietary one with 100% of the features, almost every time. The philosophy of freedom is usually more important to me than squeezing out every last drop of functionality in exchange for a black box that I have to pay for and rely on some company that may or may not exist in a few years to develop it.
I’m pretty sure this has changed now, but when I first looked at OBS versus vmix, OBS did not have good NDI Support. Since the twice a year video production I put on is kind of like a hobby although I get paid, I just went with VMix and haven’t looked back. (Video is not my main job)
vMix is Windows-only, so I'd imagine the people it targets don't think about licensing much.
>vMix is Windows-only, so I'd imagine the people it targets don't think about licensing much.
they probably think about money, though. and whether there's a significant difference in features or not.
Geewiz, 700 usd and only updates for a year of you want similar features to obs.
Thanks to the api you can do quite complex (or wacky) streams with obs. I don't get the "only very simple streams" argument.
Agreed! I tried to make OBS work for a video podcast, and it was a very unpleasant experience. vMix has great features: built-in remote callers, audio buses, MIDI controller support, titles; just to name a few that I use.
I love and use free software a lot, but vMix blows OBS out of the water for semi-professional video productions.
Btw, there is a midi plugin for obs. I used it, worked like charm.