Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't set camera above 640p. (Help- This camera can peform higher then 720p..) #14

Open
TheRealFame opened this issue Sep 14, 2024 · 4 comments
Assignees
Labels
enhancement New feature or request question Further information is requested

Comments

@TheRealFame
Copy link

image

(From Flathub!)

@VortexAcherontic
Copy link
Member

Hello there. Thank you for your report.

The reason Facetracker potentially shows lower resolutions and frame rates than what is actually supported by the webcam is due to OpenSeeFace itself.

Facetracker can only tell OpeSeeFace which camera to use, which resolution and at how much frames per second. Unfortunately I can not tell OSF the video codec it should actually use for capturing the frames from the webcam.
The later is exactly the issue why Facetracker might show lower resolutions and frame rates as officially supported by the device itself.

While a webcam might in theory support higher resolutions at a certain video codec (usually this is MJPEG) it can happen that the webcam reports the RAW video format and it's supported video formats using this codec first. While OSF does not allow for specifying the video codec it will always uses the very first reported video codec.

For example my webcam supports 1920x1080 @ 30 fps using MJPEG
but only 1920x1080 @ 5 fps using RAW.
Unfortunately it reports RAW first.

You can counter test this like this, inside the Facetracker flatpak there is a pre-compiled OpenSeeFace binary which in theory should run outside of flatpak on the host. You can find it at: $HOME/.local/share/flatpak/app/de.z_ray.Facetracker/current/active/files/share/facetracker/osf/ there should be a file called facetracker run it as follows from a terminal sessions if your are inside that folder mentioned above:

./facetracker -W 1280 -H 720 -c 0 -F 30

-W is the width of the video
-H height of the video
-c is the camera to use. The first one usually has index 0 (You can also see this inside Facetracker)
-F is the frame rate

Here is an example of my 1080p@30fps camera (which only supports this frame rate using MJPEG but here is the result using OSF):

Bildschirmaufnahme_20240914_102925.webm

If you can in fact use higher resolutions and frame rates and the video is still fluent in a VTubbing application let me now.

@TheRealFame
Copy link
Author

image
Having issues opening it!

@VortexAcherontic
Copy link
Member

Hm, yes I see. I think I need to add some debug info menu button to Facetracker to get all video formats found by Facetracker before it filtered them for use with OpenSeeFace.

@VortexAcherontic VortexAcherontic added enhancement New feature or request question Further information is requested labels Sep 16, 2024
@VortexAcherontic VortexAcherontic self-assigned this Sep 16, 2024
@TheRealFame
Copy link
Author

Hm, yes I see. I think I need to add some debug info menu button to Facetracker to get all video formats found by Facetracker before it filtered them for use with OpenSeeFace.

Let me know when your able to patch it up 👀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants