/[qemu]/qemu/audio/sdlaudio.c
ViewVC logotype

Diff of /qemu/audio/sdlaudio.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.5 by bellard, Sun Oct 30 18:58:22 2005 UTC revision 1.6 by bellard, Sat Nov 5 18:55:27 2005 UTC
# Line 303  static void sdl_fini_out (HWVoiceOut *hw Line 303  static void sdl_fini_out (HWVoiceOut *hw
303      sdl_close (&glob_sdl);      sdl_close (&glob_sdl);
304  }  }
305    
306  static int sdl_init_out (HWVoiceOut *hw, int freq, int nchannels, audfmt_e fmt)  static int sdl_init_out (HWVoiceOut *hw, audsettings_t *as)
307  {  {
308      SDLVoiceOut *sdl = (SDLVoiceOut *) hw;      SDLVoiceOut *sdl = (SDLVoiceOut *) hw;
309      SDLAudioState *s = &glob_sdl;      SDLAudioState *s = &glob_sdl;
# Line 312  static int sdl_init_out (HWVoiceOut *hw, Line 312  static int sdl_init_out (HWVoiceOut *hw,
312      int endianess;      int endianess;
313      int err;      int err;
314      audfmt_e effective_fmt;      audfmt_e effective_fmt;
315        audsettings_t obt_as;
316    
317      if (nchannels != 2) {      shift <<= as->nchannels == 2;
         dolog ("Can not init DAC. Bogus channel count %d\n", nchannels);  
         return -1;  
     }  
318    
319      req.freq = freq;      req.freq = as->freq;
320      req.format = aud_to_sdlfmt (fmt, &shift);      req.format = aud_to_sdlfmt (as->fmt, &shift);
321      req.channels = nchannels;      req.channels = as->nchannels;
322      req.samples = conf.nb_samples;      req.samples = conf.nb_samples;
     shift <<= nchannels == 2;  
   
323      req.callback = sdl_callback;      req.callback = sdl_callback;
324      req.userdata = sdl;      req.userdata = sdl;
325    
# Line 337  static int sdl_init_out (HWVoiceOut *hw, Line 333  static int sdl_init_out (HWVoiceOut *hw,
333          return -1;          return -1;
334      }      }
335    
336        obt_as.freq = obt.freq;
337        obt_as.nchannels = obt.channels;
338        obt_as.fmt = effective_fmt;
339    
340      audio_pcm_init_info (      audio_pcm_init_info (
341          &hw->info,          &hw->info,
342          obt.freq,          &obt_as,
         obt.channels,  
         effective_fmt,  
343          audio_need_to_swap_endian (endianess)          audio_need_to_swap_endian (endianess)
344          );          );
345      hw->bufsize = obt.samples << shift;      hw->samples = obt.samples;
346    
347      s->initialized = 1;      s->initialized = 1;
348      s->exit = 0;      s->exit = 0;

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26