Revision d929eba5 audio/fmodaudio.c

b/audio/fmodaudio.c
358 358
{
359 359
    int bits16, mode, channel;
360 360
    FMODVoiceOut *fmd = (FMODVoiceOut *) hw;
361
    audsettings_t obt_as = *as;
361 362

  
362 363
    mode = aud_to_fmodfmt (as->fmt, as->nchannels == 2 ? 1 : 0);
363 364
    fmd->fmod_sample = FSOUND_Sample_Alloc (
......
384 385
    fmd->channel = channel;
385 386

  
386 387
    /* FMOD always operates on little endian frames? */
387
    audio_pcm_init_info (&hw->info, as, audio_need_to_swap_endian (0));
388
    obt_as.endianness = 0;
389
    audio_pcm_init_info (&hw->info, &obt_as);
388 390
    bits16 = (mode & FSOUND_16BITS) != 0;
389 391
    hw->samples = conf.nb_samples;
390 392
    return 0;
......
418 420
{
419 421
    int bits16, mode;
420 422
    FMODVoiceIn *fmd = (FMODVoiceIn *) hw;
423
    audsettings_t obt_as = *as;
421 424

  
422 425
    if (conf.broken_adc) {
423 426
        return -1;
......
440 443
    }
441 444

  
442 445
    /* FMOD always operates on little endian frames? */
443
    audio_pcm_init_info (&hw->info, as, audio_need_to_swap_endian (0));
446
    obt_as.endianness = 0;
447
    audio_pcm_init_info (&hw->info, &obt_as);
444 448
    bits16 = (mode & FSOUND_16BITS) != 0;
445 449
    hw->samples = conf.nb_samples;
446 450
    return 0;

Also available in: Unified diff