diff --git a/spa/plugins/audioconvert/fmtconvert.c b/spa/plugins/audioconvert/fmtconvert.c index 444e98d2b..34935535b 100644 --- a/spa/plugins/audioconvert/fmtconvert.c +++ b/spa/plugins/audioconvert/fmtconvert.c @@ -398,7 +398,7 @@ static int port_enum_formats(void *object, info.info.raw.format == SPA_AUDIO_FORMAT_F32P || info.info.raw.format == SPA_AUDIO_FORMAT_F32) { spa_pod_builder_add(builder, - SPA_FORMAT_AUDIO_format, SPA_POD_CHOICE_ENUM_Id(20, + SPA_FORMAT_AUDIO_format, SPA_POD_CHOICE_ENUM_Id(22, info.info.raw.format, SPA_AUDIO_FORMAT_F32P, SPA_AUDIO_FORMAT_F32, @@ -418,7 +418,9 @@ static int port_enum_formats(void *object, SPA_AUDIO_FORMAT_S8P, SPA_AUDIO_FORMAT_S8, SPA_AUDIO_FORMAT_U8P, - SPA_AUDIO_FORMAT_U8), + SPA_AUDIO_FORMAT_U8, + SPA_AUDIO_FORMAT_ULAW, + SPA_AUDIO_FORMAT_ALAW), 0); } else { spa_pod_builder_add(builder, @@ -601,6 +603,8 @@ static int calc_width(struct spa_audio_info *info) case SPA_AUDIO_FORMAT_U8: case SPA_AUDIO_FORMAT_S8P: case SPA_AUDIO_FORMAT_S8: + case SPA_AUDIO_FORMAT_ALAW: + case SPA_AUDIO_FORMAT_ULAW: return 1; case SPA_AUDIO_FORMAT_S16P: case SPA_AUDIO_FORMAT_S16: diff --git a/spa/plugins/audioconvert/merger.c b/spa/plugins/audioconvert/merger.c index 5e5590f2a..348bb4c3e 100644 --- a/spa/plugins/audioconvert/merger.c +++ b/spa/plugins/audioconvert/merger.c @@ -691,7 +691,7 @@ static int port_enum_formats(void *object, SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat, SPA_FORMAT_mediaType, SPA_POD_Id(SPA_MEDIA_TYPE_audio), SPA_FORMAT_mediaSubtype, SPA_POD_Id(SPA_MEDIA_SUBTYPE_raw), - SPA_FORMAT_AUDIO_format, SPA_POD_CHOICE_ENUM_Id(20, + SPA_FORMAT_AUDIO_format, SPA_POD_CHOICE_ENUM_Id(22, SPA_AUDIO_FORMAT_F32P, SPA_AUDIO_FORMAT_F32P, SPA_AUDIO_FORMAT_F32, @@ -710,8 +710,10 @@ static int port_enum_formats(void *object, SPA_AUDIO_FORMAT_S16_OE, SPA_AUDIO_FORMAT_S8P, SPA_AUDIO_FORMAT_S8, + SPA_AUDIO_FORMAT_U8P, SPA_AUDIO_FORMAT_U8, - SPA_AUDIO_FORMAT_U8P), + SPA_AUDIO_FORMAT_ULAW, + SPA_AUDIO_FORMAT_ALAW), SPA_FORMAT_AUDIO_rate, SPA_POD_CHOICE_RANGE_Int( rate, 1, INT32_MAX), SPA_FORMAT_AUDIO_channels, SPA_POD_CHOICE_RANGE_Int( @@ -912,6 +914,8 @@ static int calc_width(struct spa_audio_info *info) case SPA_AUDIO_FORMAT_U8P: case SPA_AUDIO_FORMAT_S8: case SPA_AUDIO_FORMAT_S8P: + case SPA_AUDIO_FORMAT_ULAW: + case SPA_AUDIO_FORMAT_ALAW: return 1; case SPA_AUDIO_FORMAT_S16P: case SPA_AUDIO_FORMAT_S16: diff --git a/spa/plugins/audioconvert/splitter.c b/spa/plugins/audioconvert/splitter.c index 40191cf59..55b4d3452 100644 --- a/spa/plugins/audioconvert/splitter.c +++ b/spa/plugins/audioconvert/splitter.c @@ -445,7 +445,7 @@ static int port_enum_formats(void *object, SPA_TYPE_OBJECT_Format, SPA_PARAM_EnumFormat, SPA_FORMAT_mediaType, SPA_POD_Id(SPA_MEDIA_TYPE_audio), SPA_FORMAT_mediaSubtype, SPA_POD_Id(SPA_MEDIA_SUBTYPE_raw), - SPA_FORMAT_AUDIO_format, SPA_POD_CHOICE_ENUM_Id(20, + SPA_FORMAT_AUDIO_format, SPA_POD_CHOICE_ENUM_Id(22, SPA_AUDIO_FORMAT_F32P, SPA_AUDIO_FORMAT_F32P, SPA_AUDIO_FORMAT_F32, @@ -465,7 +465,9 @@ static int port_enum_formats(void *object, SPA_AUDIO_FORMAT_S8P, SPA_AUDIO_FORMAT_S8, SPA_AUDIO_FORMAT_U8P, - SPA_AUDIO_FORMAT_U8), + SPA_AUDIO_FORMAT_U8, + SPA_AUDIO_FORMAT_ULAW, + SPA_AUDIO_FORMAT_ALAW), SPA_FORMAT_AUDIO_rate, SPA_POD_CHOICE_RANGE_Int( rate, 1, INT32_MAX), SPA_FORMAT_AUDIO_channels, SPA_POD_CHOICE_RANGE_Int( @@ -667,6 +669,8 @@ static int calc_width(struct spa_audio_info *info) case SPA_AUDIO_FORMAT_U8P: case SPA_AUDIO_FORMAT_S8: case SPA_AUDIO_FORMAT_S8P: + case SPA_AUDIO_FORMAT_ULAW: + case SPA_AUDIO_FORMAT_ALAW: return 1; case SPA_AUDIO_FORMAT_S16P: case SPA_AUDIO_FORMAT_S16: