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

Side by Side Diff: content/common/media/media_param_traits.cc

Issue 12387006: Pass more detailed audio hardware configuration information to the renderer (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/common/media/media_param_traits.h" 5 #include "content/common/media/media_param_traits.h"
6 6
7 #include "base/stringprintf.h" 7 #include "base/stringprintf.h"
8 #include "media/base/audio_hardware_config.h"
8 #include "media/audio/audio_parameters.h" 9 #include "media/audio/audio_parameters.h"
9 #include "media/base/limits.h" 10 #include "media/base/limits.h"
10 #include "media/video/capture/video_capture_types.h" 11 #include "media/video/capture/video_capture_types.h"
11 12
13 using media::AudioHardwareConfig;
12 using media::AudioParameters; 14 using media::AudioParameters;
13 using media::ChannelLayout; 15 using media::ChannelLayout;
14 using media::VideoCaptureParams; 16 using media::VideoCaptureParams;
15 using media::VideoCaptureSessionId; 17 using media::VideoCaptureSessionId;
16 18
17 namespace IPC { 19 namespace IPC {
20
21 void ParamTraits<AudioHardwareConfig>::Write(Message* m,
22 const AudioHardwareConfig& p) {
23 m->WriteInt(static_cast<int>(p.GetOutputBufferSize()));
24 m->WriteInt(static_cast<int>(p.GetOutputSampleRate()));
25 m->WriteInt(static_cast<int>(p.GetOutputChannels()));
26 m->WriteInt(static_cast<int>(p.GetOutputChannelLayout()));
27 m->WriteInt(static_cast<int>(p.GetInputSampleRate()));
28 m->WriteInt(static_cast<int>(p.GetInputChannels()));
29 m->WriteInt(static_cast<int>(p.GetInputChannelLayout()));
30 }
31
32 bool ParamTraits<AudioHardwareConfig>::Read(const Message* m,
33 PickleIterator* iter,
34 AudioHardwareConfig* r) {
35 int buffer_size, output_sample_rate, output_channels, output_channel_layout,
36 input_sample_rate, input_channels, input_channel_layout;
37
38 if (!m->ReadInt(iter, &buffer_size) ||
39 !m->ReadInt(iter, &output_sample_rate) ||
40 !m->ReadInt(iter, &output_channels) ||
41 !m->ReadInt(iter, &output_channel_layout) ||
42 !m->ReadInt(iter, &input_sample_rate) ||
43 !m->ReadInt(iter, &input_channels) ||
44 !m->ReadInt(iter, &input_channel_layout))
45 return false;
46 r->Reset(buffer_size,
47 output_sample_rate,
48 output_channels,
49 static_cast<ChannelLayout>(output_channel_layout),
50 input_sample_rate,
51 input_channels,
52 static_cast<ChannelLayout>(input_channel_layout));
53 return true;
54 }
18 55
19 void ParamTraits<AudioParameters>::Write(Message* m, 56 void ParamTraits<AudioParameters>::Write(Message* m,
20 const AudioParameters& p) { 57 const AudioParameters& p) {
21 m->WriteInt(static_cast<int>(p.format())); 58 m->WriteInt(static_cast<int>(p.format()));
22 m->WriteInt(static_cast<int>(p.channel_layout())); 59 m->WriteInt(static_cast<int>(p.channel_layout()));
23 m->WriteInt(p.sample_rate()); 60 m->WriteInt(p.sample_rate());
24 m->WriteInt(p.bits_per_sample()); 61 m->WriteInt(p.bits_per_sample());
25 m->WriteInt(p.frames_per_buffer()); 62 m->WriteInt(p.frames_per_buffer());
26 m->WriteInt(p.channels()); 63 m->WriteInt(p.channels());
27 m->WriteInt(p.input_channels()); 64 m->WriteInt(p.input_channels());
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 123
87 return true; 124 return true;
88 } 125 }
89 126
90 void ParamTraits<VideoCaptureParams>::Log(const VideoCaptureParams& p, 127 void ParamTraits<VideoCaptureParams>::Log(const VideoCaptureParams& p,
91 std::string* l) { 128 std::string* l) {
92 l->append(base::StringPrintf("<VideoCaptureParams>")); 129 l->append(base::StringPrintf("<VideoCaptureParams>"));
93 } 130 }
94 131
95 } 132 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698