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.
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.
BTW I hate needing plug-ins or add-ons for other software too for similar reasons - Gnome comes to mind.
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.
* 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.
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.
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...
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.
> 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.
It has uses for things like hosting video podcasts.
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.
Then you can forward your lowest quality stream to YouTube with FFmpeg/GStreamer. Hopefully no re-encoding needed!
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!
We ended up just doing a discord screen share, which evaded all the tunnelling/transcoding/etc issues which made us give up on WebRTC.
Can you try Broadcast Box. If that is still too heavy, what could I do to make it better?
I wish their website had a getting started guide for this purpose but I haven't found one.
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.
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?
I am mostly broadcasting the desktop view of a second or third computer on my desk, plus slide decks, graphics, etc. I hate Zoom's clunky screen picker UI and never want to accidentally share plaintext secrets or PII to the attendees by choosing the wrong window or absentmindedly moving a window to a shared monitor or something, so I got around that by just using OBS as a switchboard, and never having production data on my test computers. One is hooked up to an Elgato Neo capture device over HDMI, the other when required over a BMD Intensity 4K on an eGPU dock. Slide decks are the only data from my presenter computer ever shared, but via a 'macOS Screen Capture' source. I have a few scenes with text only too for info/time stuff. It's great being able to slap some text over a scene, or have two computers up at once in a half-and-half arrangement. Plus plugin support (used to capture from the BMD from a PC tower and send the video to my presenter computer over NDI when an older elgarbo capture card shit the bed), audio and video filters/effects, goddamn shaders, sky's the limit since OBS is so extensible. I've done in person presenting and still used OBS to generate a fullscreen projector of the program output.
I also personally have always found the "presenter awkwardly clicking around through an un-played Powerpoint" to be really unprofessional. I can hide all of that messy stuff and not just a bunch of dead air.
Right now I'm working on getting an Adafruit Macropad to talk to an ESP32 over UART so I can build a wireless streamdeck that doesn't require any shitty bloated control software. The ESP32 would then send commands/get statuses from the Websockets server and send em back to the Macropad so it can update the screen. This would be impossible to do with Zoom since the app isn't scriptable (on macOS most AppKit UI can be automated with AppleScript) and they only engineer for the lowest-common-denominator use cases.
they probably think about money, though. and whether there's a significant difference in features or not.
I love and use free software a lot, but vMix blows OBS out of the water for semi-professional video productions.
Thanks to the api you can do quite complex (or wacky) streams with obs. I don't get the "only very simple streams" argument.
https://obsproject.com/forum/threads/support-for-raspberry-p...