Page 1 of 3

Posted: Thu 22 Feb 2007, 19:49
by rarsa
What do you mean by "jerky"?

I actually put a delay for reacting to external volume changes (200 milliseconds) so it is not using too many resources while idling.

This is version 0.1 so keep the critique and advice comming I am sure there is a lot of room for improvement.

Here are some of the issues I know of:

- If you change the volume with the tray-volume, the balance will return to 50%. I will fix that when I finish integrating both.

- To unmutte you must set the volume to other than 0 as it does not remember what the volume was before mutting. I will fix this when I finish integrating with the tray volume as the mixer will be always in memory so it will be able to remember.

- The balance contols are very small and that may account for the "jerkyness". Any ideas of how to visualy organize it so the balance scales have a larger range?
My first try had independent scales for left and right levels, no balance scale. That made setting the volume for each channel very precise but I found it cumbersome. Should I bring that idea back?

- I also don't like that bringing balance to the center is difficult. Ideas here will also be appreciated. Maybe adding a clickable tickmark?

Posted: Thu 22 Feb 2007, 20:31
by Nathan F
My first try had independent scales for left and right levels, no balance scale. That made setting the volume for each channel very precise but I found it cumbersome. Should I bring that idea back?
How about this, just make the balance into a vertical slider right next to the device it is controlling? Although that would make the whole app quite a bit wider just like if you were using a volume per channel. But that is a more user-centric way of doing things than having to adjust the volume left and right every time in order to change the volume.

Alternatively, if you were to use a separate slider for left and right, a checkbox to lock the sliders together so they move in sync would be nice. Otherwise itwould be very annoying to just change the volume for a device, since you have to move two sliders.

If you go with the present arrangement, which I don't have a problem with BTW, then yes, a checkbox to return the balance to center would be nice.

As I said before, the jerkiness was probably due to issues with system resources rather than any deficiency in your application. I just tested it again, this time with only madplay running in a console and the browser shut down. The response is near instantaneous in this case.

I'm wondering now, if Barry would agree to adding Gnocl to Puppy would it be a good idea to port the mini-volume applet over? Right now I dislike the tiny little slider in the present app, and I think rendering that with a gtk widget would be an improvement.

Nathan

Posted: Thu 22 Feb 2007, 20:46
by rarsa
Nathan F wrote:How about this, just make the balance into a vertical slider
Thought about this but I got to the strong conclusion that left and right should be represented as left and right, not up and down :)
Nathan F wrote:Alternatively, ... a checkbox to lock the sliders together so they move in sync would be nice.
That was definetively part of that implementation. I meant cumbersome because to adjust balance you have to
1. Click the "unlink" control
2. Adjust the left level
3. Adjust the right level
4. Click the "link" control

Once linked changing the volume is not a problem.
I'm wondering now, if Barry would agree to adding Gnocl to Puppy
I'm making my case through actual applications that look better and are smaller than the applications they replace, so the 125KB for gnocl will be "paid for" with the reduction in size those other applications.
Right now I dislike the tiny little slider in the present app, and I think rendering that with a gtk widget would be an improvement.
The size of the slider is a parameter for the widget. The slider for the volume control I have in my computer is larger but didn't release it as nobody commented on it. I thought that it was just me that didn't like it.

That's why I really appreciate the critique and comments to my contributions.

Posted: Mon 26 Feb 2007, 05:59
by rarsa
Version 0.2 uploaded

http://www.murga-linux.com/puppy/viewto ... 8536#98536

Changes:
- Now I understand what balance jerkiness you were talking about. It's now hopefully fixed !
- It now uses less CPU resources. Now it only checks regularly the devices that exist (before it was checking again every possible device)

Debuging the jerkiness was tough. The culprit was Tcl math: It was doing integer math when I was expecting to do floating point so it was rounding... A factor so it was either 0 or 1 !!

Posted: Mon 26 Feb 2007, 07:03
by Nathan F
Does indeed seem better and use less resources. I did have another thought, and I wonder how hard it would be to implement. Would it be feasible to add a numerical scale and spinbox like in this volume control? The numerical figure is useful for setting balances between different inputs.

Nathan

Posted: Mon 26 Feb 2007, 09:04
by Kal
Been watching, balance works great and now I have removed my other mixer entry from menu. Hope this replaces Zmix and it's the balance that really puts it over the top. Your to do list, would be just frosting on the cake.
Super Thanks, Kal

Posted: Mon 26 Feb 2007, 14:42
by rarsa
Nathan F wrote:Would it be feasible to add a numerical scale and spinbox like in this volume control?
Yes it is feasible and quite easy to do.

Would you consider it to be part of the "standard" view or to be an option for "advanced" users. I wouldn't like to clutter the interface for regular use.

I'm guessing that for most users close enough is good enough although I agree that when balancing sources it's important to be as precise as possible. e.g. for recording.

Regarding the Left/Right balance. Would people require finer control? For example, incremens of 1 instead of the current incremens of 10?

Posted: Mon 26 Feb 2007, 19:58
by Nathan F
If you have any intention of making a standard view/advanced view configuration then yes, I would put the numerical scale in the advanced view. As far as the balance scale goes I don't think increments of one would work with the tiny horizontal sliders, but perhaps for an advanced view that could be changed.

This is all hypothetical right now, correct? Like you said, close enough is good enough for most users. I'm just spitting out ideas here.

Nathan

Posted: Mon 26 Feb 2007, 20:36
by rarsa
Nathan F wrote:This is all hypothetical right now, correct?
Well, actually the "Options" functionality is in the books:

The ideas I have up to now are the following:
- Have different "modes" e.g. Listen. Record. showing different scales
- Select scales to show
- Change the label for the scales (e.g. my "alt pcm" controls my earphones)
- Show/Hide tooltips showing the level for the sliders
- Change the frequency for synchronizing the sliders with the actual volume. (Right now it's every second and takes about 5% CPU in my computer)
- Your sugestion to show a spinbox for finer control

Posted: Sun 04 Mar 2007, 00:41
by rarsa
Version 0.3 uploaded

http://www.murga-linux.com/puppy/viewto ... 8536#98536

Changes:
- Added volume spinners for finer volume control (as requested by Nathan)
- Added menu
- Added Options window to select devices to show.

Posted: Sun 04 Mar 2007, 03:53
by brad_chuck
This is the shot of the new version running on my computer.

"Speaker" and "Master" don't do anything. They move but the sound is not changed.

I have PCM that works on both your program then there is Front and Headphone that I can only control with alsamixer.

Posted: Sun 04 Mar 2007, 04:08
by MU
woohoo... this rocks... we get so many great new grafical applications with the new programming tools... this is fantastic! :D
Mark

Posted: Sun 04 Mar 2007, 04:54
by rarsa
brad_chuck wrote:"Speaker" and "Master" don't do anything. They move but the sound is not changed.
Speaker is for the internal computer speaker. Many modern computers don't have a speaker any more.
I have PCM that works on both your program then there is Front and Headphone that I can only control with alsamixer.
In one of my computers "Alt pcm" is actually the headphones. It seems to be the case in your computer too.

If people can confirm that's the case in most computers, then I can rename the "alt pcm" to "Headphones".

Another little detail that my sons brought to my attention is capitalization of the labels. How do you feel about the lowercase?

Posted: Sun 04 Mar 2007, 05:05
by brad_chuck
OK, Alt PCM is the headphone. That leaves Front... There is no way to control it.

I don't use a mixer I just leave the Headphone and PCM up and have the Front connected to my hardware volume button with xbindkeys.

But new Puppys may get confused or think there sound card does not work if they use the mixer and the front is down ( as my computer is after each reset ). They turn everything up and no sound.....

There has been a lot of talk about looks. This program looks great. good work.

I like PCM, Main, Alt. PCM. So I vote upper case.

Posted: Sun 04 Mar 2007, 06:08
by rarsa
brad_chuck wrote:OK, Alt PCM is the headphone. That leaves Front... There is no way to control it.
mmm, I don't have a "front" so I have no way to test, but I see that the alsa mixer shows way more devices than the devices exposed by /dev/mixer.

setvol uses /dev/mixer which is a prety standard and safe way that works in most (all?) configurations.

But here is a big Thank you! for reminding me about doing it directly with ALSA.

Thanks to you reporting this behaviour (or lackof) I just decided that if ALSA is available, I will use it directly to control the volume. It will require some extra work because the amixer command syntax is not as straight forward as setvol, but I'm sure I can come up with something.

Stay tunned and I'll appreciate if you can test once I release the Alsa version.

Posted: Sun 04 Mar 2007, 16:01
by rarsa
Brad, (And everyone else that reads this post)

Please execute the following command and attach resulting amixer.tar.gz file

Code: Select all

 amixer > amixer.txt && tar -cvzf amixer.tar.gz amixer.txt && rm amixer.txt

Posted: Mon 05 Mar 2007, 02:55
by xandas
Rarsa: I must thank you for your work. I have no time to try your mixer, but as it is stated in another threads, there is a mess with the voip phones as Skype or Xten-Xlite (a generic one).
With Puppy 2.02 and its mixer xtmix, both phones run ok.
In the new versions, 2.13, 2.14 and Pizzapup, they don't works.
The remote user tell us not hearing our voice.
Xtmix have a small button, like a dot, that enables the mic capture. Zmix does not have it.
I think was Gen Too that kindly suggest to enable directly the mic through the order "amixer set mic 98% unmute cap".
It is not possible you include the mic capture on/off button into your mixer?.

I think in the new versions Alsa install was too much trimmed lacking drivers for legacy cards and so on. But perhaps this may be the subject of another thread.

Thanks
Xan

Posted: Mon 05 Mar 2007, 03:58
by rarsa
xandas wrote:It is not possible you include the mic capture on/off button into your mixer?
It's in my plans but first I need to have the output of the command in my previous post from as many users as possible. Please execute it and post the file.

Posted: Mon 05 Mar 2007, 04:52
by Pizzasgood
Shut up phpBB! I don't need no stinkin' message! MUahaahahahahahaahhaaahaaaahaaaaahahaaaaahahaaaaahahahaaaa.......

...erm.... :? ..as you were...

Posted: Mon 05 Mar 2007, 07:11
by Nathan F
I'll post mine tomorrow, I'm in another OS right now and have a few downloads going that I don't want to interrupt.

Nathan