| commit | 9703f8474f156e08e4a96dc36253f1cdccd549e1 | [log] [tgz] |
|---|---|---|
| author | Jan Grulich <grulja@gmail.com> | Mon Sep 23 11:27:26 2024 |
| committer | WebRTC LUCI CQ <webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Sep 23 12:20:30 2024 |
| tree | f42452c53c215cc58027bd32ab8420a07078e66c | |
| parent | 518de1673ed411ba84b417377751ca7603a89bc1 [diff] |
PipeWire camera: use exact stream parameters specified by capability We currently specify stream parameters to be a range for both framerate and resolution, where preferred value is specified. The preferred value doesn't seem to be taken into account and we end up accepting resolution from 1x1 to MAX_INTxMAX_INT. In case the other side tries to first match with lower resolution than requested, we will happily match it and start streaming low quality video. We should instead request the exact stream parameters as specified by requested capability. This capability always come from what has been originally reported as supported so it shouldn't happen we don't find a matching stream. This also applies to requested video format. We previously requested mjpg for streams with resolution higher than 640x480, but it doesn't necessarily mean the camera supports mjpg for the requested resolution. Again, refer to requested capability in this case as it should indicate what is supported and we know we can request exactly the same video format. It can happen that framerate is set to 0 as unspecified. In that case keep using a range as before, but with more sane values. Bug: webrtc:42225999 Change-Id: I46d8e83c636e25e12c45a462596fee1d5e59888e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/362820 Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Commit-Queue: Jan Grulich <grulja@gmail.com> Reviewed-by: Andreas Pehrson <apehrson@mozilla.com> Cr-Commit-Position: refs/heads/main@{#43067}
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.
See here for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.