Hello community, here is the log from the commit of package alsa-plugins for openSUSE:Factory checked in at Tue Dec 22 00:31:08 CET 2009. -------- --- alsa-plugins/alsa-plugins.changes 2009-09-09 14:54:26.000000000 +0200 +++ alsa-plugins/alsa-plugins.changes 2009-12-18 17:37:51.000000000 +0100 @@ -1,0 +2,12 @@ +Fri Dec 18 17:37:41 CET 2009 - tiwai@suse.de + +- set AUTOMAKE_JOBS for parallel automake + +------------------------------------------------------------------- +Fri Dec 18 17:22:38 CET 2009 - tiwai@suse.de + +- updated to version 1.0.22: + * upmix 7.1 channels support + * fixes for a53 with recent libavcodec + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- alsa-plugins-1.0.21.tar.bz2 New: ---- alsa-plugins-1.0.22.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ alsa-plugins.spec ++++++ --- /var/tmp/diff_new_pack.ZCPRjL/_old 2009-12-22 00:28:32.000000000 +0100 +++ /var/tmp/diff_new_pack.ZCPRjL/_new 2009-12-22 00:28:32.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package alsa-plugins (Version 1.0.21) +# spec file for package alsa-plugins (Version 1.0.22) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -34,12 +34,12 @@ %if %build_speex BuildRequires: speex-devel %endif -%define package_version 1.0.21 +%define package_version 1.0.22 Url: http://www.alsa-project.org/ Summary: Extra Plug-Ins for the ALSA Library -Version: 1.0.21 -Release: 2 -License: BSD 3-clause (or similar) ; GPL v2 or later ; LGPL v2.1 or later +Version: 1.0.22 +Release: 1 +License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ Group: System/Libraries AutoReqProv: on %ifarch x86_64 s390x @@ -63,7 +63,7 @@ %package jack Summary: JACK I/O Plug-In for the ALSA Library Group: System/Libraries -License: LGPL v2.1 or later +License: LGPLv2.1+ Requires: jack %ifarch x86_64 s390x Recommends: %{name}-jack-32bit = %{version} @@ -85,7 +85,7 @@ %package pulse Summary: Pulseaudio Plug-In for the ALSA Library Group: System/Libraries -License: GPL v2 or later ; LGPL v2.1 or later +License: GPLv2+ ; LGPLv2.1+ Requires: pulseaudio %ifarch x86_64 s390x Recommends: %{name}-pulse-32bit = %{version} @@ -109,7 +109,7 @@ %package maemo Summary: Maemo Plug-Ins for the ALSA Library Group: System/Libraries -License: LGPL v2.1 or later +License: LGPLv2.1+ %description maemo This package contains the ALSA-library plug-ins using maemo SDK for @@ -124,7 +124,7 @@ %package samplerate Summary: Samplerate Plug-In for the ALSA Library Group: System/Libraries -License: GPL v2 or later +License: GPLv2+ %ifarch x86_64 s390x Recommends: %{name}-samplerate-32bit = %{version} %endif @@ -144,7 +144,7 @@ %package speex Summary: Speex Prerocessor Plug-In for the ALSA Library Group: System/Libraries -License: LGPL v2.1 or later +License: LGPLv2.1+ %ifarch x86_64 s390x Recommends: %{name}-speex-32bit = %{version} %endif @@ -166,6 +166,7 @@ # %patch -p1 %build +export AUTOMAKE_JOBS=%{?jobs:%jobs} autoreconf -fi %configure --enable-maemo-plugin --enable-maemo-resource-manager \ --with-speex=builtin ++++++ alsa-plugins-1.0.21.tar.bz2 -> alsa-plugins-1.0.22.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.21/a52/pcm_a52.c new/alsa-plugins-1.0.22/a52/pcm_a52.c --- old/alsa-plugins-1.0.21/a52/pcm_a52.c 2009-08-31 15:09:41.000000000 +0200 +++ new/alsa-plugins-1.0.22/a52/pcm_a52.c 2009-12-16 16:18:55.000000000 +0100 @@ -170,7 +170,13 @@ static unsigned int ch_index[3][6] = { { 0, 1 }, { 0, 1, 2, 3 }, +#if LIBAVCODEC_VERSION_MAJOR > 52 || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 26) + /* current libavcodec expects SMPTE order */ + { 0, 1, 4, 5, 2, 3 }, +#else + /* libavcodec older than r18540 expects A52 order */ { 0, 4, 1, 2, 3, 5 }, +#endif }; /* flatten copy to n-channel interleaved */ dst_step = io->channels; @@ -430,6 +436,21 @@ rec->avctx->bit_rate = rec->bitrate * 1000; rec->avctx->sample_rate = io->rate; rec->avctx->channels = io->channels; +#if LIBAVCODEC_VERSION_MAJOR > 52 || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 3) + switch (io->channels) { + case 2: + rec->avctx->channel_layout = CH_LAYOUT_STEREO; + break; + case 4: + rec->avctx->channel_layout = CH_LAYOUT_QUAD; + break; + case 6: + rec->avctx->channel_layout = CH_LAYOUT_5POINT1; + break; + default: + break; + } +#endif if (avcodec_open(rec->avctx, rec->codec) < 0) return -EINVAL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.21/configure new/alsa-plugins-1.0.22/configure --- old/alsa-plugins-1.0.21/configure 2009-08-31 15:16:47.000000000 +0200 +++ new/alsa-plugins-1.0.22/configure 2009-12-16 16:28:29.000000000 +0100 @@ -2302,7 +2302,7 @@ # Define the identity of the package. PACKAGE=alsa-plugins - VERSION=1.0.21 + VERSION=1.0.22 cat >>confdefs.h <<_ACEOF diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.21/configure.in new/alsa-plugins-1.0.22/configure.in --- old/alsa-plugins-1.0.21/configure.in 2009-08-31 15:09:41.000000000 +0200 +++ new/alsa-plugins-1.0.22/configure.in 2009-12-16 16:18:55.000000000 +0100 @@ -1,6 +1,6 @@ AC_PREREQ(2.59) AC_INIT(oss/pcm_oss.c) -AM_INIT_AUTOMAKE(alsa-plugins, 1.0.21) +AM_INIT_AUTOMAKE(alsa-plugins, 1.0.22) AC_PREFIX_DEFAULT(/usr) AC_CONFIG_HEADERS(config.h) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.21/mix/pcm_upmix.c new/alsa-plugins-1.0.22/mix/pcm_upmix.c --- old/alsa-plugins-1.0.21/mix/pcm_upmix.c 2009-08-31 15:09:41.000000000 +0200 +++ new/alsa-plugins-1.0.22/mix/pcm_upmix.c 2009-12-16 16:18:55.000000000 +0100 @@ -128,6 +128,20 @@ } } +static void upmix_1_to_71(snd_pcm_upmix_t *mix ATTRIBUTE_UNUSED, + const snd_pcm_channel_area_t *dst_areas, + snd_pcm_uframes_t dst_offset, + const snd_pcm_channel_area_t *src_areas, + snd_pcm_uframes_t src_offset, + snd_pcm_uframes_t size) +{ + int i; + for (i = 0; i < 8; i++) + snd_pcm_area_copy(dst_areas + i, dst_offset, + src_areas, src_offset, + size, SND_PCM_FORMAT_S16); +} + static void upmix_1_to_51(snd_pcm_upmix_t *mix ATTRIBUTE_UNUSED, const snd_pcm_channel_area_t *dst_areas, snd_pcm_uframes_t dst_offset, @@ -156,6 +170,24 @@ size, SND_PCM_FORMAT_S16); } +static void upmix_2_to_71(snd_pcm_upmix_t *mix, + const snd_pcm_channel_area_t *dst_areas, + snd_pcm_uframes_t dst_offset, + const snd_pcm_channel_area_t *src_areas, + snd_pcm_uframes_t src_offset, + snd_pcm_uframes_t size) +{ + snd_pcm_areas_copy(dst_areas, dst_offset, src_areas, src_offset, + 2, size, SND_PCM_FORMAT_S16); + delayed_copy(mix, dst_areas + 2, dst_offset, src_areas, src_offset, + size); + average_copy(dst_areas + 4, dst_offset, src_areas, src_offset, + 2, size); + snd_pcm_areas_copy(dst_areas + 6, dst_offset, src_areas, src_offset, + 2, size, SND_PCM_FORMAT_S16); + +} + static void upmix_2_to_51(snd_pcm_upmix_t *mix, const snd_pcm_channel_area_t *dst_areas, snd_pcm_uframes_t dst_offset, @@ -260,13 +292,26 @@ 6, size, SND_PCM_FORMAT_S16); } -static const upmixer_t do_upmix[6][2] = { - { upmix_1_to_40, upmix_1_to_51 }, - { upmix_2_to_40, upmix_2_to_51 }, - { upmix_3_to_40, upmix_3_to_51 }, - { upmix_4_to_40, upmix_4_to_51 }, - { upmix_4_to_40, upmix_5_to_51 }, - { upmix_4_to_40, upmix_6_to_51 }, +static void upmix_8_to_71(snd_pcm_upmix_t *mix ATTRIBUTE_UNUSED, + const snd_pcm_channel_area_t *dst_areas, + snd_pcm_uframes_t dst_offset, + const snd_pcm_channel_area_t *src_areas, + snd_pcm_uframes_t src_offset, + snd_pcm_uframes_t size) +{ + snd_pcm_areas_copy(dst_areas, dst_offset, src_areas, src_offset, + 8, size, SND_PCM_FORMAT_S16); +} + +static const upmixer_t do_upmix[8][3] = { + { upmix_1_to_40, upmix_1_to_51, upmix_1_to_71 }, + { upmix_2_to_40, upmix_2_to_51, upmix_2_to_71 }, + { upmix_3_to_40, upmix_3_to_51, upmix_3_to_51 }, + { upmix_4_to_40, upmix_4_to_51, upmix_4_to_51 }, + { upmix_4_to_40, upmix_5_to_51, upmix_5_to_51 }, + { upmix_4_to_40, upmix_6_to_51, upmix_6_to_51 }, + { upmix_4_to_40, upmix_6_to_51, upmix_6_to_51 }, + { upmix_4_to_40, upmix_6_to_51, upmix_8_to_71 }, }; static snd_pcm_sframes_t @@ -288,9 +333,18 @@ snd_pcm_upmix_t *mix = (snd_pcm_upmix_t *)ext; int ctype, stype; - stype = (ext->slave_channels == 6) ? 1 : 0; + switch (ext->slave_channels) { + case 6: + stype = 1; + break; + case 8: + stype = 2; + break; + default: + stype = 0; + } ctype = ext->channels - 1; - if (ctype < 0 || ctype > 5) { + if (ctype < 0 || ctype > 7) { SNDERR("Invalid channel numbers for upmix: %d", ctype + 1); return -EINVAL; } @@ -328,7 +382,7 @@ snd_config_iterator_t i, next; snd_pcm_upmix_t *mix; snd_config_t *sconf = NULL; - static const unsigned int chlist[2] = {4, 6}; + static const unsigned int chlist[3] = {4, 6, 8}; unsigned int channels = 0; int delay = 10; int err; @@ -362,8 +416,8 @@ return err; } channels = val; - if (channels != 4 && channels != 6 && channels != 0) { - SNDERR("channels must be 4, 6 or 0"); + if (channels != 4 && channels != 6 && channels != 0 && channels != 8) { + SNDERR("channels must be 4, 6, 8 or 0"); return -EINVAL; } continue; @@ -399,7 +453,7 @@ snd_pcm_extplug_set_param_minmax(&mix->ext, SND_PCM_EXTPLUG_HW_CHANNELS, - 1, 6); + 1, 8); if (channels) snd_pcm_extplug_set_slave_param_minmax(&mix->ext, SND_PCM_EXTPLUG_HW_CHANNELS, @@ -407,7 +461,7 @@ else snd_pcm_extplug_set_slave_param_list(&mix->ext, SND_PCM_EXTPLUG_HW_CHANNELS, - 2, chlist); + 3, chlist); snd_pcm_extplug_set_param(&mix->ext, SND_PCM_EXTPLUG_HW_FORMAT, SND_PCM_FORMAT_S16); snd_pcm_extplug_set_slave_param(&mix->ext, SND_PCM_EXTPLUG_HW_FORMAT, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.21/version new/alsa-plugins-1.0.22/version --- old/alsa-plugins-1.0.21/version 2009-08-31 15:16:54.000000000 +0200 +++ new/alsa-plugins-1.0.22/version 2009-12-16 16:28:35.000000000 +0100 @@ -1 +1 @@ -1.0.21 +1.0.22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org