Skip to content
This repository has been archived by the owner on Dec 15, 2020. It is now read-only.

Choppy output to Skype when sending a non-30fps framerate #62

Closed
marconett opened this issue May 1, 2020 · 23 comments
Closed

Choppy output to Skype when sending a non-30fps framerate #62

marconett opened this issue May 1, 2020 · 23 comments
Labels
bug Something isn't working performance Report of choppy or freezing video or general slowness

Comments

@marconett
Copy link

marconett commented May 1, 2020

OBS output to Skype (version 8.59.0.77 - most recent as of time of writing) works, but is choppy for me. The output freezes about every second for roughly 250ms.

Tested with QuickTime and it works well there.

I built OBS (from master, 2d14ee3e60497646edb3305084e9ae5e921d0a38) and the plugin (from master, 1c5693a) myself according to the readme.

I'm running macOS Catalina 10.15.4 (most recent as of time of writing).

What i already tried:

  • Reboot
  • Clean reinstall of skype (including removing a bunch of stuff from ~/Library)
  • Updating all OBS dependencies with brew and rebuilding

I made sure to quit Skype, open OBS, start the virtual camera, start Skype.
The problem does not occur when i use my Macbooks webcam directly with Skype.

@gxalpha
Copy link
Collaborator

gxalpha commented May 1, 2020

To me it seems like this is an issue with your Skype then, not with the plugin.
Could you please add further information?

@marconett
Copy link
Author

Sure, what do you need to know?

The problem does not occur when i use my Macbooks webcam directly with Skype.

@marconett
Copy link
Author

marconett commented May 1, 2020

I updated the original post with some additional information.

If there's anything else I can provide, let me know.

@johnboiles johnboiles added bug Something isn't working performance Report of choppy or freezing video or general slowness labels May 4, 2020
@johnboiles
Copy link
Owner

johnboiles commented May 5, 2020

Related discussion in #55

@marconett
Copy link
Author

marconett commented May 5, 2020

Hmm, I'm not sure if #55 is related to this.

I have a 2018 MBP with an i9, so there shouldn't be a CPU bottleneck.
Output to console after I stop the virtualcam also doesn't show any lag frames, example:

info: Output 'virtualcam_output': Total frames output: 2556
info: Output 'virtualcam_output': Total drawn frames: 2558

OBS itself also runs fine and isn't choppy or anything, as well as output to QuickTime. I just now tested again with Chrome and that generally works fine as well (not choppy at all). A normal OBS recording to file also works quite normally.

@johnboiles
Copy link
Owner

What colorspace are you using in OBS? 601 or 709?
image

@marconett
Copy link
Author

I saw the that comment in the other thread too. I tried with both, no changes.

@johnboiles
Copy link
Owner

Ok cool, good to know. Then yeah I agree this is probably a separate issue from #55

@marconett
Copy link
Author

marconett commented May 5, 2020

Huh. I played a bit with different OBS settings. I had FPS in Video Settings set to 60.

I decreased it to 30 and now Skype works fine! Skype probably just can't handle 60 fps input?

Thank you for the input though. Please feel free to close this issue if you want to.

@johnboiles
Copy link
Owner

Ooh great find! Yeah i think the DAL plugin advertises itself as 30 FPS, so if we told Skype to expect 30 FPS and then we send 60 FPS it's maybe not surprising Skype would be confused! Interesting!

@johnboiles
Copy link
Owner

I wonder what the right thing to do is here. Is there an easy way in OBS to convert between framerates like there is between pixel formats? Or maybe we just fix the advertising in the DAL plugin to properly expose whatever OBS is set to.

@rjmunro
Copy link

rjmunro commented May 6, 2020

To me, fix the advertising in the DAL seems the obviously correct thing to do.

I always set OBS to 25FPS because that's what my cameras are set to, because I live in a PAL country.

@johnboiles johnboiles changed the title Choppy output to Skype Choppy output to Skype when sending a non-30fps framerate May 12, 2020
@johnboiles
Copy link
Owner

Probably the next thing to try here would be to pass along the FPS with each frame, and the DAL plugin can adjust what it's advertising. I'm not sure if changing FPS mid stream is going to make Skype unhappy but it's worth a shot.

@johnboiles johnboiles added the help wanted Extra attention is needed label May 12, 2020
@johnboiles
Copy link
Owner

I implemented this in #148.

@marconett could you download this version and give it a try with 60fps and see if it improves things for you?

@marconett
Copy link
Author

marconett commented May 28, 2020

Hi John, nice to see that there's a package now and that it's supposed to run with the release version of obs.

But unfortunately, there seems to be a problem with the build. After installing the package, the "Start/Stop Virtual Camera" Menu entry shows up and I can toggle it on and off in obs, but there's no virtual camera in either Skype or Quick Time showing up.

It's a bit weird, as I got it to work in Skype once (after uninstalling the plugin and then reinstalling), but couldn't reproduce this after multiple attempts to reinstall the plugin.

The one time it was working in Skype, it seems to work fine. Checking the FPS settings, it seems to have lowered itself from 60 to 48 fps?

I also got the camera to show up in Quick Time once (but at the same time, not in Skype), although it only showed the test card, even though the camera was enabled.

I'm using OBS Studio 25.0.8.

Sorry for the diffuse error description, but I couldn't really find reproducible behavior.

Should I maybe try building the plugins myself again?

@johnboiles
Copy link
Owner

johnboiles commented May 28, 2020

Try deleting the DAL plugin manually and then installing the package. I had the version set wrong initially which makes it so that the pkg doesn't overwrite early builds (that had a higher version number). Also try a restart. Not sure why this is but sometimes this seems to help.

@marconett
Copy link
Author

marconett commented May 28, 2020

Yes, that's what i meant by "reinstalling". I already tried that by deleting the DAL and OBS plugins as described in the readme.

I'll try rebooting a bit later.

@johnboiles
Copy link
Owner

The latest release shows the version number on the bottom of the test card. @marconett could you install that and see if your issue is fixed. If it is not could you verify that the test card shows 1.2.0 on the bottom of the test card?
image

@marconett
Copy link
Author

marconett commented May 29, 2020

I installed the release version and rebooted.

With the release version, I now always see the the virtual camera in Quick Time and "Starting/Stopping Virtual Camera" in OBS now works as expected. The test card now shows 1.2.0.
I tested Chrome and Firefox as well and it works fine there too. I just can't get the camera to show up in Skype anymore, even after a clean Skype reinstall.

I went ahead and tried a version of the plugin I built myself a month ago (the same version that worked with Skype before, albeit choppy) and couldn't get that to show up in Skype anymore either.. pretty frustrating, but it has to be a Skype or macOS issue.

So as of now, I can not help you with confirming if the problem is fixed or not.

@gxalpha
Copy link
Collaborator

gxalpha commented May 29, 2020

@marconett Skype seems to have blocked DAL plugins now as well, could you check this conversation and report back?

@marconett
Copy link
Author

I used sudo codesign --remove-signature /Applications/Skype.app/Contents/Frameworks/Skype\ Helper\ \\(Renderer\\).app and now the camera shows up. It's also not choppy anymore with OBS set to 60 fps!

@gxalpha
Copy link
Collaborator

gxalpha commented May 29, 2020

Nice!

@gxalpha gxalpha closed this as completed May 29, 2020
@johnboiles
Copy link
Owner

Yay! Glad to hear it!! Thanks for following up

@gxalpha gxalpha removed the help wanted Extra attention is needed label May 29, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working performance Report of choppy or freezing video or general slowness
Projects
None yet
Development

No branches or pull requests

4 participants