Changeset 332:a9a4f476683d in roaraudio


Ignore:
Timestamp:
07/25/08 04:00:00 (16 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

seems that I got it working :)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/codecfilter_celt.c

    r331 r332  
    121121// printf("buf=%p, len=%i\n", buf, len); 
    122122 
     123 if ( self->fi_rest ) { 
     124  memcpy(buf, self->i_rest, self->fi_rest); 
     125  r += self->fi_rest; 
     126  self->fi_rest = 0; 
     127 } 
     128 
    123129 while ( r <= (len - self->s_buf) ) { 
    124130  if ( read(fh, &fs, 2) != 2 ) 
     
    132138  cbuf = buf + r; 
    133139 
    134   printf("buf=%p, r=%i // cbuf=%p\n", buf, r, cbuf); 
     140//  printf("buf=%p, r=%i // cbuf=%p\n", buf, r, cbuf); 
    135141  if ( celt_decode(self->decoder, (unsigned char *) self->ibuf, fs, (celt_int16_t *) cbuf) < 0 ) 
    136142   break; 
     
    139145 } 
    140146 
     147 if ( r < len ) { 
     148//  printf("r < len!\n"); 
     149  if ( read(fh, &fs, 2) == 2 ) { 
     150   fs = ROAR_NET2HOST16(fs); 
     151//   printf("next: fs=%i\n", fs); 
     152   if ( read(fh, self->ibuf, fs) == fs ) { 
     153//    printf("got data!\n"); 
     154    if ( celt_decode(self->decoder, (unsigned char *) self->ibuf, fs, (celt_int16_t *) self->obuf) >= 0 ) { 
     155//     printf("{ // decode rest\n"); 
     156//     printf(" r=%i // need %i Bytes\n", r, len - r); 
     157//     printf(" memcpy(buf+%i, self->obuf, %i) = ?\n", r, len - r); 
     158     memcpy(buf+r, self->obuf, len - r); 
     159     self->fi_rest = self->s_buf + r - len; 
     160     memcpy(self->i_rest, self->obuf + len - r, self->fi_rest); 
     161//     printf(" len=%i, r=%i, fi_rest=%i, s_buf=%i\n", len, r, self->fi_rest, self->s_buf); 
     162     r = len; 
     163//     printf("}\n"); 
     164    } 
     165   } 
     166  } 
     167 } 
     168 
     169 printf("cf_celt_read(inst=%p, buf=%p, len=%i) = %i\n", inst, buf, len, r); 
    141170 return r; 
    142171} 
Note: See TracChangeset for help on using the changeset viewer.