Bug 333255

Summary: there are some source monitor is missing
Product: [Applications] kmix Reporter: TOM Harrison <l12436.tw>
Component: Backend: PulseaudioAssignee: Colin Guthrie <colin>
Status: RESOLVED WORKSFORME    
Severity: normal CC: esken
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: enable monitor of sink and ignore pavucontrol peak detect
new patch for using application.id
pulseaudio profile enable patch.
fixing the pulseaudio profile support that enable too much feature.
using better way to enable the configure channels button.
modify the profile support

Description TOM Harrison 2014-04-10 00:50:03 UTC
in the backends/mixer_pulse.cpp
line 260~264 will cause the monitor of sink will be ignore.
but that is part of pulseaudio function, and i need to use it.

Reproducible: Always
Comment 1 TOM Harrison 2014-04-10 00:53:55 UTC
wrong 260~264
correct 258~262

But if disable that code. the pavucontrol will show multi client
Comment 2 TOM Harrison 2014-04-10 00:58:15 UTC
but i think it normal, and pavucontrol itself did not show his output source.
so i think if that can be ignore.
Comment 3 TOM Harrison 2014-04-10 02:52:26 UTC
Created attachment 86028 [details]
enable monitor of sink and ignore pavucontrol peak detect
Comment 4 Colin Guthrie 2014-04-10 08:29:31 UTC
Comment on attachment 86028 [details]
enable monitor of sink and ignore pavucontrol peak detect

The patch is fine, but I'm not sure I'd rely soley on the name here to ignore the Peak detect.

You should likely try and look to extract more metadata when we are notified of more streams (e.g. the proplist) and properly detect streams from pavucontrol itself and ignore all of them. e.g. in the proplist I see: application.id = "org.PulseAudio.pavucontrol", so that would probably be the better way (and won't suffer from any future i18n issues too.

I think hiding the peak detect streams is pretty uncontrovercial, but the showing of monitor sinks is probably less useful. You may want ot introduce some way (as in pavucontrol) to configure what broad types of streams you want to show - e.g. see the little drop down at the bottom right in pavucontrol. How this would fit into the kmix GUI, I don't know, but perhaps it could build on the "profile" support (i.e. XML filter files) if that still exists (I've not looked at the kmix code for many years so apologies if this is totally out of date thoughts!)
Comment 5 TOM Harrison 2014-04-10 08:46:38 UTC
i need the monitor of sink to replay the sink to source.
With this enable, i do not need to install pavucontrol.

actually I am not good at coding the code of kde, so i do not know how to add something in gui and let it work.

actually i would like to show it rather than hide it.
I use pavucontrol for a period of time, that software did not show itself on the control.
it seems ignore, too.
Comment 6 Colin Guthrie 2014-04-10 08:53:24 UTC
(In reply to comment #5)
> i need the monitor of sink to replay the sink to source.
> With this enable, i do not need to install pavucontrol.

Yeah, I think it's a valid use case, but I also think that for most users, it would just be confusing. So I think some kind of setting or profile should be implement to allow this to be controlled, but default to the current behaviour.
 
> actually I am not good at coding the code of kde, so i do not know how to
> add something in gui and let it work.

Yeah it's a little tricky to be sure. Hopefully someone with more coding experience will implement it in such a way.

> actually i would like to show it rather than hide it.

Yeah I appreciate that, but my point is that for most users, this would be confusing and we really would be better defaulting to the current behaviour but allowing power users, like yourself, a way to display it when needed.

> I use pavucontrol for a period of time, that software did not show itself on
> the control.
> it seems ignore, too.

Assuming you're now talking about the peak-detect streams, yes, it ignores streams where the application.id in the proplist points to itself. This is sensible! I think it's also sensible for kmix to ignore these streams. I think that makes sense but I don't think the code should use the name "Peak detect" to do so. It should properly compare the application.id and ignore them that way as it does not suffer from false positives nor will it be affected by any future (or current) i18n issues.
Comment 7 TOM Harrison 2014-04-10 09:03:40 UTC
i would like to ask what is the ide that develop the kmix?
i am qtcreator now,
because the kmixui.rc in my computer always show the original xml.
Comment 8 TOM Harrison 2014-04-10 09:58:14 UTC
Created attachment 86030 [details]
new patch for using application.id
Comment 9 Colin Guthrie 2014-04-10 10:03:33 UTC
Comment on attachment 86030 [details]
new patch for using application.id

That looks better!

I'm not an active developer these days, but if Christian is listening, the second hunk of that patch seems OK to commit IMO. The startWith() could just be changed to an equality test.

I'd suggest not pushing the first hunk of the patch (they are separate issues) as it would confuse a lot of users (e.g. the GNOME gui also does not list monitor sources), but if someone can come up with a way to make this a configuration option or similar (with the default behaviour unaffected) then this would IMO be fine to include.

HTHs
Comment 10 TOM Harrison 2014-04-10 11:07:20 UTC
i hope there will a profile with pulseaudio.
I did not fully understand the kmix.

for now, i will continue use this trick to show  the monitor
Comment 11 TOM Harrison 2014-04-11 03:25:55 UTC
I have successfully enable profile for pulseaudio.

The problem of pulseaudio cannot use profile is causing by the write profile
      << " name = \"" << xmlify(guiprof._soundcardName).toUtf8().constData() << "\"" << endl
this code
the name of pulseaudio can not be apply toUtf8().constData(), so just remove them, and everything work.
but is seems has some bug.
Comment 12 TOM Harrison 2014-04-11 05:25:43 UTC
but there are an problem that i have occured, I cannot find any list that contain enabled mixdevice list.
so i can not filter the dockwidget.
Comment 13 TOM Harrison 2014-04-11 05:28:24 UTC
Created attachment 86037 [details]
pulseaudio profile enable patch.
Comment 14 TOM Harrison 2014-04-11 07:37:37 UTC
Created attachment 86040 [details]
fixing the pulseaudio profile support that enable too much feature.
Comment 15 TOM Harrison 2014-04-11 08:03:08 UTC
Created attachment 86041 [details]
using better way to enable the configure channels button.
Comment 16 TOM Harrison 2014-04-11 15:30:08 UTC
Created attachment 86044 [details]
modify the profile support
Comment 17 Andrew Crouthamel 2018-11-11 04:26:30 UTC
Dear Bug Submitter,

This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond.

Thank you for helping us make KDE software even better for everyone!
Comment 18 Andrew Crouthamel 2018-11-21 04:21:12 UTC
Dear Bug Submitter,

This is a reminder that this bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? This bug will be moved back to REPORTED Status for manual review later, which may take a while. If you are able to, please lend us a hand.

Thank you for helping us make KDE software even better for everyone!
Comment 19 Justin Zobel 2023-01-02 07:43:57 UTC
Thank you for reporting this issue in KDE software. As it has been a while since this issue was reported, can we please ask you to see if you can reproduce the issue with a recent software version?

If you can reproduce the issue, please change the status to "REPORTED" when replying. Thank you!
Comment 20 Bug Janitor Service 2023-01-17 05:16:36 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 21 Bug Janitor Service 2023-02-01 05:05:52 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!