Page 1 of 2

Multiple Sound Card Wizard

Posted: Tue 30 Jun 2015, 12:21
by Geoffrey
Here is a new Multiple-Sound-Card-Wizard, rewritten by rg66 and I, the original in Tahr pup wouldn't set the correct mixer setting for the cards that were selected.

This version now uses buttons to select the cards and saves the custom setting of each card, which are recalled upon card selection.

Backup the old Multiple-Sound-Card-Wizard in /usr/bin and extract the tar.gz to replace it.

Posted: Wed 01 Jul 2015, 15:19
by OscarTalks
Thanks Geoffrey and rg66 for working on MSCW.
I do use multiple soundcard machines quite a lot and don't normally use the wizard because the problem remains that on reboot the card numbers (index numbers) can get randomly shuffled, so if card 1 has been set that is all well and good but the card that has been allocated as card 1 can change. This tends not to happen with USB soundcards but does happen with integrated mobo and PCI soundcards.

My solution for locking this down is to edit alsa-base.conf and reboot. I never need the wizard after that and I have often wondered if it would be possible for the wizard to approach things this way.

I did a test of your re-write in Dpup Wheezy and there is a blank splash message that appears when I run the wizard. I don't think it is anything that is affecting the function though.

EDIT:-
Perhaps it just needs to be pointing to an icon that actually exists in older Pups than Tahr? If you do that then the text also shows in the splash.

Posted: Wed 01 Jul 2015, 20:06
by rg66
Yes, your right. If it doesn't find the icon it won't show the text either. It looks like dpup doesn't have either icon it uses, will have to sort that out, thanks.

Posted: Tue 07 Jul 2015, 13:36
by darkcity
Will have to try this. Multiple sounds cards haven't worked for me since Slacko 5.3.1.

Posted: Sat 29 Aug 2015, 02:13
by musher0
@Geoffrey:

Thanks for this.

I saw your contribution of this new Multiple-Sound-Card-Wizard on the
Woof-CE github forum the other day, and was thinking of sending you a
PM about it. Nice coincidence.

With your edited script, now the sound wizard correctly shows only the
unique sound card that I have (no doubles), which is the one incorporated
on the motherboard.

However, I still cannot get any sound on my PuppyPrecise-5.4.3. I was
wondering if you or someone reading this thread could help me.

Is there a file I have to erase, or some special procedure I need to follow
to get the sound back?

To make a long story short, the computer on which this PPrecise-5.4.3
("CanBike" variant) lived died on me, so I have migrated the sfs's
and the pupsaves to my back-up computer. The sound did work fine on
the now defunct computer.

If it may help the "Hard Info" report for my replacement machine, an old
Acer with the AMD 2600+ CPU, is attached.

Many thanks in advance. BFN.

musher0
~~~~~~~~~~~~
P.S. I have the same problem with the Puppy CE published in late 2013
(I can't remember who the author is, sorry), although this Puppy CE set-
up wasn't "migrated". The sound just stopped for no apparent reason,
other than that the computer was not used for +/- a year and a half.

Posted: Mon 31 Aug 2015, 20:37
by musher0
Hello, Geoffrey and all.

I finally solved the problem by making a new pup-save of PPrecise-5.4.3 and looking
at the differences in /etc between the new one and the old pup-save.

(NOTE. In any Puppy, you can mount a not-in-use pup-save file for info, copy or
delete, etc., by double-clicking on it. But be sure you know what you're doing before
deleting anything
.)

First thing I did once in the the new pup-save is to test the sound. Hurray! It worked
OOTB, I could play mp3's !

Looking at the differences in the save files, I noticed that in /etc, the new pup-save didn't
have any asound.conf files. Also, the sizes of the asound.state file in the pup-saves
were different.

So I removed the asound.conf files in the old pup-save and copied over the
asound.state from the new pup-save to the old.

When I rebooted in the same PPrecise-5.4.3 with my old pup-save file, I had the
sound back! :D

Now that I knew the trick, I rebooted in wanderer's CE-3 Puppy and did the same thing
-- plus in this one I ventured to remove the asound.state file as well. Upon rebooting,
same result: I had the sound back in CE-3 Puppy. I noticed that in this case, the
asound.state file in /etc had been re-created automatically at boot time.

Since I had my sound back, I didn't dare touch or edit the retrovol or alsa mixer
configs... ;) in any of these Puppies for fear of re-creating the problem.

I hope the above can help anyone in the same situation!

BFN.

musher0

~~~~~~~~~~~~;
P.S. Although I didn't use any of its info directly, I found this trouble-shooting article
very knowledgeable and informative about how sound comes to be heard -- or not -- in
any Linux distro. (This is not uniquely a Puppy issue; Linux Mint has the problem too.)

Posted: Fri 12 Feb 2016, 01:06
by jlst
I have updated this utility... check it out and provide some feedback..

Posted: Fri 12 Feb 2016, 01:12
by moeppyfan
Hello jlst,

For me, the "Report" button doesn't do anything. Changing this fixes it.

Code: Select all

function MSCW_REPORT() {
	bash -c cardinfo > /tmp/mscw.report.txt
	defaulttextviewer /tmp/mscw.report.txt
}

Posted: Fri 12 Feb 2016, 01:24
by jlst
Thanks moeppyfan. I have fixed the script

Posted: Fri 12 Feb 2016, 21:53
by mavrothal
Looks like it has a lot of additions compared to the previous version .
Works fine though.
Is it suppose to ignore HDMI cards or not? (it does not)

Posted: Fri 12 Feb 2016, 22:43
by jlst
HDMI detection works when there is no selected card.

Code: Select all

rm /var/log/mswc-selected 
Even when that file exists there is an automatic behavior to correct possible issues... that is when delayedrun calls it: M.... start, I guess you're using the delayedrun i sent you..

Reboot, then I want to see the contents of /tmp/services/mscw.start.log

Posted: Sat 13 Feb 2016, 01:48
by musher0
@jlst:

Here is the report produced by your edited MSCW.

I tested your script on our "Experimental Pooch" dpw-3.14.56. Visually I can see no
noticeable difference with the old MSCW, except the report button.

I can hear no difference either when I click on the test sound button in the general
ALSA sound wizard. I mean: the dog barks! :)

I hope this helps your research somehow.

BFN.

Posted: Sat 13 Feb 2016, 05:47
by mavrothal
jlst wrote:Reboot, then I want to see the contents of /tmp/services/mscw.start.log
I will but tell me what you want checked. Should the build include the modified delayedrun and 10alsa? Should it be in pupmode 5? Is it expected to autorun when alsa is not configured or it detects a non/mal-functioning sound card but not run if it detects a working sound card?
Should I modify my sfs (for pupmode 5) or is ok to install afterwards?
ie give a list of the expected behaviour and added functions :wink:

Posted: Sat 13 Feb 2016, 06:30
by Geoffrey
@jlst:

I haven't looked to closely at it, but from running it I don't see a lot of difference,
though the button text as reverted back to the original and it shows the current active card as a button also
which in mine and rg66 version was removed as it wasn't required.

Maybe you could give a changes explanation on the script, it's a big change from 87 lines to 359 :wink:

Posted: Sat 13 Feb 2016, 08:28
by mavrothal
@jlst
Tried your 0212 version in pupmode 5 (modified SFS) with the new 10alsa and modified delayrun.
mscw comes up indicating the (correct) analog cart is picked. However this is not the case.
I need to first pick a wrong card through mscw and then pick the correct one for the card to be selected and function.
Even then adjusting the volume through the retrovol slider does not work, however, right-click > main window you can adjust the volume through the master slider.
Some logs are attached.
I have the feeling that the 0208 version was better behaved.

Posted: Sat 13 Feb 2016, 16:20
by jlst
muhser0, thanks

Geoffrey, this MSCW is intented to work like xorgwizard-automatic but for soundcards.
Besides the GUI, most of the code is to handle sudden changes
and possible issues with sound cards to ensure working sound on startup.
But that requires integration with delayedrun, mavrothal is testing that feature.

mavrothal, the logs show a correct behavior, but it lacked some code to
actually make it work... this might fix it.. please try again..
and don't forget to ignore the MSCW window and just play something.. sound should work.
Save session, reboot, MSCW should not pop up and sound must still be working...

After that, try the gui and report if it's if it's behaving as a user would expect...

Posted: Sat 13 Feb 2016, 17:45
by mavrothal
0213 works as advertised.
Picks up the correct card and sound (including retrovol) works OOTB.
Keeps quiet on restart.
GUI works as expected also.
Logs attached.

I guess in its final form will not need to popup on first boot and can have the logging only in debug mode or when users calls it because the automatic mode failed or the user prefers another card.
When I user calls the GUI and a card is picked already as default the message at the top better say "Choose another default sound card" instead of just "Chose default sound card"

Posted: Sun 14 Feb 2016, 03:20
by jlst
Actually, even retrovol could launch MSCW

https://github.com/wdlkmpx/retrovol

Posted: Sun 14 Feb 2016, 04:42
by rg66
jlst wrote:Actually, even retrovol could launch MSCW

https://github.com/wdlkmpx/retrovol
Geoffrey and I did that some time ago, have a look here: http://murga-linux.com/puppy/viewtopic.php?t=100081

Posted: Mon 15 Feb 2016, 16:36
by jlst
This is the new MSCW, a GUI and command line utility, all in one.