Home | History | Annotate | Download | only in audio

Lines Matching full:stream

114     struct audio_stream_out stream;
134 struct audio_stream_in stream;
159 static uint32_t out_get_sample_rate(const struct audio_stream *stream);
160 static size_t out_get_buffer_size(const struct audio_stream *stream);
161 static audio_format_t out_get_format(const struct audio_stream *stream);
162 static uint32_t in_get_sample_rate(const struct audio_stream *stream);
163 static size_t in_get_buffer_size(const struct audio_stream *stream);
164 static audio_format_t in_get_format(const struct audio_stream *stream);
212 /* must be called with hw device and output stream mutexes locked */
233 /* must be called with hw device and input stream mutexes locked */
254 /* must be called with hw device and output stream mutexes locked */
303 * If the stream rate differs from the PCM rate, we need to
306 if (out_get_sample_rate(&out->stream.common) != out->pcm_config->rate) {
307 ret = create_resampler(out_get_sample_rate(&out->stream.common),
314 out_get_sample_rate(&out->stream.common) + 1;
324 /* must be called with hw device and input stream mutexes locked */
371 * If the stream rate differs from the PCM rate, we need to
374 if (in_get_sample_rate(&in->stream.common) != in->pcm_config->rate) {
379 in_get_sample_rate(&in->stream.common),
466 frames_wr * audio_stream_frame_size(&in->stream.common)),
476 frames_wr * audio_stream_frame_size(&in->stream.common),
478 buf.frame_count * audio_stream_frame_size(&in->stream.common));
495 static uint32_t out_get_sample_rate(const struct audio_stream *stream)
500 static int out_set_sample_rate(struct audio_stream *stream, uint32_t rate)
505 static size_t out_get_buffer_size(const struct audio_stream *stream)
508 audio_stream_frame_size((struct audio_stream *)stream);
511 static uint32_t out_get_channels(const struct audio_stream *stream)
516 static audio_format_t out_get_format(const struct audio_stream *stream)
521 static int out_set_format(struct audio_stream *stream, audio_format_t format)
526 static int out_standby(struct audio_stream *stream)
528 struct stream_out *out = (struct stream_out *)stream;
539 stream, int fd)
544 static int out_set_parameters(struct audio_stream *stream, const char *kvpairs)
546 struct stream_out *out = (struct stream_out *)stream;
582 static char * out_get_parameters(const struct audio_stream *stream, const char *keys)
587 static uint32_t out_get_latency(const struct audio_stream_out *stream)
589 struct stream_out *out = (struct stream_out *)stream;
605 static int out_set_volume(struct audio_stream_out *stream, float left,
611 static ssize_t out_write(struct audio_stream_out *stream, const void* buffer,
615 struct stream_out *out = (struct stream_out *)stream;
617 size_t frame_size = audio_stream_frame_size(&out->stream.common);
627 * priority thread is waiting on the output stream mutex - e.g.
664 if (popcount(out_get_channels(&stream->common)) >
677 if (out_get_sample_rate(&stream->common) != out->pcm_config->rate) {
759 usleep(bytes * 1000000 / audio_stream_frame_size(&stream->common) /
760 out_get_sample_rate(&stream->common));
766 static int out_get_render_position(const struct audio_stream_out *stream,
772 static int out_add_audio_effect(const struct audio_stream *stream, effect_handle_t effect)
777 static int out_remove_audio_effect(const struct audio_stream *stream, effect_handle_t effect)
782 static int out_get_next_write_timestamp(const struct audio_stream_out *stream,
788 static int out_get_presentation_position(const struct audio_stream_out *stream,
791 struct stream_out *out = (struct stream_out *)stream;
814 static uint32_t in_get_sample_rate(const struct audio_stream *stream)
816 struct stream_in *in = (struct stream_in *)stream;
821 static int in_set_sample_rate(struct audio_stream *stream, uint32_t rate)
826 static size_t in_get_buffer_size(const struct audio_stream *stream)
828 struct stream_in *in = (struct stream_in *)stream;
836 size = (in->pcm_config->period_size * in_get_sample_rate(stream)) /
840 return size * audio_stream_frame_size((struct audio_stream *)stream);
843 static uint32_t in_get_channels(const struct audio_stream *stream)
848 static audio_format_t in_get_format(const struct audio_stream *stream)
853 static int in_set_format(struct audio_stream *stream, audio_format_t format)
858 static int in_standby(struct audio_stream *stream)
860 struct stream_in *in = (struct stream_in *)stream;
871 static int in_dump(const struct audio_stream *stream, int fd)
876 static int in_set_parameters(struct audio_stream *stream, const char *kvpairs)
878 struct stream_in *in = (struct stream_in *)stream;
914 static char * in_get_parameters(const struct audio_stream *stream,
920 static int in_set_gain(struct audio_stream_in *stream, float gain)
925 static ssize_t in_read(struct audio_stream_in *stream, void* buffer,
929 struct stream_in *in = (struct stream_in *)stream;
931 size_t frames_rq = bytes / audio_stream_frame_size(&stream->common);
935 * priority thread is waiting on the input stream mutex - e.g.
984 usleep(bytes * 1000000 / audio_stream_frame_size(&stream->common) /
985 in_get_sample_rate(&stream->common));
991 static uint32_t in_get_input_frames_lost(struct audio_stream_in *stream)
996 static int in_add_audio_effect(const struct audio_stream *stream,
1002 static int in_remove_audio_effect(const struct audio_stream *stream,
1024 out->stream.common.get_sample_rate = out_get_sample_rate;
1025 out->stream.common.set_sample_rate = out_set_sample_rate;
1026 out->stream.common.get_buffer_size = out_get_buffer_size;
1027 out->stream.common.get_channels = out_get_channels;
1028 out->stream.common.get_format = out_get_format;
1029 out->stream.common.set_format = out_set_format;
1030 out->stream.common.standby = out_standby;
1031 out->stream.common.dump = out_dump;
1032 out->stream.common.set_parameters = out_set_parameters;
1033 out->stream.common.get_parameters = out_get_parameters;
1034 out->stream.common.add_audio_effect = out_add_audio_effect;
1035 out->stream.common.remove_audio_effect = out_remove_audio_effect;
1036 out->stream.get_latency = out_get_latency;
1037 out->stream.set_volume = out_set_volume;
1038 out->stream.write = out_write;
1039 out->stream.get_render_position = out_get_render_position;
1040 out->stream.get_next_write_timestamp = out_get_next_write_timestamp;
1041 out->stream.get_presentation_position = out_get_presentation_position;
1045 stream.common);
1046 config->channel_mask = out_get_channels(&out->stream.common);
1047 config->sample_rate = out_get_sample_rate(&out->stream.common);
1052 *stream_out = &out->stream;
1062 struct audio_stream_out *stream)
1064 out_standby(&stream->common);
1065 free(stream);
1200 in->stream.common.get_sample_rate = in_get_sample_rate;
1201 in->stream.common.set_sample_rate = in_set_sample_rate;
1202 in->stream.common.get_buffer_size = in_get_buffer_size;
1203 in->stream.common.get_channels = in_get_channels;
1204 in->stream.common.get_format = in_get_format;
1205 in->stream.common.set_format = in_set_format;
1206 in->stream.common.standby = in_standby;
1207 in->stream.common.dump = in_dump;
1208 in->stream.common.set_parameters = in_set_parameters;
1209 in->stream.common.get_parameters = in_get_parameters;
1210 in->stream.common.add_audio_effect = in_add_audio_effect;
1211 in->stream.common.remove_audio_effect = in_remove_audio_effect;
1212 in->stream.set_gain = in_set_gain;
1213 in->stream.read = in_read;
1214 in->stream.get_input_frames_lost = in_get_input_frames_lost;
1221 *stream_in = &in->stream;
1226 struct audio_stream_in *stream)
1228 struct stream_in *in = (struct stream_in *)stream;
1230 in_standby(&stream->common);
1231 free(stream);