diff --git a/q6voiced.c b/q6voiced.c index 90876622feac22c962266dc38535071db96d0311..c8d6e133e02a4b2401c242268cff80fbd65c4b98 100644 --- a/q6voiced.c +++ b/q6voiced.c @@ -28,11 +28,10 @@ static void q6voiced_open(struct q6voiced *v) * This should be replaced by a codec2codec link probably. */ v->tx = pcm_open(v->card, v->device, PCM_IN, &pcm_config_voice_call); - if (!pcm_is_ready(v->tx)) - perror("Failed to open tx"); - v->rx = pcm_open(v->card, v->device, PCM_OUT, &pcm_config_voice_call); - if (!pcm_is_ready(v->rx)) + if (!pcm_is_ready(v->tx) || pcm_prepare(v->tx)) + perror("Failed to open tx"); + if (!pcm_is_ready(v->rx) || pcm_prepare(v->rx)) perror("Failed to open rx"); printf("PCM devices were opened.\n");