Separate Devices - extended ServerOptions and ListAudioDevices primitive

View: New views
3 Messages — Rating Filter:   Alert me  

Separate Devices - extended ServerOptions and ListAudioDevices primitive

by Axel BALLEY-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi all,
Following on the previous work on separate in/out devices support, I  
reintegrated Dan's previous patch in the code base to allow for  
setting the inDevice and outDevice separately for a server.

s.options.inDevice = "blah"
s.options.outDevice = "bleh"

For backwards compatiblity, setting s.options.device will set both in  
and out devices to the same one.

Also, I've added a primitive to list CoreAudio devices, returning an  
array of strings. At the moment it's accessible as an instance method  
for Server, it might make more sense as a class method.

/* list all devices */
s.devices
 > [ PreSonus FIREPOD (1938), Built-in Microphone, Built-in Input,  
Built-in Output ]

/* list devices with at least one input stream */
s.inDevices
 > [ PreSonus FIREPOD (1938), Built-in Microphone, Built-in Input ]

/* list devices with at least one output stream */
s.outDevices
 > [ PreSonus FIREPOD (1938), Built-in Output ]

To test this, use the patch attached and add SC_CoreAudioPrim.cpp to  
the LangPrimSource files.

Please, let me know if you find this useful. The primitive works on  
the CoreAudio side only, I'm guessing it shouldn't be too hard to  
implement this in other ports.

Best,

Axel




SC_CoreAudioPrim.cpp (3K) Download Attachment
SeparateDevices.patch (27K) Download Attachment

Re: Separate Devices - extended ServerOptions and ListAudioDevices primitive

by Dan Stowell :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Works fine on my intel mac here - thanks.

It definitely makes more sense as a class method, and as a class
method of ServerOptions rather than Server.

Dan

2008/7/16 Axel Balley <a.balley@...>:

> Hi all,
> Following on the previous work on separate in/out devices support, I
> reintegrated Dan's previous patch in the code base to allow for setting the
> inDevice and outDevice separately for a server.
>
> s.options.inDevice = "blah"
> s.options.outDevice = "bleh"
>
> For backwards compatiblity, setting s.options.device will set both in and
> out devices to the same one.
>
> Also, I've added a primitive to list CoreAudio devices, returning an array
> of strings. At the moment it's accessible as an instance method for Server,
> it might make more sense as a class method.
>
> /* list all devices */
> s.devices
>> [ PreSonus FIREPOD (1938), Built-in Microphone, Built-in Input, Built-in
>> Output ]
>
> /* list devices with at least one input stream */
> s.inDevices
>> [ PreSonus FIREPOD (1938), Built-in Microphone, Built-in Input ]
>
> /* list devices with at least one output stream */
> s.outDevices
>> [ PreSonus FIREPOD (1938), Built-in Output ]
>
> To test this, use the patch attached and add SC_CoreAudioPrim.cpp to the
> LangPrimSource files.
>
> Please, let me know if you find this useful. The primitive works on the
> CoreAudio side only, I'm guessing it shouldn't be too hard to implement this
> in other ports.
>
> Best,
>
> Axel
>
>



--
http://www.mcld.co.uk

_______________________________________________
sc-dev mailing list

info (subscribe and unsubscribe): http://swiki.hfbk-hamburg.de:8888/MusicTechnology/880
archive: http://www.listarc.bham.ac.uk/marchives/sc-dev/
search: http://www.listarc.bham.ac.uk/lists/sc-dev/search/

Re: Separate Devices - extended ServerOptions and ListAudioDevices primitive

by Axel BALLEY-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks for committing, Dan !

axel

Le 16 juil. 08 à 10:32, Dan Stowell a écrit :

> Works fine on my intel mac here - thanks.
>
> It definitely makes more sense as a class method, and as a class
> method of ServerOptions rather than Server.
>
> Dan
>
> 2008/7/16 Axel Balley <a.balley@...>:
>> Hi all,
>> Following on the previous work on separate in/out devices support, I
>> reintegrated Dan's previous patch in the code base to allow for  
>> setting the
>> inDevice and outDevice separately for a server.
>>
>> s.options.inDevice = "blah"
>> s.options.outDevice = "bleh"
>>
>> For backwards compatiblity, setting s.options.device will set both  
>> in and
>> out devices to the same one.
>>
>> Also, I've added a primitive to list CoreAudio devices, returning  
>> an array
>> of strings. At the moment it's accessible as an instance method for  
>> Server,
>> it might make more sense as a class method.
>>
>> /* list all devices */
>> s.devices
>>> [ PreSonus FIREPOD (1938), Built-in Microphone, Built-in Input,  
>>> Built-in
>>> Output ]
>>
>> /* list devices with at least one input stream */
>> s.inDevices
>>> [ PreSonus FIREPOD (1938), Built-in Microphone, Built-in Input ]
>>
>> /* list devices with at least one output stream */
>> s.outDevices
>>> [ PreSonus FIREPOD (1938), Built-in Output ]
>>
>> To test this, use the patch attached and add SC_CoreAudioPrim.cpp  
>> to the
>> LangPrimSource files.
>>
>> Please, let me know if you find this useful. The primitive works on  
>> the
>> CoreAudio side only, I'm guessing it shouldn't be too hard to  
>> implement this
>> in other ports.
>>
>> Best,
>>
>> Axel
>>
>>
>
>
>
> --
> http://www.mcld.co.uk
>
> _______________________________________________
> sc-dev mailing list
>
> info (subscribe and unsubscribe): http://swiki.hfbk-hamburg.de:8888/MusicTechnology/880
> archive: http://www.listarc.bham.ac.uk/marchives/sc-dev/
> search: http://www.listarc.bham.ac.uk/lists/sc-dev/search/
>


_______________________________________________
sc-dev mailing list

info (subscribe and unsubscribe): http://swiki.hfbk-hamburg.de:8888/MusicTechnology/880
archive: http://www.listarc.bham.ac.uk/marchives/sc-dev/
search: http://www.listarc.bham.ac.uk/lists/sc-dev/search/
LightInTheBox - Buy quality products at wholesale price