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

Side by Side Diff: ppapi/c/ppb_audio_buffer.h

Issue 156863005: [PPAPI][MediaStream] Rename AudioFrame to AudioBuffer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@frame_to_buffer
Patch Set: Update Created 6 years, 10 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 | « ppapi/api/ppb_media_stream_audio_track.idl ('k') | ppapi/c/ppb_audio_frame.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 /* Copyright 2014 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file.
4 */
5
6 /* From ppb_audio_buffer.idl modified Thu Feb 6 15:31:48 2014. */
7
8 #ifndef PPAPI_C_PPB_AUDIO_BUFFER_H_
9 #define PPAPI_C_PPB_AUDIO_BUFFER_H_
10
11 #include "ppapi/c/pp_bool.h"
12 #include "ppapi/c/pp_macros.h"
13 #include "ppapi/c/pp_resource.h"
14 #include "ppapi/c/pp_stdint.h"
15 #include "ppapi/c/pp_time.h"
16
17 #define PPB_AUDIOBUFFER_INTERFACE_0_1 "PPB_AudioBuffer;0.1" /* dev */
18 /**
19 * @file
20 * Defines the <code>PPB_AudioBuffer</code> interface.
21 */
22
23
24 /**
25 * @addtogroup Enums
26 * @{
27 */
28 /**
29 * PP_AudioBuffer_SampleRate is an enumeration of the different audio sample
30 * rates.
31 */
32 typedef enum {
33 PP_AUDIOBUFFER_SAMPLERATE_UNKNOWN = 0,
34 PP_AUDIOBUFFER_SAMPLERATE_8000 = 8000,
35 PP_AUDIOBUFFER_SAMPLERATE_44100 = 44100
36 } PP_AudioBuffer_SampleRate;
37
38 /**
39 * PP_AudioBuffer_SampleSize is an enumeration of the different audio sample
40 * sizes.
41 */
42 typedef enum {
43 PP_AUDIOBUFFER_SAMPLESIZE_UNKNOWN = 0,
44 PP_AUDIOBUFFER_SAMPLESIZE_16_BITS = 2
45 } PP_AudioBuffer_SampleSize;
46 /**
47 * @}
48 */
49
50 /**
51 * @addtogroup Interfaces
52 * @{
53 */
54 struct PPB_AudioBuffer_0_1 { /* dev */
55 /**
56 * Determines if a resource is an AudioBuffer resource.
57 *
58 * @param[in] resource The <code>PP_Resource</code> to test.
59 *
60 * @return A <code>PP_Bool</code> with <code>PP_TRUE</code> if the given
61 * resource is an AudioBuffer resource or <code>PP_FALSE</code> otherwise.
62 */
63 PP_Bool (*IsAudioBuffer)(PP_Resource resource);
64 /**
65 * Gets the timestamp of the audio buffer.
66 *
67 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
68 * buffer resource.
69 *
70 * @return A <code>PP_TimeDelta</code> containing the timestamp of the audio
71 * buffer. Given in seconds since the start of the containing audio stream.
72 */
73 PP_TimeDelta (*GetTimestamp)(PP_Resource buffer);
74 /**
75 * Sets the timestamp of the audio buffer.
76 *
77 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
78 * buffer resource.
79 * @param[in] timestamp A <code>PP_TimeDelta</code> containing the timestamp
80 * of the audio buffer. Given in seconds since the start of the containing
81 * audio stream.
82 */
83 void (*SetTimestamp)(PP_Resource buffer, PP_TimeDelta timestamp);
84 /**
85 * Gets the sample rate of the audio buffer.
86 *
87 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
88 * buffer resource.
89 *
90 * @return The sample rate of the audio buffer.
91 */
92 PP_AudioBuffer_SampleRate (*GetSampleRate)(PP_Resource buffer);
93 /**
94 * Gets the sample size of the audio buffer.
95 *
96 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
97 * buffer resource.
98 *
99 * @return The sample size of the audio buffer.
100 */
101 PP_AudioBuffer_SampleSize (*GetSampleSize)(PP_Resource buffer);
102 /**
103 * Gets the number of channels in the audio buffer.
104 *
105 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
106 * buffer resource.
107 *
108 * @return The number of channels in the audio buffer.
109 */
110 uint32_t (*GetNumberOfChannels)(PP_Resource buffer);
111 /**
112 * Gets the number of samples in the audio buffer.
113 *
114 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
115 * buffer resource.
116 *
117 * @return The number of samples in the audio buffer.
118 * For example, at a sampling rate of 44,100 Hz in stereo audio, a buffer
119 * containing 4410 * 2 samples would have a duration of 100 milliseconds.
120 */
121 uint32_t (*GetNumberOfSamples)(PP_Resource buffer);
122 /**
123 * Gets the data buffer containing the audio samples.
124 *
125 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
126 * buffer resource.
127 *
128 * @return A pointer to the beginning of the data buffer.
129 */
130 void* (*GetDataBuffer)(PP_Resource buffer);
131 /**
132 * Gets the size of the data buffer in bytes.
133 *
134 * @param[in] buffer A <code>PP_Resource</code> corresponding to an audio
135 * buffer resource.
136 *
137 * @return The size of the data buffer in bytes.
138 */
139 uint32_t (*GetDataBufferSize)(PP_Resource buffer);
140 };
141 /**
142 * @}
143 */
144
145 #endif /* PPAPI_C_PPB_AUDIO_BUFFER_H_ */
146
OLDNEW
« no previous file with comments | « ppapi/api/ppb_media_stream_audio_track.idl ('k') | ppapi/c/ppb_audio_frame.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698