Hacker News new | past | comments | ask | show | jobs | submit login
OBS Studio 27.1.1 (github.com/obsproject)
228 points by bdz 3 months ago | hide | past | favorite | 71 comments

I don't have much of a use for OBS these days, but man it's a real game changer compared to the hoops you had to jump through for capturing your screen or external devices a decade or so ago.

I'm sure many people remember all the old YouTube videos with an "Unregistered Hypercam 2" tag in the corner. I recall a time when the only decent screen capture tool was Camtasia, which had a fairly high price tag.

I've played around with OBS a bit, and occasionally use it for screen captures, and it's a really impressive, feature-packed piece of software that feels like it shouldn't be free. Big props to the people who made it happen!

I agree that modern OBS is pretty good for screen captures, even if you don't need to stream. You can record 4k60 without too much overhead on modern systems directly into a .mp4 which plays nicely with other software/services without an extra conversion from a proprietary format. On macOS at least, recording with OBS is substantially better than working with expensive video recording software like ScreenFlow.

The weakness with this workflow is that OBS only allows saving one video at a time, which may be an issue if you want to composite video/mix audio better in post-production (e.g. computer screen recording + webcam + secondary screen recording such as iOS), although you can record audio in separate tracks. Of course you can run multiple instances of OBS simultaneously in this use case and save them together.

> The weakness with this workflow is that OBS only allows saving one video at a time

Not anymore thanks to plugins!


You can still only record one scene AFAIK, but you can still record multiple standalone sources. Its great if you want to record your screen or some complex scene, but still record your face camera separately to do whatever you want with in post production instead of doing it during recording.

You can also spawn multiple instances of OBS (it’ll warn you to be sure you want to). I’ve used that to do Desktop Capture of my presentation screen, while doing video effects and Desktop capture of my Teams Meeting on the other screen.

Media creation in general is so easy now. Even professional game reviewers used to have to literally take pictures of CRTs and then publish screenshots to accompany screenshots in printed guides! Compared to today where anybody can get OBS and stream their gameplay and commentary, live! OBS is definitely an awesome piece of software that deserves its praise.

There were capture cards going pretty far back. In some ways capturing desktop footage was easier because of no hdcp blacking out content.

Right, capture cards you had to seek out in the pre and early internet days and pay hefty sums for, not to mention have the drive space for the captured footage in decent quality.

Meanwhile OBS is free and supports the common compression codecs that allow you to store hundreds of hours on even smaller modern drives.

That's true! But what if you want to actually share the video? Uploading to Youtube or Twitch is painful.

I use Loom. E.g. when I wanted to show my team all of our Mercury perks, it was about 60 seconds start to finish to get a shareable url: https://www.loom.com/share/4e39a76fee3e40abad7c8af9ecd682e6

Was surprised how easy it is.

I like and pay for Loom. Works well with my clients and makes meetings faster.

I used it to make some tutorials at work in the past. Being able to record the computer audio and the mic audio on two separate tracks for editing later was quite useful!

I remember when Fraps was THE capture software. My computer couldn't run it due to some issues with Intel graphics not being able to run DirectX (or something, it was 10 years ago).

It was really good software for the time, assuming you has an OpenGL or DirectX window.

I was surprised at how easy it was to use. I was expecting it to be difficult, as is often the case for software that is packed with features for advanced users, but it turned out that recording a window is just a matter of pressing a button.

I wish OBS was around when I was making Minecraft YouTube videos when I was 11. Good times. I used some no name screen recorder and captured the region of my screen that was the Minecraft window. The quality is exactly what you'd expect.

I've used OBS to do a few programming streams during quarantine. It worked without fail on X11. That alone was impressive for a cross platform tool for me, let alone how easy and powerful it was.

I do kind of miss the nostalgia of those old days though...

OBS is basically the Gimp or Libreoffice of video production. There are paid tools that are better but if you don't mind the quirks it does pretty much everything an amateur could want, and most of what a professional needs.

I think its a step above that. For many workflows, OBS is basically the best option. I bought XSplit a long time ago, when it was in beta or something. OBS came out around that time but it wasn't what it is today.

Today though? I still use OBS even though I still have XSPlit (I got a perpetual license). If there's something much better that isn't thousands of dollars, I'd like to know what it is.

There's a lot of commercial editors that are nicer than Gimp, and Office IMO still beats Libreoffice and isn't that expensive. But OBS? I don't know anything much better.

The plugin ecosystem and the community support is just top notch too, because EVERYONE uses OBS. If you use a commercial option, it's much harder to google up how to do some stuff.

XSplit was pretty good feature-wise in ~2013/2014 - I don't think OBS would be as feature-rich if not for Xsplit. The only other software I can recall which was an alternative to Xsplit was Wirecast - but it very expensive for small-time streamers (like ~$400 or so?), and had pretty high hardware specs.

Definitely agree with you regarding the plugin ecosystem, it's a key reason why OBS was able to explode in popularity - and many popular plugin features have been merged into the main app over time.

In my opinion, the true spiritual successor to Hypercam 2 is not OBS Studio (a real-time multi-source video compositing framework) but ShareX (a window or screen recorder).

> and it's a really impressive, feature-packed piece of software that feels like it shouldn't be free.

Nobody should ever think like that.

The phrasing is poor but the idea they're getting at is that it's so feature rich and well designed it feels as if it was produced by a team of hired engineers instead of people working for free in spare time and for donations.

My kids learned to use OBS and iMovie and it's pretty mind-blowing what they can do making little homemade minecraft movies.

For the value that OBS provides to the “creator economy” between YouTube and Twitch alone, I’m surprised there haven’t been more events by creators to support the devs.

It would be cool if streamers had a universal OBS appreciation day where all donations get funneled to OBS, similar to the charity streams.

“What we do wouldn’t be possible without amazing software so if you want to help support the team that helps me and many of your other favorite streamers do what we do, head on over to obsdonos.com” kinda thing.

You're absolutely right, but to some extent, that'll be covered by their platforms, who are pledging at least $50,000 to OBS (but I suspect much more). [1]

[1]: https://obsproject.com/contribute

That doesn't cover even a single full-time developer, so while it's nice, it's not really meaningful. Think about how much Twitch pays for something like Slack or Google Docs. (I'm sure they have in-house alternatives, which probably make them even more expensive, actually.)

Between Patreon and the contributors page they're getting about $60k/yr, which doesn't include YouTube, Twitch, or Facebook, who are presumably donating/supporting enough to cover multiple developers each to earn that spot on the page.

I'd love to see more public, vocal support of OBS too but let's not pretend that they're collecting change out of couch cushions to pay the people working on it.

>That doesn't cover even a single full-time developer

Absolutely does, just not in the US.

I've been loosely watching linux FLOSS video editor for more than a decade. At the time we joked: "stability, features, performance; choose two". But that has changed.

FLOSS video tools have greatly improved in recent years. Even disregarding blender, some prosumer-like tools broke the good enough bar recently. Kdenlive, OBS, Natron, Synfig... It is becoming increasingly harder for non-paid proprietary tools to compete. Hope the professional market will soon start to benefit from these improvements.

Not FLOSS, but related; I feel like the Linux prosumer video editing scene has dramatically improved. Lightworks is really nice once you wrap your head around it, and Da Vinci Resolve on Ubuntu is even pretty OK.

I'm not a video editor by trade, I just make dumb YouTube videos like twice a year, so I'm definitely not "stress testing" these tools in any serious sense, but for years I had to run a VM of Windows with a copy of Vegas Pro installed. I of course wanted to work on Linux, working on a VM is a pain, but I found the existing video editing tools on Linux to be extremely buggy and irritating to use. Once Lightworks was released (and stable) on Linux, I suddenly didn't feel the need to bother with Vegas anymore.

something that always amazes me about OBS is how it is seamlessly cross-platform... and yet I assume the low-level ability to capture display output must be highly platform-dependent?

Does OBS need to maintain totally distinct logic for capturing display output from different OSs? Or is there already an abstraction layer for this, maybe at the driver level? Or, third possibility - does it depend on a separate project/library for that?

(I'm ready for the replies saying "read the source and find out" but I'm hoping for someone smarter than I to make sense of it for me :D)

It looks like they have their own library for low level stuff (https://github.com/obsproject/obs-studio/tree/master/libobs), but for the most part rely on ffmpeg's library for all the platform-specific video, audio, etc. stuff (https://www.ffmpeg.org/about.html). If you browse the CMakeLists.txt files in the repo you can get a rough idea the kinds of libraries they depend on and use.

OBS uses FFmpeg for media source playback, some audio encoders, and specific video output contexts. Usually FFmpeg isn't used for video encoding, though -- that's handled by either a direct hardware encoder implementation or by a native x264 encoder (i.e. not FFmpeg's x264 implementation). OBS supports FFmpeg output in Advanced mode, but it's by no means the default.

I have been following the development of screen capturing under Wayland a little and what I can tell you is that at least for Wayland OBS directly interfaces with pipewire (which is very much platform specific and low level), see: https://github.com/obsproject/obs-studio/pull/4287/files

Looks to be managed here https://github.com/obsproject/obs-studio/tree/master/plugins

Pretty clean source tree to reference :) Seems to be unique per OS and not dependent on third party projects.

Indeed, all capture functionality is split out into plugins and they are platform-specific. Platform builds are handled by CMake to only include relevant plugins: https://github.com/obsproject/obs-studio/blob/master/plugins...

Highly OT, but why did you use "smarter than I" instead of "smarter than me"? What is the difference between these two?

I had to install it to a colleague macos computer and it was a pain to setup the computer audio recording. Had to install a third-party closed source plugin, configure it...

You can use [BlackHole](https://github.com/ExistentialAudio/BlackHole) for that, which is open-source, GPL-3. I do, it works, it’s great.

Thanks a lot!

Been using Streamlabs OBS for a while due to its YT stream management feature and remote control; this solves the YouTube problem, and it looks like remote control could be implemented via "Added a feature to browser sources to allow limited control over OBS". This will probably bring me back mainline.

FWIW, the OBS Websocket plugin makes a great remote control interface available for OBS, and can be paired with https://t2t2.github.io/obs-tablet-remote/ for a control surface. Bitfocus Companion can also be used with the Elgato Streamdeck, as well as a virtual remote surface and a REST interface if you'd like to roll your own interface as well (and prefer not to use WebSockets)

Check for OBS-Websocket, personally I use Outfield (on Android) to control when to start and stop recording/streaming, as well as switching to a different scene.



Side topic: how to create a virtual video device?

I want to process camera input, e.g. cartoonizing human, embed virtual objects, overlaying myself over presentation, etc during virtual meeting.

There are project like pyvirtualcam [1] that allows you create video frame, then write it to obs. But how does obs do it in the first place? What are the steps to do it from scratch? Can someone point me to some keywords/reference?

[1] https://github.com/letmaik/pyvirtualcam


OBS is so great and permissive that entire companies are built around it.

Not to mention the billions in content creation revenue it's enabled.

OBS is truly a great piece of software. From what I can tell it is built in a pretty modular way, especially looking at plugins. Is anyone using OBS (or parts of it) as library for their project?

PSA: OBS Studio is great for making videos, not just streaming.

That’s a very nice changelog. I hope they have the time to link to individual PRs/commits in the future, so it’s possible to see what changed in detail.

My big wanted feature for OBS at this point is built-in webrtc streaming of some sort. Probably the WHIP ingest protocol that's going through an IETF draft right now. It would solve a lot of problems with using obs in a 'distributed' way (aka restreaming).

> Special thanks to the developers at YouTube for working with us directly on the initial implementation of this feature [YouTube integration] and helping to make it a reality

this is pretty cool to see, OBS sure has come a long way in such a short time

Since YT wants to be a direct competitor to Twitch and OBS is the #1 tool to stream it makes perfect sense.

is OBS the number one stream tool these days? I've been out of the loop for many years and when I was keeping up with things it was the up-and-comer but not the dominant tool by a longshot. if it's #1 now that's awesome

What was/is #1? I know Streamlabs OBS is sometimes cited as a popular alternative, but that's more or less a distribution of OBS.

xsplit used to be popular iirc, and I think there were more too. looking xsplit up now on Wikipedia I see it's had a complicated history since I last used it

xsplit not only was compromised repeatedly and collected billing details and was a pay monthly to use software, but also just kind of .. never innovated, ever. no new features, ignored requests, ignored feedback while they were "king" long ago.

mandatory watermarks, inability for kids/teens that want to stream to pay for it even if they wanted to - no offline payment methods, no way to purchase a key without a credit card type of thing.

was also not cheap/forgettable tier of pricing - i believe $15/m? back in the day people went off to ffsplit (ffmpeg-based free version?) and obs (before obs was as polished as it is today, but it was free)

Yep, not surprised to see this added when Twitch account integration already existed. Much less typo-prone than copying your stream key in, along with all the convenience features you get.

It’s essential to the well being of several very well funded companies so no surprise.

I wanted to stream a bunch of videos (and intermissions) to some friends "live" and thanks to this and and comments right here at Hacker News, I have a workflow I plan on trying out as soon as I get other things settled.

Namely ... VLC playlist of videos pushed to an OBS source, OBS dumps out an RTMP stream, nginx will loop that to HLS by spawning a bunch of ffmpeg processes to wrap up and later be ingested by Jellyfin, and from there out to various Jellyfin clients on the Roku, Apple TV, Fire Stick, and so forth. It sounds overly complicated but my friends are not tech savvy and have a wide variety of bandwidths ...

Looking forward to trying this out.

If you're not set on Roku/Fire Stick as clients and would be willing to use (for example) Android phones / laptops / Raspberry Pis you could consider just making a VLC playlist and sharing your screen via Discord. This would allow everyone to join the server with an invite, and join the stream with a click. Good max video quality, and handles low-bw clients well too.

If you really need scene selection and stuff, then you could use OBS + (VirtualCam + VoiceMeeter) as your mixer and feed that into Discord.

Discord will not let you stream movies via its Terms of Service, so that one is out. The Discord server I am on that I am considering this for is verrrrry paranoid of falling afoul of the ToS.

If there's no harm if public discover and view the content, you can just stream it to a Twitch or YouTube channel and skip all this complexity.

This is definitely private. And also against the Terms of Service of either service.

OBS is great software that needs more recognition as a powerful open source alternative.

My user story is: I’m a hobbyist user that likes to record game matches for personal review (analysis of my strategy/mistakes for self improvement). I know that OBS is much more powerful that what I need. However, the design of the software allows me to focus on features I need without the distractions of the features I’m not concerned with. I’m able to complete the tasks I need from the software with amazing ease.

It really allows me to enjoy the games I’m playing so much more.

OBS + OBS Spout Plugin + OBS NDI plugin allows for so much flexibility for artists.

Especially since the Spout plugin allows you to output the whole canvas, or just output a scene by adding a Spout filter (alpha channel is transmitted too).

https://github.com/Off-World-Live/obs-spout2-plugin https://github.com/Palakis/obs-ndi

An interesting idea I've seen for developers is setting up a virtual camera in obs and have overlays like time of day and weather on your screen while on camera.

I haven't found a way to do desktop screen record while having a different scene setup to show my camera + overlay as a virtual camera on obs. If anyone knows if it's possible, I'd greatly appreciate it.

I could not figure how to get OBS to record a zoom call when either party shares their screen. It needs to record the shared screen. Spent hours searching obscure forums to no avail. If anyone can point to a solution (MacOS) I will be grateful.

Tried capturing a specified region of the screen instead of picking the Zoom app from a list?

Thanks for suggesting. I will try this

Past related threads. Others?

Node.js binding for libobs – OBS studio's internal library - https://news.ycombinator.com/item?id=28274190 - Aug 2021 (24 comments)

OBS Studio 27.0 - https://news.ycombinator.com/item?id=27360141 - June 2021 (117 comments)

OBS Studio Now Ready with Wayland Capture Support - https://news.ycombinator.com/item?id=26645312 - March 2021 (67 comments)

Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS - https://news.ycombinator.com/item?id=25627673 - Jan 2021 (138 comments)

OBS Studio 26.0 - https://news.ycombinator.com/item?id=24633139 - Sept 2020 (154 comments)

How to Run a Live Coding Stream on Twitch Using OBS - https://news.ycombinator.com/item?id=23834153 - July 2020 (190 comments)

Show HN: OBS-web – Control OBS from the browser - https://news.ycombinator.com/item?id=23573474 - June 2020 (38 comments)

Automated Work Recordings with OBS Studio and TaskWarrior and TimeWarrior - https://news.ycombinator.com/item?id=23410503 - June 2020 (17 comments)

OBS (macOS) Virtual Camera - https://news.ycombinator.com/item?id=23404485 - June 2020 (155 comments)

Share OBS output as a webcam in Hangouts, Zoom etc - https://news.ycombinator.com/item?id=22804804 - April 2020 (52 comments)

OBS Studio: Open-source software for video recording and live streaming - https://news.ycombinator.com/item?id=22748247 - April 2020 (362 comments)

Proposed bounty for adding virtual camera / microphone support natively to OBS - https://news.ycombinator.com/item?id=22682022 - March 2020 (99 comments)

How to remove breathing sounds from your audio recordings - https://news.ycombinator.com/item?id=11512199 - April 2016 (6 comments)

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact