summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-29 10:46:47 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-11-02 12:02:10 +0000
commit99677208ff3b216fdfec551fbe548da5520cd6fb (patch)
tree476a4865c10320249360e859d8fdd3e01833b03a /chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc
parentc30a6232df03e1efbd9f3b226777b07e087a1122 (diff)
downloadqtwebengine-chromium-99677208ff3b216fdfec551fbe548da5520cd6fb.tar.gz
BASELINE: Update Chromium to 86.0.4240.124
Change-Id: Ide0ff151e94cd665ae6521a446995d34a9d1d644 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc')
-rw-r--r--chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc37
1 files changed, 37 insertions, 0 deletions
diff --git a/chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc b/chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc
index 9cc7a7d34a0..5dc9b2e2ba0 100644
--- a/chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc
+++ b/chromium/third_party/blink/renderer/modules/mediastream/media_constraints_impl.cc
@@ -367,6 +367,14 @@ static void ParseOldStyleNames(
}
result.enable_dtls_srtp.SetExact(ToBoolean(constraint.value_));
} else if (constraint.name_.Equals(kEnableRtpDataChannels)) {
+ bool value = ToBoolean(constraint.value_);
+ if (value) {
+ UseCounter::Count(context,
+ WebFeature::kRTCConstraintEnableRtpDataChannelsTrue);
+ } else {
+ UseCounter::Count(context,
+ WebFeature::kRTCConstraintEnableRtpDataChannelsFalse);
+ }
result.enable_rtp_data_channels.SetExact(ToBoolean(constraint.value_));
} else if (constraint.name_.Equals(kEnableDscp)) {
result.enable_dscp.SetExact(ToBoolean(constraint.value_));
@@ -862,6 +870,27 @@ DoubleOrConstrainDoubleRange ConvertDouble(
return output_union;
}
+BooleanOrDoubleOrConstrainDoubleRange ConvertBooleanOrDouble(
+ const DoubleConstraint& input,
+ NakedValueDisposition naked_treatment) {
+ BooleanOrDoubleOrConstrainDoubleRange output_union;
+ if (UseNakedNumeric(input, naked_treatment)) {
+ output_union.SetDouble(GetNakedValue<double>(input, naked_treatment));
+ } else if (!input.IsEmpty()) {
+ ConstrainDoubleRange* output = ConstrainDoubleRange::Create();
+ if (input.HasExact())
+ output->setExact(input.Exact());
+ if (input.HasIdeal())
+ output->setIdeal(input.Ideal());
+ if (input.HasMin())
+ output->setMin(input.Min());
+ if (input.HasMax())
+ output->setMax(input.Max());
+ output_union.SetConstrainDoubleRange(output);
+ }
+ return output_union;
+}
+
StringOrStringSequence ConvertStringSequence(
const WebVector<WebString>& input) {
StringOrStringSequence the_strings;
@@ -961,6 +990,12 @@ void ConvertConstraintSet(const MediaTrackConstraintSetPlatform& input,
output->setGroupId(ConvertString(input.group_id, naked_treatment));
if (!input.video_kind.IsEmpty())
output->setVideoKind(ConvertString(input.video_kind, naked_treatment));
+ if (!input.pan.IsEmpty())
+ output->setPan(ConvertBooleanOrDouble(input.pan, naked_treatment));
+ if (!input.tilt.IsEmpty())
+ output->setTilt(ConvertBooleanOrDouble(input.tilt, naked_treatment));
+ if (!input.zoom.IsEmpty())
+ output->setZoom(ConvertBooleanOrDouble(input.zoom, naked_treatment));
// TODO(hta): Decide the future of the nonstandard constraints.
// If they go forward, they need to be added here.
// https://crbug.com/605673
@@ -975,6 +1010,8 @@ MediaTrackConstraints* ConvertConstraints(const MediaConstraints& input) {
HeapVector<Member<MediaTrackConstraintSet>> advanced_vector;
for (const auto& it : input.Advanced()) {
+ if (it.IsEmpty())
+ continue;
MediaTrackConstraintSet* element = MediaTrackConstraintSet::Create();
ConvertConstraintSet(it, NakedValueDisposition::kTreatAsExact, element);
advanced_vector.push_back(element);