Changeset 2388:a61fdecf77d0 in roaraudio


Ignore:
Timestamp:
08/16/09 06:26:47 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

SRC resampler need to call over all samples, not only the first ones

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroardsp/convert.c

    r2386 r2388  
    438438 srcdata.src_ratio     = radio; 
    439439 
    440  if ( src_simple(&srcdata, SRC_SINC_FASTEST, channels) != 0 ) { 
     440 if ( src_simple(&srcdata, SRC_ZERO_ORDER_HOLD, channels) != 0 ) { 
    441441  free(outf); 
    442442  free(inf); 
     
    446446 switch (bits) { 
    447447  case  8: 
    448     for (i = 0; i < samples; i++) 
     448    for (i = 0; i < outsamples; i++) 
    449449     *(((int8_t *)out)+i) = outf[i] * 128.0; 
    450450   break; 
    451451  case 16: 
    452     for (i = 0; i < samples; i++) 
     452    for (i = 0; i < outsamples; i++) 
    453453     *(((int16_t*)out)+i) = outf[i] * 32768.0; 
    454454   break; 
    455455  case 32: 
    456     for (i = 0; i < samples; i++) 
     456    for (i = 0; i < outsamples; i++) 
    457457     *(((int32_t*)out)+i) = outf[i] * 2147483648.0; 
    458458   break; 
     
    829829 memcpy(&cinfo, from, sizeof(cinfo)); 
    830830 
     831 ROAR_DBG("roar_conv2(out=%p, in=%p, inlen=%lu, from=%p{...}, to=%p{...}, bufsize=%lu", out, in, inlen, from, to, bufsize); 
     832 
    831833/* 
    832834 if ( in != out ) { 
     
    834836 } else { 
    835837  ROAR_WARN("roar_conv2(*): in==out!"); 
     838  memset(out+inlen, 0xA0, bufsize-inlen); 
    836839 } 
    837840*/ 
Note: See TracChangeset for help on using the changeset viewer.