Question / Help Recording on Mac - Very Low FPS and Bitrate (Mac 10.15.2)

ohCyfire

New Member
Hey guys,

I've been trying to record Minecraft gameplay for the past week or so. Without recording, I get decent frames in Minecraft, around 60 fps consistently. Even while recording, I maintain at least 55 fps constantly. However, the file output of the recording itself is god awful - maybe less than 10 fps. It looks like a powerpoint presentation. Lowering the bitrate, I get slightly more fps, but the quality is garbage, and raising the bitrate only chokes the fps even more.

This is a problem that has emerged fairly recently, I think. The last time I recorded with OBS before this week was in about June 2019. I had the exact same computer, only about 6 months younger. I remember struggling with similar problems then that I do now - low FPS while recording Minecraft. However, I remember messing with the settings long enough to fix the low fps issues I was dealing with. I don't remember exactly what I did to the settings to make the recording watchable, unfortunately, and I don't have the time to play around with the settings now.

So, I suppose, what I am l looking for is any and all help on how to be able to record watchable videos. The recordings I made back in June of this year prove that it is possible to make decent recordings with my current computer. I have considered the theory that my computer has degraded so much over the past 6 months that recording has become impossible, and if so, then there is nothing I can do. I also suppose that OBS could have been updated and something could have changed that affects fps but as I have said before, I have had these problems when I first started recording. I don't remember what magical setting I changed to make the recordings watchable. And even if I did, there is no guarantee that what I did back then with that version of OBS would work with the current version.

(I have also tried resizing the recording to 1920x1080 instead of my usual 4096x2304, but it still had low fps)

I don't seek much. Even 30 fps with decent video quality would be fine for me. I have attached all relevant info about my computer and OBS below.
Thank you to anyone who finds this post and offers help. It means very much.

Computer Specs: Link to Screenshot
Display Specs: Link to Screenshot
OBS Main Window: Link to Screenshot
OBS Output Settings: Link to Screenshot
OBS Video Settings: Link to Screenshot

Activity Monitor While Recording (java is Minecraft): Link to first screenshot, Link to second screenshot
As you can see, OBS and Minecraft take up an insane amount of CPU when I run them, to the point where I can hear nothing but my fan.

*OBS Log File: Link to File

Recording I made back in June (Good Quality): Link to Video
Recordings I made just now on the same computer (Bad Quality, Current): Link to Video, Link to Another Video


Im not sure if this is relevant, but this notification popped up once when I was opening OBS: Link to Screenshot

Please tell me if you need any more information to understand the problem, and thank you again for your help.
 

wa2flq

New Member
Try changing your encoder to either

Apple VT H264 Hardware Encoder
Apple VT H264 Software Encoder

Jerry
 

ohCyfire

New Member
Try changing your encoder to either

Apple VT H264 Hardware Encoder
Apple VT H264 Software Encoder

Jerry

Thank you for your time, but neither appears to have worked. The Hardware encoder is low fps and bad video quality, the Software encoder has better quality but pretty much is a slideshow.

This is a recording using the Hardware Encoder: Link to Video
This is a recording using the Software Encoder: Link to Video

While recording both videos I got about 50-60 fps in game, though my computer fan was very loud.

Any other suggestions are appreciated.
 

wa2flq

New Member
I don't have the same setup as you, but I tried a few settings to see if could recreate the problem. The only time I saw high CPU consumption, like you show on the activity monitor, was on the software encoders. I would make sure that the Output encoder is set the Apple VT H264 Hardware Encoder. Changing it on the Streaming tab is an accident I made a few times.

You should see something like this if the HW encoder is engaged.

23:23:38.544: [VideoToolbox recording_h264: 'h264']: session created with hardware encoding 23:23:38.544: [VideoToolbox recording_h264: 'h264']: settings: 23:23:38.544: vt_encoder_id com.apple.videotoolbox.videoencoder.h264.gva 23:23:38.544: bitrate: 6000 (kbps) 23:23:38.544: fps_num: 30 23:23:38.544: fps_den: 1 23:23:38.544: width: 2560 23:23:38.544: height: 1440 23:23:38.544: keyint: 1 (s) 23:23:38.544: limit_bitrate: off 23:23:38.544: rc_max_bitrate: 2500 (kbps) 23:23:38.544: rc_max_bitrate_window: 1.500000 (s) 23:23:38.544: hw_enc: on 23:23:38.544: profile: baseline
 
Some usual caveats with regards to macOS recording here:
  • There is only one hardware encoder (Apple VT H264 Hardware Encoder) and internally that's probably QuickSync.
  • The hardware encoder only does average bitrate encoding (no CBR)
  • Software encoding/x264 encoding is comparatively slow on macOS machines mainly due to thermal throttling
  • The hardware encoder needs quite high bitrates to achieve image quality comparable to x264 (anything below 10mbit will look better with x264, even at the veryfast preset, but will eat lots more CPU)
So if it's only recoding you're after, using the hardware encoder and 30-35mbit (or maybe even 50mbit) should work. If that's still too much for your machine, then reducing the output resolution to 1080p should also help.

And encoding 4k with x264 is quite simply too much for an iMac (even an I7), because it cannot run all cores at full speed all the time. The iMac is maybe half as thick as my gaming PCs CPU heatsink alone.
 

natedawggh

New Member
Anyone finding this thread: Using OBS on a mac is actually really great, but default settings make it very choppy if you don't understand what is going on, and there are no warnings or other info to tell you otherwise. Window capture on a mac will capture the window at the size it is displayed, which on most macs is very, very large, so if you are, say, playing a windowed game that is enlarged to most of the screen you are actually capturing something that will be many pixels larger than the 1080 or 1920p which you are streaming. It then has to resize this down to your stream size which in turn lowers the frame rate substantially. If you resize the window very small, which is not good for using it, you will see the frame rate speed up rapidly. For this reason, window capture is not really useful or as straightforward as it first appears, and instead you need to use display capture.
 

clovelt

New Member
Anyone finding this thread: Using OBS on a mac is actually really great, but default settings make it very choppy if you don't understand what is going on, and there are no warnings or other info to tell you otherwise. Window capture on a mac will capture the window at the size it is displayed, which on most macs is very, very large, so if you are, say, playing a windowed game that is enlarged to most of the screen you are actually capturing something that will be many pixels larger than the 1080 or 1920p which you are streaming. It then has to resize this down to your stream size which in turn lowers the frame rate substantially. If you resize the window very small, which is not good for using it, you will see the frame rate speed up rapidly. For this reason, window capture is not really useful or as straightforward as it first appears, and instead you need to use display capture.
I made an account just to thank you <3
 
Top