On Sat, 5 Jul 2003, James Courtier-Dutton wrote:

> Jaroslav Kysela wrote:
> > On Sat, 5 Jul 2003, James Courtier-Dutton wrote:
> > 
> > 
> >>Hi,
> >>
> >>The current snd-usb-audio driver assumes that the audio device is 
> >>attached to this computer, so it only talks to this endpoint.
> >>If I have an audio usb device with USB_CLASS = 0xe0, it will be a 
> >>wireless device. I.E. A bluetooth headset.
> >>It uses isoc's just like the current snd-usb-audio driver but adds some 
> >>extra requirements, in order to open a connection, one needs to also 
> >>know the bd address of the destination device  (Like a MAC address for 
> >>ethernet) and keep tabs of connection number.
> >>The current bluetooth stack I am using is bluez, from the current 2.4.20 
> >>  kernel, and it uses network sockets for the audio. I would prefer to 
> >>use alsa for sending and receiving audio to/from the headset, with all 
> >>other control of the device going via the bluetooth stack.
> >>So the question is: -
> >>How do I get the bdaddr to alsa so that an application can use 
> >>snd_pcm_open with the bluetooth headset, just as if it was a local audio 
> >>card.
> > 
> > 
> > I think that there must be a way to determine new devices with the 
> > bluetooth stack, so use the same mechanism as usb or pcmcia:
> > 
> > Register all found audio devices and create appropriate new cards in the 
> > ALSA driver. The application does not know, if it communicates with usb, 
> > bluetooth, PCI or ISA devices so passing some native information for the 
> > transport layer is not our goal.
> > 
> >                                             Jaroslav
> 
> Another approach would be to use some other tool outside alsa to enter 
> the bdaddr, and just present a Playback and Capture PCM to alsa lib.
> I was thinking that the "card" would be the bluetooth usb dongle, and 
> the pcm's would dynamically appear and disappear as the user attaches 
> different bluetooth devices (e.g. headset).
> 
> Does alsa allow for PCMs to appear and disappear?
> E.g. Card appears but no pcms listed in /proc/asound/card0
> User runs a tool (attach-bluetooth-pcm) what sorts out a pairing of 
> bluetooth devices and then creates a PCM device in /proc/asound/card0
> User changes devices, and has to re-run attach-bluetooth-pcm to remove 
> the old PCM, and create a new one of the new device.
> OR: -
> Would a new "card" have to be created for each bluetooth headset?
> Is alsa happy with dynamically adding and removing cards ?

I prefer the allocation of new card for each physical boxes, because it is
common behaviour and the bluetooth devices might have more PCM devices and 
/ or MIDI devices. It would be difficult to enumerate all devices which
belongs to one physical box. It was one of the major reason, why I
introduced the card/device model rather than device only model used in
OSS.

And, yes, you can add/remove PCM or ALSA cards on the fly (if you handle 
locking properly, of course).

                                                Jaroslav

-----
Jaroslav Kysela <[EMAIL PROTECTED]>
Linux Kernel Sound Maintainer
ALSA Project, SuSE Labs



-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100006ave/direct;at.asp_061203_01/01
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to