PeppyMeter

Thanks. Are you sure the attached mpd.log comes from the attached mpd.conf?

I do not understand this: in your previous OK - no DAC.zip mpd.log shows that devices were being opened in the very same order as in mpd.conf. Yet the mpd.log from the last post has peppyalsa as the second (failing), even though it is the last in the mpd.conf.

Or, can you remove peppyalsa from the mpd.conf completely a try to run mpd a attach the log? IMO all the other devices should behave just the same way as peppyalsa with the single-substream DAC, definitely at least the invpolarity device which uses no special plugins, just plug and route and uses hw:0 like all the other plugins. But the existing mpd.log fails before mpd gets a chance to try opening it.
 
hi Phofman,
herewith enclosed please find the results.
I have noted a anomaly in aplay -F peppyalsa e pippo are still present!!!
I will try to get a clean installation with the original "mpd creator file" and see what happen.
Regards,
Francesco
 

Attachments

  • test_for_Phofman-03.zip
    2.6 KB · Views: 56
Hi Phofman, hi all,
I had to rebuild the system from scratch. now, the situation (as attached) is a clean system with the DAC board, without any modification and without peppyalsa.
Thank again very much and best regards,
Francesco
 

Attachments

  • test_for_Phofman-04.zip
    7.9 KB · Views: 46
Thanks for the files.

IMO this is the problem:

If you look at the bcm8235 vs. DAC systems with equal mpd.conf (no peppyalsa output), the difference is on the DAC system mpd.log does not mention any attempts to open the other alsa outputs. They would fail just like peppyalsa, at least the invpolarity one. How does MPD know it should not use them?

I tried looking at MPD source code but could not find anything, the plugin logic is quite complicated. Maybe the mpd verbose log would help. Please can you add 'log_level verbose' to mpd.conf (perhaps moode already has some GUI for that) and post config + aplay -l +mpd.log for the bcm8235 and DAC setups? I want to find out the mechanism MPD uses to skip opening the extra alsa outputs for single-substream soundcards. Maybe there is some call peppyalsa does not implement correctly, I really do not know now.
 
Hi Phofman, hi ALL,
I confirm that the log is in verbose mode.
As mentioned I had built a system, without any additional DAC board, from scratch and tested it in the following modes:
01. without peppyalsa. the sound very good
02. with peppyalsa: slave on hw:0,0. Peppyalsa is ok, but the sound is not good
03. with peppyalsa: slave on null. Peppyalsa is not ok, the sound is very good.

I did all the tests modifying the mpd.conf manually and restarting MPD only.
Tomorrow I will do the same tests with the system with the additional DAC board.
Regards and thanks,
Francesco
 

Attachments

  • peppyalsa - 01_no DAC - no Peppy .zip
    7.9 KB · Views: 51
  • peppyalsa - 02_no DAC - Peppy HW00.zip
    8.6 KB · Views: 51
  • peppyalsa - 03_no DAC - no Peppy null.zip
    8.7 KB · Views: 50
There must be something else going on in the configuration.

Let's talk about 02. The config has all alsa outputs, yet mpd.log shows using/opening only:

Code:
Jan 21 21:03 : output: opened "ALSA default" (alsa) audio_format=44100:16:2
Jan 21 21:03 : output: opened "peppyalsa" (alsa) audio_format=44100:24:2

Now look at https://www.diyaudio.com/forums/pc-based/291010-peppymeter-42.html#post6495692 , peppyalsa OK - no DAC. mpd.conf contains the same devices (just peppyalsa second, not last), yet the log shows:

Code:
Jan 18 23:58 : output: opened "ALSA default" (alsa) audio_format=44100:16:2
Jan 18 23:58 : output: opened "peppyalsa" (alsa) audio_format=44100:24:2
Jan 18 23:58 : output: opened "ALSA crossfeed" (alsa) audio_format=44100:24:2
Jan 18 23:58 : output: opened "ALSA parametric eq" (alsa) audio_format=44100:24:2
Jan 18 23:58 : output: opened "ALSA graphic eq" (alsa) audio_format=44100:24:2
Jan 18 23:58 : output: opened "ALSA polarity inversion" (alsa) audio_format=44100:16:2

How do you control which outputs are used/opened?
 
Hi Phofman,
I built those 3 new tests to have a clean situation. Previous configurations may have been generated from strange and layered tests. If you need I can try to reproduce it, I have the relative SD. I don't know why all the "alsa" were opened. Those "alsa" are related to some functions available on the moOde GUI that I have never enabled.
I would like, today, if you have no other urgent requests, simulate tests 02 and 03 on the configuration with the additional DAC, to see if "device busy" appears again, that means two different behaviors.
Have a nice day and thank you,
Francesco
 
Hi Phofman,
As scheduled, I built these 3 new tests (as for the configuration without the DAC board) with the additional DAC board,to have a clean situation. Unfortunately, but as expected, the "device busy" appears again, so the big difference is that without the DAC we can configure and send data to the HW:0,0, that seems to be impossible with the additional DAC board. I confirm that with a "null" as a slave, peppy alsa opens the fifo file but does not send data.
Thank you and best regards,
Francesco
 

Attachments

  • peppyalsa - 03_with DAC - Peppy null.zip
    8.7 KB · Views: 60
  • peppyalsa - 02_with DAC - Peppy HW00.zip
    8.7 KB · Views: 53
  • peppyalsa - 01_with DAC - no Peppy.zip
    7.9 KB · Views: 52
Hello Phofman and hello to everybody,
I did the same tests already done on a system without "any DAC" board and on another system with the "AUDIOPHONICS DAC", on another system with an "ALLO DAC" and the results are the same.
Please find attached the results of these last tests. would you please be so kind to help me with any other suggestion?
Thanks and best regards,
Francesco
 

Attachments

  • peppyalsa - 01_with DAC Allo - no Peppy.zip
    7.9 KB · Views: 51
  • peppyalsa - 02_with DAC Allo - Peppy HW00.zip
    8.5 KB · Views: 60
  • peppyalsa - 03_with DAC Allo - Peppy null.zip
    8.7 KB · Views: 52
There is no reason a different sound device with a single substream (incapable of stream mixing) should behave differently.

I keep repeating my question with no answer: why does mpd not try to open the invpolarity device, while it does try to open peppyalsa? Why is MPD handling these two devices differently? There must be something else controlling which devices are used and which are ignored.

Nevertheless, why can't you remove the ALSA default device from MPD config and play through the peppyalsa device which should be passing samples to hw:0 (being its slave)?
 
Hi Phofman,
I apologize: I understood that your questions were rhetorical: as if you were asking yourself "Why doesn't this work?", sorry again.
However, I try to answer, providing my point of view / opinion:

Why does mpd not try to open the invpolarity device, while it does try to open peppyalsa?
As I mentioned, there are some options in the moOde GUI: at the moment they are disabled. One of them is "Polarity inversion". If you find it interesting for troubleshooting, I can enable one or more.

Why is MPD handling these two devices differently? There must be something else controlling which devices are used and which are ignored.
I don't know, I am trying to study some .PHP to see if there is any is controlling that.

Nevertheless, why can't you remove the ALSA default device from MPD config and play through the peppyalsa device which should be passing samples to hw:0 (being its slave)?
I will try and report to you the results.

Thank you very much and best regards,
Francesco
 
This is where moode tells MPD which specific output to use moode/worker.php at 7d3b2812df082f0d941eb2e466a38dc3966fb758 * moode-player/moode * GitHub . This is the reason MPD does not use all the non-disabled outputs (which otherwise would all be used since they are not disabled specifically in mpd.conf - see User’s Manual — Music Player Daemon 0.22.4 documentation parameter enabled)

Now I wonder why peppyalsa output is in your moode enabled when only output 1 should be enabled by mpc enable only 1. Do you have any changes in your moode?
 
Last edited:
Hello Phofman,
That is one of the .php which I tried to change to enable the automatic creation of mpd.conf. After you suggested me to do not restart the system but mpd only, I craeted all new systems from scratch, without any modification.
Last new: I have tried without the default alsa but only with peppyalsa and it is working!!!
We have, now, to study how worker.php and playerlib.php work and how to modify them; question: are there any other file to be modified?
Best regards and thanks,
Francesco