SlackARM 14.2 SF and Current - hp-systray and pulseaudio EQ - qpaeq crashing - both written in Python
Hello,
I've been trying to tune the sound of a Raspberry Pi 2 and give it a little more volume in the lower freq range for almost 2 years now. There is a python script Equalizer that comes with pulseaudio, needs X and is called: /usr/bin/qpaeq Every time I launch it (even with root privs) it builds up in memory, fills it up and crashes the system. I even uninstalled the official pulseaudio and compiled my own version, installed the necessary sinks and ended with the same result. This python written EQ runs well under Slackware 14.2 X86. <EDIT: hp-systray close and not disable> Lately I found the hp-systray is also crashing if I close it and restart X (xfce). This hp-systray while useful for people who have printers attached to their arm devices (!?), is also written in python. Here's how both of the described processes are progressively eating up the memory: 20 0 263M 216M 30456 R 100. 29.5 1:24.95 python /usr/bin/qpaeq 20 0 102M 49432 35348 R 100. 6.6 2:24.25 python /usr/bin/hp-systray -x Should I recompile python / use another version? Is anybody else experiencing the same behavior? Thanks! |
Quote:
|
I already did that but was more focusing on qpaeq. Strace shows tons of themes and icons that qpaeq looks after and doesn't find in /usr/share/ and finally I get this repeating while filling up the memory:
Code:
poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLOUT}]) python -m pdb /usr/bin/qpaeq Looking at the qpaeq script I learned that it uses PyQt4 and checked the consistency of the packages between Slackware x86 and ARM. Everything looks in place and consistent. I'm thinking now to run it under KDE (an overkill for the Raspberry Pi2) considering that it might have something to do with the limited xfce environment. Under xfce the qpaeq window appears but it's empty, no buttons, no menus and it's unresponsive, I need to kill it with xkill if I leave it too much "loading". hp-systray ran ok until I closed it and exited X (xfce). Then, the next time I started X, I saw it eating up memory, not that fast as qpaeq but still. I don't want to link them together yet, I don't usually use X on ARM, but only when I need something special like qpaeq. It's just that I got them together having fun with my RAM and I'll try to reproduce hp-systray separately. |
I've got some time to play again with hp-systray and qpaeq, learning that hp-systray is actually OK.
hp-systray while launched by the X startup scripts eats quite a lot of RAM - 49MB RES and 102MB VIRT, and if closed and manually launched from the xfce menu then it's only taking up 10MB RES and 25MB VIRT: 20 0 25764 10452 2320 S 0.0 1.4 0:00.09 python /usr/bin/hp-systray --force-startup /usr/bin/qpaeq is still crashing (gradually eating up the entire RAM) under xfce and unfortunately I was not able to launch kde under Slack ARM current on Raspberry Pi2B. I gave kde enough resources 256MB-VideoRAM, 700MB-SystemRAM and 8GB free space in /, /tmp and /var/tmp kde loads and gets stuck while showing the last element of the "splash screen" - the K labeled gear symbol. Xorg.0.log doesn't show anything extraordinary and while investigating I found akonadi and its mysql sessions active apparently busy configuring some E-Mail account(s) - using 5% CPU once in a while In /home/user-name/.local/share/akonadi I've found akonadi_control.error with the following content: Executable "akonadi_nepomuk_feeder" for agent "akonadi_nepomuk_feeder" could not be found! Executable "akonadi_folderarchive_agent" for agent "akonadi_folderarchive_agent" could not be found! I repeatedly tried to start kde clean (suspecting some corruption) by deleting /home/user-name/.kde/ , /home/user-name/.local/share/akonadi and /var/tmp/username-kde-cache and failed in all my attempts. I'm pretty much stuck right now and have no alternative to tune pulse audio EQ without its only frontend /usr/bin/qpaeq qpaeq looks unsupported (dumped) ATM and there was a change in the file format of the pulse audio EQ sink configuration files in the pulseaudio version 6-7-8 ??, where a wise developer considered to change the clear text (human readable) file format into some database (cryptic) format. Perfect professional approach, over-complication and then dumping. :) Any help appreciated. |
I got very happy when I saw the last bunch of updates (29-30-sep-2017)on Slack ARM current and considered that my qpaeq issue might get resolved after applying them. Well, it just got simplified now :)
Code:
/usr/bin/qpaeq Pulseaudio 11.1 looks also to not like stereo, but only mono, on a Raspberry Pi2B. The sound output however is stereo (tested it with both aplay and kodi): Code:
# pactl list short sink-inputs Code:
# pactl list short sinks Code:
# pactl list cards |
bump!
I've uninstalled the pulseaudio 11 official package, compiled myself pulseaudio 11 from the official sources and experienced the same output:analog-mono - only. Then I took the official sources from pulseaudio 10, compiled them and everything is stereo now - as expected. @drmozes Sorry to bother you again, can you please provide some clues about the missing "No module named dbus.mainloop.qt" referenced in the last post? |
Should be fixed now.
|
2 Attachment(s)
Thanks for the updates!
The new packages: dbus-python-1.2.4-arm-4 PyQt-4.12.1-arm-2 restored the functionality of qpaeq, actually the non-functionality as it still hangs eating the RAM. Worth to mention, although off-topic, that the last bunch of updates (Nov 24) broke some things on my Pi2 ARM Slack 14.2 HF - current testbed, specifically: - I lost libpcre2-8.so.0 - /usr/bin/xfce4-terminal was looking after it and I needed to install pcre2-10.30-arm-1 from the extra packs - then I lost /bin/hostname (I almost took it personal ;) ) - had to install hostname-3.18-arm-1 - and just noticed that /usr/bin/gpg-agent is looking after libnpth.so.0, but I won't fix this, I'm really happy I don't have a session of gpg-agent stuck running after every launch of xfce :) Back to the original problem, qpaeq, I spent some time this evening and got it working on a Pi0 running Slack ARM 14.2 SF. I found out that in my previous attempts I forgot to enable the necessary equalizer modules in /etc/pulse/default.pa Code:
load-module module-equalizer-sink Not the same success on Slack ARM 14.2 HF current, unfortunatelly. Screenshot: B-Slack-ARM-14-2-HF-current.jpg I thought that pulseaudio might be the issue, so I've uninstalled my pulseaudio-10 (I'm still not using the "broken" (mono-only) official pulseaudio-11.1) and compiled & installed pulseaudio-9 just to be on the same version with Slack ARM 14.2 SF. This didn't solve anything and I'm still getting the same alsa-sink related messages as I've always got before with both the official pulseaudio-10 & 11. Might be an ALSA issue. Code:
Nov 25 23:08:50 test-pi2 pulseaudio[7352]: [pulseaudio] module-equalizer-sink.c: module-equalizer-sink is currently unsupported, and can sometimes cause PulseAudio crashes, increased latency or audible artifacts. While investigating the behavior of the hanging qpaeq I've noticed some Python-DBus related messages in the console where I started Xfce (sorry for the bad formatting - copy/paste on console-mcedit): Code:
/usr/bin/startxfce4: X server already running on display :0 I'm also considering to tune the equalizer on Slack ARM 14.2 SF and move the resulted conf files on current, but there are cookies, unique IDs & such, like pulseaudio will be used in a 500 sound cards with 1000 volume/equalizer profiles scenario, not to mention that XML was not sufficient, it had to be all cryptic now. Development driven by boredom - might send Monsieur Poettering a love mail ;) |
Quote:
Quote:
I don't have a machine that has working sound support, so I can't test any of the audio stack. hp-systray works fine, no matter how many times I quit xfce and restart. You might want to reinstall your machine. If you were using a tool to update, I'd recommend doing it manually and reading the change log. |
Quote:
On the Python-DBus messages (sorry for not reformatting the log), disregarding the common Bluez related errors, at the end of the log you'll get some other errors that are not related to Bluez and might be related to qpaeq instead, specifically: Code:
File "/usr/lib/python3.6/site-packages/dbus/bus.py", line 241, in get_object Quote:
https://www.linuxquestions.org/quest...2/#post5762840 Quote:
While this thread shows some interest - almost 1k visits, due to the lack of inputs it looks like nobody really cares about improving their analogue sound on ARM devices and I start to feel "lonely" in this. It's only drmozes that tries to help and I fear that I'm keeping him busy with things nobody really cares about. Therefore I'll close this thread - put it on RESOLVED and maybe start a new thread with a guide to make the Equalizer work in case I'll succeed. The pulseaudio dev team looks also to be confused about the real need for an Equalizer: https://bugs.freedesktop.org/show_bug.cgi?id=94971 RESOLVED - it cannot be done. :) |
All times are GMT -5. The time now is 07:49 PM. |