GithubHelp home page GithubHelp logo

rbn42 / panon Goto Github PK

View Code? Open in Web Editor NEW
192.0 8.0 30.0 451 KB

An Audio Visualizer Widget in KDE Plasma

License: GNU General Public License v3.0

Shell 2.45% Python 34.09% GLSL 15.59% QML 45.66% JavaScript 0.44% HTML 0.14% CMake 1.63%
spectrum-analyzer music-visualizer plasma-desktop kde-desktop shadertoy

panon's People

Contributors

burakcank avatar flying-sheep avatar kupiqu avatar nulldev avatar poorpocketsmcnewhold avatar rbn42 avatar trmdi avatar vistaus avatar yuannan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

panon's Issues

[BUG] No Pulseaudio Devices

Desktop (please complete the following information):

  • OS: Arch Linux 5.9.6-arch1-1
  • Version of Plasma Framework: 5.75.0-1

Describe the bug
No pulseaudio devices and can only select "default" but it'll do nothing

FIX:
need the dependency python-cffi in the AUR package

or do pip install cffi

Just want to say thanks for your great work on this visualiser, I've been using it on my main desktop PC and it really spices up task bar. I'm not sure when you made these changes or if I uninstalled something but one day panon just stopped working and I've only recently gotten around to fixing it.

Panon uses microphone input instead of speakers / headphones, Manjaro OS

As it says, for some reason on every startup panon only reacts on input from laptop microphone, no matter which backend i choose (tested on all previous versions and also the this one), only sometimes randomly when i manually switch between input devices for microphone (internal / unplugged) and speaker (speakers / headphones) and restart panon in between it sometimes gets to ignore microphone and listen to regular sound output from laptop / headphones, but not really sure what affects its decision?

I saw there was similar issue posted but im not sure i really understand that whole situation in that post if its same, so to post it as well

[Feature request] Clear/Opacity Changer

Hello! I was wondering if we could get an opacity changer or a transparent setting?
image
I would rather not have the darkish box and make it transparent but I'm cool with it either way but it would be nice ^^

Consider using PulseAudio as an alternative to PortAudio

Please see this comment from reddit (https://www.reddit.com/r/Python/comments/3k11g5/whats_a_good_sound_recording_library/cuu6gvy):

PyAudio is pretty clunky to use, I find. I would recommend sounddevice instead, which also interfaces with portaudio, but with a much nicer API and providing wheels (i.e. pip install sounddevice will work on Windows and OSX even though there are binary dependencies).

PyAudio is simply a wrapper for portaudio, sounddevice is a wrapper that tries to make portaudio pythonic. It provides a proper Stream class with play and record methods and callbacks for long-running interactive recordings. Additionally, there are some high level play and record standalone functions if all you need is play or record one short sample.

Finally, sounddevice uses CFFI, and is thus compatible with CPython and PyPy.

Full disclosure: I contributed to PyAudio back in the day (did the Py3 port), then built my own successor much like sounddevice, called PySoundCard, to which the creator of sounddevice contributed heavily. He then built sounddevice as a successor to PySoundCard since I didn't have enough time to develop it fast enough. I now heartily recommend you use sounddevice!

Perhaps sounddevice could solve some of the issues I'm having in issue #6

[BUG] Widget Resizes on Logout/Log-Back-In

Desktop (please complete the following information):

  • OS: Manjaro
  • KDE Plasma 5.22.5

Describe the bug
I like to have gravity east and use the widget vertically on my desktop. I resize it to be fairly narrow but on logout/log-back-in it resizes itself.

before
after

Any error message shown in the console

$ plasmoidviewer --applet $PWD/plasmoid 
QML debugging is enabled. Only use this in a safe environment.
qml: View QML loaded
kf.plasma.quick: Applet preload policy set to 1
Toolbox not loading, toolbox package is either invalid or disabled.
qml: New Containment: ContainmentInterface(0x55b993e72740)
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
kf.kio.core: Invalid URL: QUrl("")
trying to show an empty dialog
file:///path/to/panon/plasmoid/contents/ui/Spectrum.qml:95:45: QML Image: Unknown error
qml: 
qml: 
trying to show an empty dialog

Failed to load the visual effect. Please choose another effect in the configuration file.

Desktop (please complete the following information):

  • OS: Manjaro 5.13.19-2
  • Plasma Version: 5.22.5
  • Version of Plasma Framework: 5.86.0

Describe the bug
Panon was working fine for a few days. Recently when I rebooted the system, the widget is showing: Failed to load the visual effect. Please choose another effect in the configuration file.

I do not see any input device in the back-end when I select PulseAudio. It only shows 01 device named "default". Also, I followed steps to remove NewStuff, restarted and nothing worked.

I love Panon and hoping the issue gets resolved soon.

Any error message shown in the console
Please execute the following commands in the console and upload the outputs.
QML debugging is enabled. Only use this in a safe environment.
qml: View QML loaded
kf.plasma.quick: Applet preload policy set to 1
Toolbox not loading, toolbox package is either invalid or disabled.
qml: New Containment: ContainmentInterface(0x558485842ea0)
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
kf.kio.core: Invalid URL: QUrl("")
trying to show an empty dialog
libpng warning: iCCP: known incorrect sRGB profile
file:///home/obaid/panon/plasmoid/contents/ui/Spectrum.qml:95:45: QML Image: Unknown error
qml: JSON parse error
qml: Executed command:
qml: cd "/home/obaid/panon/plasmoid/contents/scripts";python3 -m panon.effect.build_shader_source WyIiLFtdXQ==
qml: JSON content:
qml:
qml: Traceback (most recent call last):
File "/usr/local/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/local/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/obaid/panon/plasmoid/contents/scripts/panon/effect/build_shader_source.py", line 5, in
from docopt import docopt
ModuleNotFoundError: No module named 'docopt'

qml:
qml:
trying to show an empty dialog

Panon should tell PulseAudio its name

I filed bastibe/SoundCard#81. Once they fixed it, we can adapt the client’s start method to set the name:

def start(self):
from soundcard import pulseaudio as sc
if self.device_id == 'all':
mics = sc.all_microphones(exclude_monitors=False)
self.streams = []
for mic in mics:
stream = mic.recorder(
self.sample_rate,
self.channel_count,
self.blocksize,
)
stream.__enter__()
self.streams.append(stream)
else:
if self.device_id == 'default':
mic = sc.default_microphone()
else:
mic = sc.get_microphone(
self.device_id,
include_loopback=False,
exclude_monitors=False,
)
self.stream = mic.recorder(
self.sample_rate,
self.channel_count,
self.blocksize,
)
self.stream.__enter__()

[BUG] Panon doesn't open when installed through the kde widget manager

Desktop (please complete the following information):

  • OS: ArchLinux
  • Version of Plasma Framework : 5.88.0

Describe the bug
Error message saying "sorry there was an error loading panon" after installing through kde widget and drag and dropping widget on desktop.

Any error message shown in the console

Icon theme "gnome" not found.
Icon theme "ubuntu-mono-dark" not found.
Icon theme "Mint-X" not found.
Icon theme "elementary" not found.
Icon theme "gnome" not found.
qml: View QML loaded
kf.plasma.quick: Applet preload policy set to 1
Toolbox not loading, toolbox package is either invalid or disabled.
qml: New Containment: ContainmentInterface(0x5626a83f3cb0)
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
trying to show an empty dialog
kf.kio.core: Invalid URL: QUrl("")
qml:
qml:
file:///home/eidan/panon/plasmoid/contents/ui/Spectrum.qml:95:45: QML Image: Unknown error
trying to show an empty dialog
trying to show an empty dialog
trying to show an empty dialog

[BUG] aur package cant install

Desktop (please complete the following information):

  • OS: [e.g. ArchLinux or Ubuntu]
  • Version of Plasma Framework

Describe the bug
aur package didnt work

Any error message shown in the console

$ yay -S plasma5-applets-panon             
:: Checking for conflicts...
:: Checking for inner conflicts...
[Aur: 1]  plasma5-applets-panon-0.4.0-1

  1 plasma5-applets-panon            (Build Files Exist)
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> 
:: PKGBUILD up to date, Skipping (1/1): plasma5-applets-panon
  1 plasma5-applets-panon            (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> 
:: Parsing SRCINFO (1/1): plasma5-applets-panon
==> Making package: plasma5-applets-panon 0.4.0-1 (Mon Mar 30 15:47:52 2020)
==> Retrieving sources...
  -> Found panon-0.4.0
  -> Found hsluv-glsl.fsh
  -> Found hsluv-glsl_LICENSE.md
==> Validating source files with md5sums...
    panon-0.4.0 ... Passed
    hsluv-glsl.fsh ... Passed
    hsluv-glsl_LICENSE.md ... Passed
==> Making package: plasma5-applets-panon 0.4.0-1 (Mon Mar 30 15:47:52 2020)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found panon-0.4.0
  -> Found hsluv-glsl.fsh
  -> Found hsluv-glsl_LICENSE.md
==> Validating source files with md5sums...
    panon-0.4.0 ... Passed
    hsluv-glsl.fsh ... Passed
    hsluv-glsl_LICENSE.md ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Extracting panon-0.4.0 with bsdtar
bsdtar: Failed to set default locale
==> Starting prepare()...
==> Sources are ready.
==> Making package: plasma5-applets-panon 0.4.0-1 (Mon Mar 30 15:47:53 2020)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Removing existing $pkgdir/ directory...
==> Entering fakeroot environment...
==> Starting package()...
/home/ifkn/.cache/yay/plasma5-applets-panon/PKGBUILD: line 49: cmake: command not found
==> ERROR: A failure occurred in package().
    Aborting...
Error making: plasma5-applets-panon

sry for i poor english , i am learning english as second language

GetHotNewStuff

Should be super easy. Sadly the category isn’t available here, which I think is the reason it doesn’t work: https://store.kde.org/ocs/v1/content/categories

Searching for things in the category does work: https://api.kde-look.org/ocs/v1/content/data?categories=564&tags=panon

kde/plasmoid/contents/config/panon.knsrc

[KNewStuff3]
Name=Panon
ProvidersUrl=https://api.kde-look.org/ocs/providers.xml
Categories=Various KDE Stuff
TagFilter=panon
XdgTargetDir=panon
Uncompress=archive

kde/plasmoid/contents/config/ConfigEffects.qml

NewStuff.Button {
    downloadNewWhat: "effects"
    configFile: Utils.get_root() + "/config/panon.knsrc"
}

@siyuandong @rvs75 can you help with the category problem?

Show tooltip with useful info

hideTooltip: true currently result in a ugly little square being shown anyway.

That config should be removed and the tooltip improved to be useful (e.g. show the effect name or so)

grafik

Only showing black box after update.

I've tried to remove the old panon widget and completely reinstall the plugin, but to no avail sadly.
Some tests with PlasmoidViewer were unsuccessful as well:

Screenshot_20200121_225528


Semi off-topic: Is a german translation needed? I'd be happy to help out on that matter

Panon cannot switch back to a headset when it is plugged in.

When there are multiple output audio devices, for example, a headset on HDMI and a loudspeaker on built-in sound card. If you set the headset as the default output device, and then plug out the headset, panon will automatically switch to the loudspeaker, as well as other applications like mpd. But if you plug in the headset again, other applications like mpd will switch back to the headset, while panon will stick to the loudspeaker. You have to switch panon back to the headset manually in pavucontrol, or restart panon's back end by applying a small modification to FPS in configuration dialog.

I have no clue how to solve it.

[BUG] Unable to select Visual Effect

Desktop (please complete the following information):

  • Arch Linux
  • Plasma 5.19.2

Describe the bug
Loading the plasmoid errors with Error: Failed to load the visual effect. Please choose another visual effect in the configuration dialog. I already have rbn42-glowbar and rbn42-glow, located in '$HOME/.local/share/panon/ The drop-down to select effects in 'Panon Settings - Visual Effects' doesn't function.

Any error message shown in the console

└╼$ plasmoidviewer --applet ./plasmoid/                                            9:46AM, 07/07/20
QML debugging is enabled. Only use this in a safe environment.
Icon theme "elementary" not found.
Icon theme "gnome" not found.
QGLXContext: Failed to create dummy context
file:///usr/lib/qt/qml/QtQuick/Controls/Styles/Plasma/ScrollViewStyle.qml:60:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qml: View QML loaded
org.kde.plasmaquick: Applet preload policy set to 1
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:76:9: Unable to assign [undefined] to QStringList
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:75:9: Unable to assign [undefined] to int
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:75:9: Unable to assign [undefined] to int
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:76:9: Unable to assign [undefined] to QStringList
Cyclic dependency detected between "file:///usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml" and "file:///usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml"
file:///usr/share/plasma/plasmoids/org.kde.desktopcontainment/contents/ui/main.qml:274:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
Toolbox not loading, toolbox package is either invalid or disabled.
qml: New Containment: ContainmentInterface(0x55ae0435b800)
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
kf5.kio.core: Invalid URL: QUrl("")
file:///usr/share/plasma/shells/org.kde.plasma.plasmoidviewershell/contents/applet/CompactApplet.qml:138:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
trying to show an empty dialog
file:///home/jason/.local/bin/git/panon/plasmoid/contents/ui/Spectrum.qml:121:45: QML Image: Unknown error
QProcess: Destroyed while process ("/bin/sh") is still running.
qml: JSON parse error
qml: Executed command:
qml: cd "/home/jason/.local/bin/git/panon/plasmoid/contents/scripts";python3 -m panon.effect.build_shader_source WyIiLFtdXQ==
qml: JSON content:
qml: 
qml: Traceback (most recent call last):
  File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.8/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/jason/.local/bin/git/panon/plasmoid/contents/scripts/panon/effect/build_shader_source.py", line 7, in <module>
    from .helper import effect_dirs, read_file, read_file_lines
  File "/home/jason/.local/bin/git/panon/plasmoid/contents/scripts/panon/effect/helper.py", line 8, in <module>
    _data_home / 'panon',
TypeError: unsupported operand type(s) for /: 'str' and 'str'

trying to show an empty dialog
trying to show an empty dialog
trying to show an empty dialog
trying to show an empty dialog
trying to show an empty dialog
file:///usr/share/plasma/shells/org.kde.plasma.plasmoidviewershell/contents/configuration/AppletConfiguration.qml:153:9: QML RowLayout: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
Cyclic dependency detected between "file:///usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml" and "file:///usr/lib/qt/qml/org/kde/kirigami.2/styles/org.kde.desktop.plasma/Units.qml"
Icon theme "elementary" not found.
Icon theme "gnome" not found.
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/ComboBox.qml:96:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
QCoreApplication::postEvent: Unexpected null receiver
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/ComboBox.qml:96:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/OverlaySheet.qml:530:17: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/OverlaySheet.qml:365:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/newstuff/qml/private/ErrorDisplayer.qml:27:35: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/OverlaySheet.qml:530:17: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/OverlaySheet.qml:365:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/newstuff/qml/QuestionAsker.qml:106:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/newstuff/qml/QuestionAsker.qml:106:5: QML Connections: Cannot assign to non-existent property "onClosing"
file:///usr/lib/qt/qml/org/kde/newstuff/qml/QuestionAsker.qml:65:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/ComboBox.qml:96:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/ComboBox.qml:96:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/ComboBox.qml:96:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/Menu.qml:50:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:153:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:108:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:80:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/Menu.qml:50:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:153:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:108:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:80:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/Menu.qml:50:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:153:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:108:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:80:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/Menu.qml:50:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:153:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:108:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:80:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/Menu.qml:50:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:153:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:108:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:80:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/templates/AbstractApplicationHeader.qml:102:9: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:250:13: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
file:///home/jason/.local/bin/git/panon/plasmoid/contents/ui/config/ConfigEffect.qml:125: SyntaxError: JSON.parse: Parse error
QCoreApplication::postEvent: Unexpected null receiver

[BUG] High latency when mixing all speakers

Desktop (please complete the following information):

  • OS: Arch 5.4.98-1-lts
  • Version of Plasma Framework: 5.79.0-1

Describe the bug
image

With variable latency devices such as my USB dac there is a bug with the rendering. When my USB DAC is not used it's latency is changed to the highest it can be. I presume this is to save CPU and power.

Problem is that when using this in "mixing all speakers" mode it causes the bar to stutter really really badly. I presume it's because the code is deadlocked while it's waiting for the buffer. Not sure if there is even a fix possible or just the nature of the Linux audio.

Anyhow I do think it's time this issue is addressed in a different manner. I propose a new separate "smart" single audio device setting. As most of the time users will only be using one device it should be the better alternative to mixing all for most users. The current mixing of all inputs is causing weird bugs like this.

In "smart" audio mode there is 2 processes. One is the current code. The second "watchdog" process is for monitoring which devices are currently in use and actually being played to. This can be achieved quite easily via some commands to see what is actually being played and to what sink/card. pacmd and other packages offer features like this, you probably know much more about this than I do.
Along with what devices are used it then checks the latencies and ensures it's below 1/FPS ms. In the case it's above the required latency show a warning triangle so users know something could be wrong or be user configurable to cut the stream completely to ensure a smooth FPS.
Other checks such as actually having a none zero audio data should also be done.

The biggest problem I can see with this approach is that certain devices could give off white noise constantly. e.g. microphones and lead to it being the one selected instead. This is however quite easily mitigable with the introduction of a white/blacklist.

This second process is needed as the deadlock is still going to happen (unless you can fix the upstream issue) therefore it must be multithreaded so the watchdog code is not within the current rendering code. This polling rate of the devices in the watchdog process should be user configurable just like FPS currently is. It should try to be in real time but it doesn't need to be so even if it's not fully fixed it's mitigable via user configuration.

The current latency is Σ O(input device) while after this change should bring it down to O(current device). It's not O(watchdog) + O(current device) as the watchdog is another process and pushes the state to the parent process which can get the result in O(1) time. The stutter is completely removed :) This does lead to the issue that the device currently used is not up to date but at most it's out of date by O(watchdog).

The advantages of this approach is that this allows panon to be self healing. Other small visual bugs like the below will also be fixed. Such as when I change audio devices and panon just freezes on the last frame rendered.
image

Issue #26 could also fixed for example.

Do you like my very long bug reports with suggestions and extra info? Or do would you prefer I just kept it short? Personally as a dev I would my reports to be like how I've made mine but I understand if you don't :)

[BUG] Monitor of all speakers is very delayed

Desktop (please complete the following information):
image

  • Version of Plasma Framework: git latest (515f49d)

Describe the bug
When switching to "Mixing all features" for PulseAudio the visualiser is delayed by about three seconds from the audio playing (I can test this by pausing and playing a song). This does not happen when using the other options.

Any error message shown in the console

The log:
QML debugging is enabled. Only use this in a safe environment.
qml: View QML loaded
org.kde.plasmaquick: Applet preload policy set to 1
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:76:9: Unable to assign [undefined] to QStringList
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:75:9: Unable to assign [undefined] to int
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:75:9: Unable to assign [undefined] to int
file:///usr/share/plasma/wallpapers/org.kde.image/contents/ui/main.qml:76:9: Unable to assign [undefined] to QStringList
Toolbox not loading, toolbox package is either invalid or disabled.
qml: New Containment: ContainmentInterface(0x5641098252d0)
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
kf5.kio.core: Invalid URL: QUrl("")
trying to show an empty dialog
file:///home/matanui159/.extra/panon/plasmoid/contents/ui/Spectrum.qml:121:45: QML Image: Unknown error
QProcess: Destroyed while process ("/bin/sh") is still running.
trying to show an empty dialog
file:///usr/share/plasma/shells/org.kde.plasma.plasmoidviewershell/contents/configuration/AppletConfiguration.qml:153:9: QML RowLayout: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
QCoreApplication::postEvent: Unexpected null receiver
file:///usr/lib/qt/qml/org/kde/newstuff/qml/QuestionAsker.qml:106:5: QML Connections: Cannot assign to non-existent property "onClosing"
QProcess: Destroyed while process ("/bin/sh") is still running.
QProcess: Destroyed while process ("/bin/sh") is still running.
QProcess: Destroyed while process ("/bin/sh") is still running.

[BUG] { module "QtWebSockets" is not installed}

file:///home/czh/.local/share/plasma/plasmoids/panon/contents/ui/main.qml:11:37: Type Spectrum unavailable

file:///home/czh/.local/share/plasma/plasmoids/panon/contents/ui/Spectrum.qml:218:5: Type WsConnection unavailable

file:///home/czh/.local/share/plasma/plasmoids/panon/contents/ui/WsConnection.qml:2:1: module "QtWebSockets" is not installed
image

module "QtWebSockets" is not installed

I'm running Manjaro KDE with versions:
Plasma 5.20.5
KDE 5.78.0
Qt 5.15.2

I can't get panon to work: it just displays the following error:
Errore durante il caricamento del file QML: file:///usr/share/plasma/plasmoids/panon/contents/ui/main.qml:11:37: Type Spectrum unavailable
file:///usr/share/plasma/plasmoids/panon/contents/ui/Spectrum.qml:221:5: Type WsConnection unavailable
file:///usr/share/plasma/plasmoids/panon/contents/ui/WsConnection.qml:2:1: module "QtWebSockets" is not installed

I tried both installing panon from aur and installing dependencies with pacman and plasmoid from the plasma UI, but I always get the same result.

Error: Failed to load the visual effect.

HI GUYS !

I am newbie on Linux
I want panon on my desktop, but i am facing some error
i dont know to fix that

MY full SYSTEM SPEC is as followed -

OS: Arch Linux / Manjaro kde
kde framwork - 5.88.0
Plasma - 5.23.3

FULL SYSTEM specs :-
Operating System: Manjaro Linux
KDE Plasma Version: 5.23.3
KDE Frameworks Version: 5.88.0
Qt Version: 5.15.2
Kernel Version: 5.13.19-2-MANJARO (64-bit)
Graphics Platform: X11
Processors: 2 × Pentium® Dual-Core CPU T4200 @ 2.00GHz
Memory: 3.8 GiB of RAM
Graphics Processor: Mesa DRI Mobile Intel® GM45 Express Chipset

I installed Panon from KDE WIDGET STORE
I got this following ERROR :-

Error: Failed to load the visual effect. Please choose another visual effect in the configuration dialog

HOW CAN I FIX THIS !!

THANKS !!

[BUG] Does not use specified audio device (Always uses `default`)

Desktop (please complete the following information):

  • OS: Arch Linux
  • KDE Plasma Version 5.21.5
  • KDE Frameworks Version 5.82.0
  • Using pipewire-pulse instead of pulseaudio

Describe the bug
While using the PulseAudio backend the plasmoid only uses the default audio device regardless of what's set in the config window.

Plasmoid Viewer Log
panon.log

[Feature request] Widget Placement

Is it possible to add an option to keep above all other windows? Or perhaps configure it as a window so the option is available?

That would be amazing! Thanks

no audio signal, no empty space

I wish the widget would not occupy any space when there is no audio signal, so no empty space in the bar when there is no spectrum to show

[BUG] Visualizer doesn't hide when no sound is playing

Desktop:

  • OS: Manjaro
  • Plasma 5.22.5

The bug
Panon is set to auto hide the visualizer when no audio is playing. The visualizer does not hide, and the thin lines that the bars in ba1ch move don't all settle back down and instead stay stuck on the screen. Here's a screenshot:

image

Any error message shown in the console
No error messages

[BUG] Constant memory building when placed in Latte Dock

  • OS: openSUSE Tumbleweed
  • Plasma Framework: 5.75.0
  • Latte-Dock: git-20201009

Memory continues to build when placed in a latte-dock panel. Latte-dock will easily build up to 3GB+ of RAM usage only when panon is active. Memory stops increasing as soon as panon is removed from the panel.

[BUG] If I restart my pc,the settings for the audio device are changed

Desktop (please complete the following information):
Manjaro
Kde Framework 5.76.0
Describe the bug
If I restart my pc,I have to re-select which audio device it displays

Any error message shown in the console
I can't do this right now,it says that I need the plasma-sdk,but I already have it,I can look later how to fix this.

Can't find websockets even after a reboot Fedora34

I installed the dependencies required, but the plasmoid can't find the websockets, or did I get the dependencies wrong?

Error message:
image

Packages I installed: qt5-qtwebsockets python3-docopt python3-numpy python3-pyaudio python3-cffi python3-websockets

OS: Fedora 34
KDE Framework v: 5.83.0
KDE Plasma v: 5.22.4

QQuickOpenGLShaderEffect: 'source' does not have a matching property

panon does't working, the system log

2020/3/9 上午12:39	plasmashell	adding "panon"
2020/3/9 上午12:39	plasmashell	QQuickOpenGLShaderEffect: 'source' does not have a matching property!
2020/3/9 上午12:39	plasmashell	QQuickOpenGLShaderEffect: 'source' does not have a matching property!
2020/3/9 上午12:39	plasmashell	kf5.kio.core: Invalid URL: QUrl("")
2020/3/9 上午12:39	plasmashell	trying to show an empty dialog
2020/3/9 上午12:39	plasmashell	file:///home/custom/.local/share/plasma/plasmoids/panon/contents/ui/Spectrum.qml:120:45: QML Image: Unknown error

what can i do?

[BUG] Can't connect to pulseaudio

Desktop (please complete the following information):

  • OS: Arch Linux
  • KDE Frameworks version 5.79.0
  • I am using Pulseaudio

Describe the bug
Front end works, but panon can't pick up audio. I can see the colored line or the bars if i change the layout, but nothing happens if I play music with pulseaudio selected.

Any error message shown in the console
Here is the full log output of the plasmoidviewer

QML debugging is enabled. Only use this in a safe environment.
Icon theme "gnome" not found.
qml: View QML loaded
kf.plasma.quick: Applet preload policy set to 1
Toolbox not loading, toolbox package is either invalid or disabled.
qml: New Containment: ContainmentInterface(0x55f60f1d02e0)
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
trying to show an empty dialog
kf.kio.core: Invalid URL: QUrl("")
qml:
qml:
file:///home/johannes/panon/plasmoid/contents/ui/Spectrum.qml:95:45: QML Image: Unknown error
qml:
qml: ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM iec958
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM spdif
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.iec958.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM spdif
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.hdmi.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM hdmi
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.hdmi.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM hdmi
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.modem.0:CARD=0'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline:CARD=0,DEV=0
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.modem.0:CARD=0'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline:CARD=0,DEV=0
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.modem.0:CARD=0'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM phoneline
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'cards.Loopback.pcm.modem.0:CARD=0'
ALSA lib conf.c:4745:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:5233:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM phoneline
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
ALSA lib pcm_dmix.c:1009:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
ALSA lib pcm_dsnoop.c:573:(snd_pcm_dsnoop_open) The dsnoop plugin supports only capture stream
ALSA lib pcm_dsnoop.c:573:(snd_pcm_dsnoop_open) The dsnoop plugin supports only capture stream
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
Traceback (most recent call last):
File "/usr/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/johannes/panon/plasmoid/contents/scripts/panon/backend/client.py", line 121, in
asyncio.get_event_loop().run_until_complete(mainloop())
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/johannes/panon/plasmoid/contents/scripts/panon/backend/client.py", line 63, in mainloop
async with websockets.connect(f"ws://localhost:{server_port}") as websocket:
File "/usr/lib/python3.9/site-packages/websockets/client.py", line 517, in aenter
return await self
File "/usr/lib/python3.9/site-packages/websockets/client.py", line 535, in await_impl
transport, protocol = await self._create_connection()
File "/usr/lib/python3.9/asyncio/base_events.py", line 1056, in create_connection
raise exceptions[0]
File "/usr/lib/python3.9/asyncio/base_events.py", line 1041, in create_connection
sock = await self._connect_sock(
File "/usr/lib/python3.9/asyncio/base_events.py", line 955, in _connect_sock
await self.sock_connect(sock, address)
File "/usr/lib/python3.9/asyncio/selector_events.py", line 502, in sock_connect
return await fut
File "/usr/lib/python3.9/asyncio/selector_events.py", line 537, in _sock_connect_cb
raise OSError(err, f'Connect call failed {address}')
ConnectionRefusedError: [Errno 111] Connect call failed ('::1', 40511, 0, 0)

file:///usr/share/plasma/shells/org.kde.plasma.plasmoidviewershell/contents/configuration/AppletConfiguration.qml:141:9: QML RowLayout: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
Icon theme "gnome" not found.
file:///usr/share/plasma/shells/org.kde.plasma.plasmoidviewershell/contents/configuration/AppletConfiguration.qml:141:9: QML RowLayout: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
trying to show an empty dialog
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:305:9: QML QQuickItem* (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "preferredWidth"
file:///usr/lib/qt/qml/org/kde/kirigami.2/FormLayout.qml:89:5: QML GridLayout: Binding loop detected for property "knownItemsImplicitWidth"
qml:
qml: Traceback (most recent call last):
File "/usr/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/johannes/panon/plasmoid/contents/scripts/panon/backend/client.py", line 121, in
asyncio.get_event_loop().run_until_complete(mainloop())
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/johannes/panon/plasmoid/contents/scripts/panon/backend/client.py", line 63, in mainloop
async with websockets.connect(f"ws://localhost:{server_port}") as websocket:
File "/usr/lib/python3.9/site-packages/websockets/client.py", line 517, in aenter
return await self
File "/usr/lib/python3.9/site-packages/websockets/client.py", line 535, in await_impl
transport, protocol = await self._create_connection()
File "/usr/lib/python3.9/asyncio/base_events.py", line 1056, in create_connection
raise exceptions[0]
File "/usr/lib/python3.9/asyncio/base_events.py", line 1041, in create_connection
sock = await self._connect_sock(
File "/usr/lib/python3.9/asyncio/base_events.py", line 955, in _connect_sock
await self.sock_connect(sock, address)
File "/usr/lib/python3.9/asyncio/selector_events.py", line 502, in sock_connect
return await fut
File "/usr/lib/python3.9/asyncio/selector_events.py", line 537, in _sock_connect_cb
raise OSError(err, f'Connect call failed {address}')
ConnectionRefusedError: [Errno 111] Connect call failed ('::1', 40511, 0, 0)

[BUG] Mixing All Speakers option shows only audio outputs added before panon started

Desktop (please complete the following information):

  • OS: Arch 5.12.13-arch1-2
  • Version of Plasma Framework: 5.83.0
  • Back-end: PulseAudio (Mixing All Speakers)

Describe the bug
Panon only detects new devices when it starts. If a bluetooth / jack / different audio output device is connected while panon is already running, panon won't react to that output stream.

Steps to reproduce

  • Have one device connected and add change your back-end & your panon input device to Mixing All Speakers
  • Start playing some music
  • Connect the second output device and switch to it
  • panon won't react to your music even if music is playing
    panon-no-activity

Not working with ALSA and Jack

I followed the README.md and saw these outputs from the terminal:

╭─hall.hexion@Anonymous ~/Projects/panon/kde  ‹master› 
╰─➤ python -m panon.server                   
ALSA lib pcm_dsnoop.c:638:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1108:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2564:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2564:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2564:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
ALSA lib pcm_dmix.c:1108:(snd_pcm_dmix_open) unable to open slave
config {'fps': 30, 'reduceBass': True}

Jack is connected, a client shown up and connected to a valid input.
image

The 24667 is the PID for python

However the GUI in my panel left blank (white) and nothing poped out.

  • KDE Plasma latest on ArchLinux
  • Python 3.7
  • Linux 5.3.1

[BUG] Unable to initialize on Manjaro

Desktop (please complete the following information):

  • OS: Manjaro 21.1.3
  • Version of Plasma Framework: 5.22.5 (obtained by plasmashell --version)

Describe the bug
The widget does not show up. The dependencies on README.md is installed.

Any error message shown in the console

file:///home/erayerdin/.local/share/plasma/plasmoids/panon/contents/ui/main.qml:11:37: Type Spectrum unavailable

file:///home/erayerdin/.local/share/plasma/plasmoids/panon/contents/ui/Spectrum.qml:218:5: Type WsConnection unavailable

file:///home/erayerdin/.local/share/plasma/plasmoids/panon/contents/ui/WsConnection.qml:2:1: module "QtWebSockets" is not installed

[BUG] AUR Build Fail with missing ECM

Desktop (please complete the following information):

  • OS: Arch Linux
  • Version of Plasma Framework: 5.75.0-1

Describe the bug
AUR build fails with:

CMake Error at CMakeLists.txt:7 (find_package):
  Could not find a package configuration file provided by "ECM" with any of
  the following names:

    ECMConfig.cmake
    ecm-config.cmake

  Add the installation prefix of "ECM" to CMAKE_PREFIX_PATH or set "ECM_DIR"
  to a directory containing one of the above files.  If "ECM" provides a
  separate development package or SDK, be sure it has been installed.

Fix:
extra-cmake-modules needed as depenency

Use a colormap

Just cycling through hues isn’t advisable for visualizations due to the wildly fluctuating perceived lightness.

See here for a stackoverflow post about why and suggestions what to use (twilight or husl seem to work well).

[BUG] Popping caused by panon

Desktop (please complete the following information):

  • OS: Arch Linux 5.4.83-1-lts
  • Version of Plasma Framework 5.77.0-1

Describe the bug
Running panon causes popping and static to happen with audio streams that are usually fine.

pulseaudio -k // refresh the daemon and kills panon
pacmd list-sinks | grep latency outputs:
pre panon reinit and just playing music in Tauon music box

current latency: 95.26 ms
configured latency: 90.00 ms; range is 0.50 .. 341.33 ms
analog-output: Analog Output (priority 9900, latency offset 0 usec, available: unknown)

reinit panon > back-end > input device > Monitor of SONATA Audio Analog Stereo

current latency: 10.60 ms
configured latency: 6.94 ms; range is 0.50 .. 341.33 ms
analog-output: Analog Output (priority 9900, latency offset 0 usec, available: unknown)

For some reason when panon is running it will reduce the latency all the way down to 6.94 (and it always seems to be 6.94 when most latencies will change over time)

current latency: 42.61 ms
configured latency: 36.00 ms; range is 36.00 .. 341.33 ms
analog-output: Analog Output (priority 9900, latency offset 0 usec, available: unknown)

This DOES change. It seems like for whatever reason panon triggers a lower constant latency for a certain time. After a while it'll go back to dynamic latency and level out to around 40ms

Interesting observation

1/0.00694
        ~144.09221902017291066282

This seems to be improper handling of the rendering pipeline; polling something at my screen's refresh rate (144Hz). Might be an upstream issue from some libraries used but it does level out eventually and the popping stops. After a bit more testing this is directly related to the FPS set in panon (60fps will give 16.67ms constant for a bit) and not from your display, drivers, or anything else.

My hardware is a SONATA HD PRO at 384KHz and s32le. Don't think there is anything else strange about my setup but here is the pulse config anyway.
/etc/pulse/daemon.conf


; daemonize = no
; fail = yes
; allow-module-loading = yes
; allow-exit = yes
; use-pid-file = yes
; system-instance = no
; local-server-type = user
; enable-shm = yes
; enable-memfd = yes
; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
; lock-memory = no
; cpu-limit = no

high-priority = yes
nice-level = -11

realtime-scheduling = yes
realtime-priority = 8

; exit-idle-time = 20
; scache-idle-time = 20

; dl-search-path = (depends on architecture)

; load-default-script-file = yes
; default-script-file = /etc/pulse/default.pa

; log-target = auto
; log-level = notice
; log-meta = no
; log-time = no
; log-backtrace = 0

resample-method = speex-float-10
avoid-resampling = false
; enable-remixing = yes
; remixing-use-all-sink-channels = yes
; remixing-produce-lfe = no
; remixing-consume-lfe = no
; lfe-crossover-freq = 0

; flat-volumes = no

; rescue-streams = yes

; rlimit-fsize = -1
; rlimit-data = -1
; rlimit-stack = -1
; rlimit-core = -1
; rlimit-as = -1
; rlimit-rss = -1
; rlimit-nproc = -1
; rlimit-nofile = 256
; rlimit-memlock = -1
; rlimit-locks = -1
; rlimit-sigpending = -1
; rlimit-msgqueue = -1
; rlimit-nice = 31
; rlimit-rtprio = 9
; rlimit-rttime = 200000

default-sample-format = s32le
default-sample-rate = 384000
alternate-sample-rate = 48000
; default-sample-channels = 2
; default-channel-map = front-left,front-right

default-fragments = 2
default-fragment-size-msec = 10

;enable-deferred-volume = no
;deferred-volume-safety-margin-usec = 8000
; deferred-volume-extra-delay-usec = 0

use internal audio system, not only microphone

not sure it is an issue in panon or something that is misconfigured in my system, but if I mute the microphone I don't see any spectrum even though I have audio signals going on.

for the case it is important, my audio system is based on pulseaudio.

装入 QML 文件出错

ile:///home/sakura/.local/share/plasma/plasmoids/panon/contents/ui/WsConnection.qml:2:1: module "QtWebSockets" is not installed What's the reason

[BUG] Panon not working anymore

Desktop (please complete the following information):

  • OS: Kubuntu 21.10
  • KDE-Plasma 5.22.5
  • KDE-Frameworks-Version 5.86.0
  • Qt-Version 5.15.2

Panon used to work fine. After a reboot, I suddenly got equalizer feedback from microfon.
I lowered the volume of the microfon, but Latte Dock was then reloaded. After that, panon did not work anymore.

I think front end ist wokring, because I see bars. ButI think it is not connected to the Back end.

I tried to deinstall it and re-install it. 0.4.2 and 0.4.6
Any error message shown in the console
plasmoidviewer --applet ./plasmoid/
QML debugging is enabled. Only use this in a safe environment.
Icon theme "gnome" not found.
Icon theme "Mint-X" not found.
Icon theme "elementary" not found.
Icon theme "gnome" not found.
Icon theme "gnome" not found.
Icon theme "Mint-X" not found.
Icon theme "elementary" not found.
Icon theme "gnome" not found.
qml: View QML loaded
kf.plasma.quick: Applet preload policy set to 1
Toolbox not loading, toolbox package is either invalid or disabled.
qml: New Containment: ContainmentInterface(0x561a2968a790)
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
QQuickOpenGLShaderEffect: 'source' does not have a matching property!
kf.kio.core: Invalid URL: QUrl("")
trying to show an empty dialog
libpng warning: iCCP: known incorrect sRGB profile
file:///home/alexander/panon/plasmoid/contents/ui/Spectrum.qml:95:45: QML Image: Unbekannter Fehler
Error: cannot change the containment to AppletsLayout
qml:
qml:
file:///usr/share/plasma/shells/org.kde.plasma.plasmoidviewershell/contents/configuration/AppletConfiguration.qml:141:9: QML RowLayout: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
kf.kirigami: Units.devicePixelRatio is deprecated (since 5.86 ): This returns 1 when using Qt HiDPI scaling.

minimalistic grayscale colormap

Not sure how it may look like, but that could be an interesting minimalistic option to make panon less salient in monocolor panels

[BUG] Playing sound casues "network traffic" on the new network monitor plasmoid

  • OS: ArchLinux
  • Version of Plasma Framework: 5.72.0

This is maybe the weirdest bug I have reported so far.
In Plasma 5.19 the system monitoring plasmoids got a revamp. Now all of them are just a plotter of different system stats.
But that causes a particular bug: when both panon and network monitor plasmoids are loaded, if sound is coming out the network plasmoid registers a steady ~ 300KiB/s download/upload traffic, even when there is no actual connection (tried even disconnecting the ethernet cable). If you open other network monitoring tools (like ksysguard) you can see there is no such network traffic at all.

Here is a video I recorded of the issue on a clean user to prove it isn't releated to configs: https://youtu.be/ly8ZyutRec8

[BUG] {title} Lagging when using Spotify

Desktop (please complete the following information):

  • OS: ArchLinux
  • Version of Plasma Framework

Describe the bug
In the browsers and music players, the widget works perfectly fine.
However, when I play music from Spotify, the widget starts to lag heavily.
I tried all the different settings but the issue seems to stay and it's kinda bugging me
because I use mostly Spotify to listen to music.

Any error message shown in the console
Please execute the following commands in the console and upload the outputs.
no error messages

[Feature request] Easy spectometer inversion setting.

Currently, I’m using panon as a two bar centered setup for an overhaul, alternative to glava. 

However, since it’s a Plasma widget, fully transparent spectometer ¨à la¨ glava isn’t possible.

(Except if I’ve badly done the process in the wiki Troubleshooting guide. It gives me an error :

QML Loading error : file:///home/pm/.local/share/plasma/plasmoids/panon/contents/ui/main.qml:17:5: Property value set multiple times)

So, here's my suggestion. Could you implement a toggle to invert the spectometer? Low-pitched on the right and high-pitched to the left etc...

I suppose this can be done as an external fx effect edit, but I think others could benefit from such a small feature.

[BUG] {title}

Desktop (please complete the following information):

  • OS: Arch Linux 5.8.1-zen1-1-zen
  • Version of Plasma Framework: 5.19.4-1

Describe the bug
The default option doesn't work very well. When I select it, it picks the mic up first.

Also after the audio device change it will stay on the old one.

I guess this can be looked as one bug or I'm misunderstanding the settings. What I want is that the visualiser will just visualise whatever is currently playing. The mix setting is a work around but seems like a waste of CPU and I don't like my mic in the mix.

Maybe add a mix what you want setting? or like a tier list of the devices. If this device is not playing, switch to the other one.

[BUG] Incorrect harmonics appear when volume of sound goes beyond a certain level

Desktop (please complete the following information):

  • OS: Manjaro 5.10.42-1-MANJARO
  • Version of Plasma Framework: 5.21.5
  • Back-end: PulseAudio (Monitor of Current Device)

Describe the bug
When I play a pure sinewave I should only see one hump going up, because sinewaves don't have any harmonics. Panon displays this correctly, but only if the volume of the sinewave is below a certain level. If it's above that level, it starts showing a bunch of incorrect harmonics,
This is what it shows when I play a single sinewave at 155Hz at a low volume (this is displayed correctly):
Screenshot_2021_06_20_(03:53:52)

This is what it shows when I play a single sinewave at 155Hz at a higher volume (notice how there are many more humps that shouldn't be there):
Screenshot_2021_06_20_(03:29:35)

[Feature request] {Only Microphone audio}

We have only speaker Audio that is great but only microphone one will be great too.
Adding 2 widgets one to show internal audio and the other for the microphone will be great.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.