02-21-2019, 06:34 AM
I have a Allo Piano 2.1 which I used in subwoofer 2.2 mode. When I change the volume, alsamixer shows that the subwoofer volume does not change while the digital volume changes.
With Moode 4.2, I had to modify the following files to get the subwoofer volume to change with the Digital one. In files /var/www/inc/playerlib.php
function getMixerName($i2sdevice) {
...
The original code (for Moode 4.2) is
elseif ($i2sdevice == 'HiFiBerry Amp(Amp+)' || ($i2sdevice == 'Allo Piano 2.1 Hi-Fi DAC' && $_SESSION['piano_dualmode'] != 'None')) {
$mixername = 'Master';
I change the " != 'None')) " to "== 'None'. This way when in subwoofer 2.2 mode, dualmode is None therefore it would set the mixername to Master. What I have observe is that if you change the 'Master' volume with the amixer command , it will change the digital and the subwoofer volume at the same time.
Another file that need to be change is /var/www/command/worker.php at around line 367 and 371 there are these 2 amixer command:
sysCmd('amixer -c0 sset "Digital" 0');
and
sysCmd('amixer -c0 sset "Digital" 100%');
I replace the "Digital" with "Master". With these changes, the subwoofer volume is in sync with the digital volume.
Now the problem. I have just installed Moode 4.4 and made the same mods to the code in it. However it does not work. The subwoofer volume cannot be change. It seems like with this release, changing the "master" volume no longer cause the subwoofer volume to change. Could someone tell me what code is executed when the volume is changed. May be I can go there and see about how I can fix it.
Thanks
With Moode 4.2, I had to modify the following files to get the subwoofer volume to change with the Digital one. In files /var/www/inc/playerlib.php
function getMixerName($i2sdevice) {
...
The original code (for Moode 4.2) is
elseif ($i2sdevice == 'HiFiBerry Amp(Amp+)' || ($i2sdevice == 'Allo Piano 2.1 Hi-Fi DAC' && $_SESSION['piano_dualmode'] != 'None')) {
$mixername = 'Master';
I change the " != 'None')) " to "== 'None'. This way when in subwoofer 2.2 mode, dualmode is None therefore it would set the mixername to Master. What I have observe is that if you change the 'Master' volume with the amixer command , it will change the digital and the subwoofer volume at the same time.
Another file that need to be change is /var/www/command/worker.php at around line 367 and 371 there are these 2 amixer command:
sysCmd('amixer -c0 sset "Digital" 0');
and
sysCmd('amixer -c0 sset "Digital" 100%');
I replace the "Digital" with "Master". With these changes, the subwoofer volume is in sync with the digital volume.
Now the problem. I have just installed Moode 4.4 and made the same mods to the code in it. However it does not work. The subwoofer volume cannot be change. It seems like with this release, changing the "master" volume no longer cause the subwoofer volume to change. Could someone tell me what code is executed when the volume is changed. May be I can go there and see about how I can fix it.
Thanks