Changeset 325:238cef78b66d in roaraudio


Ignore:
Timestamp:
07/25/08 02:32:09 (16 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

done some basic stuff for CELT

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/codecfilter_celt.c

    r324 r325  
    77                                            struct roar_codecfilter   * filter) { 
    88 struct codecfilter_celt_inst * self = malloc(sizeof(struct codecfilter_celt_inst)); 
     9 struct roar_stream * s = (struct roar_stream *) info; 
    910 
    1011 if ( !self ) 
    1112  return -1; 
    1213 
     14/* 
     15 CELTMode * mode; 
     16 CELTEncoder * encoder; 
     17 CELTDecoder * decoder; 
     18 int frame_size; 
     19 int lookahead; 
     20 int out_size; 
     21 char * ibuf; 
     22 char * obuf; 
     23 char * rest; 
     24 int s_buf; 
     25 int f_rest; /-* how much is in rest? *-/ 
     26*/ 
     27 
    1328 self->stream               = info; 
     29 self->frame_size           = 256; 
     30 self->lookahead            = self->frame_size; 
     31 self->mode                 = celt_mode_create(s->info.rate, s->info.channels, self->frame_size, self->lookahead, NULL); 
     32 self->encoder              = NULL; 
     33 self->decoder              = NULL; 
     34 
     35 if ( !self->mode ) { 
     36  free(self); 
     37  return -1; 
     38 } 
     39 
     40 if ( s->dir == ROAR_DIR_PLAY ) { 
     41   self->decoder = celt_decoder_create(self->mode); 
     42 } else if ( s->dir == ROAR_DIR_MONITOR ) { 
     43   self->encoder = celt_encoder_create(self->mode); 
     44 } else { 
     45  celt_mode_destroy(self->mode); 
     46  free(self); 
     47  return -1; 
     48 } 
    1449 
    1550 *inst = (CODECFILTER_USERDATA_T) self; 
     
    2560 if ( !inst ) 
    2661  return -1; 
     62 
     63 if ( self->encoder ) 
     64 celt_encoder_destroy(self->encoder); 
     65 
     66 if ( self->decoder ) 
     67 celt_decoder_destroy(self->decoder); 
     68 
     69 if ( self->mode ) 
     70  celt_mode_destroy(self->mode); 
    2771 
    2872 free(inst); 
Note: See TracChangeset for help on using the changeset viewer.