Compare commits
10 Commits
3ff40200d9
...
43e8333cb5
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
43e8333cb5 | ||
|
|
c76e5dfd63 | ||
|
|
cfd1a22a98 | ||
|
|
0cb3e3cd40 | ||
|
|
f5b8617f1e | ||
|
|
025bd39b6c | ||
|
|
35600369ab | ||
|
|
e9bb1570c5 | ||
|
|
9a5f4ef469 | ||
|
|
f39f20219c |
@ -1,48 +1,46 @@
|
||||
From ae9669d82eaa4e346e6587b4a1254db75e5c838b Mon Sep 17 00:00:00 2001
|
||||
From ce6b7033cd4d546040eeb3851f8e2d00fac87048 Mon Sep 17 00:00:00 2001
|
||||
From: peijiankang <peijiankang@kylinos.cn>
|
||||
Date: Fri, 30 Dec 2022 15:19:54 +0800
|
||||
Date: Thu, 12 Jan 2023 15:09:23 +0800
|
||||
Subject: [PATCH] fix ukui-volume-control-applet-qt work error
|
||||
|
||||
---
|
||||
ukui-volume-control-applet-qt/ukmedia_main_widget.cpp | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
ukui-volume-control-applet-qt/ukmedia_main_widget.cpp | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp
|
||||
index a6dd72d..3bf86b2 100644
|
||||
index a6dd72d..a57919a 100644
|
||||
--- a/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp
|
||||
+++ b/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp
|
||||
@@ -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 ;
|
||||
@@ -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());
|
||||
}
|
||||
}
|
||||
- else {
|
||||
+ else if (strstr(m_pVolumeControl->defaultSourceName,"noiseReduceSource") && !switchState) {
|
||||
isLoadEchoCancel = false;
|
||||
m_pVolumeControl->getModuleIndexByName("module-echo-cancel");
|
||||
|
||||
@@ -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" ;
|
||||
@@ -3221,6 +3221,9 @@ void UkmediaMainWidget::switchModuleEchoCancel()
|
||||
pa_context_unload_module(m_pVolumeControl->getContext(),m_pVolumeControl->findModuleIndex,nullptr,nullptr);
|
||||
});
|
||||
}
|
||||
+ else {
|
||||
+ isLoadEchoCancel = false;
|
||||
+ }
|
||||
}
|
||||
|
||||
UkmediaMainWidget::~UkmediaMainWidget()
|
||||
--
|
||||
2.33.0
|
||||
|
||||
|
||||
74
0003-fix-coredump-of-ukui-volume-control-applet-qt.patch
Normal file
74
0003-fix-coredump-of-ukui-volume-control-applet-qt.patch
Normal file
@ -0,0 +1,74 @@
|
||||
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
|
||||
|
||||
35
0004-fix-first-install-volume-not-mute.patch
Normal file
35
0004-fix-first-install-volume-not-mute.patch
Normal file
@ -0,0 +1,35 @@
|
||||
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" ;
|
||||
}
|
||||
}
|
||||
@ -1,12 +1,14 @@
|
||||
Name: ukui-media
|
||||
Version: 3.1.0
|
||||
Release: 3
|
||||
Release: 5
|
||||
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
|
||||
@ -51,20 +53,18 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
This package contains the common files.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch01 -p1
|
||||
%patch02 -p1
|
||||
%autosetup -n %{name}-%{version} -p1
|
||||
|
||||
%build
|
||||
mkdir build && pushd build
|
||||
qmake-qt5 ..
|
||||
make -j4
|
||||
%{qmake_qt5} ..
|
||||
%{make_build}
|
||||
popd
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
pushd build
|
||||
make INSTALL_ROOT=$RPM_BUILD_ROOT install
|
||||
%{make_install} INSTALL_ROOT=$RPM_BUILD_ROOT
|
||||
popd
|
||||
|
||||
|
||||
@ -95,8 +95,14 @@ 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 Sources0 Url
|
||||
- update Source0 Url
|
||||
|
||||
* Tue Jan 3 2023 peijiankang <peijiankang@kylinos.cn> - 3.1.0-2
|
||||
- fix ukui-volume-control-applet-qt work error
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user