Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1435)

Unified Diff: content/renderer/media/media_stream_constraints_util_audio.cc

Issue 2940553005: Remove support for some device constraints from SelectSettings. (Closed)
Patch Set: Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/renderer/media/media_stream_constraints_util_audio.cc
diff --git a/content/renderer/media/media_stream_constraints_util_audio.cc b/content/renderer/media/media_stream_constraints_util_audio.cc
index 155d70698f2d68525e728362a9c7dd848b71b8f6..7de1350a8fbeb0d13688941e61ba05ce32b4e02e 100644
--- a/content/renderer/media/media_stream_constraints_util_audio.cc
+++ b/content/renderer/media/media_stream_constraints_util_audio.cc
@@ -21,7 +21,7 @@ namespace content {
namespace {
// This class has the same data as ::mojom::AudioInputDeviceCapabilities, but
-// adds extra operations to simplify the device-selection code.
+// adds extra operations to simplify access to device parameters.
class AudioDeviceInfo {
public:
// This constructor is intended for device capture.
@@ -83,31 +83,13 @@ AudioDeviceSet AudioDeviceSetForDeviceCapture(
*failed_constraint_name = constraint_set.device_id.GetName();
continue;
}
- *failed_constraint_name =
- IsOutsideConstraintRange(constraint_set.sample_rate,
- device_capabilities->parameters.sample_rate());
- if (*failed_constraint_name)
- continue;
-
- *failed_constraint_name = IsOutsideConstraintRange(
- constraint_set.sample_size,
- device_capabilities->parameters.bits_per_sample());
- if (*failed_constraint_name)
- continue;
-
- *failed_constraint_name =
- IsOutsideConstraintRange(constraint_set.channel_count,
- device_capabilities->parameters.channels());
- if (*failed_constraint_name)
- continue;
-
result.push_back(AudioDeviceInfo(device_capabilities));
}
if (!result.empty())
*failed_constraint_name = nullptr;
- return AudioDeviceSet(result);
+ return AudioDeviceSet(std::move(result));
}
AudioDeviceSet AudioDeviceSetForContentCapture(
@@ -120,7 +102,7 @@ AudioDeviceSet AudioDeviceSetForContentCapture(
for (auto& device_id : constraint_set.device_id.Exact())
result.push_back(AudioDeviceInfo(device_id.Utf8()));
- return AudioDeviceSet(result);
+ return AudioDeviceSet(std::move(result));
}
// This class represents a set of possible candidate settings.
@@ -320,35 +302,16 @@ void AudioCaptureCandidates::CheckContradictoryEchoCancellation() {
}
// Fitness function for constraints involved in device selection.
-// Based on https://w3c.github.io/mediacapture-main/#dfn-fitness-distance
+// Based on https://w3c.github.io/mediacapture-main/#dfn-fitness-distance
+// TODO(guidou): Add support for sampleRate, sampleSize and channelCount
+// constraints. http://crbug.com/
double DeviceInfoFitness(
bool is_device_capture,
const AudioDeviceInfo& device_info,
const blink::WebMediaTrackConstraintSet& basic_constraint_set) {
- double fitness = 0.0;
- fitness += StringConstraintFitnessDistance(
+ return StringConstraintFitnessDistance(
blink::WebString::FromASCII(device_info.device_id()),
basic_constraint_set.device_id);
-
- if (!is_device_capture)
- return fitness;
-
- if (basic_constraint_set.sample_rate.HasIdeal()) {
- fitness += NumericConstraintFitnessDistance(
- device_info.SampleRate(), basic_constraint_set.sample_rate.Ideal());
- }
-
- if (basic_constraint_set.sample_size.HasIdeal()) {
- fitness += NumericConstraintFitnessDistance(
- device_info.SampleSize(), basic_constraint_set.sample_size.Ideal());
- }
-
- if (basic_constraint_set.channel_count.HasIdeal()) {
- fitness += NumericConstraintFitnessDistance(
- device_info.ChannelCount(), basic_constraint_set.channel_count.Ideal());
- }
-
- return fitness;
}
AudioDeviceInfo SelectDevice(

Powered by Google App Engine
This is Rietveld 408576698