commit 6cb671405ba71ac1b99419a821b434ae3a5efa0d202bda8c2515cec77e28d1ef Author: Dominique Leuenberger Date: Sat Jun 2 10:11:46 2018 +0000 Accepting request 613231 from GNOME:Factory New package, currently maintained by the GNOME team OBS-URL: https://build.opensuse.org/request/show/613231 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pipewire?expand=0&rev=1 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/manpages.tar.xz b/manpages.tar.xz new file mode 100644 index 0000000..ffb6464 --- /dev/null +++ b/manpages.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9da399ec9774cc3bcd0954dadbc3bd1adfed78bbe5a12b054a1ecd23b8febf4 +size 1860 diff --git a/pipewire-0.1.9.tar.gz b/pipewire-0.1.9.tar.gz new file mode 100644 index 0000000..a114500 --- /dev/null +++ b/pipewire-0.1.9.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7dc591d60c3544f3c24b2b0ab1db458991dd69d0610337fd0accf136373916b +size 408799 diff --git a/pipewire.changes b/pipewire.changes new file mode 100644 index 0000000..8a1325b --- /dev/null +++ b/pipewire.changes @@ -0,0 +1,5 @@ +------------------------------------------------------------------- +Tue Mar 13 04:27:43 UTC 2018 - luc14n0@linuxmail.org + +- Initial package, version 0.1.9. + diff --git a/pipewire.spec b/pipewire.spec new file mode 100644 index 0000000..790e0bf --- /dev/null +++ b/pipewire.spec @@ -0,0 +1,294 @@ +# +# spec file for package pipewire +# +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 Luciano Santos, luc14n0@linuxmail.org. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +%define libpipewire libpipewire-0_1-0 +%define libspa libspa-lib0 +Name: pipewire +Version: 0.1.9 +Release: 0 +Summary: A Multimedia Framework designed to be an audio and video server and more +License: LGPL-2.1-or-later +Group: Development/Libraries/C and C++ +URL: https://pipewire.org/ +Source0: https://github.com/PipeWire/pipewire/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +Source1: manpages.tar.xz +BuildRequires: doxygen +BuildRequires: meson +BuildRequires: pkgconfig +BuildRequires: pkgconfig(alsa) +BuildRequires: pkgconfig(dbus-1) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(gio-unix-2.0) +BuildRequires: pkgconfig(glib-2.0) >= 2.32.0 +BuildRequires: pkgconfig(gmodule-2.0) +BuildRequires: pkgconfig(gobject-2.0) +BuildRequires: pkgconfig(gstreamer-1.0) +BuildRequires: pkgconfig(gstreamer-allocators-1.0) +BuildRequires: pkgconfig(gstreamer-audio-1.0) +BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) +BuildRequires: pkgconfig(gstreamer-video-1.0) +BuildRequires: pkgconfig(jack) >= 1.9.10 +BuildRequires: pkgconfig(libavcodec) +BuildRequires: pkgconfig(libavfilter) +BuildRequires: pkgconfig(libavformat) +BuildRequires: pkgconfig(libudev) +BuildRequires: pkgconfig(libv4l2) +BuildRequires: pkgconfig(libva) +BuildRequires: pkgconfig(sbc) +BuildRequires: pkgconfig(sdl2) +BuildRequires: pkgconfig(systemd) +BuildRequires: pkgconfig(x11) +Requires: %{libpipewire} = %{version} +Requires: %{libspa} = %{version} +Requires: %{name}-modules = %{version} +Requires: %{name}-spa-tools = %{version} +Requires: %{name}-tools = %{version} +Recommends: %{name}-spa-plugins = %{version} + +%description +PipeWire is a server and user space API to deal with multimedia pipelines. + +Some of its features include: + + * Capture and playback of audio and video with minimal latency; + * Real-time Multimedia processing on audio and video; + * Multiprocess architecture to let applications share multimedia content; + * GStreamer plugins for easy use and integration in current applications; + * Sandboxed applications support. + +%package -n %{libpipewire} +Summary: A Multimedia Framework designed to be an audio and video server and more +Group: System/Libraries + +%description -n %{libpipewire} +PipeWire is a server and user space API to deal with multimedia pipelines. + +Some of its features include: + + * Capture and playback of audio and video with minimal latency; + * Real-time Multimedia processing on audio and video; + * Multiprocess architecture to let applications share multimedia content; + * GStreamer plugins for easy use and integration in current applications; + * Sandboxed applications support. + +This package provides the PipeWire shared library. + +%package -n %{libspa} +Summary: The PipeWire SPA Shared Library +Group: System/Libraries + +%description -n %{libspa} +SPA or Simple Plugin API is a plugin API. + +Some of its features include: + + * Unlimited input/output ports; + * Per port format enumeration and negotiation; + * Enumeration/configuration of per port parameters; + * Application controlled buffer allocation with option to let the plugin + Allocate memory; + * Arbitrary buffer metadata; + * Buffers are passed around by id which is very fast and avoids the need + for refcounting; + * Synchronous and asynchronous processing; + * All api is designed to work without any allocations; + * Arbirary input/output behaviour. + +This package provides the PipeWire SPA shared library. + +%package -n gstreamer-plugin-pipewire +Summary: Gstreamer Plugin for PipeWire +Group: System/Libraries + +%description -n gstreamer-plugin-pipewire +PipeWire is a server and user space API to deal with multimedia pipelines. + +This package provides the gstreamer plugin. + +%package tools +Summary: The PipeWire Tools +Group: Productivity/Multimedia/Other + +%description tools +SPA or Simple Plugin API is a plugin API. + +This package provides pipewire-cli and pipewire-monitor tools. + +%package spa-tools +Summary: The PipeWire SPA Tools +Group: Productivity/Multimedia/Other + +%description spa-tools +SPA or Simple Plugin API is a plugin API. + +This package provides spa-inspect and spa-monitor tools. + +%package modules +Summary: Modules For PipeWire, A Multimedia Framework +Group: Productivity/Multimedia/Other +Requires: pipewire + +%description modules +PipeWire is a server and user space API to deal with multimedia pipelines. + +The framework is used to build a modular daemon that can be configured to: + + * Be a low-latency audio server with features like pulseaudio and/or jack; + * A video capture server that can manage hardware video capture devices + and provide access to them; + * A central hub where video can be made available for other applications + such as the gnome-shell screencast API. + +%package spa-plugins +Summary: Plugins For PipeWire SPA +Group: Productivity/Multimedia/Other +Requires: pipewire + +%description spa-plugins +PipeWire is a server and user space API to deal with multimedia pipelines. + +Some of its features include: + + * Unlimited input/output ports; + * Per port format enumeration and negotiation; + * Enumeration/configuration of per port parameters; + * Application controlled buffer allocation with option to let the plugin + Allocate memory; + * Arbitrary buffer metadata; + * Buffers are passed around by id which is very fast and avoids the need + for refcounting; + * Synchronous and asynchronous processing; + * All api is designed to work without any allocations; + * Arbirary input/output behaviour. + +This package provides plugins for extending PipeWire SPA's functionality. + +%package devel +Summary: Development Files For PipeWire, A Multimedia Framework +Group: Development/Libraries/C and C++ +Requires: %{libpipewire} >= %{version} +Requires: %{libspa} >= %{version} + +%description devel +PipeWire is a server and user space API to deal with multimedia pipelines. + +This package provides all the necessary files for development with PipeWire + +%prep +%setup -q +%setup -q -D -T -a 1 + +%build +%meson \ + -Denable_docs=true \ + -Denable_man=false \ + -Denable_gstreamer=true +%meson_build + +%install +%meson_install +# Install the man pages +mkdir -p %{buildroot}%{_mandir}/man1 +install -Dm0644 manpages/* %{buildroot}%{_mandir}/man1 +# Move docs to the right location +mkdir -p %{buildroot}%{_docdir}/%{name} +mv %{buildroot}%{_datadir}/doc/%{name}/* %{buildroot}%{_docdir}/%{name} + +%post -n %{libpipewire} -p /sbin/ldconfig +%postun -n %{libpipewire} -p /sbin/ldconfig +%post -n %{libspa} -p /sbin/ldconfig +%postun -n %{libspa} -p /sbin/ldconfig + +%files +%{_bindir}/pipewire +%{_userunitdir}/pipewire.service +%{_userunitdir}/pipewire.socket +%config %{_sysconfdir}/pipewire/pipewire.conf +%{_mandir}/man1/pipewire.1%{ext_man} +%dir %{_sysconfdir}/pipewire + +%files -n %{libpipewire} +%{_libdir}/libpipewire-0.1.so.0* + +%files -n %{libspa} +%{_libdir}/libspa-lib.so.0* + +%files -n gstreamer-plugin-pipewire +%{_libdir}/gstreamer-1.0/libgstpipewire.so + +%files tools +%{_bindir}/pipewire-cli +%{_bindir}/pipewire-monitor +%{_mandir}/man1/pipewire-*.1%{ext_man} + +%files spa-tools +%{_bindir}/spa-inspect +%{_bindir}/spa-monitor + +%files modules +%{_libdir}/pipewire-0.1/libpipewire-module-audio-dsp.so +%{_libdir}/pipewire-0.1/libpipewire-module-autolink.so +%{_libdir}/pipewire-0.1/libpipewire-module-client-node.so +%{_libdir}/pipewire-0.1/libpipewire-module-flatpak.so +%{_libdir}/pipewire-0.1/libpipewire-module-link-factory.so +%{_libdir}/pipewire-0.1/libpipewire-module-mixer.so +%{_libdir}/pipewire-0.1/libpipewire-module-protocol-native.so +%{_libdir}/pipewire-0.1/libpipewire-module-rtkit.so +%{_libdir}/pipewire-0.1/libpipewire-module-spa-monitor.so +%{_libdir}/pipewire-0.1/libpipewire-module-spa-node-factory.so +%{_libdir}/pipewire-0.1/libpipewire-module-spa-node.so +%{_libdir}/pipewire-0.1/libpipewire-module-suspend-on-idle.so +%dir %{_libdir}/pipewire-0.1 + +%files spa-plugins +%{_libdir}/spa/alsa/libspa-alsa.so +%{_libdir}/spa/audiomixer/libspa-audiomixer.so +%{_libdir}/spa/audiotestsrc/libspa-audiotestsrc.so +%{_libdir}/spa/bluez5/libspa-bluez5.so +%{_libdir}/spa/ffmpeg/libspa-ffmpeg.so +%{_libdir}/spa/support/libspa-dbus.so +%{_libdir}/spa/support/libspa-support.so +%{_libdir}/spa/test/libspa-test.so +%{_libdir}/spa/v4l2/libspa-v4l2.so +%{_libdir}/spa/videotestsrc/libspa-videotestsrc.so +%{_libdir}/spa/volume/libspa-volume.so +%dir %{_libdir}/spa +%dir %{_libdir}/spa/alsa +%dir %{_libdir}/spa/audiomixer +%dir %{_libdir}/spa/audiotestsrc +%dir %{_libdir}/spa/bluez5 +%dir %{_libdir}/spa/ffmpeg +%dir %{_libdir}/spa/support +%dir %{_libdir}/spa/test +%dir %{_libdir}/spa/v4l2 +%dir %{_libdir}/spa/videotestsrc +%dir %{_libdir}/spa/volume + +%files devel +%dir %{_docdir}/%{name}/ +%dir %{_docdir}/%{name}/html/ +%doc %{_docdir}/%{name}/html/ +%{_libdir}/libpipewire-0.1.so +%{_libdir}/libspa-lib.so +%{_libdir}/pkgconfig/libpipewire-0.1.pc +%{_libdir}/pkgconfig/libspa-0.1.pc +%{_includedir}/pipewire +%{_includedir}/spa + +%changelog