Blob Blame History Raw
Name:           alsa-plugins
Version:        1.0.15
Release:        4%{?dist}
Summary:        The Advanced Linux Sound Architecture (ALSA) Plugins
# All packages are LGPLv2+ with the exception of samplerate which is GPLv2+
License:        GPLv2+ and LGPLv2+
Group:          System Environment/Libraries
URL:            http://www.alsa-project.org/
Source0:        ftp://ftp.alsa-project.org/pub/plugins/%{name}-%{version}.tar.bz2
Source1:        jack.conf
Source2:        pcm-oss.conf
Source4:        samplerate.conf
Source5:        upmix.conf
Source6:        vdownmix.conf
Source7:        pulse-default.conf
Patch0:         1.0.14-buffer-attr.patch
Patch1:         1.0.14-state-xrun.patch
Patch2:         1.0.14-pulse-SND_PCM_STATE_PREPARED.patch
Patch3:         alsa-plugins-1.0.15-pulsehint.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  alsa-lib-devel

%description
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
functionality to the Linux operating system.

This package includes plugins for ALSA.

%package jack
Requires:       jack-audio-connection-kit
BuildRequires:  jack-audio-connection-kit-devel
Summary:        Jack PCM output plugin for ALSA
Group:          System Environment/Libraries
License:        LGPLv2+
%description jack
This plugin converts the ALSA API over JACK (Jack Audio Connection
Kit, http://jackit.sf.net) API.  ALSA native applications can work
transparently together with jackd for both playback and capture.

    ALSA apps (playback) -> ALSA-lib -> JACK plugin -> JACK daemon
    ALSA apps (capture) <- ALSA-lib <- JACK plugin <- JACK daemon

This plugin provides the PCM type "jack"

%package oss
BuildRequires:  alsa-lib-devel
Summary:        Oss PCM output plugin for ALSA
Group:          System Environment/Libraries
License:        LGPLv2+ 
%description oss
This plugin converts the ALSA API over OSS API.  With this plugin,
ALSA native apps can run on OSS drivers.

This plugin provides the PCM type "oss".

%package pulseaudio
BuildRequires:  pulseaudio-lib-devel
Requires:       pulseaudio
Summary:        Alsa to PulseAudio backend
Group:          System Environment/Libraries
License:        LGPLv2+
%description pulseaudio
This plugin allows any program that uses the ALSA API to access a PulseAudio
sound daemon. In other words, native ALSA applications can play and record
sound across a network. There are two plugins in the suite, one for PCM and
one for mixer control.

%package samplerate
BuildRequires:  libsamplerate-devel
Summary:        External rate converter plugin for ALSA
Group:          System Environment/Libraries
License:        GPLv2+
%description samplerate
This plugin is an external rate converter using libsamplerate by Erik de
Castro Lopo.

%package upmix
BuildRequires:  libsamplerate-devel
Summary:        Upmixer channel expander plugin for ALSA
Group:          System Environment/Libraries
License:        LGPLv2+
%description upmix
The upmix plugin is an easy-to-use plugin for upmixing to 4 or
6-channel stream.  The number of channels to be expanded is determined
by the slave PCM or explicitly via channel option.

%package vdownmix
BuildRequires:  libsamplerate-devel
Summary:        Downmixer to stereo plugin for ALSA
Group:          System Environment/Libraries
License:        LGPLv2+
%description vdownmix
The vdownmix plugin is a downmixer from 4-6 channels to 2-channel
stereo headphone output.  This plugin processes the input signals with
a simple spacialization, so the output sounds like a kind of "virtual
surround".

%prep
%setup -q -n %{name}-%{version}
%patch0 -p1 -b .buffer_attr
%patch1 -p1 -b .state_xrun
%patch2 -p1 -b .pulse-SND_PCM_STATE_PREPARED
%patch3 -p1 -b .pulsehint

%build
%configure --disable-static \
           --without-speex
make %{?_smp_mflags}

%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT

install -d ${RPM_BUILD_ROOT}%{_sysconfdir}/alsa/pcm
install -m 644 %SOURCE1 %SOURCE2 \
               %SOURCE4 %SOURCE5 %SOURCE6 \
                   ${RPM_BUILD_ROOT}%{_sysconfdir}/alsa/pcm
install -m 644 %SOURCE7 \
                   ${RPM_BUILD_ROOT}%{_sysconfdir}/alsa

find $RPM_BUILD_ROOT -name "*.la" -exec rm {} \;

# Removing the maemo plugins
find $RPM_BUILD_ROOT \( -name libasound_module_ctl_dsp_ctl.so -o \
                        -name libasound_module_pcm_alsa_dsp.so \) -exec rm {} \;

%clean
rm -rf $RPM_BUILD_ROOT

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%files jack
%defattr(-,root,root,-)
%doc COPYING COPYING.GPL doc/README-jack
%config(noreplace) %{_sysconfdir}/alsa/pcm/jack.conf
%{_libdir}/alsa-lib/libasound_module_pcm_jack.so

%files oss
%defattr(-,root,root,-)
%doc COPYING COPYING.GPL doc/README-pcm-oss
%config(noreplace) %{_sysconfdir}/alsa/pcm/pcm-oss.conf
%{_libdir}/alsa-lib/libasound_module_ctl_oss.so
%{_libdir}/alsa-lib/libasound_module_pcm_oss.so

%files pulseaudio
%defattr(-,root,root,-)
%doc COPYING COPYING.GPL doc/README-pulse
%config(noreplace) %{_sysconfdir}/alsa/pulse-default.conf
%{_libdir}/alsa-lib/libasound_module_pcm_pulse.so
%{_libdir}/alsa-lib/libasound_module_ctl_pulse.so

%files samplerate
%defattr(-,root,root,-)
%doc COPYING COPYING.GPL doc/samplerate.txt
%config(noreplace) %{_sysconfdir}/alsa/pcm/samplerate.conf
%{_libdir}/alsa-lib/libasound_module_rate_samplerate.so
%{_libdir}/alsa-lib/libasound_module_rate_samplerate_best.so
%{_libdir}/alsa-lib/libasound_module_rate_samplerate_linear.so
%{_libdir}/alsa-lib/libasound_module_rate_samplerate_medium.so
%{_libdir}/alsa-lib/libasound_module_rate_samplerate_order.so

%files upmix
%defattr(-,root,root,-)
%doc COPYING COPYING.GPL doc/upmix.txt
%config(noreplace) %{_sysconfdir}/alsa/pcm/upmix.conf
%{_libdir}/alsa-lib/libasound_module_pcm_upmix.so

%files vdownmix
%defattr(-,root,root,-)
%doc COPYING COPYING.GPL doc/vdownmix.txt
%config(noreplace) %{_sysconfdir}/alsa/pcm/vdownmix.conf
%{_libdir}/alsa-lib/libasound_module_pcm_vdownmix.so

%changelog
* Tue Mar 04 2008 Lubomir Kundrak <lkundrak@redhat.com> - 1.0.15-4
- Be more heplful when there's PulseAudio trouble.
- This may save us some bogus bug reports

* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.0.15-3
- Autorebuild for GCC 4.3

* Fri Jan 18 2008 Eric Moret <eric.moret@epita.fr> - 1.0.15-2
- Update to upstream 1.0.15 (#429249)
- Add "Requires: pulseaudio" to alsa-plugins-pulseaudio (#368891)
- Fix pulse_hw_params() when state is SND_PCM_STATE_PREPARED (#428030)
- run /sbin/ldconfig on post and postun macros

* Thu Oct 18 2007 Lennart Poettering <lpoetter@redhat.com> - 1.0.14-6
- Merge the whole /etc/alsa/pcm/pulseaudio.conf stuff into
  /etc/alsa/pulse-default.conf, because the former is practically
  always ignored, since it is not referenced for inclusion by any other
  configuration file fragment (#251943)
  The other fragments installed in /etc/alsa/pcm/ are useless, too. But
  since we are in a freeze and they are not that important, I am not fixing
  this now.

* Wed Oct 17 2007 Lennart Poettering <lpoetter@redhat.com> - 1.0.14-5
- Split pulse.conf into two, so that we can load one part from
  form /etc/alsa/alsa.conf. (#251943)

* Mon Oct 1 2007 Lennart Poettering <lpoetter@redhat.com> - 1.0.14-4
- In the pulse plugin: reflect the XRUN state back to the application.
  Makes XMMS work on top of the alsa plugin. (#307341)

* Mon Sep 24 2007 Lennart Poettering <lpoetter@redhat.com> - 1.0.14-3
- Change PulseAudio buffering defaults to more sane values

* Tue Aug 14 2007 Eric Moret <eric.moret@epita.fr> - 1.0.14-2
- Adding pulse as ALSA "default" pcm and ctl when the alsa-plugins-pulseaudio
package is installed, fixing #251943.

* Mon Jul 23 2007 Eric Moret <eric.moret@epita.fr> - 1.0.14-1
- update to upstream 1.0.14
- use configure --without-speex instead of patches to remove a52

* Tue Mar 13 2007 Matej Cepl <mcepl@redhat.com> - 1.0.14-0.3.rc2
- Really remove a52 plugin package (including changes in
  configure and configure.in)

* Thu Feb 15 2007 Eric Moret <eric.moret@epita.fr> 1.0.14-0.2.rc2
- Adding configuration files
- Removing a52 plugin package

* Wed Jan 10 2007 Eric Moret <eric.moret@epita.fr> 1.0.14-0.1.rc2
- Initial package for Fedora