Question / Help Macbook poor performance on streaming any suggestions?

AOSPete

New Member
I've tried running a few streams now and while its ok the quality isn't great, there's usually delays between audio and video and overall its just a bit meh, I'm only using 1 webcam (a c920 USB webcam) a razr mic and sometimes I have a skype call tied in too, it should still be ok with that shouldn't it? I do notice that very quickly the fan goes into overdrive mode and stays there permanently! Upload speeds are pretty solid, 20mbs and wired in when running...

I've attached the last two log files, the last one I dropped the stream resolution a fair bit down and it seemed better, but still a bit naff... do I just need a new machine?
 

Attachments

  • 2019-09-17 21-49-16.txt
    20.3 KB · Views: 18
  • 2019-09-24 21-59-03.txt
    14 KB · Views: 7

Narcogen

Active Member
No, the same machine running Windows would probably be fine. That's only partially a joke.

22:02:18.014: YUV mode: 601/Full

Change that to either 601 or 709/Partial.

https://obsproject.com/forum/resour...t-color-range-settings-guide-test-charts.442/

21:49:16.776: base resolution: 1280x720
21:49:16.776: output resolution: 852x480


Downscaling from your base to a lower output resolution only helps if the problem you're experiencing is dropped frames due to encoder overload, or insufficient bandwidth.

At 720p:

23:01:20.269: Output 'simple_stream': Number of lagged frames due to rendering lag/stalls: 8518 (8.0%)
23:01:20.270: Video stopped, number of skipped frames due to encoding lag: 1408/106031 (1.3%)


So you are getting a small amount of rendering and encoding lag at 720p, but rendering was the bigger issue, so decreasing the output resolution but leaving the base alone did not really help.

22:01:59.610: Output 'simple_stream': Number of lagged frames due to rendering lag/stalls: 936 (27.3%)

Your problem is a weak GPU. You can address this by lowering your base resolution until it's the same as your output resolution.

https://obsproject.com/wiki/GPU-overload-issues

22:00:06.814: adding 490 milliseconds of audio buffering, total audio buffering is now 576 milliseconds (source: Testname Skype)
22:00:06.992: adding 21 milliseconds of audio buffering, total audio buffering is now 597 milliseconds (source: Testname Skype)
22:00:10.814: adding 106 milliseconds of audio buffering, total audio buffering is now 704 milliseconds (source: Testname Skype)
22:00:11.308: adding 42 milliseconds of audio buffering, total audio buffering is now 746 milliseconds (source: Testname Skype)
22:00:11.590: adding 42 milliseconds of audio buffering, total audio buffering is now 789 milliseconds (source: Testname Skype)
22:00:11.766: adding 106 milliseconds of audio buffering, total audio buffering is now 896 milliseconds (source: Testname Skype)
22:00:26.598: adding 21 milliseconds of audio buffering, total audio buffering is now 917 milliseconds (source: Testname Skype)
22:00:51.237: adding 21 milliseconds of audio buffering, total audio buffering is now 938 milliseconds (source: Testname Skype)
22:00:52.111: Max audio buffering reached!
22:00:52.111: adding 21 milliseconds of audio buffering, total audio buffering is now 960 milliseconds (source: Testname Skype)


The above generally indicates either the source is lagging or the machine is overloaded. Given that you have to use CPU encoding under MacOS, either is possible.

22:00:05.348: [x264 encoder: 'simple_h264_stream'] preset: veryfast

veryfast is the default suggested preset, but you may get better results from superfast, at least in terms of smoothness.

22:00:05.348: bitrate: 1500

That's low-- not that it's too low for 480p, technically, but the only way you have to compensate for the lack of hardware encoding is to allow for a higher bitrate. If your connection can sustain it, double this. It couldn't hurt.

Try running the Auto-Configuration Wizard from the Tools menu on a clean profile and see what it suggests.

Using your CPU to encode video in OBS is absolutely going to peg the fans at maximum, and you want it to, because the alternative is thermal throttling that will reduce performance.
 

AOSPete

New Member
Thank you for taking the time to look through that! So am I right in thinking that the best solution here to be able to stream at 1080 or even 720 would probably be to get a new windows based PC?

Also thanks for the pointers on tweaks to make, I'll confess that most changes were made either due to the wizard telling me what to do or me guessing what might be the right move (lowering bitrate for example I thought would help things )
 

AOSPete

New Member
On the whole, yes.
Should I be worried about anything in particular when buying a new PC, tonnes of RAM? As many cores as I can get? Uber graphics card? Is a video capture card better to use with a hdmi camera than a USB to lighten the processing load? thanks!
 

Narcogen

Active Member
A GPU that supports NVENC.

RAM never hurts.

If you have an HDMI camcorder you're intending to use, make sure it has "clean HDMI output" otherwise you might get a bad surprise that you can't remove the camera UI from your feed. Camcorders often make poor webcams. This depends on your intended use.

If your camera sends live video via USB through the same facility it uses to import footage into an editor, you may find that its quality and performance aren't quite what you want. In that case you may want a dedicated capture device. However, the capture device won't necessary reduce the load on your laptop, but it may give you better quality and performance.
 
Top