[mediacapture-main] MediaStreamTrack frame rate: configured versus actual? (#826)

henbos has just created a new issue for https://github.com/w3c/mediacapture-main:

== MediaStreamTrack frame rate: configured versus actual? ==
MediaStreamTrack.getSettings().frameRate is either an exact frame rate or a frame rate range.

> The exact frame rate (frames per second) or frame rate range. If video source's pre-set can determine frame rate values, the range, as a capacity, should span the video source's pre-set frame rate values with min being equal to 0 and max being the largest frame rate. The User Agent MUST support frame rates obtained from integral decimation of the native resolution frame rate. If this frame rate cannot be determined (e.g. the source does not natively provide a frame rate, or the frame rate cannot be determined from the source stream), then this value MUST refer to the User Agent's vsync display rate.

I don't find it very clear if this is current frame rate - which could vary depending on lighting conditions etc - or configured frame rate. E.g. let's say the camera was opened in 30 fps but the actual frame rate is ~22. What is reported?

I believe that Chromium is implemented as follows:

> If we do frame decimation we report a measured frame rate, and if we don't, we report the frame rate the camera is configured with.

Issues:
1. Do we need to clarify what frameRate should be reported?
2. Both the actual and configured frame rates are useful pieces of information - do we need two APIs?


Please view or discuss this issue at https://github.com/w3c/mediacapture-main/issues/826 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Tuesday, 2 November 2021 15:32:32 UTC