rpms/phonon/F-11 qt-x11-opensource-src-4.5.2-gst-pulsaudio.patch, NONE, 1.1 phonon.spec, 1.38, 1.39

Lukas Tinkl ltinkl at fedoraproject.org
Wed Oct 7 13:11:53 UTC 2009


Author: ltinkl

Update of /cvs/extras/rpms/phonon/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv18190/F-11

Modified Files:
	phonon.spec 
Added Files:
	qt-x11-opensource-src-4.5.2-gst-pulsaudio.patch 
Log Message:
sync with devel/


qt-x11-opensource-src-4.5.2-gst-pulsaudio.patch:
 audiooutput.cpp   |    4 +++-
 devicemanager.cpp |   22 ++++++++++++++++++++--
 2 files changed, 23 insertions(+), 3 deletions(-)

--- NEW FILE qt-x11-opensource-src-4.5.2-gst-pulsaudio.patch ---
diff -up qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/audiooutput.cpp.than qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/audiooutput.cpp
--- qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/audiooutput.cpp.than	2009-08-16 14:20:43.000000000 +0200
+++ qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/audiooutput.cpp	2009-08-16 14:45:56.000000000 +0200
@@ -141,7 +141,9 @@ bool AudioOutput::setOutputDevice(int ne
         // Save previous state
         GstState oldState = GST_STATE(m_audioSink);
         const QByteArray oldDeviceValue = GstHelper::property(m_audioSink, "device");
-        const QByteArray deviceId = deviceList.at(newDevice).gstId;
+        const QByteArray deviceId = (deviceList.at(newDevice).gstId == "PulseAudio"
+                                     ? "default"
+                                     : deviceList.at(newDevice).gstId);
         m_device = newDevice;
 
         // We test if the device can be opened by checking if it can go from NULL to READY state
diff -up qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/devicemanager.cpp.than qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/devicemanager.cpp
--- qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/devicemanager.cpp.than	2009-08-15 12:39:08.000000000 +0200
+++ qt-x11-opensource-src-4.5.2/src/3rdparty/phonon/gstreamer/devicemanager.cpp	2009-08-16 14:45:13.000000000 +0200
@@ -50,6 +50,8 @@ AudioDevice::AudioDevice(DeviceManager *
     //get name from device
     if (gstId == "default") {
         description = "Default audio device";
+    } else if (gstId == "PulseAudio") {
+        description = QObject::tr("Pass all audio through the PulseAudio Sound Server.\n").toUtf8();
     } else {
         GstElement *aSink= manager->createAudioSink();
 
@@ -175,6 +177,18 @@ GstElement *DeviceManager::createAudioSi
                 }
             }
 
+            if (!sink) {
+                sink = gst_element_factory_make ("pulsesink", NULL);
+                if (canOpenDevice(sink)) {
+                    m_backend->logMessage("AudioOutput using pulse audio sink");
+                    m_audioSink = "pulsesink";
+                }
+                else if (sink) {
+                    gst_object_unref(sink);
+                    sink = 0;
+                }
+            }
+
 #ifdef USE_ALSASINK2
             if (!sink) {
                 sink = gst_element_factory_make ("_k_alsasink", NULL);
@@ -306,8 +320,12 @@ void DeviceManager::updateDeviceList()
     QList<QByteArray> list;
 
     if (audioSink) {
-        list = GstHelper::extractProperties(audioSink, "device");
-        list.prepend("default");
+        if (m_audioSink == "pulsesink") {
+            list.append("PulseAudio");
+        } else {
+            list = GstHelper::extractProperties(audioSink, "device");
+            list.prepend("default");
+        }
 
         for (int i = 0 ; i < list.size() ; ++i) {
             QByteArray gstId = list.at(i);


Index: phonon.spec
===================================================================
RCS file: /cvs/extras/rpms/phonon/F-11/phonon.spec,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -p -r1.38 -r1.39
--- phonon.spec	26 Sep 2009 21:27:20 -0000	1.38
+++ phonon.spec	7 Oct 2009 13:11:53 -0000	1.39
@@ -1,16 +1,23 @@
+
 Summary: Multimedia framework api
 Name:    phonon
 Version: 4.3.1
-Release: 6%{?dist}.1
+Release: 101%{?dist}
 Group:   System Environment/Libraries
 License: LGPLv2+
 URL:     http://phonon.kde.org/
-#Source0: ftp://ftp.kde.org/pub/kde/stable/phonon/%{version}/%{name}-%{version}.tar.bz2
 Source0: ftp://ftp.kde.org/pub/kde/stable/4.2.1/phonon-%{version}.tar.bz2
-Source1: http://gstreamer.freedesktop.org/data/images/artwork/gstreamer-logo.svg
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
-# Make PulseAudio the default again when listed by the backend.
+Source10: http://gstreamer.freedesktop.org/data/images/artwork/gstreamer-logo.svg
+Source11: hi16-phonon-gstreamer.png
+Source12: hi22-phonon-gstreamer.png
+Source13: hi32-phonon-gstreamer.png
+Source14: hi48-phonon-gstreamer.png
+Source15: hi64-phonon-gstreamer.png
+Source16: hi128-phonon-gstreamer.png
+
+# Make PulseAudio the default when listed by the backend.
 # Note that this currently only works for the Xine backend. Device selection in
 # the GStreamer backend is weird: there is a setting for "sink" which cannot be
 # set through systemsettings, and listed devices are only those supported by the
@@ -18,6 +25,11 @@ BuildRoot: %{_tmppath}/%{name}-%{version
 # it as a "sink", and then the device setting is ignored entirely.
 Patch0:  phonon-4.2.96-pulseaudio.patch
 Patch1:  phonon-4.2.96-xine-pulseaudio.patch
+Patch2:  qt-x11-opensource-src-4.5.2-gst-pulsaudio.patch
+
+## define to build phonon-backend-xine only
+#define xine_only 1
+#Patch10: phonon-4.3.1-xineonly.patch
 
 ## Upstream patches
 Patch100: phonon-4.3.2-gstreamer-utf8-url.patch
@@ -32,7 +44,6 @@ BuildRequires: cmake >= 2.6.0
 BuildRequires: glib2-devel
 BuildRequires: gstreamer-devel
 BuildRequires: gstreamer-plugins-base-devel
-BuildRequires: GraphicsMagick
 BuildRequires: kde-filesystem
 BuildRequires: libxcb-devel
 BuildRequires: libxml2-devel
@@ -41,20 +52,21 @@ BuildRequires: qt4-devel >= 4.4.0
 BuildRequires: xine-lib-devel
 
 Requires: phonon-backend%{?_isa} >= %{version}
-## hard-code phonon-backend-xine, if yum chooses -gstreamer by default
-#Requires(hint): phonon-backend-xine%{?_isa} >= %{version}
+
+## can switch to Requires instead of Conflicts once bootstrapping is done
+#Requires: qt4%{?_isa} >= %{_qt4_version}
+Conflicts: qt4 < 4.5.2-21
 
 %description
 %{summary}.
 
-%package backend-gstreamer
-Summary: Gstreamer phonon backend
-Group:   Applications/Multimedia
+%package devel
+Summary: Developer files for %{name}
+Group:   Development/Libraries
 Requires: %{name} = %{version}-%{release}
-Provides: phonon-backend%{?_isa} = %{version}-%{release}
-Obsoletes: %{name}-backend-gst < 4.2.0-4
-Provides:  %{name}-backend-gst = %{version}-%{release}
-%description backend-gstreamer
+Requires: qt4-devel
+Requires: pkgconfig
+%description devel
 %{summary}.
 
 %package backend-xine
@@ -65,13 +77,15 @@ Provides: phonon-backend%{?_isa} = %{ver
 %description backend-xine
 %{summary}.
 
-%package devel
-Summary: Developer files for %{name}
-Group:   Development/Libraries
+%package backend-gstreamer
+Summary: Gstreamer phonon backend
+Group:   Applications/Multimedia
+Epoch:   2
 Requires: %{name} = %{version}-%{release}
-Requires: qt4-devel
-Requires: pkgconfig
-%description devel
+Provides: phonon-backend%{?_isa} = %{version}-%{release}
+Obsoletes: %{name}-backend-gst < 4.2.0-4
+Provides:  %{name}-backend-gst = %{version}-%{release}
+%description backend-gstreamer
 %{summary}.
 
 
@@ -79,11 +93,17 @@ Requires: pkgconfig
 %setup -q -n phonon-%{version}%{?alphatag}
 %patch0 -p1 -b .pulseaudio
 %patch1 -p1 -b .xine-pulseaudio
+%patch2 -p4 -b .gst-pulseaudio
 %patch100 -p0 -b .gstreamer-utf8-url
 %patch101 -p0 -b .gstreamer-volumefader
 %patch102 -p1 -b .xine_nonascii
 %patch103 -p1 -b .xine_nonascii-2
 
+# not working?  use -C .../xine hack below instead for now  -- Rex
+%if 0%{?xine_only}
+#%patch10 -p1 -b .xineonly
+%endif
+
 
 %build
 mkdir -p %{_target_platform}
@@ -91,31 +111,35 @@ pushd %{_target_platform}
 %{cmake} ..
 popd
 
-make %{?_smp_mflags} -C %{_target_platform}
+make %{?_smp_mflags} -C %{_target_platform}%{?xine_only:/xine}
 
 
 %install
 rm -rf %{buildroot}
 
-make install/fast DESTDIR=%{buildroot} -C %{_target_platform}
+make install/fast DESTDIR=%{buildroot} -C %{_target_platform}%{?xine_only:/xine}
 
 # move the oxygen-only phonon-xine icons to hicolor
-test -d %{buildroot}%{_datadir}/icons/hicolor && exit 0
 mv %{buildroot}%{_datadir}/icons/oxygen \
    %{buildroot}%{_datadir}/icons/hicolor
 
-install -D -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/phonon-gstreamer.svg
-for i in 16 22 32 48 64 128; do
-  mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps
-  gm convert -background None -geometry ${i}x${i}  %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps/phonon-gstreamer.png
-  touch --reference %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps/phonon-gstreamer.png
-done
+%if ! 0%{?xine_only}
+# gstreamer icons
+install -D -m 0644 %{SOURCE10} %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/phonon-gstreamer.svg
+install -D -m 0644 %{SOURCE11} %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/phonon-gstreamer.png
+install -D -m 0644 %{SOURCE12} %{buildroot}%{_datadir}/icons/hicolor/22x22/apps/phonon-gstreamer.png
+install -D -m 0644 %{SOURCE13} %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/phonon-gstreamer.png
+install -D -m 0644 %{SOURCE14} %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/phonon-gstreamer.png
+install -D -m 0644 %{SOURCE15} %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/phonon-gstreamer.png
+install -D -m 0644 %{SOURCE16} %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/phonon-gstreamer.png
+%endif
 
 
 %clean
 rm -rf %{buildroot}
 
 
+%if ! 0%{?xine_only}
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
@@ -123,28 +147,29 @@ rm -rf %{buildroot}
 %post backend-gstreamer
 touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
 
-%post backend-xine
-touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
-
-%posttrans backend-gstreamer
-gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
-
-%posttrans backend-xine
-gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
-
 %postun backend-gstreamer
 if [ $1 -eq 0 ] ; then
   touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
   gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
 fi
 
+%posttrans backend-gstreamer
+gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
+%endif
+
+%post backend-xine
+touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
+
 %postun backend-xine
 if [ $1 -eq 0 ] ; then
   touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
   gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
 fi
 
+%posttrans backend-xine
+gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
 
+%if ! 0%{?xine_only}
 %files
 %defattr(-,root,root,-)
 %doc COPYING.LIB
@@ -154,11 +179,20 @@ fi
 %dir %{_kde4_libdir}/kde4/plugins/phonon_backend/
 %dir %{_kde4_datadir}/kde4/services/phononbackends/
 
+%files devel
+%defattr(-,root,root,-)
+%dir %{_includedir}/KDE
+%{_includedir}/KDE/Phonon/
+%{_includedir}/phonon/
+%{_libdir}/pkgconfig/phonon.pc
+%{_libdir}/libphonon*.so
+
 %files backend-gstreamer
 %defattr(-,root,root,-)
 %{_kde4_libdir}/kde4/plugins/phonon_backend/phonon_gstreamer.so
 %{_kde4_datadir}/kde4/services/phononbackends/gstreamer.desktop
 %{_datadir}/icons/hicolor/*/apps/phonon-gstreamer.*
+%endif
 
 %files backend-xine
 %defattr(-,root,root,-)
@@ -166,19 +200,32 @@ fi
 %{_kde4_datadir}/kde4/services/phononbackends/xine.desktop
 %{_datadir}/icons/hicolor/*/apps/phonon-xine.*
 
-%files devel
-%defattr(-,root,root,-)
-%dir %{_includedir}/KDE
-%{_includedir}/KDE/Phonon/
-%{_includedir}/phonon/
-%{_libdir}/pkgconfig/phonon.pc
-%{_libdir}/libphonon*.so
-
 
 %changelog
-* Sat Sep 26 2009 Kevin Kofler <Kevin at tigcc.ticalc.org> - 4.3.1-6.1
+* Tue Sep 29 2009 Rex Dieter <rdieter at fedoraproject.org> - 4.3.1-101
+- revert to kde/phonon
+- inflate to Release: 101
+- -backend-gstreamer: Epoch: 2
+
+* Sun Jul 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 4.3.1-12
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
+* Thu Jun 18 2009 Rex Dieter <rdieter at fedoraproject.org> - 4.3.1-11
 - fix for '#' in filenames
 
+* Tue Jun 09 2009 Than Ngo <than at redhat.com> - 4.3.1-10
+- make InitialPreference=9
+
+* Sun Jun 07 2009 Rex Dieter <rdieter at fedoraproject.org> - 4.3.1-9
+- optimize scriptlets
+- Req: phonon >= %%phonon_version_major
+
+* Fri Jun 05 2009 Kevin Kofler <Kevin at tigcc.ticalc.org> - 4.3.1-8
+- restore patches to the xine backend
+
+* Fri Jun 05 2009 Than Ngo <than at redhat.com> - 4.3.1-7
+- only xine-backend
+
 * Wed May 20 2009 Rex Dieter <rdieter at fedoraproject.org> - 4.3.1-6
 - phonon-backend-gstreamer multilib conflict (#501816)
 




More information about the fedora-extras-commits mailing list