[alsa-devel] Hercules P32 DJ: severe sound distortion during MIDI transfers

Guido Trentalancia guido at trentalancia.com
Fri Mar 22 17:02:14 CET 2019


But the bandwidth taken by MIDI should be very small compared to the one taken by the 48KHz audio stream, so that sounds very strange !

Obviously it's the multiplexing of audio and MIDI which fails, but I am not much into the USB drivers, either audio or core...

The USB root hub should be 2.0, according to lsusb output:

Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Sounds pointless to try other ports since they are all of the same kind...

The important point here is that, in my opinion, a USB core driver bug seems less probable that a USB audio driver bug because the affected range is very wide (4.12 - 5.0) and at the same time the USB core driver has been tested very widely everyday by virtually all Linux users.

What should I do next ?

Guido

> On the 22nd of March 2019 at 16.14 Takashi Iwai <tiwai at suse.de> wrote:
> 
> 
> On Fri, 22 Mar 2019 16:05:17 +0100,
> Guido Trentalancia wrote:
> > 
> > I suppose the Fedora 29 kernels are included in the range I tested as broken,
> > i.e. 4.12 -- 5.0.
> > 
> > So, there is something triggering it on my system and not the other, maybe the
> > USB system as pointed out by Clemens.
> 
> You can try different USB ports, too, e.g. if there are both USB 3.0
> and 2.0 ports.
> 
> > I'll make some research on the two USB systems...
> > 
> > I would also like to try USB Audio driver from kernel 3.0.1.
> > 
> > What else do you suggest?
> 
> If any, the problem is rather about the USB core side (likely the host
> driver), not the USB audio driver.  I can imagine some bandwidth
> management or iosc transfer problem.
> 
> 
> Takashi
> 
> > 
> > Guido
> > 
> > Il 22 marzo 2019 15:58:23 CET, Takashi Iwai <tiwai at suse.de> ha scritto:
> > 
> >     On Fri, 22 Mar 2019 15:54:03 +0100,
> >     Guido Trentalancia wrote:
> >          
> >          As already explained, I have tested the following kernels:
> >          
> >          - kernel 5.0.2 -----> BROKEN
> >          - kernel 4.17.10 --> BROKEN
> >          - kernel 4.12.9 ---> BROKEN
> >          
> >          So, it's been around for very long.
> >          
> >          What do you suggest doing?
> >     
> >     But which kernel is used for another user who can use without the
> >     problem?  I suppose they use the recent kernel with Fedora?
> >     
> >          I have found reports on the web about similar problems (with other audio
> >          interfaces) with kernels>3.0.0.
> >     
> >     Such a regression should have been reported earlier, otherwise it
> >     becomes more and
> >     more difficult to catch up...
> > 
> >     thanks,
> >     
> >     Takashi
> > 
> >          Regards,
> >          
> >          Guido
> >          
> >          Il 22 marzo 2019 15:47:36 CET, Takashi Iwai <tiwai at suse.de> ha scritto:
> >          
> >              On Fri, 22 Mar 2019 14:44:48 +0100,
> >              Guido Trentalancia wrote:
> >                   
> >                   Hello Takashi.
> >                   
> >                   I have carried out the test that you proposed...
> >                   
> >                   My reply follows your quoted text.
> >                   
> >                   On Fri, 22/03/2019 at 11.12 +0100, Takashi Iwai wrote:
> >                       On Fri, 22 Mar 2019 11:04:01 +0100,
> >                       Guido Trentalancia wrote:
> >                           
> >                           Hello Takashi,
> >                           
> >                           I am using the latest version of everything, including kernel and
> >                          
> >         ALSA
> >                           userspace library / tools.
> >                           
> >                           The other user has exactly the same hardware and has tested same
> >                           firmware
> >                           (both 1.36 and latest
> >                          1.46), but with Fedora 29 and it is working.
> >                           
> >                           Perhaps Fedora 29 has a different version of the ALSA library, I
> >                           will find
> >                           out, try to downgrade, test again and report back.
> >                       
> >                       Yes, that'd be really helpful.  If aligning the software doesn't fix
> >                       the issue, it's either because of the hardware or the difference of
> >                       usage patterns.
> >                   
> >                   I have tested exactly the same ALSA userspace library and plugins
> >                   distributed by Fedora 29 and it does NOT work !
> >                   
> >                   As already explained, the usage pattern is
> >         exactly the same between me
> >                   and the user which is not experiencing this severe problem.
> >                   
> >                   Also, the hardware is the same: Hercules P32 DJ (with exactly the same
> >                   firmware version 1.46 which is the latest).
> >                   
> >                   So, the conclusion is that it must be a kernel bug ! I was expecting
> >                   this, as already pointed out in previous messages.
> >              
> >              Did you test the
> >              very same kernel, too?  Without that confirmation, no
> >              one can conclude that at all...
> >              
> >              If the kernel makes difference, you can try identify which kernel
> >              version starts showing the problem, and at best, do git bisection.
> >          
> >              thanks,
> >              
> >              Takashi
> >          
> >                   Can you please help me fix this bug since you wrote the driver and/or
> >                   are maintaining it ?
> >                   
> >                   Thanks,
> > 
> >         Guido
> >                   
> >                       thanks,
> >                       
> >                       Takashi
> >          
> >                           Guido
> >                           
> >                           Il 22 marzo 2019 10:53:11 CET, Takashi Iwai <tiwai at suse.de> ha
> >                           scritto:
> >                           
> >                               On Fri, 22 Mar 2019
> >                          10:17:17 +0100,
> >                               Guido Trentalancia wrote:
> >                                    
> >                                    It cannot be a firmware bug, as you say, because:
> >                                    
> >                                    - it does NOT happen on Windows!
> >                               
> >                               It doesn't mean that the device behaves correctly as
> >                           advertised.
> >                               
> >                                    - it does NOT even always happen on Linux: other users
> >                           (with different kernel
> >                                    / ALSA
> >         library) are not experiencing the same problem;
> >                                    - it happens with several firmware versions, including the
> >                           latest one (1.36
> >                                    and 1.46).
> >                                    
> >                                    So it is either a bug in ALSA kernel driver, USB sound
> >                           driver (more likely) or
> >                                    ALSA library.
> >                                    
> >                                    Now, you are in charge of the USB sound driver, can you
> >                           please double check??
> >                               
> >                               If it doesn't happen for other users with the very same device,
> >                           you'd
> >                               need to identify what's the difference
> >                          between your case and
> >                           others.
> >                               For example, if the difference of alsa-lib matters, you can try
> >                    
> >               the
> >                               very same condition.
> >                               
> >                               This kind of bug can't be easily debugged without the actual
> >                               hardware, unfortunately.
> >                           
> >                               Takashi
> >                           
> >                                    Regards,
> >                                    
> >                                    Guido
> >                                    
> >                                    Il 22 marzo 2019 09:55:52 CET, Takashi Iwai <tiwai at suse.de
> >                               ha scritto:
> >                                    
> >                                        On Thu, 21 Mar 2019 23:27:46 +0100,
> >                                        Guido Trentalancia wrote:
> >                                             
> >                                             I wonder if this might be due to a bug in the
> >                           "USB Audio Driver for Alsa"?
> > 
> >                             https://git.kernel.org/pub/scm/linux/kernel/git/t
> >                           orvalds/linux.git/tree/sound/usb
> >                                             
> >                                             https://git.kernel.org/pub/scm/linux/kernel/git/t
> >                           iwai/sound.git/tree/sound/usb
> >                                        
> >                                        More likely a buggy firmware of your USB audio device
> >                           :)
> >                                        
> >                                         From the driver implementation POV, both audio and
> >                           MIDI devices are
> >                                        handled by individual endpoints, hence they shouldn't
> >                           conflict.
> >                                        
> >                                        Or another possibility would be some USB
> >         host side
> >                           issue like the
> >                                        bandwidth.  But
> >                                        it's a MIDI stream that is very low data rate, so this
> >                                        sounds also unlikely...
> >                                    
> >                                        thanks,
> >          
> >                           Takashi
> >                                    
> >                                             Guido
> >                                             
> >                                                 On the 20th of March 2019 at 21.47 Guido
> >                                   Trentalancia
> >                                                 <guido at trentalancia.com wrote:
> >                                                
> >                                                 Hello.
> >                                                
> >                                                 I am hitting a very serious bug (ALSA kernel
> >                           driver or ALSA library)
> >                         
> >                                when using the Hercules P32 DJ audio
> >                           interface.
> >                                                
> >                                                 The sound is severely distorted during MIDI
> >                           transfers.
> >                                                
> >                                                 To reproduce:
> >                                                
> >                                                   + start playing something in a first
> >                           console:
> >                                                
> >                                                 console1# AUDIODEV=hw:2,0 play audio.wav
> >                                                
> >                                                   + the audio plays fine
> >          
> >                                                   + now start "amidi" in a second console
> >                           while the above track is still
> >                                                     playing
> > 
> >                                                 console2#
> >                                            amidi -p hw:2,0,0 -d
> >                                                
> >                                                   + the sound is now severely distorted
> >                           (basically noise, with some
> >                                   hard-
> >                                                     to-distinguish features resembling the
> >                           original track) until "amidi"
> >                                                     is
> >                                                     interrupted !
> > 
> > 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> https://mailman.alsa-project.org/mailman/listinfo/alsa-devel


More information about the Alsa-devel mailing list