diff options
author | 2009-10-21 23:47:36 +0200 | |
---|---|---|
committer | 2009-10-21 23:47:36 +0200 | |
commit | a42678433910b51e10c867d3e9d2a872aa5b4d3f (patch) | |
tree | fc042abc836e5bd012bd537891f38b5dec6f62e2 /palsa.c | |
parent | 1df74c48b7d0890db8a04496d0b11cf3961d67ff (diff) |
fixed alsa regression
Diffstat (limited to 'palsa.c')
-rw-r--r-- | palsa.c | 22 |
1 files changed, 11 insertions, 11 deletions
@@ -65,6 +65,7 @@ palsa_init (void) { exit (-1); } + mutex = mutex_create (); if ((err = snd_pcm_hw_params_malloc (&hw_params)) < 0) { trace ("cannot allocate hardware parameter structure (%s)\n", snd_strerror (err)); @@ -117,6 +118,16 @@ palsa_init (void) { alsa_rate = val; printf ("chosen samplerate: %d Hz\n", alsa_rate); + if ((err = snd_pcm_hw_params_set_channels (audio, hw_params, 2)) < 0) { + trace ("cannot set channel count (%s)\n", + snd_strerror (err)); + goto open_error; + } + + int nchan; + snd_pcm_hw_params_get_channels (hw_params, &nchan); + printf ("alsa channels: %d\n", nchan); + unsigned int buffer_time = 500000; int dir; if ((err = snd_pcm_hw_params_set_buffer_time_near (audio, hw_params, &buffer_time, &dir)) < 0) { @@ -132,16 +143,6 @@ palsa_init (void) { trace ("alsa buffer size: %d frames\n", size); bufsize = size; - if ((err = snd_pcm_hw_params_set_channels (audio, hw_params, 2)) < 0) { - trace ("cannot set channel count (%s)\n", - snd_strerror (err)); - goto open_error; - } - - int nchan; - snd_pcm_hw_params_get_channels (hw_params, &nchan); - printf ("alsa channels: %d\n", nchan); - if ((err = snd_pcm_hw_params (audio, hw_params)) < 0) { trace ("cannot set parameters (%s)\n", snd_strerror (err)); @@ -207,7 +208,6 @@ palsa_init (void) { } alsa_terminate = 0; - mutex = mutex_create (); alsa_tid = thread_start (palsa_thread, 0); return 0; |