• John S. Gruber's avatar
    ALSA: usb-audio: relax urb data align. restriction HVR-950Q and HVR-850 only · 98e89f60
    John S. Gruber authored
    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/495745Signed-off-by: default avatarJohn S. Gruber <JohnSGruber@gmail.com>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    98e89f60
usbaudio.c 107 KB