7 ms·
If you haven't just used OBS you definitely should check it out. It's an incredible piece of software. I can screen cap multiple browsers and get a webcam feed
by worldmerge 6y ago
If you haven't just used OBS you definitely should check it out. It's an incredible piece of software. I can screen cap multiple browsers and get a webcam feed and be at ~4% CPU usage. To put that in perspective I just made an app with OpenFrameworks (C++) that just gets my camera and it uses ~6% of my CPU.
OBS is amazing.
- deathtrader666 6y agoAs a counter anecdote - my 2015 MacBook Pro stutters within 30-40 seconds of OBS streaming a 1080p feed to YouTube. Is there anything to tweak? Or is my machine too old?
- bsder 6y agoSorry, you probably need a "real" video card for video encode. I really tried to make OBS work at 1080p on my 2015 MacBook Pro, but just about anything (even a simple flip the webcam output) causes my fan to spin to maximum and eventually the video lags behind. The best thing I could do was get something like the Avaya HC020 Webcam. It does a lot of things like zoom, flip, color balance, etc. all in the camera so you're processing as little as possible. At that point, I think I got 720p reliable, but not 1080p. However, my fan was still going full blast. Eventually, I just gave up and built a Windows 10 desktop machine solely for video. It works great and I don't have a jet engine powering up next to my face when I do video.
- worldmerge 6y agoNot sure, you may want to drop to 720p and maybe lower your bitrate. For my latest project I was using a Macbook pro 2015 to test it, running my app and streaming at the same time fine. I was running Windows 10 though on the mac. If you're running Mac OS try using a utility like SMC Fan Control to set the fan RPM high. Mac OS by default wants to be as silent as possible which could be leading to some performance issues. I'm very new to streaming so take what I say with a grain of salt.
- imtringued 6y agoA lower bitrate (=better quality assuming constant file size) requires your encoder to work harder. If anything you want to use faster settings with higher bitrates (=lower quality). Some encoders let you cap the bitrate but what this does is basically ruin video quality in scenes where the bitrate cap has been exceeded, it doesn't actually make it less CPU intensive.
- ThatPlayer 6y agoMake sure you're using hardware encoding if you can. Using the CPU encoder can be higher quality, but it can't beat the dedicated hardware on your GPU for encoding in terms of performance. Even a first-gen Raspberry Pi 1 is able to encode 1080p30fps video with its hardware encoder.
- TylerE 6y agoMost newer gpus can encode video on the gpu. This helps tremendously. A 2000 series NVidia GPU can encode 4K/60 at less than 5% load (and that’s gpu loaf, cpu loaf is essentially zero) The MacBook can do none of those things, it’s old school cpu encoding.
- mciancia 6y agoIn macbooks you can use igpu for encoding, imo works pretty well. Not sure if OBS supports that, but I was able to use it with ffmpeg
- TylerE 6y agoI have a 2015 mbp and just setup obs on it a few days ago. Cpu encoding is the only option.
- hashtagmarkup 6y agoI was in the same boat. Switched to a T495 ThinkPad with AMD Ryzen 7 PRO 3700U w/ Radeon Vega 10 Gfx, and now my macs feel like toys. Unbelievable power. Would never imagine a laptop could do any of things OBS is able to deliver without breaking a sweat.
- martinald 6y agoOBS supports hardware encoding ironically on Intel integrated graphics, but doesn't on discrete graphics. So a much better graphics chipset in a macbook is likely to be a hinderance for this.
- Aerroon 6y agoThe CPU/GPU usage for streaming depends mostly on the encoder that you're using. Programs like OBS allow you to use different encoders with different settings. This will place a very different load on your system. Eg x264 slow at 1080p would use a lot of CPU resources on most CPUs. On the other hand, if you have an nvidia GPU capable of nvenc and use that then you get next to no CPU usage. Same goes if you have an Intel CPU with an iGPU and use QuickSync or AMD's GPU encoder. I'll say that even most modern desktop CPUs would use about a CPU core when encoding x264 even on fast preset at 1080p. It's pretty CPU intensive. That's why hardware encoders such as nvenc are popular. You most likely want to check what kind of encoder you're using. Maybe there are no other options than x264. In that case you might want to drop encoder settings and perhaps the resolution.
- Jnr 6y agoSounds weird. We are using an old 2015 MacBook Pro for 1080p streams at work. We stream multiple webcams, browser capture, Teams capture and HDMI screen capture. It has never lagged for us.
- zaphirplane 6y agoIf it’s important to be worth the $, get an eGPU
- rcarmo 6y agoOn some Macs (typically Radeon equipped ones) you can enable hardware encoding. I'm not at my machine, but it should read something like "Apple hardware accelerated $FOOBAR"
- Polylactic_acid 6y agoLast time I checked it didn't support Wayland which makes it impossible to use on most modern linux systems.
- ben-schaaf 6y agoConsidering Waylands history with lacking screen capture support and the amount of work that's gone into creating plugins like https://hg.sr.ht/~scoopta/wlrobs https://hg.sr.ht/~scoopta/wlrobs to support screen capture for wlroots based Wayland compositors this really doesn't looked like something OBS can or should fix. Until there's a standard way for applications to actually do screen capture similarly to X, Wayland is going to continue to be stuck as the 2nd choice for a lot (most) people. Not to mention all the other things that don't work on Wayland, like VM key capture and Peek's event passthrough.
- Polylactic_acid 6y agoDiscord and Peek are able to capture the screen fine.
- l3s2d 6y agoAre you sure you can share Wayland windows? To my knowledge screen sharing support for Electron apps is experimental or hasn't landed yet. Xwayland windows (most games and Discord itself would fall into this category) can be shared.
- ben-schaaf 6y agoThe whole design behind Peek is that you have a transparent window that shows you what is being recorded and you can interact with the window behind it to record something useful. Passing through events to the window behind it only works on X11 (or XWayland).
- mariusor 6y agoYou seem to project your own biases on the OBS developers. However there is already work being done for OBS supporting Wayland natively[1]. [1] https://github.com/obsproject/obs-studio/pull/2482 https://github.com/obsproject/obs-studio/pull/2482