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

Side by Side Diff: media/audio/audio_parameters.cc

Issue 9655018: Make AudioParameters a class instead of a struct (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix tests Created 8 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "media/audio/audio_parameters.h" 5 #include "media/audio/audio_parameters.h"
6 6
7 #include "media/base/limits.h" 7 #include "media/base/limits.h"
8 8
9 AudioParameters::AudioParameters() 9 AudioParameters::AudioParameters()
10 : format(AUDIO_PCM_LINEAR), 10 : format_(AUDIO_PCM_LINEAR),
11 channel_layout(CHANNEL_LAYOUT_NONE), 11 channel_layout_(CHANNEL_LAYOUT_NONE),
12 sample_rate(0), 12 samples_per_second_(0),
13 bits_per_sample(0), 13 bits_per_sample_(0),
14 samples_per_packet(0), 14 samples_per_packet_(0),
15 channels(0) { 15 channels_(0) {
16 } 16 }
17 17
18 AudioParameters::AudioParameters(Format format, ChannelLayout channel_layout, 18 AudioParameters::AudioParameters(Format format, ChannelLayout channel_layout,
19 int sample_rate, int bits_per_sample, 19 int samples_per_second, int bits_per_sample,
20 int samples_per_packet) 20 int samples_per_packet)
21 : format(format), 21 : format_(format),
22 channel_layout(channel_layout), 22 channel_layout_(channel_layout),
23 sample_rate(sample_rate), 23 samples_per_second_(samples_per_second),
24 bits_per_sample(bits_per_sample), 24 bits_per_sample_(bits_per_sample),
25 samples_per_packet(samples_per_packet), 25 samples_per_packet_(samples_per_packet),
26 channels(ChannelLayoutToChannelCount(channel_layout)) { 26 channels_(ChannelLayoutToChannelCount(channel_layout)) {
27 }
28
29 void AudioParameters::Reset(Format format, ChannelLayout channel_layout,
30 int samples_per_second, int bits_per_sample,
scherkus (not reviewing) 2012/03/09 21:48:59 indent
vrk (LEFT CHROMIUM) 2012/03/16 18:30:41 Done.
31 int samples_per_packet) {
32 format_ = format;
33 channel_layout_ = channel_layout;
34 samples_per_second_ = samples_per_second;
35 bits_per_sample_ = bits_per_sample;
36 samples_per_packet_ = samples_per_packet;
37 channels_ = ChannelLayoutToChannelCount(channel_layout);
27 } 38 }
28 39
29 bool AudioParameters::IsValid() const { 40 bool AudioParameters::IsValid() const {
30 return (format >= 0) && (format < AUDIO_LAST_FORMAT) && 41 return (format_ >= 0) && (format_ < AUDIO_LAST_FORMAT) &&
31 (channels > 0) && (channels <= media::limits::kMaxChannels) && 42 (channels_ > 0) && (channels_ <= media::limits::kMaxChannels) &&
32 (sample_rate > 0) && (sample_rate <= media::limits::kMaxSampleRate) && 43 (samples_per_second_ > 0) &&
33 (bits_per_sample > 0) && 44 (samples_per_second_ <= media::limits::kMaxSampleRate) &&
34 (bits_per_sample <= media::limits::kMaxBitsPerSample) && 45 (bits_per_sample_ > 0) &&
35 (samples_per_packet > 0) && 46 (bits_per_sample_ <= media::limits::kMaxBitsPerSample) &&
36 (samples_per_packet <= media::limits::kMaxSamplesPerPacket); 47 (samples_per_packet_ > 0) &&
48 (samples_per_packet_ <= media::limits::kMaxSamplesPerPacket);
37 } 49 }
38 50
39 int AudioParameters::GetPacketSize() const { 51 int AudioParameters::GetPacketSize() const {
40 return samples_per_packet * channels * bits_per_sample / 8; 52 return samples_per_packet_ * channels_ * bits_per_sample_ / 8;
41 } 53 }
42 54
43 int AudioParameters::GetBytesPerSecond() const { 55 int AudioParameters::GetBytesPerSecond() const {
44 return sample_rate * channels * bits_per_sample / 8; 56 return samples_per_second_ * channels_ * bits_per_sample_ / 8;
45 } 57 }
46 58
47 bool AudioParameters::Compare::operator()( 59 bool AudioParameters::Compare::operator()(
48 const AudioParameters& a, 60 const AudioParameters& a,
49 const AudioParameters& b) const { 61 const AudioParameters& b) const {
50 if (a.format < b.format) 62 if (a.format_ < b.format_)
51 return true; 63 return true;
52 if (a.format > b.format) 64 if (a.format_ > b.format_)
53 return false; 65 return false;
54 if (a.channels < b.channels) 66 if (a.channels_ < b.channels_)
55 return true; 67 return true;
56 if (a.channels > b.channels) 68 if (a.channels_ > b.channels_)
57 return false; 69 return false;
58 if (a.sample_rate < b.sample_rate) 70 if (a.samples_per_second_ < b.samples_per_second_)
59 return true; 71 return true;
60 if (a.sample_rate > b.sample_rate) 72 if (a.samples_per_second_ > b.samples_per_second_)
61 return false; 73 return false;
62 if (a.bits_per_sample < b.bits_per_sample) 74 if (a.bits_per_sample_ < b.bits_per_sample_)
63 return true; 75 return true;
64 if (a.bits_per_sample > b.bits_per_sample) 76 if (a.bits_per_sample_ > b.bits_per_sample_)
65 return false; 77 return false;
66 return a.samples_per_packet < b.samples_per_packet; 78 return a.samples_per_packet_ < b.samples_per_packet_;
67 } 79 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698