Hi, I just got a new macbook pro and am trying to figure out why OBS is dropping frames. Can you please help?
The activity monitor on the macbook shows that approximately 80% of the CPU power is idle and OBS is only using a small percentage. However, OBS skipping many frames due to rendering lag. It is not skipping any frames due to encoding lag, but is often skipping between 1% and 10% of frames due to rendering lag even though it seems like the computer has alot of free CPU resources. This seems to happen regardless of whether I’m actually streaming or if the OBS window is just open but not currently streaming.
Why is this happening? If there is so much free CPU resources available, then shouldn’t there be practically 0 skipped frames due to rendering?
I sometimes run other video apps (like Resolume Avenue or Lumen video synth) on the macbook at the same time, and I notice that my GPU% in activity monitor is sometimes near 100%, could it be the GPU that is causing the issue? As far as understand, GPU is meant to frequently go to 100% without negatively affecting the perfomance of the computer/apps (and any extra load on the GPU will be handled by the CPU), but I am not sure about this. Is this true or might the GPU going to 100% be causing the issue? If the GPU is causing the issue, is there anything I can do to make this work better? I already have the maxed out GPU option that apple offers for the macbook, so is there any way to make it work better software or peripheral hardware?
If its not GPU or CPU causing the issue, what other bottlenecks might be causing this rendering lag? Is there any way that I can get it down to 0% rendering lag? If so, how?
Are there any other metrics/resources that I should look at? My activity monitor on the mac doesnt show RAM or hard drive space but I have alot of both of those so I don’t think that they are causing the issue. Or is there any settings or anything that I should change in OBS or elsewhere on the computer that would help to reduce/eliminate rendering lag?
Or maybe is this an issue with the software rather than the hardware… could this be fixed by installing OBS differently or waiting for an update from OBS?
The pictures below show a test of my usage stats in OBS and a few pictures of my activity monitor while OBS was open but not streaming. There are two instances of obs in the first two pictures because I am trying to run two instance of OBS for two seperate streams. The final picture shows only one instance of OBS because that is after I closed the second instance of OBS. Closing the second instance of OBS does greatly reduce the framed missed due to rendering lag, but often doesn’t eliminate it completely. When there is only one instance of OBS running, I still sometimes get between 0.1 and 2% frames dropped due to rendering lag. I understand that an additional instance of OBS requires more computing resources so it makes sense the the issue is reduced when only running one instance of OBS, but if I have sufficent computing resources then shouldn’t it be able to not miss any frames (whether I’m running one or two instances of OBS)? Or is something else at play here?
Also, the GPU% varies very much/quickly. It often goes to approximately near 100% and then seconds later is will go down to around 0 or 5% usage and stay there for many seconds before shooting back up to 100% seemingly randomly. I don’t understand why it is doing this, I am not actively making any changes that would cause it to raise or lower that drastically and it is still getting the same feeds from cameras, lumen app, OBS, etc. Is this normal/expected behavior or might something not be working right?
Thanks,
Dan
Using MacOS Catalina 10.15.1 and OBS 24.0.02



The activity monitor on the macbook shows that approximately 80% of the CPU power is idle and OBS is only using a small percentage. However, OBS skipping many frames due to rendering lag. It is not skipping any frames due to encoding lag, but is often skipping between 1% and 10% of frames due to rendering lag even though it seems like the computer has alot of free CPU resources. This seems to happen regardless of whether I’m actually streaming or if the OBS window is just open but not currently streaming.
Why is this happening? If there is so much free CPU resources available, then shouldn’t there be practically 0 skipped frames due to rendering?
I sometimes run other video apps (like Resolume Avenue or Lumen video synth) on the macbook at the same time, and I notice that my GPU% in activity monitor is sometimes near 100%, could it be the GPU that is causing the issue? As far as understand, GPU is meant to frequently go to 100% without negatively affecting the perfomance of the computer/apps (and any extra load on the GPU will be handled by the CPU), but I am not sure about this. Is this true or might the GPU going to 100% be causing the issue? If the GPU is causing the issue, is there anything I can do to make this work better? I already have the maxed out GPU option that apple offers for the macbook, so is there any way to make it work better software or peripheral hardware?
If its not GPU or CPU causing the issue, what other bottlenecks might be causing this rendering lag? Is there any way that I can get it down to 0% rendering lag? If so, how?
Are there any other metrics/resources that I should look at? My activity monitor on the mac doesnt show RAM or hard drive space but I have alot of both of those so I don’t think that they are causing the issue. Or is there any settings or anything that I should change in OBS or elsewhere on the computer that would help to reduce/eliminate rendering lag?
Or maybe is this an issue with the software rather than the hardware… could this be fixed by installing OBS differently or waiting for an update from OBS?
The pictures below show a test of my usage stats in OBS and a few pictures of my activity monitor while OBS was open but not streaming. There are two instances of obs in the first two pictures because I am trying to run two instance of OBS for two seperate streams. The final picture shows only one instance of OBS because that is after I closed the second instance of OBS. Closing the second instance of OBS does greatly reduce the framed missed due to rendering lag, but often doesn’t eliminate it completely. When there is only one instance of OBS running, I still sometimes get between 0.1 and 2% frames dropped due to rendering lag. I understand that an additional instance of OBS requires more computing resources so it makes sense the the issue is reduced when only running one instance of OBS, but if I have sufficent computing resources then shouldn’t it be able to not miss any frames (whether I’m running one or two instances of OBS)? Or is something else at play here?
Also, the GPU% varies very much/quickly. It often goes to approximately near 100% and then seconds later is will go down to around 0 or 5% usage and stay there for many seconds before shooting back up to 100% seemingly randomly. I don’t understand why it is doing this, I am not actively making any changes that would cause it to raise or lower that drastically and it is still getting the same feeds from cameras, lumen app, OBS, etc. Is this normal/expected behavior or might something not be working right?
Thanks,
Dan
Using MacOS Catalina 10.15.1 and OBS 24.0.02