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

Unified Diff: content/common/media/media_param_traits.cc

Issue 1275783003: Add a virtual beamforming audio device on ChromeOS. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: mcasas comments Created 5 years, 3 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/common/media/media_param_traits.cc
diff --git a/content/common/media/media_param_traits.cc b/content/common/media/media_param_traits.cc
index 19c3b87975badff70e7cce7c8eeb4aa5b63b443a..37c3a31057f417cea8d5166fae51c4798b98c366 100644
--- a/content/common/media/media_param_traits.cc
+++ b/content/common/media/media_param_traits.cc
@@ -9,11 +9,13 @@
#include "content/common/media/video_capture_messages.h"
#include "ipc/ipc_message_utils.h"
#include "media/audio/audio_parameters.h"
+#include "media/audio/point.h"
#include "media/base/limits.h"
#include "ui/gfx/ipc/gfx_param_traits.h"
using media::AudioParameters;
using media::ChannelLayout;
+using media::Point;
using media::VideoCaptureFormat;
namespace IPC {
@@ -27,6 +29,7 @@ void ParamTraits<AudioParameters>::Write(Message* m,
WriteParam(m, p.frames_per_buffer());
WriteParam(m, p.channels());
WriteParam(m, p.effects());
+ WriteParam(m, p.mic_positions());
}
bool ParamTraits<AudioParameters>::Read(const Message* m,
@@ -35,17 +38,20 @@ bool ParamTraits<AudioParameters>::Read(const Message* m,
AudioParameters::Format format;
ChannelLayout channel_layout;
int sample_rate, bits_per_sample, frames_per_buffer, channels, effects;
+ std::vector<media::Point> mic_positions;
if (!ReadParam(m, iter, &format) || !ReadParam(m, iter, &channel_layout) ||
!ReadParam(m, iter, &sample_rate) ||
!ReadParam(m, iter, &bits_per_sample) ||
!ReadParam(m, iter, &frames_per_buffer) ||
- !ReadParam(m, iter, &channels) || !ReadParam(m, iter, &effects)) {
+ !ReadParam(m, iter, &channels) || !ReadParam(m, iter, &effects) ||
+ !ReadParam(m, iter, &mic_positions)) {
return false;
}
- AudioParameters params(format, channel_layout, channels, sample_rate,
- bits_per_sample, frames_per_buffer, effects);
+ AudioParameters params(format, channels, channel_layout, sample_rate,
+ bits_per_sample, frames_per_buffer, mic_positions,
+ effects);
*r = params;
return r->IsValid();
}
@@ -55,6 +61,31 @@ void ParamTraits<AudioParameters>::Log(const AudioParameters& p,
l->append(base::StringPrintf("<AudioParameters>"));
}
+void ParamTraits<Point>::Write(Message* m, const Point& p) {
+ WriteParam(m, p.x());
+ WriteParam(m, p.y());
+ WriteParam(m, p.z());
+}
+
+bool ParamTraits<Point>::Read(const Message* m,
+ base::PickleIterator* iter,
+ Point* r) {
+ float x, y, z;
+
+ if (!ReadParam(m, iter, &x) || !ReadParam(m, iter, &y) ||
+ !ReadParam(m, iter, &z)) {
+ return false;
+ }
+
+ Point point(x, y, z);
+ *r = point;
+ return r->IsValid();
+}
+
+void ParamTraits<Point>::Log(const Point& p, std::string* l) {
+ l->append(base::StringPrintf("<Point> %s", p.ToString().c_str()));
+}
+
void ParamTraits<VideoCaptureFormat>::Write(Message* m,
const VideoCaptureFormat& p) {
WriteParam(m, p.frame_size);

Powered by Google App Engine
This is Rietveld 408576698