Mocp strange volume bug

Forums:

So, I've encountered a strange bug..
Currently, when I adjust the volume within mocp, it is only audible from 90%-100%.

When opening 'alsamixer' on the same computer, it seems that..
[MOCP - AlsaMixer(real)]

89% - 2%
90% - 11%
91% - 21%
92% - 30%

etc..

So I can only change volume for per 10% within mocp..

As you can imagine, it's pretty frustrating!!

It didn't happen yesterday, and I don't think I did anything over-night.. I just listened to the radio(That being said, I'd never used the radio on mocp before)..

Here's my config file for mocp..

Theme = /usr/local/share/moc/themes/green_theme

## Show file titles (title, author, album) instead of file names.
ReadTags = yes

MusicDir = "/home/user/Music"

ShowStreamErrors = yes

Repeat = yes

AutoNext = yes

FormatString = "%(n:%n %t:%t)"
#%(a:%a - :) %(t:%t:)%(A: (%A):)"

HideFileExtension = yes

I'm using external Bose speakers, and in AlsaMixer the only 'playback' device is a single 'PCM'. (In MOCP, the volume thing is Master 90% -- Could this be the reason?)

I'm using PulseAudio and ALSA.

Thanks

Also, here's my list-sinks from pacmd.. (While using mocp, just incase that matters)
>>> 1 sink(s) available.
* index: 0
name:
driver:
flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: RUNNING
suspend cause:
priority: 9049
volume: 0: 93% 1: 93% 2: 93% 3: 93% 4: 93%
0: -1.89 dB 1: -1.89 dB 2: -1.89 dB 3: -1.89 dB 4: -1.89 dB
balance 0.00
base volume: 100%
0.00 dB
volume steps: 65537
muted: no
current latency: 75.39 ms
max request: 35 KiB
max rewind: 853 KiB
monitor source: 0
sample spec: s16le 5ch 48000Hz
channel map: front-left,front-right,rear-left,rear-right,lfe
Surround 4.1
used by: 1
linked by: 1
configured latency: 74.99 ms; range is 0.50 .. 1820.44 ms
card: 0
module: 4
properties:
alsa.resolution_bits = "16"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = "USB Audio"
alsa.id = "USB Audio"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "0"
alsa.card = "0"
alsa.card_name = "Bose USB Audio"
alsa.long_card_name = "Bose Corporation Bose USB Audio at usb-0000:00:1d.0-1.8, full speed"
alsa.driver_name = "snd_usb_audio"
device.bus_path = "pci-0000:00:1d.0-usb-0:1.8:1.0"
sysfs.path = "/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.8/2-1.8:1.0/sound/card0"
udev.id = "usb-Bose_Corporation_Bose_USB_Audio-00-Audio"
device.bus = "usb"
device.vendor.id = "05a7"
device.vendor.name = "Bose Corp."
device.product.id = "1020"
device.product.name = "Bose USB Audio"
device.serial = "Bose_Corporation_Bose_USB_Audio"
device.string = "surround41:0"
device.buffering.buffer_size = "873810"
device.buffering.fragment_size = "436900"
device.access_mode = "mmap+timer"
device.profile.name = "analog-surround-41"
device.profile.description = "Analogue Surround 4.1"
device.description = "Bose USB Audio Analogue Surround 4.1"
alsa.mixer_name = "USB Mixer"
alsa.components = "USB05a7:1020"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-usb"
ports:
analog-output: Analogue Output (priority 9900, available: unknown)
properties:

active port: analog-output

It's as if there is a config file somewhere which says the 'internal mocp' volume.., or it says that it should jump 10% each , or . press, thus only using 89%-100%.. But I don't think there should be..

Could I have pressed some button that I shouldn't have?..

Were you able to fix it? I've the same problem. But I also noticed that "amixer" seems to be buggy. Is moc using amixer for volume control? Might explain it. Both - moc and amixer - show wrong values whereas alsamixer seems to work fine.

As a temporary workaround you may try to use soft mixer in MOC. I have a bit similar problem with MOC - which is however not a bug per se :) My USB soundcard gives much too loud sound, so I'm forced to use MOC volume from range 0-10% and for some reason, that's only two or three discrete steps in loudness. Probably my soundcard has less than 100 levels of volume :)

SoftMixer works well, thanks :)

No fixes yet!!

I'm thinking, perhaps alsa or amixer has updated? Maybe it's changed and mocp has lost functionality?

Edit: AMixer and AlsaMixer seems to be the same for me.

Alsamixer: 32 PCM

Amixer:
amixer
Simple mixer control 'PCM',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined penum
Playback channels: Mono
Limits: Playback 0 - 100
Mono: Playback 32 [32%] [-2.13dB] [on]

Just FYI, I've fixed it by completing wiping anything to do with sndfile from my disk, and re-installing it.

See http://moc.daper.net/node/937

I don't see why wiping sndfile files alone would have remedied this problem, but it does confirm that the cause was external to MOC.

Firstly, sorry for not replying earlier. I missed the notification e-mail due to a significant outage at my ISP.

I don't really understand this problem, but believe it's external to MOC. That I don't understand it and you say it appeared overnight also suggests that is the case.

The only thing I can think of right now which might have relevance is the softmixer. Check the ~/.moc/softmixer file; it should look like this (assuming you haven't set anything explicitly):

<br /> Active: 0<br /> Amplification: 100<br /> Value: 100<br /> Mono: 0<br />

Updating softmixer didn't work. I even tried just deleting the file.

I also tried a completely 'new' mocp install, but to no avail.

I'd say it's something Ubuntu has done in the past few weeks or something, and an update has made it not work..

I'm now using softmixer now though. 'Master' at 92%(30% in AlsaMixer, AND amixer), and selecting the 'real' volume through 'Soft'..

Is there any way to save the 'Soft' setting? - Got it: Softmixer_SaveState = yes

Thanks