- phonon-backend-xine-4.4.1 (with pulseaudio) = no audio (kde#235193)

epel9
Rex Dieter 15 years ago
parent 9d84bfb970
commit 886209f3c7

@ -0,0 +1,46 @@
diff -up phonon-4.4.1/phonon/pulsesupport.cpp.kde235193 phonon-4.4.1/phonon/pulsesupport.cpp
--- phonon-4.4.1/phonon/pulsesupport.cpp.kde235193 2010-04-21 09:06:29.000000000 -0500
+++ phonon-4.4.1/phonon/pulsesupport.cpp 2010-04-24 13:19:46.019780887 -0500
@@ -569,6 +569,31 @@ static void context_state_callback(pa_co
return;
}
pa_operation_unref(o);
+
+ // In the case of reconnection or simply lagging behind the stream object creation
+ // on startup (due to the probe+reconnect system), we invalidate all loaded streams
+ // and then load up info about all streams.
+ for (QMap<QString, PulseStream*>::iterator it = s_outputStreams.begin(); it != s_outputStreams.end(); ++it) {
+ PulseStream *stream = *it;
+ logMessage(QString("Phonon Output Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(stream->uuid()));
+ stream->setIndex(PA_INVALID_INDEX);
+ }
+ if (!(o = pa_context_get_sink_input_info_list(c, sink_input_cb, NULL))) {
+ logMessage(QString("pa_context_get_sink_input_info_list() failed"));
+ return;
+ }
+ pa_operation_unref(o);
+
+ for (QMap<QString, PulseStream*>::iterator it = s_captureStreams.begin(); it != s_captureStreams.end(); ++it) {
+ PulseStream *stream = *it;
+ logMessage(QString("Phonon Capture Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(stream->uuid()));
+ stream->setIndex(PA_INVALID_INDEX);
+ }
+ if (!(o = pa_context_get_source_output_info_list(c, source_output_cb, NULL))) {
+ logMessage(QString("pa_context_get_source_output_info_list() failed"));
+ return;
+ }
+ pa_operation_unref(o);
}
#ifdef HAVE_PULSEAUDIO_DEVICE_MANAGER
diff -up phonon-4.4.1/xine/audiooutput.cpp.kde235193 phonon-4.4.1/xine/audiooutput.cpp
--- phonon-4.4.1/xine/audiooutput.cpp.kde235193 2010-04-21 09:06:29.000000000 -0500
+++ phonon-4.4.1/xine/audiooutput.cpp 2010-04-24 13:16:09.495761750 -0500
@@ -48,6 +48,7 @@ namespace Xine
AudioOutput::AudioOutput(QObject *parent)
: AbstractAudioOutput(new AudioOutputXT, parent)
+ , m_volume(1.0)
{
}

@ -2,7 +2,7 @@
Summary: Multimedia framework api
Name: phonon
Version: 4.4.1
Release: 1%{?dist}
Release: 2%{?dist}
Group: System Environment/Libraries
License: LGPLv2+
URL: http://phonon.kde.org/
@ -24,6 +24,8 @@ Patch52: phonon-4.3.50-gstreamer-fix-seekable-query-failed.patch
Patch53: phonon-4.3.50-phonon-allow-stop-empty-source.patch
## Upstream patches
# phonon-backend-xine-4.4.1 (with pulseaudio) = no audio, http://bugs.kde.org/235193
Patch100: phonon-4.4.1-kde235193.patch
BuildRequires: automoc4 >= 0.9.86
BuildRequires: cmake >= 2.6.0
@ -83,6 +85,8 @@ Provides: %{name}-backend-gst = %{version}-%{release}
%patch52 -p1 -b .gstreamer-fix-seekable-query-failed
%patch53 -p1 -b .phonon-allow-stop-empty-source
%patch100 -p1 -b .kde235193
%build
mkdir -p %{_target_platform}
@ -187,6 +191,9 @@ gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
%changelog
* Sat Apr 24 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.4.1-2
- phonon-backend-xine-4.4.1 (with pulseaudio) = no audio (kde#235193)
* Thu Apr 22 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.4.1-1
- phonon-4.4.1

Loading…
Cancel
Save