From 2891858b6d42338640175d67789b966b0dbea5fe Mon Sep 17 00:00:00 2001 From: Julian Sikorski Date: Nov 12 2013 21:45:37 +0000 Subject: Added support for AAC passthrough --- diff --git a/0001-sinkwidget-add-support-for-AAC-pass-through.patch b/0001-sinkwidget-add-support-for-AAC-pass-through.patch new file mode 100644 index 0000000..90104de --- /dev/null +++ b/0001-sinkwidget-add-support-for-AAC-pass-through.patch @@ -0,0 +1,87 @@ +From cbf3acb54379f3334cf5d7844888536bb54d1c5e Mon Sep 17 00:00:00 2001 +From: Akihiro Tsukada +Date: Mon, 25 Feb 2013 01:03:31 +0900 +Subject: [PATCH 1/2] sinkwidget: add support for AAC pass-through + +--- + src/pavucontrol.glade | 19 ++++++++++++++++--- + src/sinkwidget.cc | 12 ++++++++++++ + src/sinkwidget.h | 2 +- + 3 files changed, 29 insertions(+), 4 deletions(-) + +diff --git a/src/pavucontrol.glade b/src/pavucontrol.glade +index 6defb3d..4b3dd01 100644 +--- a/src/pavucontrol.glade ++++ b/src/pavucontrol.glade +@@ -427,9 +427,6 @@ + 2 + 3 + +- +- +- + + PCM + False +@@ -499,6 +496,22 @@ + 2 + + ++ ++ ++ AAC ++ False ++ True ++ True ++ False ++ True ++ ++ ++ 2 ++ 3 ++ 1 ++ 2 ++ ++ + + + False +diff --git a/src/sinkwidget.cc b/src/sinkwidget.cc +index 1726550..7f4902c 100644 +--- a/src/sinkwidget.cc ++++ b/src/sinkwidget.cc +@@ -62,6 +62,18 @@ SinkWidget::SinkWidget(BaseObjectType* cobject, const Glib::RefPtr + encodings[i].encoding = PA_ENCODING_DTS_IEC61937; + x->get_widget("encodingFormatDTS", encodings[i].widget); + encodings[i].widget->signal_toggled().connect(sigc::mem_fun(*this, &SinkWidget::onEncodingsChange)); ++ ++ ++i; ++ encodings[i].encoding = PA_ENCODING_INVALID; ++ x->get_widget("encodingFormatAAC", encodings[i].widget); ++ encodings[i].widget->set_sensitive(false); ++#ifdef PA_ENCODING_MPEG2_AAC_IEC61937 ++ if (pa_context_get_server_protocol_version(get_context()) >= 28) { ++ encodings[i].encoding = PA_ENCODING_MPEG2_AAC_IEC61937; ++ encodings[i].widget->signal_toggled().connect(sigc::mem_fun(*this, &SinkWidget::onEncodingsChange)); ++ encodings[i].widget->set_sensitive(true); ++ } ++#endif + #endif + } + +diff --git a/src/sinkwidget.h b/src/sinkwidget.h +index a2fbab9..0044ffc 100644 +--- a/src/sinkwidget.h ++++ b/src/sinkwidget.h +@@ -27,7 +27,7 @@ + #if HAVE_EXT_DEVICE_RESTORE_API + # include + +-# define PAVU_NUM_ENCODINGS 5 ++# define PAVU_NUM_ENCODINGS 6 + + typedef struct { + pa_encoding encoding; +-- +1.8.4.2 + diff --git a/pavucontrol.spec b/pavucontrol.spec index 0f2e400..7d9a892 100644 --- a/pavucontrol.spec +++ b/pavucontrol.spec @@ -1,12 +1,13 @@ Name: pavucontrol Version: 2.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Volume control for PulseAudio Group: Applications/Multimedia License: GPLv2+ URL: http://freedesktop.org/software/pulseaudio/%{name} Source0: http://freedesktop.org/software/pulseaudio/%{name}/%{name}-%{version}.tar.xz +Patch0: 0001-sinkwidget-add-support-for-AAC-pass-through.patch BuildRequires: pulseaudio-libs-devel >= 3.0 BuildRequires: gtkmm30-devel libglademm24-devel @@ -23,6 +24,7 @@ of each playback stream separately. %prep %setup -q +%patch0 -p1 %build %configure @@ -50,6 +52,9 @@ desktop-file-install \ %{_datadir}/applications/pavucontrol.desktop %changelog +* Tue Nov 12 2013 Julian Sikorski - 2.0-4 +- Added support for AAC passthrough + * Wed Oct 23 2013 Bruno Wolff III - 2.0-3 - Rebuild seems to fix segfaulting issue (bz 1021118)