Changeset 2562:335dc9848c77 in roaraudio for plugins/gstreamer0.10


Ignore:
Timestamp:
09/04/09 02:42:24 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added a-law/mu-law support

File:
1 edited

Legend:

Unmodified
Added
Removed
  • plugins/gstreamer0.10/roarsink.c

    r2561 r2562  
    6767    GST_PAD_ALWAYS, 
    6868    GST_STATIC_CAPS( 
     69        "audio/x-alaw, " 
     70        "rate = (int) [ 1, MAX ], " 
     71        "channels = (int) [ 1, " QM(ROAR_MAX_CHANNELS) " ]; " 
     72 
     73        "audio/x-mulaw, " 
     74        "rate = (int) [ 1, MAX ], " 
     75        "channels = (int) [ 1, " QM(ROAR_MAX_CHANNELS) " ]; " 
     76 
    6977        "audio/x-raw-int, " 
    7078        "endianness = (int) { BIG_ENDIAN, LITTLE_ENDIAN }, " 
     
    268276  GstRoarSink *roarsink = GST_ROARSINK(asink); 
    269277  int codec = ROAR_CODEC_DEFAULT; 
     278  int bits  = spec->depth; 
    270279 
    271280  GST_DEBUG_OBJECT(roarsink, "prepare"); 
     
    294303     } 
    295304    break; 
    296    case GST_BUFTYPE_A_LAW:  codec = ROAR_CODEC_ALAW;    break; 
    297    case GST_BUFTYPE_MU_LAW: codec = ROAR_CODEC_MULAW;   break; 
     305   case GST_BUFTYPE_A_LAW: 
     306     codec = ROAR_CODEC_ALAW; 
     307     bits  = 8; 
     308    break; 
     309   case GST_BUFTYPE_MU_LAW: 
     310     codec = ROAR_CODEC_MULAW; 
     311     bits  = 8; 
     312    break; 
    298313   default: 
    299314     return FALSE; 
    300315  } 
    301316 
    302   roarsink->fd = roar_simple_new_stream(&(roarsink->con), spec->rate, spec->channels, spec->depth, 
     317  roarsink->fd = roar_simple_new_stream(&(roarsink->con), spec->rate, spec->channels, bits, 
    303318                                        codec, ROAR_DIR_PLAY); 
    304319 
Note: See TracChangeset for help on using the changeset viewer.