mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 929431 - Improve matching of camera capabilities to WebRTC restraints. r=jesup
This commit is contained in:
parent
53e13cf766
commit
11fd4a8721
@ -309,9 +309,28 @@ MediaEngineWebRTCVideoSource::ChooseCapability(
|
||||
// FIXME: expose expected capture delay?
|
||||
}
|
||||
}
|
||||
// Same resolution, maybe better format or FPS match
|
||||
if (mCapability.width == cap.width && mCapability.height == cap.height) {
|
||||
// FPS too low
|
||||
if (cap.maxFPS < (uint32_t) aPrefs.mMinFPS) {
|
||||
continue;
|
||||
}
|
||||
// Better match
|
||||
if (cap.maxFPS < mCapability.maxFPS) {
|
||||
mCapability = cap;
|
||||
} else if (cap.maxFPS == mCapability.maxFPS) {
|
||||
// Resolution and FPS the same, check format
|
||||
if (cap.rawType == webrtc::RawVideoType::kVideoI420
|
||||
|| cap.rawType == webrtc::RawVideoType::kVideoYUY2
|
||||
|| cap.rawType == webrtc::RawVideoType::kVideoYV12) {
|
||||
mCapability = cap;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
LOG(("chose cap %dx%d @%dfps",
|
||||
mCapability.width, mCapability.height, mCapability.maxFPS));
|
||||
LOG(("chose cap %dx%d @%dfps codec %d raw %d",
|
||||
mCapability.width, mCapability.height, mCapability.maxFPS,
|
||||
mCapability.codecType, mCapability.rawType));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user