Home
last modified time | relevance | path

Searched refs:pcm (Results 1 – 25 of 43) sorted by relevance

12

/bsp/allwinner/libraries/sunxi-hal/hal/source/sound/component/aw-alsa-lib/
A Dpcm_mmap.c182 assert(pcm); in snd_pcm_mmap()
185 if (!pcm->setup) { in snd_pcm_mmap()
189 if (pcm->mmap_channels || pcm->running_areas) { in snd_pcm_mmap()
193 err = pcm->ops->mmap(pcm); in snd_pcm_mmap()
198 pcm->mmap_channels = calloc(pcm->channels, sizeof(pcm->mmap_channels[0])); in snd_pcm_mmap()
201 pcm->running_areas = calloc(pcm->channels, sizeof(pcm->running_areas[0])); in snd_pcm_mmap()
233 size = i->first + i->step * (pcm->buffer_size - 1) + pcm->sample_bits; in snd_pcm_mmap()
258 size, pcm->buffer_size, pcm->period_size); in snd_pcm_mmap()
299 assert(pcm); in snd_pcm_munmap()
307 return pcm->ops->munmap(pcm); in snd_pcm_munmap()
[all …]
A Dpcm.c208 if (pcm->setup && !pcm->donot_close) { in snd_pcm_close()
217 ret = pcm->ops->close(pcm->op_arg); in snd_pcm_close()
458 ret = pcm->ops->hw_free(pcm->op_arg); in snd_pcm_hw_free()
624 ret = pcm->fast_ops->drop(pcm->fast_op_arg); in snd_pcm_drop()
814 pcm->ops->dump(pcm->op_arg); in snd_pcm_dump()
973 pcm->op_arg = pcm; in snd_pcm_new()
974 pcm->fast_op_arg = pcm; in snd_pcm_new()
1721 return pcm->ops->query_chmaps(pcm); in snd_pcm_query_chmaps()
1749 return pcm->ops->get_chmap(pcm); in snd_pcm_get_chmap()
1766 return pcm->ops->set_chmap(pcm, map); in snd_pcm_set_chmap()
[all …]
A Dpcm_local.h204 return pcm->ops->channel_info(pcm, info); in snd_pcm_channel_info()
239 return pcm->fast_ops->avail_update(pcm->fast_op_arg); in __snd_pcm_avail_update()
244 return pcm->fast_ops->start(pcm->fast_op_arg); in __snd_pcm_start()
249 return pcm->fast_ops->state(pcm->fast_op_arg); in __snd_pcm_state()
254 return pcm->fast_ops->hwsync(pcm->fast_op_arg); in __snd_pcm_hwsync()
278 avail = *pcm->hw.ptr + pcm->buffer_size - *pcm->appl.ptr; in snd_pcm_mmap_playback_avail()
289 avail = *pcm->hw.ptr - *pcm->appl.ptr; in snd_pcm_mmap_capture_avail()
305 return pcm->buffer_size - snd_pcm_mmap_playback_avail(pcm); in snd_pcm_mmap_playback_hw_avail()
310 return pcm->buffer_size - snd_pcm_mmap_capture_avail(pcm); in snd_pcm_mmap_capture_hw_avail()
323 return *pcm->appl.ptr % pcm->buffer_size; in snd_pcm_mmap_offset()
[all …]
A Dpcm_generic.c38 int snd_pcm_generic_close(snd_pcm_t *pcm) in snd_pcm_generic_close() argument
49 int snd_pcm_generic_hw_free(snd_pcm_t *pcm) in snd_pcm_generic_hw_free() argument
88 if (pcm->mmap_shadow) { in snd_pcm_generic_channel_info()
100 int snd_pcm_generic_mmap(snd_pcm_t *pcm) in snd_pcm_generic_mmap() argument
103 if (pcm->mmap_shadow) { in snd_pcm_generic_mmap()
116 if (pcm->mmap_shadow) { in snd_pcm_generic_munmap()
118 pcm->mmap_channels = NULL; in snd_pcm_generic_munmap()
119 pcm->running_areas = NULL; in snd_pcm_generic_munmap()
120 pcm->stopped_areas = NULL; in snd_pcm_generic_munmap()
160 int snd_pcm_generic_reset(snd_pcm_t *pcm) in snd_pcm_generic_reset() argument
[all …]
A Dpcm_hw.c57 assert(pcm); in snd_pcm_hw_hw_refine()
81 assert(pcm); in snd_pcm_hw_hw_free()
183 assert(pcm); in snd_pcm_hw_prepare()
195 assert(pcm); in snd_pcm_hw_reset()
205 assert(pcm); in snd_pcm_hw_start()
217 assert(pcm); in snd_pcm_hw_drop()
229 assert(pcm); in snd_pcm_hw_drain()
242 assert(pcm); in snd_pcm_hw_pause()
254 assert(pcm); in snd_pcm_hw_delay()
266 assert(pcm); in snd_pcm_hw_resume()
[all …]
A Dpcm_generic.h43 int snd_pcm_generic_close(snd_pcm_t *pcm);
44 int snd_pcm_generic_hw_free(snd_pcm_t *pcm);
48 int snd_pcm_generic_prepare(snd_pcm_t *pcm);
50 int snd_pcm_generic_mmap(snd_pcm_t *pcm);
51 int snd_pcm_generic_munmap(snd_pcm_t *pcm);
56 int snd_pcm_generic_hwsync(snd_pcm_t *pcm);
57 int snd_pcm_generic_reset(snd_pcm_t *pcm);
58 int snd_pcm_generic_start(snd_pcm_t *pcm);
59 int snd_pcm_generic_drop(snd_pcm_t *pcm);
60 int snd_pcm_generic_drain(snd_pcm_t *pcm);
[all …]
A Dpcm_multi.c40 snd_pcm_t *pcm; member
327 if (snd_pcm_link(multi->slaves[0].pcm, multi->slaves[i].pcm) >= 0) in reset_links()
754 pcm->mmap_channels = calloc(pcm->channels, in snd_pcm_multi_mmap()
756 pcm->running_areas = calloc(pcm->channels, in snd_pcm_multi_mmap()
758 if (!pcm->mmap_channels || !pcm->running_areas) { in snd_pcm_multi_mmap()
935 if (pcm->setup) { in snd_pcm_multi_dump()
1007 snd_pcm_t *pcm; in snd_pcm_multi_open() local
1064 pcm->mmap_rw = 1; in snd_pcm_multi_open()
1069 snd_pcm_link_hw_ptr(pcm, multi->slaves[master_slave].pcm); in snd_pcm_multi_open()
1070 snd_pcm_link_appl_ptr(pcm, multi->slaves[master_slave].pcm); in snd_pcm_multi_open()
[all …]
A Dpcm_dsnoop.c139 snoop_timestamp(pcm); in snd_pcm_dsnoop_sync_ptr()
155 if (pcm->stop_threshold >= pcm->boundary) /* don't care */ in snd_pcm_dsnoop_sync_ptr()
160 if ((avail = snd_pcm_mmap_capture_hw_avail(pcm)) >= pcm->stop_threshold) { in snd_pcm_dsnoop_sync_ptr()
299 if (pcm->stop_threshold > pcm->buffer_size) in __snd_pcm_dsnoop_drain()
300 pcm->stop_threshold = pcm->buffer_size; in __snd_pcm_dsnoop_drain()
318 snd_pcm_lock(pcm); in snd_pcm_dsnoop_drain()
320 snd_pcm_unlock(pcm); in snd_pcm_dsnoop_drain()
383 if (pcm->setup) { in snd_pcm_dsnoop_dump()
541 pcm->mmap_rw = 1; in _snd_pcm_dsnoop_open()
549 *pcmp = pcm; in _snd_pcm_dsnoop_open()
[all …]
A Dpcm_plugin_generic.c114 *pcm->hw.ptr = 0; in snd_pcm_plugin_prepare()
115 *pcm->appl.ptr = 0; in snd_pcm_plugin_prepare()
117 err = plugin->init(pcm); in snd_pcm_plugin_prepare()
133 *pcm->hw.ptr = 0; in snd_pcm_plugin_reset()
134 *pcm->appl.ptr = 0; in snd_pcm_plugin_reset()
136 err = plugin->init(pcm); in snd_pcm_plugin_reset()
296 *pcm->hw.ptr = *slave->hw.ptr; in snd_pcm_plugin_avail_update()
304 size = pcm->buffer_size - xfer; in snd_pcm_plugin_avail_update()
305 areas = snd_pcm_mmap_areas(pcm); in snd_pcm_plugin_avail_update()
383 areas = snd_pcm_mmap_areas(pcm); in snd_pcm_plugin_mmap_commit()
[all …]
A Dpcm_dmix.c372 if (pcm->stop_threshold >= pcm->boundary) /* don't care */ in snd_pcm_dmix_sync_ptr0()
512 if (pcm->buffer_size > pcm->period_size * 2) in reset_slave_ptr()
607 if (snd_pcm_mmap_playback_avail(pcm) < pcm->avail_min) in snd_pcm_dmix_mmap_commit()
687 if (pcm->stop_threshold > pcm->buffer_size) in __snd_pcm_dmix_drain()
688 pcm->stop_threshold = pcm->buffer_size; in __snd_pcm_dmix_drain()
734 snd_pcm_lock(pcm); in snd_pcm_dmix_drain()
736 snd_pcm_unlock(pcm); in snd_pcm_dmix_drain()
764 pcm->private_data = NULL; in snd_pcm_dmix_close()
786 if (pcm->setup) { in snd_pcm_dmix_dump()
954 pcm->mmap_rw = 1; in _snd_pcm_dmix_open()
[all …]
A Dpcm_rate.c879 *pcm->hw.ptr = 0; in snd_pcm_rate_prepare()
880 *pcm->appl.ptr = 0; in snd_pcm_rate_prepare()
896 *pcm->hw.ptr = 0; in snd_pcm_rate_reset()
897 *pcm->appl.ptr = 0; in snd_pcm_rate_reset()
1083 return snd_pcm_rate_commit_area(pcm, rate, appl_offset, pcm->period_size, in snd_pcm_rate_commit_next_period()
1195 pcm->channels, pcm->period_size - cont, in snd_pcm_rate_grab_next_period()
1298 snd_pcm_mmap_hw_forward(pcm, pcm->period_size); in snd_pcm_rate_avail_update()
1424 if (pcm->setup) { in snd_pcm_rate_dump()
1541 snd_pcm_t *pcm; in snd_pcm_rate_open() local
1669 pcm->mmap_rw = 1; in snd_pcm_rate_open()
[all …]
A Dpcm_file.c247 pcm->channels, n, pcm->format); in snd_pcm_file_add_frames()
320 snd_pcm_lock(pcm); in snd_pcm_file_drain()
323 snd_pcm_unlock(pcm); in snd_pcm_file_drain()
337 snd_pcm_lock(pcm); in snd_pcm_file_writei()
340 snd_pcm_unlock(pcm); in snd_pcm_file_writei()
462 if (pcm->setup) { in snd_pcm_file_dump()
610 snd_pcm_t *pcm; in snd_pcm_file_open() local
645 pcm->private_data = file; in snd_pcm_file_open()
646 pcm->mmap_shadow = 1; in snd_pcm_file_open()
647 pcm->stream = stream; in snd_pcm_file_open()
[all …]
A Dpcm_params.c729 assert(pcm && params); in snd_pcm_hw_refine()
730 assert(pcm->ops->hw_refine); in snd_pcm_hw_refine()
737 res = pcm->ops->hw_refine(pcm->op_arg, params); in snd_pcm_hw_refine()
1306 err = cprepare(pcm, params); in snd_pcm_hw_refine_slave()
1499 if (!pcm->buffer_size) { in snd_pcm_sw_params_default()
1520 if (pcm->setup) { in _snd_pcm_hw_params_internal()
1526 ret = pcm->ops->hw_params(pcm->op_arg, params); in _snd_pcm_hw_params_internal()
1530 pcm->setup = 1; in _snd_pcm_hw_params_internal()
1539 pcm->sample_bits = snd_pcm_format_physical_width(pcm->format); in _snd_pcm_hw_params_internal()
1540 pcm->frame_bits = pcm->sample_bits * pcm->channels; in _snd_pcm_hw_params_internal()
[all …]
A Dpcm_plug.c615 pcm->name); in snd_pcm_plug_hw_refine_schange()
840 snd_pcm_plug_clear(pcm);
868 snd_pcm_plug_clear(pcm);
884 snd_pcm_plug_clear(pcm);
942 snd_pcm_plug_clear(pcm); in snd_pcm_plug_hw_params()
961 snd_pcm_plug_clear(pcm); in snd_pcm_plug_hw_params()
979 snd_pcm_plug_clear(pcm); in snd_pcm_plug_hw_free()
1020 snd_pcm_t *pcm; in snd_pcm_plug_open() local
1049 pcm->private_data = plug; in snd_pcm_plug_open()
1050 pcm->mmap_shadow = 1; in snd_pcm_plug_open()
[all …]
A Dpcm_extplug.c257 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_init()
265 snd_pcm_extplug_write_areas(snd_pcm_t *pcm, in snd_pcm_extplug_write_areas() argument
273 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_write_areas()
287 snd_pcm_extplug_read_areas(snd_pcm_t *pcm, in snd_pcm_extplug_read_areas() argument
295 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_read_areas()
496 if (pcm->setup) { in snd_pcm_extplug_dump()
498 snd_pcm_dump_setup(pcm); in snd_pcm_extplug_dump()
525 snd_pcm_t *spcm, *pcm; in snd_pcm_extplug_create() local
568 extplug->pcm = pcm; in snd_pcm_extplug_create()
569 pcm->ops = &snd_pcm_extplug_ops; in snd_pcm_extplug_create()
[all …]
A Dpcm_linear.c199 snd_pcm_linear_write_areas(snd_pcm_t *pcm, in snd_pcm_linear_write_areas() argument
213 pcm->channels, size, in snd_pcm_linear_write_areas()
224 snd_pcm_linear_read_areas(snd_pcm_t *pcm, in snd_pcm_linear_read_areas() argument
238 pcm->channels, size, in snd_pcm_linear_read_areas()
311 if (pcm->setup) { in snd_pcm_linear_dump()
313 snd_pcm_dump_setup(pcm); in snd_pcm_linear_dump()
339 snd_pcm_t *pcm; in snd_pcm_linear_open() local
365 pcm->ops = &snd_pcm_linear_ops; in snd_pcm_linear_open()
366 pcm->fast_ops = &snd_pcm_plugin_fast_ops; in snd_pcm_linear_open()
367 pcm->private_data = linear; in snd_pcm_linear_open()
[all …]
A Dpcm_softvol.c345 snd_pcm_softvol_read_areas(snd_pcm_t *pcm, in snd_pcm_softvol_read_areas() argument
368 snd_pcm_softvol_write_areas(snd_pcm_t *pcm, in snd_pcm_softvol_write_areas() argument
622 if (pcm->setup) { in snd_pcm_softvol_dump()
624 snd_pcm_dump_setup(pcm); in snd_pcm_softvol_dump()
727 snd_pcm_t *pcm = NULL, *spcm = NULL; in _snd_pcm_softvol_open() local
795 pcm->ops = &snd_pcm_softvol_ops; in _snd_pcm_softvol_open()
797 pcm->private_data = svol; in _snd_pcm_softvol_open()
799 pcm->mmap_shadow = 1; in _snd_pcm_softvol_open()
804 *pcmp = pcm; in _snd_pcm_softvol_open()
809 if (pcm) in _snd_pcm_softvol_open()
[all …]
A Dalsa_config.c57 .pcm = "PlaybackDmix",
71 .pcm = "PlaybackDmix",
86 .pcm = "audiocodec",
99 .pcm = "audiocodec",
113 .pcm = #name, \
131 .pcm = "audiocodec",
144 .pcm = "PlaybackDmix",
160 .pcm = "hw:audiocodec",
172 .pcm = "PlaybackDmix",
182 .pcm = "CaptureDsnoop",
A Dpcm_route.c442 pcm->channels, in snd_pcm_route_write_areas()
450 snd_pcm_route_read_areas(snd_pcm_t *pcm, in snd_pcm_route_read_areas() argument
465 pcm->channels, in snd_pcm_route_read_areas()
587 return snd_pcm_generic_close(pcm); in snd_pcm_route_close()
876 if (pcm->setup) { in snd_pcm_route_dump()
878 snd_pcm_dump_setup(pcm); in snd_pcm_route_dump()
993 snd_pcm_t *pcm; in snd_pcm_route_open() local
1021 pcm->ops = &snd_pcm_route_ops; in snd_pcm_route_open()
1023 pcm->private_data = route; in snd_pcm_route_open()
1028 snd_pcm_close(pcm); in snd_pcm_route_open()
[all …]
A Dpcm_plugin_generic.h39 (snd_pcm_t *pcm,
47 (snd_pcm_t *pcm,
59 int (*init)(snd_pcm_t *pcm);
64 int snd_pcm_plugin_may_wait_for_avail_min(snd_pcm_t *pcm, snd_pcm_uframes_t avail);
65 int snd_pcm_plugin_wait(snd_pcm_t *pcm, int timeout);
70 (snd_pcm_t *pcm,
77 (snd_pcm_t *pcm,
A Dpcm_direct.h141 int (*sync_ptr)(snd_pcm_t *pcm);
229 int snd_pcm_direct_check_interleave(snd_pcm_direct_t *dmix, snd_pcm_t *pcm);
231 int snd_pcm_direct_hw_refine(snd_pcm_t *pcm, snd_pcm_hw_params_t *params);
232 int snd_pcm_direct_hw_params(snd_pcm_t *pcm, snd_pcm_hw_params_t * params);
233 int snd_pcm_direct_hw_free(snd_pcm_t *pcm);
234 int snd_pcm_direct_sw_params(snd_pcm_t *pcm, snd_pcm_sw_params_t * params);
236 int snd_pcm_direct_mmap(snd_pcm_t *pcm);
237 int snd_pcm_direct_munmap(snd_pcm_t *pcm);
238 int snd_pcm_direct_prepare(snd_pcm_t *pcm);
241 int snd_pcm_direct_client_chk_xrun(snd_pcm_direct_t *direct, snd_pcm_t *pcm);
[all …]
A Dpcm_direct.c580 pcm->fast_ops->drop(pcm); in snd_pcm_direct_client_chk_xrun()
605 bits = snd_pcm_format_physical_width(pcm->format); in snd_pcm_direct_check_interleave()
610 src_areas = snd_pcm_mmap_areas(pcm); in snd_pcm_direct_check_interleave()
695 snd_pcm_direct_t *direct = pcm->private_data; in snd_pcm_direct_hw_refine()
802 err = snd_pcm_hw_refine_soft(pcm, params); in snd_pcm_direct_hw_refine()
828 int snd_pcm_direct_prepare(snd_pcm_t *pcm) in snd_pcm_direct_prepare() argument
830 snd_pcm_direct_t *dmix = pcm->private_data; in snd_pcm_direct_prepare()
848 snd_pcm_direct_check_interleave(dmix, pcm); in snd_pcm_direct_prepare()
896 return snd_pcm_channel_info_shm(pcm, info, -1); in snd_pcm_direct_channel_info()
909 int snd_pcm_direct_wait(snd_pcm_t *pcm, int timeout) in snd_pcm_direct_wait() argument
[all …]
/bsp/allwinner/libraries/sunxi-hal/include/hal/aw-alsa-lib/
A Dpcm.h182 int snd_pcm_close(snd_pcm_t *pcm);
188 int snd_pcm_hw_free(snd_pcm_t *pcm);
189 int snd_pcm_reset(snd_pcm_t *pcm);
190 int snd_pcm_start(snd_pcm_t *pcm);
191 int snd_pcm_prepare(snd_pcm_t *pcm);
192 int snd_pcm_drop(snd_pcm_t *pcm);
193 int snd_pcm_drain(snd_pcm_t *pcm);
196 int snd_pcm_resume(snd_pcm_t *pcm);
199 int snd_pcm_hwsync(snd_pcm_t *pcm);
205 int snd_pcm_unlink(snd_pcm_t *pcm);
[all …]
/bsp/allwinner/libraries/sunxi-hal/hal/source/sound/platform/
A Dsunxi-pcm.c77 struct snd_codec *codec = pcm->card->codec; in sunxi_pcm_preallocate_dma_buffer()
78 struct snd_dma_buffer *buf = &pcm->streams[stream]->dma_buffer; in sunxi_pcm_preallocate_dma_buffer()
95 int sunxi_pcm_new(struct snd_pcm *pcm) in sunxi_pcm_new() argument
100 if (pcm->streams[SNDRV_PCM_STREAM_PLAYBACK]) { in sunxi_pcm_new()
101 ret = sunxi_pcm_preallocate_dma_buffer(pcm, in sunxi_pcm_new()
106 if (pcm->streams[SNDRV_PCM_STREAM_CAPTURE]) { in sunxi_pcm_new()
107 ret = sunxi_pcm_preallocate_dma_buffer(pcm, in sunxi_pcm_new()
116 void sunxi_pcm_free(struct snd_pcm *pcm) in sunxi_pcm_free() argument
124 substream = pcm->streams[stream]; in sunxi_pcm_free()
141 struct snd_codec *codec = substream->pcm->card->codec; in sunxi_pcm_open()
[all …]
/bsp/allwinner/libraries/sunxi-hal/hal/source/sound/core/
A Dsnd_core.c661 substream->pcm = pcm; in snd_pcm_new_stream()
684 pcm->private_free(pcm); in snd_pcm_free()
687 list_del(&pcm->list); in snd_pcm_free()
690 snd_free(pcm); in snd_pcm_free()
1076 struct snd_pcm *pcm; in snd_pcm_new() local
1094 if (!pcm) { in snd_pcm_new()
1100 pcm->card = card; in snd_pcm_new()
1101 pcm->num = 0; in snd_pcm_new()
1102 snprintf(pcm->id, sizeof(pcm->id), "PCM %s", codec_dai->name); in snd_pcm_new()
1129 if (pcm != NULL) { in snd_pcm_new()
[all …]

Completed in 2686 milliseconds

12