Re: Jack sensing in snd_usb_audio ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Bastien,

On 12/10/16 12:58, Bastien Nocera wrote:
> On Wed, 2016-10-12 at 19:36 +0900, Takashi Sakamoto wrote:
>> On Oct 12 2016 14:10, Bastien Nocera wrote:
>>> My questions are:
>>> - does the USB audio driver support jack sensing?
>>> - is this something standard that's just not implemented yet? In
>>> which
>>> case, I'd be up for at least trying, given specs.
>>> - or is it something that depends on the device, and in which case,
>>> how
>>> would I find out?
>>
>>
>> In ALSA usb-related codes, there's no functions calls for
>> snd_jack_*(),
>> thus none of ALSA drivers for USB support Jack sense feature of ALSA
>> control interface.
>>
>> The requirement of Jack sense feature is whether hardwares support
>> it.
>> For example, some hardware codecs such as HDA codecs generates
>> signals
>> when plugs are insert to jacks connected to the codecs. Corresponding
>> ALSA drivers catch the signals, then tell it to user land.
>>
>> If your hardware performs like it, you have a probability to add
>> support
>> for jack sense feature to ALSA drivers for USB. But I don't know
>> exactly
>> that USB related specifications such as USB Audio Device Class
>> 1.0/2.0/3.0 supports the feature.
> 
> Looks like whether or not jack sensing works depends on the device
> itself, but there is a mechanism to propagate the change in setup in
> the USB Audio 2.0 spec, in the "Interrupts" section:
> "
> A change of state in the audio function is most often caused by a
> certain event that takes place. An event can either be user-initiated
> or device-initiated. User-initiated jack insertion or removal is a
> typical example of a user-initiated event.
> "

snd_usb_audio doesn't support control interrupts yet.

It's a nice feature to work on.

-- 
Felipe

Attachment: 0x92698E6A.asc
Description: application/pgp-keys


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux