Summary: | Stereo Profile is missing FAST TRACK ULTRA USB Audio card | ||
---|---|---|---|
Product: | PulseAudio | Reporter: | Stéphane <mathojojo> |
Component: | alsa | Assignee: | pulseaudio-bugs |
Status: | RESOLVED MOVED | QA Contact: | pulseaudio-bugs |
Severity: | major | ||
Priority: | medium | CC: | lennart |
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | alsa-info.sh output |
Description
Stéphane
2015-10-31 12:59:27 UTC
The power supply of my FastTrack Ultra died 2 years ago, so I used to power my device with USB Only. It did no difference for my use on Ubuntu (14.04, 14.10 an 15.04), but I knew that on MS Windows, some functionality would not be available. But since I installed Ubuntu 15.10, as I said, sound was bad, and bass were missing. But today I found a working 5V power supply, and tested my card again... and it worked perfectly (perfect sound again). So my conclusion : Something changed in the alsa drivers or kernel between ubuntu 15.04 and ubuntu 15.10. ____________________________________________________ | Powered by USB Only | Additional 5V Power Supply | _____________|______________________|_____________________________| Ubuntu 15.04 | Working | Working | _____________|______________________|_____________________________| Ubuntu 15.10 | Poor Sound/Miss Bass | Working | _____________|______________________|_____________________________| So finally, no bug in pulseaudio or Alsa... just an evolution. Hello, Yes I have good sound, but finally, pulseaudio don't propose every profiles available (The most important : stereo). It's a problem when I watching a multichannel sound movie (I only hear ambiance of movie, but not speacking). pacmd > list-cards give me : index: 3 name: <alsa_card.usb-M-Audio_Fast_Track_Ultra-00> driver: <module-alsa-card.c> owner module: 28 properties: alsa.card = "2" alsa.card_name = "Fast Track Ultra" alsa.long_card_name = "M-Audio Fast Track Ultra at usb-0000:00:12.2-5, high speed" alsa.driver_name = "snd_usb_audio" device.bus_path = "pci-0000:00:12.2-usb-0:5:1.0" sysfs.path = "/devices/pci0000:00/0000:00:12.2/usb3/3-5/3-5:1.0/sound/card2" udev.id = "usb-M-Audio_Fast_Track_Ultra-00" device.bus = "usb" device.vendor.id = "0763" device.vendor.name = "Midiman" device.product.id = "2080" device.product.name = "M-Audio RunTime DFU" device.serial = "M-Audio_Fast_Track_Ultra" device.string = "2" device.description = "M-Audio RunTime DFU" module-udev-detect.discovered = "1" device.icon_name = "audio-card-usb" profiles: input:multichannel: Multicanal Entrée (priority 1, available: unknown) output:analog-surround-71: Analog Surround 7.1 Sortie (priority 700, available: unknown) output:analog-surround-71+input:multichannel: Analog Surround 7.1 Sortie + Multicanal Entrée (priority 701, available: unknown) off: Éteint (priority 0, available: unknown) active profile: <output:analog-surround-71+input:multichannel> sinks: alsa_output.usb-M-Audio_Fast_Track_Ultra-00.analog-surround-71/#2: M-Audio RunTime DFU Analog Surround 7.1 sources: alsa_output.usb-M-Audio_Fast_Track_Ultra-00.analog-surround-71.monitor/#3: Monitor of M-Audio RunTime DFU Analog Surround 7.1 ports: analog-output: Sortie analogique (priority 9900, latency offset 0 usec, available: unknown) properties: But aplay -L give me : sysdefault:CARD=Ultra Fast Track Ultra, USB Audio Default Audio Device front:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio Front speakers surround21:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 4.0 Surround output to Front and Rear speakers surround41:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers As you can see, there is a "Front speacker" Profile, but it's not proposed by Pulseaudio. For me, it's a bug. Thank you for your help. This is bug of aplay -L since alsa lib/driver does not provide supported channel info without open pcm device. Post output of aplay -D hw:CARD=Ultra --dump-hw-params anystereo.wav seem hardcode and support 8 channels only https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/usb?id=65f04443c96dbda11b8fff21d6390e082846aa3c @Raymond I don't understand what I'm doing, but as asked, I tried : aplay -D hw:CARD=Ultra --dump-hw-params anystereo.wav And the result is : mathojojo@mathojojo-pc:/ddext/Studio$ aplay -D hw:CARD=Ultra --dump-hw-params SL.wav Lecture WAVE 'SL.wav' : Signed 16 bit Little Endian, Fréquence 44100 Hz, Stéréo HW Params of device "hw:CARD=Ultra": -------------------- ACCESS: MMAP_INTERLEAVED RW_INTERLEAVED FORMAT: S24_3LE SUBFORMAT: STD SAMPLE_BITS: 24 FRAME_BITS: 192 CHANNELS: 8 RATE: [44100 96000] PERIOD_TIME: [125 495352) PERIOD_SIZE: [6 21845] PERIOD_BYTES: [144 524280] PERIODS: [2 1024] BUFFER_TIME: [125 990703) BUFFER_SIZE: [12 43690] BUFFER_BYTES: [288 1048560] TICK_TIME: ALL -------------------- aplay: set_params:1233: Ce format d'échantillonage n'est pas disponible Available formats: - S24_3LE Hope it can help to find the problem ? This mean your usb does not support stereo https://cgit.freedesktop.org/pulseaudio/pulseaudio/log/?qt=grep&q=lfe-filter Do you mean lfe-filter not work as expected when you select 7.1? You have to post the pulseaudio verbose log when playing stereo with lfe filter enabled Usb-audio.conf does not defined its own surround21 http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/conf/cards/USB-Audio.conf;hb=HEAD The surround21 use surround51 but your card does not support 6 channels http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/conf/pcm/surround21.conf;hb=HEAD This mean you have to define your card specific 2.1 in usb-audio.conf Thank you for trying to help me. I don't understand what I should do. I would just like to have front speackers (2.0) not 2.1. I remember that the stereo profile was available some years ago (maybe 2 or 3 years ago). It's probably a regression somewhere in USB Audio drivers (at last for my device). If you (or someone esle) know how I can create the missing profile for my use, it would be nice. Even more usefull, if someone could fix it in the drivers, or in pulseaudio (I'm still surprised that aplay -L give me a simple front output : front:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio Front speakers surround21:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 4.0 Surround output to Front and Rear speakers surround41:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=Ultra,DEV=0 Fast Track Ultra, USB Audio 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers ) I was able to select "front:CARD=Ultra,DEV=0" in the squeezelight settings. And that worked (But I had to suspend Pulseaudio first, as squeezelite directly speack with ALSA). I may not understand everything (that's even almost sure :) ) But why can I select it for squeezelite alsa output, and it is not available and proposed by pulseaudio ?? Thank you all. Stephane type route slave.pcm { @func refer name { @func concat strings [ "cards." { @func card_driver card $CARD } ".pcm.surround51." $DEV ":CARD=" $CARD ] } } Do pulseaudio give you back 2.1 profile if you change surround51 to surround71 in surround21.conf? Where should I put thous lines ? Or is it a command to type and launch in a Terminal ? I tried the terminal: mathojojo@mathojojo-pc:~$ route slave.pcm { @func refer name { @func concat strings [ "cards." { @funccard_driver card $CARD } ".pcm.surround51." $DEV ":CARD=" $CARD ] } } Syntaxe: route [-nNvee] [-FC] [<AF>] Liste les tables de routage noyau route [-v] [-FC] {add|del|flush} ... Modifie la table de routage pour AF. route {-h|--help} [<AF>] Utilisation détaillée pour l'AF spécifié. route {-V|--version} Affiche la version/auteur et termine. -v, --verbose mode verbeux -n, --numeric ne résoud pas les noms -e, --extend affiche d'autres/plus d'informations -F, --fib affiche la base d'information des redirection (Forwarding Information Base) (défaut) -C, --cache affiche le cache de routage au lieu de FIB <AF>=Utilisez '-A <af>' ou '--<af>'; défaut: inet Liste les familles d'adresses possibles (supportant le routage): inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25) netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP) x25 (CCITT X.25) I'm not sure if that was what I was supposed to do :) OMG, I just understood :) (It should be possible to delete a post, particularly stupid one !) So I did the change, and yes ! Now Pulseaudio give me the choice between 2.1 or 7.1. As I don't need LFE, I would have prefer the front speacker only option (stereo). Is there something I can do for it as well ? And, is it a pulseaudio bug, or alsa (in libasound2-data) ? Maybe it should be reported. http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/conf/cards/USB-Audio.conf;hb=HEAD#l70 # If a device requires non-standard definitions for front, surround40, # surround51, surround71 or iec958, they can be defined here. This mean you have to define card specifc front, surround21 device for your M-Audio The ditry hack is remove LFE from surround21.conf ttable.0.FL 1 ttable.1.FR 1 ttable.2.LFE 1 and remove lfe from channel map of pulseaudio analog surround 21 mapping in default.conf [Mapping analog-surround-21] device-strings = surround21:%f channel-map = front-left,front-right,lfe paths-output = analog-output analog-output-lineout analog-output-speaker priority = 8 direction = output https://cgit.freedesktop.org/pulseaudio/pulseaudio/tree/src/modules/alsa/mixer/profile-sets/default.conf Ok, thank you. I may stay with the default 2.1 profile if it does not affect the front speakers signal. What does 2.1 mean exactly ? : 1) It divides the signal and sends separately the low frequencies to the Sub-woofer (LFE) and the medium+trebble to the front speakers ?? 2) Or maybe it sends the Low frequencies to the LFE, but send the full signal range to the Front speakers ? 3) Or finally, it sends Full signal on both Front Speakers and LFE ? In the first case, I will miss the bass if I just have front speakers while using 2.1 profile. Both other cases should work without any modification. http://git.alsa-project.org/?p=alsa-lib.git;a=commitdiff;h=48f1b308cc66152eb6db66742dd0d08d888cda8d;hp=5c4cd46810cef8850b037fca9e38ffd43b0bff22 2.1 is for those asus n series notebooks which use external sonic master subwoofer, there is no hardware low pass filter https://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/?id=f3ebf6b667b155f5fe6526bd70881c79e07d7874 There is high pass filter for the front channels https://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/?id=a9059be749b6043d6cbc5b79652e8a4adda8994e Do your m-audio fastrack ultra have playback channel map with lfe? Post output of alsa-info.sh http://git.alsa-project.org/?p=alsa-lib.git;a=blob_plain;f=test/chmap.c;hb=HEAD Created attachment 122473 [details]
alsa-info.sh output
This is the alsa-info.sh output. (I killed pulseaudio before, maybe it was a bad idea.
Just after relaunching pulseaudio, I got this message (automatically) : GetManagedObjects() failed: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. E: [alsa-sink-USB Audio] lfe-filter.c: Hole in stream, cannot fast forward LFE filter E: [alsa-sink-USB Audio] alsa-sink.c: ALSA nous a réveillé pour écrire de nouvelles données à partir du périphérique, mais il n'y avait en fait rien à écrire ! E: [alsa-sink-USB Audio] alsa-sink.c: Il s'agit très probablement d'un bogue dans le pilote ALSA « snd_usb_audio ». Veuillez rapporter ce problème aux développeurs d'ALSA. E: [alsa-sink-USB Audio] alsa-sink.c: Nous avons été réveillés avec POLLOUT actif, cependant un snd_pcm_avail() ultérieur a retourné 0 ou une autre valeur < min_avail. Note that this output speaks about a hole in stream, cannot fast forward LFE; and an eventual bug in snd_usb_audio. as your m-audio fasttrack ultra does not have any playback channel map it is a bug of pulseaudio to allow 2.1 profile when there is no LFE/ channel map https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/log/sound/usb?qt=grep&q=channel+map -- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/511. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.