15d3a3a22fefbe5128def617be50e22f4d9f6ebf
[platform/core/api/audio-io.git] / src / audio_io.c
1 /*
2 * Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17
18 #include <mm.h>
19 #include <cpp_audio_io.h>
20 #include <dlog.h>
21
22 #define DEPRECATED_WARN() do { \
23         LOGW("DEPRECATION WARNING: %s() is deprecated and will be removed from next release.", __func__); \
24 } while (0)
25
26 #define DEPRECATED_WARN_INSTEAD(msg) do { \
27         LOGW("DEPRECATION WARNING: %s() is deprecated and will be removed from next release. Use %s() instead.", __func__, msg); \
28 } while (0)
29
30 int audio_in_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type , audio_in_h* input)
31 {
32         return cpp_audio_in_create(sample_rate, channel, type, input);
33 }
34
35 int audio_in_create_loopback(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_in_h* input)
36 {
37         DEPRECATED_WARN();
38         return cpp_audio_in_create_loopback(sample_rate, channel, type, input);
39 }
40
41 int audio_in_destroy(audio_in_h input)
42 {
43         return cpp_audio_in_destroy(input);
44 }
45
46 int audio_in_set_stream_info(audio_in_h input, sound_stream_info_h stream_info)
47 {
48         return cpp_audio_in_set_stream_info(input, stream_info);
49 }
50
51 int audio_in_prepare(audio_in_h input)
52 {
53         return cpp_audio_in_prepare(input);
54 }
55
56 int audio_in_unprepare(audio_in_h input)
57 {
58         return cpp_audio_in_unprepare(input);
59 }
60
61 int audio_in_pause(audio_in_h input)
62 {
63         return cpp_audio_in_pause(input);
64 }
65
66 int audio_in_resume(audio_in_h input)
67 {
68         return cpp_audio_in_resume(input);
69 }
70
71 int audio_in_flush(audio_in_h input)
72 {
73         return cpp_audio_in_flush(input);
74 }
75
76 int audio_in_read(audio_in_h input, void *buffer, unsigned int length)
77 {
78         return cpp_audio_in_read(input, buffer, length);
79 }
80
81 int audio_in_get_buffer_size(audio_in_h input, int *size)
82 {
83         return cpp_audio_in_get_buffer_size(input, size);
84 }
85
86 int audio_in_get_sample_rate(audio_in_h input, int *sample_rate)
87 {
88         return cpp_audio_in_get_sample_rate(input, sample_rate);
89 }
90
91 int audio_in_get_channel(audio_in_h input, audio_channel_e *channel)
92 {
93         return cpp_audio_in_get_channel(input, channel);
94 }
95
96 int audio_in_get_sample_type(audio_in_h input, audio_sample_type_e *type)
97 {
98         return cpp_audio_in_get_sample_type(input, type);
99 }
100
101 int audio_in_set_interrupted_cb(audio_in_h input, audio_io_interrupted_cb callback, void *user_data)
102 {
103         DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
104         return cpp_audio_in_set_interrupted_cb(input, callback, user_data);
105 }
106
107 int audio_in_unset_interrupted_cb(audio_in_h input)
108 {
109         DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
110         return cpp_audio_in_unset_interrupted_cb(input);
111 }
112
113 int audio_in_ignore_session(audio_in_h input)
114 {
115         DEPRECATED_WARN();
116         return cpp_audio_in_ignore_session(input);
117 }
118
119 int audio_in_set_stream_cb(audio_in_h input, audio_in_stream_cb callback, void* user_data)
120 {
121         return cpp_audio_in_set_stream_cb(input, callback, user_data);
122 }
123
124 int audio_in_unset_stream_cb(audio_in_h input)
125 {
126         return cpp_audio_in_unset_stream_cb(input);
127 }
128
129 int audio_in_peek(audio_in_h input, const void **buffer, unsigned int *length)
130 {
131         return cpp_audio_in_peek(input, buffer, length);
132 }
133
134 int audio_in_drop(audio_in_h input)
135 {
136         return cpp_audio_in_drop(input);
137 }
138
139 int audio_in_set_state_changed_cb(audio_in_h input, audio_in_state_changed_cb callback, void* user_data)
140 {
141         return cpp_audio_in_set_state_changed_cb(input, callback, user_data);
142 }
143
144 int audio_in_unset_state_changed_cb(audio_in_h input)
145 {
146         return cpp_audio_in_unset_state_changed_cb(input);
147 }
148
149
150 /* Audio Out */
151 int audio_out_create(int sample_rate, audio_channel_e channel, audio_sample_type_e type, sound_type_e sound_type,  audio_out_h* output)
152 {
153         DEPRECATED_WARN_INSTEAD("audio_out_create_new");
154         return cpp_audio_out_create(sample_rate, channel, type, sound_type, output);
155 }
156
157 int audio_out_create_new(int sample_rate, audio_channel_e channel, audio_sample_type_e type, audio_out_h *output)
158 {
159         return cpp_audio_out_create_new(sample_rate, channel, type, output);
160 }
161
162 int audio_out_destroy(audio_out_h output)
163 {
164         return cpp_audio_out_destroy(output);
165 }
166
167 int audio_out_set_stream_info(audio_out_h output, sound_stream_info_h stream_info)
168 {
169         return cpp_audio_out_set_stream_info(output, stream_info);
170 }
171
172 int audio_out_prepare(audio_out_h output)
173 {
174         return cpp_audio_out_prepare(output);
175 }
176
177 int audio_out_unprepare(audio_out_h output)
178 {
179         return cpp_audio_out_unprepare(output);
180 }
181
182 int audio_out_pause(audio_out_h output)
183 {
184         return cpp_audio_out_pause(output);
185 }
186
187 int audio_out_resume(audio_out_h output)
188 {
189         return cpp_audio_out_resume(output);
190 }
191
192 int audio_out_drain(audio_out_h output)
193 {
194         return cpp_audio_out_drain(output);
195 }
196
197 int audio_out_flush(audio_out_h output)
198 {
199         return cpp_audio_out_flush(output);
200 }
201
202 int audio_out_write(audio_out_h output, void* buffer, unsigned int length)
203 {
204         return cpp_audio_out_write(output, buffer, length);
205 }
206
207 int audio_out_get_buffer_size(audio_out_h output, int *size)
208 {
209         return cpp_audio_out_get_buffer_size(output, size);
210 }
211
212 int audio_out_get_sample_rate(audio_out_h output, int *sample_rate)
213 {
214         return cpp_audio_out_get_sample_rate(output, sample_rate);
215 }
216
217 int audio_out_get_channel(audio_out_h output, audio_channel_e *channel)
218 {
219         return cpp_audio_out_get_channel(output, channel);
220 }
221
222 int audio_out_get_sample_type(audio_out_h output, audio_sample_type_e *type)
223 {
224         return cpp_audio_out_get_sample_type(output, type);
225 }
226
227 int audio_out_get_sound_type(audio_out_h output, sound_type_e *type)
228 {
229         return cpp_audio_out_get_sound_type(output, type);
230 }
231
232 int audio_out_set_interrupted_cb(audio_out_h output, audio_io_interrupted_cb callback, void *user_data)
233 {
234         DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
235         return cpp_audio_out_set_interrupted_cb(output, callback, user_data);
236 }
237
238 int audio_out_unset_interrupted_cb(audio_out_h output)
239 {
240         DEPRECATED_WARN_INSTEAD("sound_manager_create_stream_information");
241         return cpp_audio_out_unset_interrupted_cb(output);
242 }
243
244 int audio_out_ignore_session(audio_out_h output)
245 {
246         DEPRECATED_WARN();
247         return cpp_audio_out_ignore_session(output);
248 }
249
250 int audio_out_set_stream_cb(audio_out_h output, audio_out_stream_cb callback, void* user_data)
251 {
252         return cpp_audio_out_set_stream_cb(output, callback, user_data);
253 }
254
255 int audio_out_unset_stream_cb(audio_out_h output)
256 {
257         return cpp_audio_out_unset_stream_cb(output);
258 }
259
260 int audio_out_set_state_changed_cb(audio_out_h output, audio_out_state_changed_cb callback, void* user_data)
261 {
262         return cpp_audio_out_set_state_changed_cb(output, callback, user_data);
263 }
264
265 int audio_out_unset_state_changed_cb(audio_out_h output)
266 {
267         return cpp_audio_out_unset_state_changed_cb(output);
268 }