Compare commits

..

No commits in common. "43e8333cb57d0a0665e75e74c74681736679fd8a" and "3ff40200d93ef0e405aef3322c60fd4972cefb2e" have entirely different histories.

4 changed files with 41 additions and 154 deletions

View File

@ -1,46 +1,48 @@
From ce6b7033cd4d546040eeb3851f8e2d00fac87048 Mon Sep 17 00:00:00 2001
From ae9669d82eaa4e346e6587b4a1254db75e5c838b Mon Sep 17 00:00:00 2001
From: peijiankang <peijiankang@kylinos.cn>
Date: Thu, 12 Jan 2023 15:09:23 +0800
Date: Fri, 30 Dec 2022 15:19:54 +0800
Subject: [PATCH] fix ukui-volume-control-applet-qt work error
---
ukui-volume-control-applet-qt/ukmedia_main_widget.cpp | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
ukui-volume-control-applet-qt/ukmedia_main_widget.cpp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp
index a6dd72d..a57919a 100644
index a6dd72d..3bf86b2 100644
--- a/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp
+++ b/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp
@@ -3203,8 +3203,8 @@ void UkmediaMainWidget::switchModuleEchoCancel()
if ( strstr(m_pVolumeControl->defaultSourceName,"alsa_input") && !strstr(m_pVolumeControl->defaultSourceName,"input.usb")) {
sourceState = true;
}
- qDebug() << "switchModuleEchoCancel" << m_pVolumeControl->defaultSourceName << switchState << sourceState;
- if (switchState && sourceState && !isLoadEchoCancel && !strstr(m_pVolumeControl->defaultSourceName,"noiseReduceSource")) {
+ qDebug() << "switchModuleEchoCancel" << "loadechocancel"<< isLoadEchoCancel << m_pVolumeControl->defaultSourceName << switchState << sourceState;
+ if (switchState && sourceState) {
pa_operation *o;
qDebug() << "load module echo cancel";
isLoadEchoCancel = true;
@@ -3212,7 +3212,7 @@ void UkmediaMainWidget::switchModuleEchoCancel()
m_pVolumeControl->showError(QObject::tr("pa_context_load_module() failed").toUtf8().constData());
}
@@ -323,6 +323,7 @@ void UkmediaMainWidget::initDefaultSinkVolume()
if(outputCardName.contains(BLUEZ,Qt::CaseInsensitive))
volume = OUTPUT_VOLUME;
m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume);
+ m_pVolumeControl->setSinkMute(false);
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sinkPortName,false);
qDebug() << "初始化输出音量为:" << volume ;
if (temp != "")
@@ -333,6 +334,7 @@ void UkmediaMainWidget::initDefaultSinkVolume()
{
volume = OUTPUT_VOLUME;
m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume);
+ m_pVolumeControl->setSinkMute(false);
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSinkName,false);
qDebug()<< "初始化音量SinkPortName不存在的情况" << volume;
}
@@ -346,6 +348,7 @@ void UkmediaMainWidget::initDefaultSourceVolume()
{
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSourceName,false);
m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,MIC_VOLUME);
+ m_pVolumeControl->setSourceMute(false);
qDebug()<< "初始化音量SourcePortName不存在的情况" <<m_pVolumeControl->defaultSourceName ;
}
- else {
+ else if (strstr(m_pVolumeControl->defaultSourceName,"noiseReduceSource") && !switchState) {
isLoadEchoCancel = false;
m_pVolumeControl->getModuleIndexByName("module-echo-cancel");
@@ -3221,6 +3221,9 @@ void UkmediaMainWidget::switchModuleEchoCancel()
pa_context_unload_module(m_pVolumeControl->getContext(),m_pVolumeControl->findModuleIndex,nullptr,nullptr);
});
@@ -353,6 +356,7 @@ void UkmediaMainWidget::initDefaultSourceVolume()
{
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sourcePortName,false);
m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,MIC_VOLUME);
+ m_pVolumeControl->setSourceMute(false);
qDebug() << "初始化输入音量为100" ;
}
+ else {
+ isLoadEchoCancel = false;
+ }
}
UkmediaMainWidget::~UkmediaMainWidget()
--
2.33.0

View File

@ -1,74 +0,0 @@
From 31d9527ddb1f1e1c009378c867e862cb7aaa68c0 Mon Sep 17 00:00:00 2001
From: peijiankang <peijiankang@kylinos.cn>
Date: Wed, 15 Feb 2023 16:26:38 +0800
Subject: [PATCH] fix coredump of ukui-volume-control-applet-qt
---
.../ukmedia_volume_control.cpp | 16 ++++++++++++++++
.../ukmedia_volume_control.h | 2 +-
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp b/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp
index b07294d..8edc83f 100644
--- a/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp
+++ b/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp
@@ -103,6 +103,10 @@ void UkmediaVolumeControl::setSinkMute(bool status)
*/
void UkmediaVolumeControl::setSinkVolume(int index,int value)
{
+ if(m_pDefaultSink == nullptr){
+ return;
+ }
+
pa_cvolume v = m_pDefaultSink->volume;
v.channels = channel;
for (int i=0;i<v.channels;i++)
@@ -141,6 +145,10 @@ void UkmediaVolumeControl::setSourceMute(bool status)
*/
void UkmediaVolumeControl::setSourceVolume(int index,int value)
{
+ if(m_pDefaultSink == nullptr){
+ return;
+ }
+
pa_cvolume v = m_pDefaultSink->volume;
v.channels = inputChannel;
for (int i=0;i<v.channels;i++)
@@ -231,6 +239,10 @@ int UkmediaVolumeControl::getModuleIndexByName(QString name)
*/
void UkmediaVolumeControl::setSinkInputVolume(int index, int value,int channel)
{
+ if(m_pDefaultSink == nullptr){
+ return;
+ }
+
pa_cvolume v = m_pDefaultSink->volume;
v.channels = channel;
@@ -267,6 +279,10 @@ void UkmediaVolumeControl::setSinkInputMuted(int index, bool status)
*/
void UkmediaVolumeControl::setSourceOutputVolume(int index, int value)
{
+ if(m_pDefaultSink == nullptr){
+ return;
+ }
+
pa_cvolume v = m_pDefaultSink->volume;
v.channels = sourceOutputChannel;
for (int i=0;i<v.channels;i++)
diff --git a/ukui-volume-control-applet-qt/ukmedia_volume_control.h b/ukui-volume-control-applet-qt/ukmedia_volume_control.h
index 555825f..b39b248 100644
--- a/ukui-volume-control-applet-qt/ukmedia_volume_control.h
+++ b/ukui-volume-control-applet-qt/ukmedia_volume_control.h
@@ -167,7 +167,7 @@ public:
bool firstRun = true;
pa_cvolume m_defaultSinkVolume;
- const pa_sink_info *m_pDefaultSink;
+ const pa_sink_info *m_pDefaultSink = nullptr;
pa_context* m_pPaContext;
std::map<uint32_t, char*> clientNames;
SinkInputType showSinkInputType;
--
2.33.0

View File

@ -1,35 +0,0 @@
diff -Naur ukui-media-3.1.0/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp ukui-media-3.1.0~/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp
--- ukui-media-3.1.0/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp 2024-05-09 16:54:50.944895614 +0800
+++ ukui-media-3.1.0~/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp 2024-05-09 16:59:55.043191038 +0800
@@ -323,6 +323,7 @@
if(outputCardName.contains(BLUEZ,Qt::CaseInsensitive))
volume = OUTPUT_VOLUME;
m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume);
+ m_pVolumeControl->setSinkMute(false);
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sinkPortName,false);
qDebug() << "初始化输出音量为:" << volume ;
if (temp != "")
@@ -333,6 +334,7 @@
{
volume = OUTPUT_VOLUME;
m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume);
+ m_pVolumeControl->setSinkMute(false);
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSinkName,false);
qDebug()<< "初始化音量SinkPortName不存在的情况" << volume;
}
@@ -346,6 +348,7 @@
{
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSourceName,false);
m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,MIC_VOLUME);
+ m_pVolumeControl->setSinkMute(false);
qDebug()<< "初始化音量SourcePortName不存在的情况" <<m_pVolumeControl->defaultSourceName ;
}
@@ -353,6 +356,7 @@
{
m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sourcePortName,false);
m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,MIC_VOLUME);
+ m_pVolumeControl->setSinkMute(false);
qDebug() << "初始化输入音量为100" ;
}
}

View File

@ -1,14 +1,12 @@
Name: ukui-media
Version: 3.1.0
Release: 5
Release: 3
Summary: UKUI media utilities
License: GPL-2.0-or-later and GPL-3.0-or-later and BSD-3-Clause
URL: http://www.ukui.org
Source0: https://gitee.com/openkylin/ukui-media/tags/%{name}-%{version}.tar.gz
Patch01: 0001-fix-compile-error-of-ukui-media.patch
Patch02: 0002-fix-ukui-volume-control-applet-qt-work-error.patch
Patch03: 0003-fix-coredump-of-ukui-volume-control-applet-qt.patch
Patch04: 0004-fix-first-install-volume-not-mute.patch
Autoreq: yes
BuildRequires: intltool
@ -53,18 +51,20 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
This package contains the common files.
%prep
%autosetup -n %{name}-%{version} -p1
%setup -q
%patch01 -p1
%patch02 -p1
%build
mkdir build && pushd build
%{qmake_qt5} ..
%{make_build}
qmake-qt5 ..
make -j4
popd
%install
rm -rf $RPM_BUILD_ROOT
pushd build
%{make_install} INSTALL_ROOT=$RPM_BUILD_ROOT
make INSTALL_ROOT=$RPM_BUILD_ROOT install
popd
@ -95,14 +95,8 @@ glib-compile-schemas /usr/share/glib-2.0/schemas/ &> /dev/null ||:
%{_sysconfdir}/xdg/autostart/
%changelog
* Thu May 09 2024 douyan <douyan@kylinos.cn> - 3.1.0-5
- add 0004-fix-first-install-volume-not-mute.patch
* Fri Feb 10 2023 peijiankang <peijiankang@kylinos.cn> - 3.1.0-4
- fix coredump of ukui-volume-control-applet-qt
* Tue Jan 3 2023 lvfei <lvfei@kylinos.cn> - 3.1.0-3
- update Source0 Url
- update Sources0 Url
* Tue Jan 3 2023 peijiankang <peijiankang@kylinos.cn> - 3.1.0-2
- fix ukui-volume-control-applet-qt work error