https://bugs.freedesktop.org/show_bug.cgi?id=39664
--- Comment #13 from Colin Guthrie <[email protected]> 2011-09-09 07:33:57 PDT --- (In reply to comment #12) > (In reply to comment #11) > > OK, so we generally don't probe for 4ch input. It's just not that common, > > so I > > think a specialist profile like this makes sense. > > > > The firmware uploader is obviously a bit custom, but I can add the profile > > mapping quite happily to our official repository if it makes sense. > > > > Should the inputs really be labelled as digital? Are they not actually > > analogue? > > > > About the kinect.conf profile, I can send a patch about it, if this is the > way > we want to fix it, and I will not mention "Digital" at all, as you suggested. > > > The firmware stuff is likely something you need to add to the alsa-firmware > > project. Not sure of any legal problems with that tho'. > > > > Yep, I'll split the udev file in two, the "profile" rule to be shipped with > pulseaudio in 90-pulseaudio.rules, and the "firmware loading" one to be > shipped independently. Perfect, thanks. > > At present, I'm really not sure why it would work with hotplug and not > > coldplug > > :( If I can ever borrow a friends Kinect system I will try and have a look, > > but > > so far I don't know anyone nearby with such kit. > > I tested on the latest development version from > git://anongit.freedesktop.org/pulseaudio/pulseaudio and it does NOT even work > on hotplug, this seems to be because this difference in default.conf: > > -[Mapping iec958-surround-40] > -device-strings = iec958:%f > -channel-map = front-left,front-right,rear-left,rear-right > -priority = 1 > - I presume you mean without modifying it with your specific profile? I guess this was removed as it was thought to be invalid (and does it even work with iec958: for input anyway?) > After some time reading the log I thinks I can at least isolate what could be > the important messages: > > With the _stable_ version it does not work if I plug the device after loading > PA: > > D: alsa-util.c: Trying iec958:1 with SND_PCM_NO_AUTO_FORMAT ... > I: (alsa-lib)confmisc.c: Unable to find definition > 'cards.USB-Audio.pcm.iec958.0:CARD=1,AES0=4,AES1=130,AES2=0,AES3=2' > I: (alsa-lib)conf.c: function snd_func_refer returned error: No such file or > directory > I: (alsa-lib)conf.c: Evaluate error: No such file or directory > I: (alsa-lib)pcm.c: Unknown PCM iec958:1 > I: alsa-util.c: Error opening PCM device iec958:1: No such file or directory > I: module.c: Loaded "module-alsa-card" (index: #19; argument: "device_id="1" > name="usb-Microsoft_Kinect_USB_Audio_A44884D23275040A-01-Audio" > card_name="alsa_card.usb-Microsoft_Kinect_USB_Audio_A44884D23275040A-01-Audio" > tsched=yes ignore_dB=no card_properties="module-udev-detect.discovered=1""). This smells like a race - e.g. udev is telling us there is a new device before it's actually ready for use - i.e the firmware load is not yet completely and thus the card is not yet ready. > Instead it works when the device is already plugged in: > > D: alsa-mixer.c: Looking at profile input:iec958-surround-40 > D: alsa-mixer.c: Checking for recording on Surround digitale 4.0 (IEC958) > (iec958-surround-40) > D: alsa-util.c: Trying iec958:1 with SND_PCM_NO_AUTO_FORMAT ... > D: alsa-util.c: Managed to open iec958:1 > D: alsa-util.c: snd_pcm_hw_params_set_format(Signed 16 bit Little Endian) > failed: Argomento non valido > D: alsa-util.c: snd_pcm_hw_params_set_format(Signed 16 bit Big Endian) failed: > Argomento non valido > D: alsa-util.c: snd_pcm_hw_params_set_format(Float 32 bit Little Endian) > failed: Argomento non valido > D: alsa-util.c: snd_pcm_hw_params_set_format(Float 32 bit Big Endian) failed: > Argomento non valido > D: alsa-util.c: Maximum hw buffer size is 4096 ms > D: alsa-util.c: Set buffer size first (to 1599 samples), period size second > (to > 399 samples). > I: alsa-util.c: Device iec958:1 doesn't support 44100 Hz, changed to 16000 Hz. > I: alsa-util.c: Device iec958:1 doesn't support sample format s16le, changed > to > s32le. > D: alsa-mixer.c: Profile input:iec958-surround-40 supported. > I: module-card-restore.c: Restoring profile for card > alsa_card.usb-Microsoft_Kinect_USB_Audio_A44884D23275040A-01-Audio. > I: card.c: Created 2 > "alsa_card.usb-Microsoft_Kinect_USB_Audio_A44884D23275040A-01-Audio" > D: reserve-wrap.c: Successfully create reservation lock monitor for device > 'Audio1' > D: alsa-util.c: Trying iec958:1 with SND_PCM_NO_AUTO_FORMAT ... > D: alsa-util.c: Managed to open iec958:1 > D: alsa-util.c: snd_pcm_hw_params_set_format(Signed 16 bit Little Endian) > failed: Argomento non valido > D: alsa-util.c: snd_pcm_hw_params_set_format(Signed 16 bit Big Endian) failed: > Argomento non valido > D: alsa-util.c: snd_pcm_hw_params_set_format(Float 32 bit Little Endian) > failed: Argomento non valido > D: alsa-util.c: snd_pcm_hw_params_set_format(Float 32 bit Big Endian) failed: > Argomento non valido > D: alsa-util.c: Maximum hw buffer size is 4096 ms > D: alsa-util.c: Set buffer size first (to 32000 samples), period size second > (to 32000 samples). > I: alsa-util.c: Device iec958:1 doesn't support 44100 Hz, changed to 16000 Hz. > I: alsa-util.c: Device iec958:1 doesn't support sample format s16le, changed > to > s32le. > I: alsa-source.c: Successfully opened device iec958:1. > I: alsa-source.c: Selected mapping 'Surround digitale 4.0 (IEC958)' > (iec958-surround-40). > I: alsa-source.c: Successfully enabled mmap() mode. > I: alsa-source.c: Successfully enabled timer-based scheduling mode. > I: (alsa-lib)control.c: Invalid CTL iec958:1 > I: alsa-mixer.c: Unable to attach to mixer iec958:1: File o directory non > esistente > I: alsa-mixer.c: Successfully attached to mixer 'hw:1' > ... > > It looks like it tried the four channel mapping (iec958-surround-40) on > iec958:1, > but then ends up using hw:1 anyways, but I still haven't figured out the WHY, > this is just a hint for when (if) you will look at that. It could be a timing thing... perhaps it's just as simple as that. Question is, how to fix it! > The symptoms looked similar to the unrelated post here: > http://www.mail-archive.com/[email protected]/msg04847.html Yeah I remember that issue. Not sure it was ever solved tho' :( -- Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. You are the assignee for the bug. _______________________________________________ pulseaudio-bugs mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/pulseaudio-bugs
