[BACK]Return to dev.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / sndiod

Diff for /src/usr.bin/sndiod/dev.c between version 1.40 and 1.41

version 1.40, 2018/06/26 07:30:26 version 1.41, 2018/06/26 07:31:29
Line 633 
Line 633 
                         for (j = d->slot_list; j != NULL; j = j->next) {                          for (j = d->slot_list; j != NULL; j = j->next) {
                                 if (!(j->mode & MODE_PLAY))                                  if (!(j->mode & MODE_PLAY))
                                         continue;                                          continue;
                                 if (i->mix.slot_cmin <= j->mix.slot_cmax &&                                  if (i->opt->pmin <= j->mix.slot_cmax &&
                                     i->mix.slot_cmax >= j->mix.slot_cmin)                                      i->mix.slot_cmax >= j->opt->pmin)
                                         n++;                                          n++;
                         }                          }
                         weight /= n;                          weight /= n;
Line 1421 
Line 1421 
   
         if (s->mode & MODE_PLAY) {          if (s->mode & MODE_PLAY) {
                 s->mix.bpf = s->par.bps *                  s->mix.bpf = s->par.bps *
                     (s->mix.slot_cmax - s->mix.slot_cmin + 1);                      (s->mix.slot_cmax - s->opt->pmin + 1);
                 abuf_init(&s->mix.buf, s->appbufsz * s->mix.bpf);                  abuf_init(&s->mix.buf, s->appbufsz * s->mix.bpf);
   
                 slot_nch = s->mix.slot_cmax - s->mix.slot_cmin + 1;                  slot_nch = s->mix.slot_cmax - s->opt->pmin + 1;
                 dev_nch = s->opt->pmax - s->opt->pmin + 1;                  dev_nch = s->opt->pmax - s->opt->pmin + 1;
                 s->mix.decbuf = NULL;                  s->mix.decbuf = NULL;
                 s->mix.resampbuf = NULL;                  s->mix.resampbuf = NULL;
Line 1437 
Line 1437 
                                 s->mix.join = slot_nch / dev_nch;                                  s->mix.join = slot_nch / dev_nch;
                 }                  }
                 cmap_init(&s->mix.cmap,                  cmap_init(&s->mix.cmap,
                     s->mix.slot_cmin, s->mix.slot_cmax,                      s->opt->pmin, s->mix.slot_cmax,
                     s->mix.slot_cmin, s->mix.slot_cmax,                      s->opt->pmin, s->mix.slot_cmax,
                     0, d->pchan - 1,                      0, d->pchan - 1,
                     s->opt->pmin, s->opt->pmax);                      s->opt->pmin, s->opt->pmax);
                 if (!aparams_native(&s->par)) {                  if (!aparams_native(&s->par)) {
Line 1456 
Line 1456 
   
         if (s->mode & MODE_RECMASK) {          if (s->mode & MODE_RECMASK) {
                 s->sub.bpf = s->par.bps *                  s->sub.bpf = s->par.bps *
                     (s->sub.slot_cmax - s->sub.slot_cmin + 1);                      (s->sub.slot_cmax - s->opt->rmin + 1);
                 abuf_init(&s->sub.buf, s->appbufsz * s->sub.bpf);                  abuf_init(&s->sub.buf, s->appbufsz * s->sub.bpf);
   
                 slot_nch = s->sub.slot_cmax - s->sub.slot_cmin + 1;                  slot_nch = s->sub.slot_cmax - s->opt->rmin + 1;
                 dev_nch = s->opt->rmax - s->opt->rmin + 1;                  dev_nch = s->opt->rmax - s->opt->rmin + 1;
                 s->sub.encbuf = NULL;                  s->sub.encbuf = NULL;
                 s->sub.resampbuf = NULL;                  s->sub.resampbuf = NULL;
Line 1474 
Line 1474 
                 cmap_init(&s->sub.cmap,                  cmap_init(&s->sub.cmap,
                     0, ((s->mode & MODE_MON) ? d->pchan : d->rchan) - 1,                      0, ((s->mode & MODE_MON) ? d->pchan : d->rchan) - 1,
                     s->opt->rmin, s->opt->rmax,                      s->opt->rmin, s->opt->rmax,
                     s->sub.slot_cmin, s->sub.slot_cmax,                      s->opt->rmin, s->sub.slot_cmax,
                     s->sub.slot_cmin, s->sub.slot_cmax);                      s->opt->rmin, s->sub.slot_cmax);
                 if (s->rate != d->rate) {                  if (s->rate != d->rate) {
                         resamp_init(&s->sub.resamp, d->round, s->round,                          resamp_init(&s->sub.resamp, d->round, s->round,
                             slot_nch);                              slot_nch);
Line 1669 
Line 1669 
         s->pstate = SLOT_INIT;          s->pstate = SLOT_INIT;
         s->mode = mode;          s->mode = mode;
         aparams_init(&s->par);          aparams_init(&s->par);
         if (s->mode & MODE_PLAY) {          if (s->mode & MODE_PLAY)
                 s->mix.slot_cmin = s->opt->pmin;  
                 s->mix.slot_cmax = s->opt->pmax;                  s->mix.slot_cmax = s->opt->pmax;
         }          if (s->mode & MODE_RECMASK)
         if (s->mode & MODE_RECMASK) {  
                 s->sub.slot_cmin = s->opt->rmin;  
                 s->sub.slot_cmax = s->opt->rmax;                  s->sub.slot_cmax = s->opt->rmax;
         }  
         if (s->opt->mmc) {          if (s->opt->mmc) {
                 s->xrun = XRUN_SYNC;                  s->xrun = XRUN_SYNC;
                 s->tstate = MMC_STOP;                  s->tstate = MMC_STOP;

Legend:
Removed from v.1.40  
changed lines
  Added in v.1.41