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

Side by Side Diff: media/base/audio_buffer.h

Issue 212103013: Add channel_count parameter back to AudioBuffer creation methods. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mstr
Patch Set: fix unit test Created 6 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
« no previous file with comments | « content/renderer/pepper/content_decryptor_delegate.cc ('k') | media/base/audio_buffer.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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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_BASE_AUDIO_BUFFER_H_ 5 #ifndef MEDIA_BASE_AUDIO_BUFFER_H_
6 #define MEDIA_BASE_AUDIO_BUFFER_H_ 6 #define MEDIA_BASE_AUDIO_BUFFER_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/memory/aligned_memory.h" 10 #include "base/memory/aligned_memory.h"
(...skipping 20 matching lines...) Expand all
31 31
32 // Create an AudioBuffer whose channel data is copied from |data|. For 32 // Create an AudioBuffer whose channel data is copied from |data|. For
33 // interleaved data, only the first buffer is used. For planar data, the 33 // interleaved data, only the first buffer is used. For planar data, the
34 // number of buffers must be equal to |channel_count|. |frame_count| is the 34 // number of buffers must be equal to |channel_count|. |frame_count| is the
35 // number of frames in each buffer. |data| must not be null and |frame_count| 35 // number of frames in each buffer. |data| must not be null and |frame_count|
36 // must be >= 0. 36 // must be >= 0.
37 // 37 //
38 // TODO(jrummell): Compute duration rather than pass it in. 38 // TODO(jrummell): Compute duration rather than pass it in.
39 static scoped_refptr<AudioBuffer> CopyFrom(SampleFormat sample_format, 39 static scoped_refptr<AudioBuffer> CopyFrom(SampleFormat sample_format,
40 ChannelLayout channel_layout, 40 ChannelLayout channel_layout,
41 int channel_count,
41 int sample_rate, 42 int sample_rate,
42 int frame_count, 43 int frame_count,
43 const uint8* const* data, 44 const uint8* const* data,
44 const base::TimeDelta timestamp, 45 const base::TimeDelta timestamp,
45 const base::TimeDelta duration); 46 const base::TimeDelta duration);
46 47
47 // Create an AudioBuffer with |frame_count| frames. Buffer is allocated, but 48 // Create an AudioBuffer with |frame_count| frames. Buffer is allocated, but
48 // not initialized. Timestamp and duration are set to kNoTimestamp(). 49 // not initialized. Timestamp and duration are set to kNoTimestamp().
49 static scoped_refptr<AudioBuffer> CreateBuffer(SampleFormat sample_format, 50 static scoped_refptr<AudioBuffer> CreateBuffer(SampleFormat sample_format,
50 ChannelLayout channel_layout, 51 ChannelLayout channel_layout,
52 int channel_count,
51 int sample_rate, 53 int sample_rate,
52 int frame_count); 54 int frame_count);
53 55
54 // Create an empty AudioBuffer with |frame_count| frames. 56 // Create an empty AudioBuffer with |frame_count| frames.
55 static scoped_refptr<AudioBuffer> CreateEmptyBuffer( 57 static scoped_refptr<AudioBuffer> CreateEmptyBuffer(
56 ChannelLayout channel_layout, 58 ChannelLayout channel_layout,
59 int channel_count,
57 int sample_rate, 60 int sample_rate,
58 int frame_count, 61 int frame_count,
59 const base::TimeDelta timestamp, 62 const base::TimeDelta timestamp,
60 const base::TimeDelta duration); 63 const base::TimeDelta duration);
61 64
62 // Create a AudioBuffer indicating we've reached end of stream. 65 // Create a AudioBuffer indicating we've reached end of stream.
63 // Calling any method other than end_of_stream() on the resulting buffer 66 // Calling any method other than end_of_stream() on the resulting buffer
64 // is disallowed. 67 // is disallowed.
65 static scoped_refptr<AudioBuffer> CreateEOSBuffer(); 68 static scoped_refptr<AudioBuffer> CreateEOSBuffer();
66 69
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 private: 119 private:
117 friend class base::RefCountedThreadSafe<AudioBuffer>; 120 friend class base::RefCountedThreadSafe<AudioBuffer>;
118 121
119 // Allocates aligned contiguous buffer to hold all channel data (1 block for 122 // Allocates aligned contiguous buffer to hold all channel data (1 block for
120 // interleaved data, |channel_count| blocks for planar data), copies 123 // interleaved data, |channel_count| blocks for planar data), copies
121 // [data,data+data_size) to the allocated buffer(s). If |data| is null, no 124 // [data,data+data_size) to the allocated buffer(s). If |data| is null, no
122 // data is copied. If |create_buffer| is false, no data buffer is created (or 125 // data is copied. If |create_buffer| is false, no data buffer is created (or
123 // copied to). 126 // copied to).
124 AudioBuffer(SampleFormat sample_format, 127 AudioBuffer(SampleFormat sample_format,
125 ChannelLayout channel_layout, 128 ChannelLayout channel_layout,
129 int channel_count,
126 int sample_rate, 130 int sample_rate,
127 int frame_count, 131 int frame_count,
128 bool create_buffer, 132 bool create_buffer,
129 const uint8* const* data, 133 const uint8* const* data,
130 const base::TimeDelta timestamp, 134 const base::TimeDelta timestamp,
131 const base::TimeDelta duration); 135 const base::TimeDelta duration);
132 136
133 virtual ~AudioBuffer(); 137 virtual ~AudioBuffer();
134 138
135 const SampleFormat sample_format_; 139 const SampleFormat sample_format_;
(...skipping 11 matching lines...) Expand all
147 151
148 // For planar data, points to each channels data. 152 // For planar data, points to each channels data.
149 std::vector<uint8*> channel_data_; 153 std::vector<uint8*> channel_data_;
150 154
151 DISALLOW_IMPLICIT_CONSTRUCTORS(AudioBuffer); 155 DISALLOW_IMPLICIT_CONSTRUCTORS(AudioBuffer);
152 }; 156 };
153 157
154 } // namespace media 158 } // namespace media
155 159
156 #endif // MEDIA_BASE_AUDIO_BUFFER_H_ 160 #endif // MEDIA_BASE_AUDIO_BUFFER_H_
OLDNEW
« no previous file with comments | « content/renderer/pepper/content_decryptor_delegate.cc ('k') | media/base/audio_buffer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698