Changeset 2561:5e4969de3dc9 in roaraudio for plugins/gstreamer0.10
- Timestamp:
- 09/04/09 02:36:02 (15 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
plugins/gstreamer0.10/roarsink.c
r2560 r2561 68 68 GST_STATIC_CAPS( 69 69 "audio/x-raw-int, " 70 "endianness = (int) BYTE_ORDER, "71 "signed = (boolean) TRUE, "70 "endianness = (int) { BIG_ENDIAN, LITTLE_ENDIAN }, " 71 "signed = (boolean) { true, false }, " 72 72 "width = (int) 32, " 73 73 "depth = (int) 32, " … … 76 76 77 77 "audio/x-raw-int, " 78 "endianness = (int) BYTE_ORDER, "79 "signed = (boolean) TRUE, "78 "endianness = (int) { BIG_ENDIAN, LITTLE_ENDIAN }, " 79 "signed = (boolean) { true, false }, " 80 80 "width = (int) 24, " 81 81 "depth = (int) 24, " … … 84 84 85 85 "audio/x-raw-int, " 86 "endianness = (int) BYTE_ORDER, "87 "signed = (boolean) TRUE, "86 "endianness = (int) { BIG_ENDIAN, LITTLE_ENDIAN }, " 87 "signed = (boolean) { true, false }, " 88 88 "width = (int) 16, " 89 89 "depth = (int) 16, " … … 267 267 static gboolean gst_roarsink_prepare (GstAudioSink * asink, GstRingBufferSpec * spec) { 268 268 GstRoarSink *roarsink = GST_ROARSINK(asink); 269 int codec = ROAR_CODEC_DEFAULT; 269 270 270 271 GST_DEBUG_OBJECT(roarsink, "prepare"); … … 273 274 GST_INFO_OBJECT(roarsink, "attempting to open data connection to esound server"); 274 275 276 switch (spec->type) { 277 case GST_BUFTYPE_LINEAR: 278 switch (spec->sign) { 279 case TRUE: 280 switch (spec->bigend) { 281 case TRUE: codec = ROAR_CODEC_PCM_S_BE; break; 282 case FALSE: codec = ROAR_CODEC_PCM_S_LE; break; 283 default: return FALSE; break; 284 } 285 break; 286 case FALSE: 287 switch (spec->bigend) { 288 case TRUE: codec = ROAR_CODEC_PCM_U_BE; break; 289 case FALSE: codec = ROAR_CODEC_PCM_U_LE; break; 290 default: return FALSE; break; 291 } 292 break; 293 default: return FALSE; break; 294 } 295 break; 296 case GST_BUFTYPE_A_LAW: codec = ROAR_CODEC_ALAW; break; 297 case GST_BUFTYPE_MU_LAW: codec = ROAR_CODEC_MULAW; break; 298 default: 299 return FALSE; 300 } 301 275 302 roarsink->fd = roar_simple_new_stream(&(roarsink->con), spec->rate, spec->channels, spec->depth, 276 ROAR_CODEC_DEFAULT, ROAR_DIR_PLAY);303 codec, ROAR_DIR_PLAY); 277 304 278 305 if ( roarsink->fd == -1 )
Note: See TracChangeset
for help on using the changeset viewer.