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.h

Issue 4661001: Simplified AudioOutputStream interface. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: - Created 10 years, 1 month 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
« no previous file with comments | « media/audio/audio_output_controller_unittest.cc ('k') | media/audio/audio_parameters.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #ifndef MEDIA_AUDIO_AUDIO_PARAMETERS_H_ 5 #ifndef MEDIA_AUDIO_AUDIO_PARAMETERS_H_
6 #define MEDIA_AUDIO_AUDIO_PARAMETERS_H_ 6 #define MEDIA_AUDIO_AUDIO_PARAMETERS_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 9
10 struct AudioParameters { 10 struct AudioParameters {
11 enum Format { 11 enum Format {
12 AUDIO_PCM_LINEAR = 0, // PCM is 'raw' amplitude samples. 12 AUDIO_PCM_LINEAR = 0, // PCM is 'raw' amplitude samples.
13 AUDIO_PCM_LOW_LATENCY, // Linear PCM, low latency requested. 13 AUDIO_PCM_LOW_LATENCY, // Linear PCM, low latency requested.
14 AUDIO_MOCK, // Creates a dummy AudioOutputStream object. 14 AUDIO_MOCK, // Creates a dummy AudioOutputStream object.
15 AUDIO_LAST_FORMAT // Only used for validation of format. 15 AUDIO_LAST_FORMAT // Only used for validation of format.
16 }; 16 };
17 17
18 // Telephone quality sample rate, mostly for speech-only audio. 18 // Telephone quality sample rate, mostly for speech-only audio.
19 static const uint32 kTelephoneSampleRate = 8000; 19 static const uint32 kTelephoneSampleRate = 8000;
20 // CD sampling rate is 44.1 KHz or conveniently 2x2x3x3x5x5x7x7. 20 // CD sampling rate is 44.1 KHz or conveniently 2x2x3x3x5x5x7x7.
21 static const uint32 kAudioCDSampleRate = 44100; 21 static const uint32 kAudioCDSampleRate = 44100;
22 // Digital Audio Tape sample rate. 22 // Digital Audio Tape sample rate.
23 static const uint32 kAudioDATSampleRate = 48000; 23 static const uint32 kAudioDATSampleRate = 48000;
24 24
25 AudioParameters(); 25 AudioParameters();
26 26
27 AudioParameters(Format format, int channels, 27 AudioParameters(Format format, int channels, int sample_rate,
28 int sample_rate, int bits_per_sample); 28 int bits_per_sample, int samples_per_packet);
29 29
30 // Checks that all values are in the expected range. All limits are specified
31 // in media::Limits.
30 bool IsValid() const; 32 bool IsValid() const;
31 33
32 Format format; // Format of the stream. 34 // Returns size of audio packets in bytes.
33 int channels; // Number of channels. 35 int GetPacketSize() const;
34 int sample_rate; // Sampling frequency/rate. 36
35 int bits_per_sample; // Number of bits per sample. 37 Format format; // Format of the stream.
38 int channels; // Number of channels.
39 int sample_rate; // Sampling frequency/rate.
40 int bits_per_sample; // Number of bits per sample.
41 int samples_per_packet; // Size of a packet in frames.
36 }; 42 };
37 43
38 #endif // MEDIA_AUDIO_AUDIO_PARAMETERS_H_ 44 #endif // MEDIA_AUDIO_AUDIO_PARAMETERS_H_
OLDNEW
« no previous file with comments | « media/audio/audio_output_controller_unittest.cc ('k') | media/audio/audio_parameters.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698