[Bug 14717] resampled sound is horrible

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Feb 10 19:41:47 CST 2011


http://bugs.winehq.org/show_bug.cgi?id=14717

--- Comment #135 from Raymond <superquad.vortex2 at gmail.com> 2011-02-10 19:41:45 CST ---
if you were talking about ens1371 (SB PCI 128) , the problem is related to the
rate constraint

you cannot get exactly 11025 Hz, 22050 Hz and 44100Hz, 

  stream       : PLAYBACK
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 22050
  exact rate   : 22050.9 (722565000/32768)
  msbits       : 16
  buffer_size  : 11025
  period_size  : 2756
  period_time  : 124988





static struct snd_ratden es1371_dac_clock = {
    .num_min = 3000 * (1 << 15),
    .num_max = 48000 * (1 << 15),
    .num_step = 3000,
    .den = 1 << 15,
};
static struct snd_pcm_hw_constraint_ratdens snd_es1371_hw_constraints_dac_clock
= {
    .nrats = 1,
    .rats = &es1371_dac_clock,
};
static struct snd_ratnum es1371_adc_clock = {
    .num = 48000 << 15,
    .den_min = 32768, 
    .den_max = 393216,
    .den_step = 1,
};
static struct snd_pcm_hw_constraint_ratnums snd_es1371_hw_constraints_adc_clock
= {
    .nrats = 1,
    .rats = &es1371_adc_clock,
};


static struct snd_pcm_hardware snd_ensoniq_playback1 =
{
    .info =            (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED |
                 SNDRV_PCM_INFO_BLOCK_TRANSFER |
                 SNDRV_PCM_INFO_MMAP_VALID |
                 SNDRV_PCM_INFO_PAUSE | SNDRV_PCM_INFO_SYNC_START),
    .formats =        SNDRV_PCM_FMTBIT_U8 | SNDRV_PCM_FMTBIT_S16_LE,
    .rates =
#ifndef CHIP1370
                SNDRV_PCM_RATE_CONTINUOUS | SNDRV_PCM_RATE_8000_48000,
#else
                (SNDRV_PCM_RATE_KNOT |     /* 5512Hz rate */
                 SNDRV_PCM_RATE_11025 | SNDRV_PCM_RATE_22050 | 
                 SNDRV_PCM_RATE_44100),
#endif
    .rate_min =        4000,
    .rate_max =        48000,
    .channels_min =        1,
    .channels_max =        2,
    .buffer_bytes_max =    (128*1024),
    .period_bytes_min =    64,
    .period_bytes_max =    (128*1024),
    .periods_min =        1,
    .periods_max =        1024,
    .fifo_size =        0,
};

static struct snd_pcm_hardware snd_ensoniq_playback2 =
{
    .info =            (SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_INTERLEAVED |
                 SNDRV_PCM_INFO_BLOCK_TRANSFER |
                 SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_PAUSE | 
                 SNDRV_PCM_INFO_SYNC_START),
    .formats =        SNDRV_PCM_FMTBIT_U8 | SNDRV_PCM_FMTBIT_S16_LE,
    .rates =        SNDRV_PCM_RATE_CONTINUOUS | SNDRV_PCM_RATE_8000_48000,
    .rate_min =        4000,
    .rate_max =        48000,
    .channels_min =        1,
    .channels_max =        2,
    .buffer_bytes_max =    (128*1024),
    .period_bytes_min =    64,
    .period_bytes_max =    (128*1024),
    .periods_min =        1,
    .periods_max =        1024,
    .fifo_size =        0,
};

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list