Home | History | Annotate | Download | only in audio

Lines Matching defs:pa

89     PAVoiceOut *pa = arg;
90 HWVoiceOut *hw = &pa->hw;
95 if (audio_pt_lock (&pa->pt, AUDIO_FUNC)) {
103 if (pa->done) {
107 if (pa->live > threshold) {
111 if (audio_pt_wait (&pa->pt, AUDIO_FUNC)) {
116 decr = to_mix = pa->live;
119 if (audio_pt_unlock (&pa->pt, AUDIO_FUNC)) {
128 hw->clip (pa->pcm_buf, src, chunk);
130 if (FF(pa_simple_write) (pa->s, pa->pcm_buf,
140 if (audio_pt_lock (&pa->pt, AUDIO_FUNC)) {
144 pa->rpos = rpos;
145 pa->live -= decr;
146 pa->decr += decr;
150 audio_pt_unlock (&pa->pt, AUDIO_FUNC);
157 PAVoiceOut *pa = (PAVoiceOut *) hw;
159 if (audio_pt_lock (&pa->pt, AUDIO_FUNC)) {
163 decr = audio_MIN (live, pa->decr);
164 pa->decr -= decr;
165 pa->live = live - decr;
166 hw->rpos = pa->rpos;
167 if (pa->live > 0) {
168 audio_pt_unlock_and_signal (&pa->pt, AUDIO_FUNC);
171 audio_pt_unlock (&pa->pt, AUDIO_FUNC);
184 PAVoiceIn *pa = arg;
185 HWVoiceIn *hw = &pa->hw;
190 if (audio_pt_lock (&pa->pt, AUDIO_FUNC)) {
198 if (pa->done) {
202 if (pa->dead > threshold) {
206 if (audio_pt_wait (&pa->pt, AUDIO_FUNC)) {
211 incr = to_grab = pa->dead;
214 if (audio_pt_unlock (&pa->pt, AUDIO_FUNC)) {
221 void *buf = advance (pa->pcm_buf, wpos);
223 if (FF(pa_simple_read) (pa->s, buf,
234 if (audio_pt_lock (&pa->pt, AUDIO_FUNC)) {
238 pa->wpos = wpos;
239 pa->dead -= incr;
240 pa->incr += incr;
244 audio_pt_unlock (&pa->pt, AUDIO_FUNC);
251 PAVoiceIn *pa = (PAVoiceIn *) hw;
253 if (audio_pt_lock (&pa->pt, AUDIO_FUNC)) {
259 incr = audio_MIN (dead, pa->incr);
260 pa->incr -= incr;
261 pa->dead = dead - incr;
262 hw->wpos = pa->wpos;
263 if (pa->dead > 0) {
264 audio_pt_unlock_and_signal (&pa->pt, AUDIO_FUNC);
267 audio_pt_unlock (&pa->pt, AUDIO_FUNC);
330 PAVoiceOut *pa = (PAVoiceOut *) hw;
338 pa->s = FF(pa_simple_new) (
349 if (!pa->s) {
356 pa->pcm_buf = audio_calloc (AUDIO_FUNC, hw->samples, 1 << hw->info.shift);
357 if (!pa->pcm_buf) {
363 if (audio_pt_init (&pa->pt, qpa_thread_out, hw, AUDIO_CAP, AUDIO_FUNC)) {
370 g_free (pa->pcm_buf);
371 pa->pcm_buf = NULL;
373 FF(pa_simple_free) (pa->s);
374 pa->s = NULL;
384 PAVoiceIn *pa = (PAVoiceIn *) hw;
392 pa->s = FF(pa_simple_new) (
403 if (!pa->s) {
410 pa->pcm_buf = audio_calloc (AUDIO_FUNC, hw->samples, 1 << hw->info.shift);
411 if (!pa->pcm_buf) {
417 if (audio_pt_init (&pa->pt, qpa_thread_in, hw, AUDIO_CAP, AUDIO_FUNC)) {
424 g_free (pa->pcm_buf);
425 pa->pcm_buf = NULL;
427 FF(pa_simple_free) (pa->s);
428 pa->s = NULL;
436 PAVoiceOut *pa = (PAVoiceOut *) hw;
438 audio_pt_lock (&pa->pt, AUDIO_FUNC);
439 pa->done = 1;
440 audio_pt_unlock_and_signal (&pa->pt, AUDIO_FUNC);
441 audio_pt_join (&pa->pt, &ret, AUDIO_FUNC);
443 if (pa->s) {
444 FF(pa_simple_free) (pa->s);
445 pa->s = NULL;
448 audio_pt_fini (&pa->pt, AUDIO_FUNC);
449 g_free (pa->pcm_buf);
450 pa->pcm_buf = NULL;
456 PAVoiceIn *pa = (PAVoiceIn *) hw;
458 audio_pt_lock (&pa->pt, AUDIO_FUNC);
459 pa->done = 1;
460 audio_pt_unlock_and_signal (&pa->pt, AUDIO_FUNC);
461 audio_pt_join (&pa->pt, &ret, AUDIO_FUNC);
463 if (pa->s) {
464 FF(pa_simple_free) (pa->s);
465 pa->s = NULL;
468 audio_pt_fini (&pa->pt, AUDIO_FUNC);
469 g_free (pa->pcm_buf);
470 pa->pcm_buf = NULL;
606 .name = "pa",