You are not logged in.
Pages: 1
Dear Archers,
An odd (bug?) situation:
I have a USB DAC which presents PA with both analogue and IEC958 outputs. When I restart the computer having left the output set to analogue, all is normal with my audio levels. Restarting the machine with digital output (my preference) set causes the machine to playback at something like 50% (too quiet). Flipping the output back and forth allows IEC958 to reach the correct max volume. Any way to fix this without having to manually flip digital on/off every time I boot?
the flat setting seems to have no effect here.
Thank you.
Offline
Do you flip it through your PC or through your DAC? I ask because the problem might not be in digital but in analogue. I refer you to this.
Last edited by d_fajardo (2019-05-06 06:56:29)
Offline
I use pulsemixer. Digital > Analogue (Audio now normal > back to digital.
Offline
Can you post output of:
pacmd list-cards
pacmd list-sinks
You can just probably disable / blacklist your analogue card. My suspicion is the sound is getting amplified twice with analogue - from your internal computer DAC then once again by your USB DAC. I might be wrong but the digital output should be the more accurate representation of the stream that goes straight to your DAC.
Offline
2 card(s) available.
index: 0
name: <alsa_card.usb-FiiO_DigiHug_USB_Audio-01>
driver: <module-alsa-card.c>
owner module: 6
properties:
alsa.card = "1"
alsa.card_name = "DigiHug USB Audio"
alsa.long_card_name = "FiiO DigiHug USB Audio at usb-0000:00:14.0-12, full speed"
alsa.driver_name = "snd_usb_audio"
device.bus_path = "pci-0000:00:14.0-usb-0:12:1.1"
sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb2/2-12/2-12:1.1/sound/card1"
udev.id = "usb-FiiO_DigiHug_USB_Audio-01"
device.bus = "usb"
device.vendor.id = "1852"
device.vendor.name = "GYROCOM C&C Co., LTD"
device.product.id = "7022"
device.product.name = "DigiHug USB Audio"
device.serial = "FiiO_DigiHug_USB_Audio"
device.string = "1"
device.description = "DigiHug USB Audio"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-usb"
profiles:
input:analog-stereo: Analog Stereo Input (priority 65, available: unknown)
input:iec958-stereo: Digital Stereo (IEC958) Input (priority 55, available: unknown)
output:analog-stereo: Analog Stereo Output (priority 6500, available: unknown)
output:iec958-stereo: Digital Stereo (IEC958) Output (priority 5500, available: unknown)
off: Off (priority 0, available: unknown)
active profile: <output:iec958-stereo>
sinks:
alsa_output.usb-FiiO_DigiHug_USB_Audio-01.iec958-stereo/#0: DigiHug USB Audio Digital Stereo (IEC958)
sources:
alsa_output.usb-FiiO_DigiHug_USB_Audio-01.iec958-stereo.monitor/#0: Monitor of DigiHug USB Audio Digital Stereo (IEC958)
ports:
analog-input: Analog Input (priority 10000, latency offset 0 usec, available: unknown)
properties:
iec958-stereo-input: Digital Input (S/PDIF) (priority 0, latency offset 0 usec, available: unknown)
properties:
analog-output: Analog Output (priority 9900, latency offset 0 usec, available: unknown)
properties:
iec958-stereo-output: Digital Output (S/PDIF) (priority 0, latency offset 0 usec, available: unknown)
properties:
index: 1
name: <alsa_card.usb-C-Media_Electronics_Inc._USB_PnP_Sound_Device-00>
driver: <module-alsa-card.c>
owner module: 7
properties:
alsa.card = "0"
alsa.card_name = "USB PnP Sound Device"
alsa.long_card_name = "C-Media Electronics Inc. USB PnP Sound Device at usb-0000:00:14.0-5, full speed"
alsa.driver_name = "snd_usb_audio"
device.bus_path = "pci-0000:00:14.0-usb-0:5:1.0"
sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/sound/card0"
udev.id = "usb-C-Media_Electronics_Inc._USB_PnP_Sound_Device-00"
device.bus = "usb"
device.vendor.id = "0d8c"
device.vendor.name = "C-Media Electronics, Inc."
device.product.id = "013c"
device.product.name = "CM108 Audio Controller"
device.serial = "C-Media_Electronics_Inc._USB_PnP_Sound_Device"
device.string = "0"
device.description = "CM108 Audio Controller"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-usb"
profiles:
input:analog-mono: Analog Mono Input (priority 7, available: unknown)
off: Off (priority 0, available: unknown)
active profile: <input:analog-mono>
sources:
alsa_input.usb-C-Media_Electronics_Inc._USB_PnP_Sound_Device-00.analog-mono/#1: CM108 Audio Controller Analog Mono
ports:
analog-input-mic: Microphone (priority 8700, latency offset 0 usec, available: unknown)
properties:
device.icon_name = "audio-input-microphone"
1 sink(s) available.
* index: 0
name: <alsa_output.usb-FiiO_DigiHug_USB_Audio-01.iec958-stereo>
driver: <module-alsa-card.c>
flags: HARDWARE DECIBEL_VOLUME LATENCY FLAT_VOLUME DYNAMIC_LATENCY
state: SUSPENDED
suspend cause: IDLE
priority: 9048
volume: front-left: 76677 / 117% / 4.09 dB, front-right: 76677 / 117% / 4.09 dB
balance 0.00
base volume: 65536 / 100% / 0.00 dB
volume steps: 65537
muted: no
current latency: 0.00 ms
max request: 0 KiB
max rewind: 0 KiB
monitor source: 0
sample spec: s24le 2ch 96000Hz
channel map: front-left,front-right
Stereo
used by: 0
linked by: 0
configured latency: 0.00 ms; range is 0.50 .. 1820.44 ms
card: 0 <alsa_card.usb-FiiO_DigiHug_USB_Audio-01>
module: 6
properties:
alsa.resolution_bits = "24"
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 = "1"
alsa.card_name = "DigiHug USB Audio"
alsa.long_card_name = "FiiO DigiHug USB Audio at usb-0000:00:14.0-12, full speed"
alsa.driver_name = "snd_usb_audio"
device.bus_path = "pci-0000:00:14.0-usb-0:12:1.1"
sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb2/2-12/2-12:1.1/sound/card1"
udev.id = "usb-FiiO_DigiHug_USB_Audio-01"
device.bus = "usb"
device.vendor.id = "1852"
device.vendor.name = "GYROCOM C&C Co., LTD"
device.product.id = "7022"
device.product.name = "DigiHug USB Audio"
device.serial = "FiiO_DigiHug_USB_Audio"
device.string = "iec958:1"
device.buffering.buffer_size = "1048572"
device.buffering.fragment_size = "524286"
device.access_mode = "mmap+timer"
device.profile.name = "iec958-stereo"
device.profile.description = "Digital Stereo (IEC958)"
device.description = "DigiHug USB Audio Digital Stereo (IEC958)"
alsa.mixer_name = "USB Mixer"
alsa.components = "USB1852:7022"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-usb"
ports:
iec958-stereo-output: Digital Output (S/PDIF) (priority 0, latency offset 0 usec, available: unknown)
properties:
active port: <iec958-stereo-output>
Last edited by bobberb (2019-05-07 18:34:17)
Offline
Please edit your post and use [ code ] tags (not quote tags) when posting output.
https://wiki.archlinux.org/index.php/Co … s_and_code
https://bbs.archlinux.org/help.php#bbcode
Offline
d_fajardo,
I appreciate your help thus far. The DAC presents both analogue and digital ports. I fear that if I were to blacklist the "port" (not the card) (and is this even possible?) I would be forever stuck at half volume. I need to flip to analogue and then back to digital to achieve the correct volume -- there is no double amplification through analogue. I only use analogue for milliseconds to "kick" the card to the correct volume.
Apologies if I was unclear.
Offline
OK, I see what you mean and I can see it on your card's profile. I don't have a clear answer. The only way I could think would help is to create a udev rule to trigger the flipping but others might have a better answer.
Offline
udev rules are way above my pay-grade, I have "fixed" this by executing a bash script on login to KDE to switch profiles to analog then back to digital.
Thank you for the input.
Offline
Yes, I was going to suggest that as well. After writing my post, I thought writing a script would be much simpler. Of course it's not really a fix as it doesn't really address the hardware issue, but I think your 'fix' is harmless enough.
Offline
I find this issue still relevant. Experiencing the same phenomenon (with FiiO e10k dac). Anybody gotten wiser with this?
Offline
I also encountered this problem that is because of kmix, my solution is install alsa-utils, and use alsamixer to change the setting. last, store the setting by "alsactl store" command.
Offline
Pages: 1