snd_pcm_writei() rauscht und knackt periodisch
Verfasst: Fr Nov 11, 2011 12:42 pm
				
				Hallo, 
ich habe folgendes Problem unter Ubuntu mit meiner Sound Routine !
nach der Initialisierung 
schreibe ich in einem Thread Audiodaten auf die Karte.
es funktioniert auch, und ich kann die Audiodaten hören. aber ein periodisches Knacken ( + rauschen) ist auch im Hintergrund zu hören. 
hat jemand Erfahrung mit der ALsa und kann jemand mir einen Tip geben?
Danke
			ich habe folgendes Problem unter Ubuntu mit meiner Sound Routine !
nach der Initialisierung
Code: Alles auswählen
void init()
{
int err = 0;
   err = snd_pcm_hw_params_any(pcmPlaybackHandle, hw_params);
    if(err < 0) { REPORT_(a1.sprintf("Error setting HW params: %s",snd_strerror(err)));   Assert(false); }
    err = snd_pcm_hw_params_set_format(pcmPlaybackHandle, hw_params, SND_PCM_FORMAT_S16_LE);
    if(err < 0) { REPORT_(a1.sprintf("Error setting HW params: %s",snd_strerror(err)));   Assert(false); }
    err = snd_pcm_hw_params_set_channels(pcmPlaybackHandle, hw_params, Audio_channels);
    if(err < 0) { REPORT_(a1.sprintf("Error setting HW params: %s",snd_strerror(err)));   Assert(false); }
    err = snd_pcm_hw_params_set_rate_near(pcmPlaybackHandle, hw_params, &Audio_Samplerate,0);  
    if(err < 0) { REPORT_(a1.sprintf("Error setting HW params: %s",snd_strerror(err)));   Assert(false); }
    err = snd_pcm_hw_params_set_periods_near(pcmPlaybackHandle, hw_params, &Audio_fragments, 0);
    if(err < 0) { REPORT_(a1.sprintf("Error setting HW params: %s",snd_strerror(err)));   Assert(false); }
    err = snd_pcm_hw_params_set_buffer_size_near(pcmPlaybackHandle, hw_params, &Audio_frames));
    if(err < 0) { REPORT_(a1.sprintf("Error setting HW params: %s",snd_strerror(err)));   Assert(false); }
    err = snd_pcm_hw_params(pcmPlaybackHandle, hw_params);
    if(err < 0) { REPORT_(a1.sprintf("Error setting HW params: %s",snd_strerror(err)));   Assert(false); }
}
schreibe ich in einem Thread Audiodaten auf die Karte.
Code: Alles auswählen
       
      snd_pcm_prepare(pcmPlaybackHandle);
      snd_pcm_writei(pcmPlaybackHandle,AudioData, Audio_BufferSize);
hat jemand Erfahrung mit der ALsa und kann jemand mir einen Tip geben?
Danke