• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/iserver/alsa-lib-1.0.26/src/pcm/

Lines Matching defs:multi

68 	snd_pcm_multi_t *multi = pcm->private_data;
71 for (i = 0; i < multi->slaves_count; ++i) {
72 snd_pcm_multi_slave_t *slave = &multi->slaves[i];
79 free(multi->slaves);
80 free(multi->channels);
81 free(multi);
92 snd_pcm_multi_t *multi = pcm->private_data;
93 snd_pcm_t *slave_0 = multi->slaves[multi->master_slave].pcm;
99 snd_pcm_multi_t *multi = pcm->private_data;
100 snd_pcm_t *slave_0 = multi->slaves[multi->master_slave].pcm;
106 snd_pcm_multi_t *multi = pcm->private_data;
108 snd_pcm_t *slave_0 = multi->slaves[multi->master_slave].pcm;
112 for (i = 0; i < multi->slaves_count; ++i) {
113 slave = multi->slaves[i].pcm;
126 snd_pcm_multi_t *multi = pcm->private_data;
127 snd_pcm_t *slave_0 = multi->slaves[multi->master_slave].pcm;
133 snd_pcm_multi_t *multi = pcm->private_data;
135 assert(info->subdevice < multi->slaves_count);
138 err = snd_pcm_info(multi->slaves[n].pcm, info);
141 info->subdevices_count = multi->slaves_count;
147 snd_pcm_multi_t *multi = pcm->private_data;
157 multi->channels_count, 0);
167 snd_pcm_multi_t *multi = pcm->private_data;
168 snd_pcm_multi_slave_t *slave = &multi->slaves[slave_idx];
250 snd_pcm_multi_t *multi = pcm->private_data;
251 snd_pcm_t *slave = multi->slaves[slave_idx].pcm;
257 snd_pcm_multi_t *multi = pcm->private_data;
259 snd_pcm_hw_params_t sparams[multi->slaves_count];
265 for (k = 0; k < multi->slaves_count; ++k) {
275 for (k = 0; k < multi->slaves_count; ++k) {
300 snd_pcm_multi_t *multi = pcm->private_data;
301 snd_pcm_t *slave = multi->slaves[slave_idx].pcm;
320 static void reset_links(snd_pcm_multi_t *multi)
324 for (i = 0; i < multi->slaves_count; ++i) {
325 if (multi->slaves[i].linked)
326 snd_pcm_unlink(multi->slaves[i].linked);
327 multi->slaves[0].linked = NULL;
330 if (snd_pcm_link(multi->slaves[0].pcm, multi->slaves[i].pcm) >= 0)
331 multi->slaves[i].linked = multi->slaves[0].pcm;
337 snd_pcm_multi_t *multi = pcm->private_data;
339 snd_pcm_hw_params_t sparams[multi->slaves_count];
341 for (i = 0; i < multi->slaves_count; ++i) {
352 reset_links(multi);
358 snd_pcm_multi_t *multi = pcm->private_data;
361 for (i = 0; i < multi->slaves_count; ++i) {
362 snd_pcm_t *slave = multi->slaves[i].pcm;
366 if (!multi->slaves[i].linked)
371 multi->slaves[i].linked = NULL;
378 snd_pcm_multi_t *multi = pcm->private_data;
381 for (i = 0; i < multi->slaves_count; ++i) {
382 snd_pcm_t *slave = multi->slaves[i].pcm;
392 snd_pcm_multi_t *multi = pcm->private_data;
393 snd_pcm_t *slave = multi->slaves[multi->master_slave].pcm;
399 snd_pcm_multi_t *multi = pcm->private_data;
400 snd_pcm_t *slave = multi->slaves[multi->master_slave].pcm;
406 snd_pcm_multi_t *multi = pcm->private_data;
407 snd_pcm_t *slave = multi->slaves[multi->master_slave].pcm;
413 snd_pcm_multi_t *multi = pcm->private_data;
414 snd_pcm_t *slave = multi->slaves[multi->master_slave].pcm;
420 snd_pcm_multi_t *multi = pcm->private_data;
423 for (i = 0; i < multi->slaves_count; ++i) {
425 avail = snd_pcm_avail_update(multi->slaves[i].pcm);
437 snd_pcm_multi_t *multi = pcm->private_data;
438 snd_pcm_t *slave = multi->slaves[multi->master_slave].pcm;
444 snd_pcm_multi_t *multi = pcm->private_data;
447 for (i = 0; i < multi->slaves_count; ++i) {
451 err = snd_pcm_prepare(multi->slaves[i].pcm);
460 snd_pcm_multi_t *multi = pcm->private_data;
463 for (i = 0; i < multi->slaves_count; ++i) {
465 err = snd_pcm_reset(multi->slaves[i].pcm);
472 /* when the first slave PCM is linked, it means that the whole multi
478 snd_pcm_multi_t *multi = pcm->private_data;
481 if (multi->slaves[0].linked)
482 return snd_pcm_start(multi->slaves[0].linked);
483 for (i = 0; i < multi->slaves_count; ++i) {
484 if (multi->slaves[i].linked)
486 err = snd_pcm_start(multi->slaves[i].pcm);
495 snd_pcm_multi_t *multi = pcm->private_data;
498 if (multi->slaves[0].linked)
499 return snd_pcm_drop(multi->slaves[0].linked);
500 for (i = 0; i < multi->slaves_count; ++i) {
501 if (multi->slaves[i].linked)
503 err = snd_pcm_drop(multi->slaves[i].pcm);
512 snd_pcm_multi_t *multi = pcm->private_data;
515 if (multi->slaves[0].linked)
516 return snd_pcm_drain(multi->slaves[0].linked);
517 for (i = 0; i < multi->slaves_count; ++i) {
518 if (multi->slaves[i].linked)
520 err = snd_pcm_drain(multi->slaves[i].pcm);
529 snd_pcm_multi_t *multi = pcm->private_data;
532 if (multi->slaves[0].linked)
533 return snd_pcm_pause(multi->slaves[0].linked, enable);
534 for (i = 0; i < multi->slaves_count; ++i) {
535 if (multi->slaves[i].linked)
537 err = snd_pcm_pause(multi->slaves[i].pcm, enable);
546 snd_pcm_multi_t *multi = pcm->private_data;
548 snd_pcm_multi_channel_t *c = &multi->channels[channel];
553 err = snd_pcm_channel_info(multi->slaves[c->slave_idx].pcm, info);
560 snd_pcm_multi_t *multi = pcm->private_data;
562 snd_pcm_uframes_t pos[multi->slaves_count];
564 for (i = 0; i < multi->slaves_count; ++i) {
565 snd_pcm_t *slave_i = multi->slaves[i].pcm;
573 for (i = 0; i < multi->slaves_count; ++i) {
574 snd_pcm_t *slave_i = multi->slaves[i].pcm;
590 snd_pcm_multi_t *multi = pcm->private_data;
592 snd_pcm_uframes_t pos[multi->slaves_count];
594 for (i = 0; i < multi->slaves_count; ++i) {
595 snd_pcm_t *slave_i = multi->slaves[i].pcm;
603 for (i = 0; i < multi->slaves_count; ++i) {
604 snd_pcm_t *slave_i = multi->slaves[i].pcm;
620 snd_pcm_multi_t *multi = pcm->private_data;
623 if (multi->slaves[0].linked)
624 return snd_pcm_resume(multi->slaves[0].linked);
625 for (i = 0; i < multi->slaves_count; ++i) {
626 if (multi->slaves[i].linked)
628 err = snd_pcm_resume(multi->slaves[i].pcm);
635 /* if a multi plugin instance is linked as slaves, every slave PCMs
640 snd_pcm_multi_t *multi = pcm->private_data;
644 for (i = 0; i < multi->slaves_count; ++i) {
645 snd_pcm_unlink(multi->slaves[i].pcm);
646 multi->slaves[i].linked = NULL;
647 err = snd_pcm_link(master, multi->slaves[i].pcm);
649 reset_links(multi);
652 multi->slaves[i].linked = master;
657 /* linking to a multi as a master is easy - simply link to the first
662 snd_pcm_multi_t *multi = pcm1->private_data;
663 if (multi->slaves[0].pcm->fast_ops->link)
664 return multi->slaves[0].pcm->fast_ops->link(multi->slaves[0].pcm, pcm2);
670 snd_pcm_multi_t *multi = pcm->private_data;
673 for (i = 0; i < multi->slaves_count; ++i) {
674 if (multi->slaves[i].linked)
675 snd_pcm_unlink(multi->slaves[i].linked);
676 multi->slaves[0].linked = NULL;
685 snd_pcm_multi_t *multi = pcm->private_data;
690 for (i = 0; i < multi->slaves_count; ++i) {
691 slave = multi->slaves[i].pcm;
712 snd_pcm_multi_t *multi = pcm->private_data;
726 snd_pcm_multi_channel_t *chan = &multi->channels[c];
732 slave = multi->slaves[chan->slave_idx].pcm;
744 snd_pcm_multi_t *multi = pcm->private_data;
748 for (k = 0; k < multi->channels_count; ++k) {
749 snd_pcm_multi_channel_t *c = &multi->channels[k];
759 for (k = 0; k < multi->slaves_count; ++k) {
761 snd_pcm_dump(multi->slaves[k].pcm, out);
834 snd_pcm_multi_t *multi;
845 multi = calloc(1, sizeof(snd_pcm_multi_t));
846 if (!multi) {
852 multi->slaves_count = slaves_count;
853 multi->master_slave = master_slave;
854 multi->slaves = calloc(slaves_count, sizeof(*multi->slaves));
855 if (!multi->slaves) {
856 free(multi);
859 multi->channels_count = channels_count;
860 multi->channels = calloc(channels_count, sizeof(*multi->channels));
861 if (!multi->channels) {
862 free(multi->slaves);
863 free(multi);
867 snd_pcm_multi_slave_t *slave = &multi->slaves[i];
874 snd_pcm_multi_channel_t *bind = &multi->channels[i];
884 multi->channels_count = channels_count;
887 multi->slaves[0].pcm->mode);
889 free(multi->slaves);
890 free(multi->channels);
891 free(multi);
898 pcm->private_data = multi;
899 pcm->poll_fd = multi->slaves[master_slave].pcm->poll_fd;
900 pcm->poll_events = multi->slaves[master_slave].pcm->poll_events;
901 pcm->monotonic = multi->slaves[master_slave].pcm->monotonic;
902 snd_pcm_link_hw_ptr(pcm, multi->slaves[master_slave].pcm);
903 snd_pcm_link_appl_ptr(pcm, multi->slaves[master_slave].pcm);
916 type multi # Multiple streams conversion PCM
941 type multi