linux/sound
John S. Gruber 98e89f606c ALSA: usb-audio: relax urb data align. restriction HVR-950Q and HVR-850 only
Addressing audio quality problem.

In sound/usb/usbaudio.c, for the Hauppage HVR-950Q and HVR-850 only, change
retire_capture_urb to allow transfers on audio sub-slot boundaries rather
than audio slots boundaries.

With these devices the left and right channel samples can be split between
two different urbs. Throwing away extra channel samples causes a sound
quality problem for stereo streams as the left and right channels are
swapped repeatedly, perhaps many times per second.

Urbs unaligned on sub-slot boundaries are still truncated to the next
lowest stride (audio slot) to retain synchronization on samples even
though left/right channel synchronization may be lost in this case.

Detect the quirk using a case statement in snd_usb_audio_probe.

BugLink: https://bugs.launchpad.net/ubuntu/+bug/495745

Signed-off-by: John S. Gruber <JohnSGruber@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-28 12:30:41 +01:00
..
aoa
arm ALSA: AACI: switch to per-pcm locking 2009-12-18 20:31:13 +01:00
atmel
core Merge branch 'fix/misc' into topic/misc 2009-12-25 14:15:31 +01:00
drivers sound: vx: use vmalloc buffer helper functions 2009-12-18 12:57:21 +01:00
i2c Merge branch 'topic/hda' into for-linus 2009-12-04 16:22:45 +01:00
isa ALSA: jazz16: refine dma and irq selection 2009-12-25 14:15:41 +01:00
mips sound: sgio2audio: use vmalloc buffer helper functions 2009-12-18 12:57:13 +01:00
oss sound/oss/pss: Fix test of unsigned in pss_reset_dsp() and pss_download_boot() 2009-12-17 12:19:12 +01:00
parisc
pci Merge branch 'fix/misc' into topic/misc 2009-12-25 14:15:31 +01:00
pcmcia sound: pdaudiocf: use vmalloc buffer helper functions 2009-12-18 12:57:04 +01:00
ppc Merge branch 'topic/beep-rename' into topic/core-change 2009-12-01 15:58:10 +01:00
sh Merge branch 'topic/beep-rename' into topic/core-change 2009-12-01 15:58:10 +01:00
soc Merge branch 'fix/asoc' into for-linus 2009-12-23 18:50:13 +01:00
sparc
spi
synth tree-wide: fix typos "couter" -> "counter" 2009-12-04 15:39:51 +01:00
usb ALSA: usb-audio: relax urb data align. restriction HVR-950Q and HVR-850 only 2009-12-28 12:30:41 +01:00
ac97_bus.c
Kconfig tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
last.c
Makefile
sound_core.c tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
sound_firmware.c