Quantcast

Routing sound to SC in Windows

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Routing sound to SC in Windows

Erik Parr
Hi everyone,

I am trying a first attempt at SC on Windows (and on a unfamiliar machine) and am trying to route sound from another application to SC. I am routing the sound from the application to a virtual bus where SC reads it into a synthdef using AudioIn().

Problem is, I am not getting any sound from the virtual bus in SC. I know there is an audio signal on the bus, but SC is just not finding it.

I am guessing it has to do with the devices options set in SC. At boot up it lists the device where the sound SHOULD be routed from inbus "Line 3" (device #5), and for some reason the only channel that produces output in SC at the moment is through an inbus "Microsoft Sound Mapper" (device #0). I am not at all familiar with "Microsoft Sound Mapper".

Are my devices setup improperly?
Here is the devices listed at boot-up:

Device options:
  - MME : Microsoft Sound Mapper - Input   (device #0 with 2 ins 0 outs)
  - MME : Microphone (Creative SB Audigy    (device #1 with 2 ins 0 outs)
  - MME : Line 1 (Virtual Audio Cable)   (device #2 with 2 ins 0 outs)
  - MME : S/PDIF-In (Creative SB Audigy 2   (device #3 with 2 ins 0 outs)
  - MME : Line 2 (Virtual Audio Cable)   (device #4 with 2 ins 0 outs)
  - MME : Line 3 (Virtual Audio Cable)   (device #5 with 2 ins 0 outs)
  - MME : CD Digital (Creative SB Audigy    (device #6 with 2 ins 0 outs)
  - MME : Analog Mix (Line/CD/Aux/TAD/PC)   (device #7 with 2 ins 0 outs)
  - MME : Microphone (Realtek AC'97 Audio   (device #8 with 2 ins 0 outs)
  - MME : "What U Hear" (Creative SB Audi   (device #9 with 2 ins 0 outs)
  - MME : Microsoft Sound Mapper - Output   (device #10 with 0 ins 2 outs)
  - MME : Line 3 (Virtual Audio Cable)   (device #11 with 0 ins 2 outs)
  - MME : Line 2 (Virtual Audio Cable)   (device #12 with 0 ins 2 outs)
  - MME : Line 1 (Virtual Audio Cable)   (device #13 with 0 ins 2 outs)
  - MME : Speakers (Creative SB Audigy 2    (device #14 with 0 ins 2 outs)
  - MME : Realtek Digital Output (Realtek   (device #15 with 0 ins 2 outs)
  - MME : SPDIF Out (Creative SB Audigy 2   (device #16 with 0 ins 2 outs)
  - MME : Speakers (Realtek AC'97 Audio)   (device #17 with 0 ins 2 outs)
  - ASIO : Creative ASIO   (device #18 with 22 ins 20 outs)
  - ASIO : SB Audigy 2 ZS ASIO 24/96 [A...   (device #19 with 6 ins 8 outs)
  - ASIO : SB Audigy 2 ZS ASIO [A800]   (device #20 with 22 ins 20 outs)

Booting with:
  In: MME : Microphone (Creative SB Audigy  
  Out: MME : Line 3 (Virtual Audio Cable)


Any help is much appreciated, thanks.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

Scott Carver
Out device is correct, but it looks like your input device isn't the one you want.
You should be able to use:
        ServerOptions.devices
to get a list of devices, and then:
        s.options.device = ServerOptions.devices[2];
or just
        s.options.device = "name of my device";
and then:
        s.reboot;

You can also use ServerOptions.inDevices and s.options.inDevice (or outDevice(s), respectively) to set just in or out devices.

However -
none of that stuff currently works on my mac laptop (though it has in the past). Don't know why. So, this may not be an answer....

- Scott

(p.s. Hey erik! Hope all is well in the far north!)



On Nov 18, 2010, at 2:25 PM, Erik Parr wrote:

>
> Hi everyone,
>
> I am trying a first attempt at SC on Windows (and on a unfamiliar machine)
> and am trying to route sound from another application to SC. I am routing
> the sound from the application to a virtual bus where SC reads it into a
> synthdef using AudioIn().
>
> Problem is, I am not getting any sound from the virtual bus in SC. I know
> there is an audio signal on the bus, but SC is just not finding it.
>
> I am guessing it has to do with the devices options set in SC. At boot up it
> lists the device where the sound SHOULD be routed from inbus "Line 3"
> (device #5), and for some reason the only channel that produces output in SC
> at the moment is through an inbus "Microsoft Sound Mapper" (device #0). I am
> not at all familiar with "Microsoft Sound Mapper".
>
> Are my devices setup improperly?
> Here is the devices listed at boot-up:
>
> Device options:
> - MME : Microsoft Sound Mapper - Input   (device #0 with 2 ins 0 outs)
> - MME : Microphone (Creative SB Audigy    (device #1 with 2 ins 0 outs)
> - MME : Line 1 (Virtual Audio Cable)   (device #2 with 2 ins 0 outs)
> - MME : S/PDIF-In (Creative SB Audigy 2   (device #3 with 2 ins 0 outs)
> - MME : Line 2 (Virtual Audio Cable)   (device #4 with 2 ins 0 outs)
> - MME : Line 3 (Virtual Audio Cable)   (device #5 with 2 ins 0 outs)
> - MME : CD Digital (Creative SB Audigy    (device #6 with 2 ins 0 outs)
> - MME : Analog Mix (Line/CD/Aux/TAD/PC)   (device #7 with 2 ins 0 outs)
> - MME : Microphone (Realtek AC'97 Audio   (device #8 with 2 ins 0 outs)
> - MME : "What U Hear" (Creative SB Audi   (device #9 with 2 ins 0 outs)
> - MME : Microsoft Sound Mapper - Output   (device #10 with 0 ins 2 outs)
> - MME : Line 3 (Virtual Audio Cable)   (device #11 with 0 ins 2 outs)
> - MME : Line 2 (Virtual Audio Cable)   (device #12 with 0 ins 2 outs)
> - MME : Line 1 (Virtual Audio Cable)   (device #13 with 0 ins 2 outs)
> - MME : Speakers (Creative SB Audigy 2    (device #14 with 0 ins 2 outs)
> - MME : Realtek Digital Output (Realtek   (device #15 with 0 ins 2 outs)
> - MME : SPDIF Out (Creative SB Audigy 2   (device #16 with 0 ins 2 outs)
> - MME : Speakers (Realtek AC'97 Audio)   (device #17 with 0 ins 2 outs)
> - ASIO : Creative ASIO   (device #18 with 22 ins 20 outs)
> - ASIO : SB Audigy 2 ZS ASIO 24/96 [A...   (device #19 with 6 ins 8 outs)
> - ASIO : SB Audigy 2 ZS ASIO [A800]   (device #20 with 22 ins 20 outs)
>
> Booting with:
> In: MME : Microphone (Creative SB Audigy  
> Out: MME : Line 3 (Virtual Audio Cable)
>
>
> Any help is much appreciated, thanks.
> --
> View this message in context: http://new-supercollider-mailing-lists-forums-use-these.2681727.n2.nabble.com/Routing-sound-to-SC-in-Windows-tp5753551p5753551.html
> Sent from the SuperCollider Users New (Use this!!!!) mailing list archive at Nabble.com.
>
> _______________________________________________
> sc-users mailing list
>
> info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
> archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
> search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
>


_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

ddw_music
In reply to this post by Erik Parr
Is there any way you can change the names of the virtual buses?

On 11/19/2010 06:25 AM, Erik Parr wrote:
>    - MME : Line 3 (Virtual Audio Cable)   (device #5 with 2 ins 0 outs)
>    
...snip
>    - MME : Line 3 (Virtual Audio Cable)   (device #11 with 0 ins 2 outs)
>    

When you set s.options.device = "Line 3 (Virtual Audio Cable)", the
server can't distinguish between the Line 3 device that's used for
output and the Line 3 used for input. (IIRC, maybe it's been changed in
the server code.)

hjh

--
James Harkins /// dewdrop world
[hidden email]
http://www.dewdrop-world.net

"Come said the Muse,
Sing me a song no poet has yet chanted,
Sing me the universal."  -- Whitman

blog: http://www.dewdrop-world.net/words
audio clips: http://www.dewdrop-world.net/audio
more audio: http://soundcloud.com/dewdrop_world/tracks


_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

Erik Parr
In reply to this post by Erik Parr
Sorry for the late reply, but this fixed it. I changed the name of the virtual busses and started getting signal.

Thanks!

(ps. hello down there scott! see you next time i'm in seattle.. or next time you're up in iceland.)

erik
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

Erik Parr
In reply to this post by ddw_music
Hi again,

I have another follow up question on this issue. It seems that the default input device cannot be changed within SC.  I can
change the output device with s.options.device but  s.options.inDevice returns 'ERROR: Invalid option nil' after boot.

Similar, I when I execute any of these:

ServerOptions.inDevices
ServerOptions.outDevices
ServerOptions.devices

I get this:

A primitive was not bound. 0 505
Instance of Method {    (05315060, gc=01, fmt=00, flg=11, set=04)
 instance variables [15]
   raw1 : Float 0.000000   00000000 0040000C
   raw2 : Float 0.000000   00000300 03020003
   code : instance of Int8Array (053151A0, size=4, set=1)
   selectors : nil
   constants : nil
   prototypeFrame : instance of Array (05315150, size=3, set=2)
   context : nil
   argNames : instance of SymbolArray (05315110, size=3, set=1)
   varNames : nil
   sourceCode : nil
   ownerClass : class Meta_ServerOptions (05311650)
   name : Symbol 'prListDevices'
   primitiveName : Symbol '_ListAudioDevices'
   filenameSymbol : Symbol 'C:\Program
Files\SuperCollider\SCClassLibrary\Common\Control\Server.sc'
   charPos : Integer 3285
}
ERROR: Primitive 'none' failed.
Failed.
RECEIVER:
  nil
CALL STACK:
        MethodError:reportError   04779C70
                arg this = <instance of PrimitiveFailedError>
        Nil:handleError   04779850
                arg this = nil
                arg error = <instance of PrimitiveFailedError>
        Thread:handleError   04779C10
                arg this = <instance of Thread>
                arg error = <instance of PrimitiveFailedError>
        Object:throw   04779730
                arg this = <instance of PrimitiveFailedError>
        Object:primitiveFailed   047795B0
                arg this = nil
        Interpreter:interpretPrintCmdLine   05729010
                arg this = <instance of Interpreter>
                var res = nil
                var func = <instance of Function>
                var code = "ServerOptions.inDevices
"
                var doc = nil
        Process:interpretPrintCmdLine   04779670
                arg this = <instance of Main>




On Nov 18, 2010, at 11:47 PM, James Harkins wrote:

> Is there any way you can change the names of the virtual buses?
>
> On 11/19/2010 06:25 AM, Erik Parr wrote:
>>   - MME : Line 3 (Virtual Audio Cable)   (device #5 with 2 ins 0 outs)
>>  
> ...snip
>>   - MME : Line 3 (Virtual Audio Cable)   (device #11 with 0 ins 2 outs)
>>  
>
> When you set s.options.device = "Line 3 (Virtual Audio Cable)", the server can't distinguish between the Line 3 device that's used for output and the Line 3 used for input. (IIRC, maybe it's been changed in the server code.)
>
> hjh
>
> --
> James Harkins /// dewdrop world
> [hidden email]
> http://www.dewdrop-world.net
>
> "Come said the Muse,
> Sing me a song no poet has yet chanted,
> Sing me the universal."  -- Whitman
>
> blog: http://www.dewdrop-world.net/words
> audio clips: http://www.dewdrop-world.net/audio
> more audio: http://soundcloud.com/dewdrop_world/tracks
>
>
> _______________________________________________
> sc-users mailing list
>
> info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
> archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
> search: http://www.listarc.bham.ac.uk/lists/sc-users/search/


_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

Erik Parr
In reply to this post by Erik Parr
Can anyone on tell me why changing my default input device works on mac SC but not on Windows? Or can any windows users replicate the problem? 
this:
s=Server.default
s.options.inDevice_("Built-in Input") 

produces: 'Error: Invalid option nil' after bootup of server.

My goal is to route 3 separate channels to supercollider from another application. But I can only get sc to listen to its default device, which I cannot change from within supercollider. If i manually change the default recording device in windows, then sc will hear it.

So I have two questions:
How do i change the default input device from within supercollider?
Is it possible to tell supercollider to listen to 3 separate virtual audio devices?

Thanks in advance,

erik
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

Cole Ingraham
I haven't used the latest windows version so I don't know for sure if this is the case but first the device string needs to be exactly what the device is called. So when you boot the server normally or run s.options.devices it should give you a list of all installed devices and you'd just copy/paste the one you want. If you are already doing that then then thing I'm not sure about is .inDevice_(). Not sure if windows supports separate in/out devices (if it does then great, but I don't know what the issue would be then). Try .devices_() and see if that works instead.

-Cole

On Fri, Dec 3, 2010 at 6:31 AM, Erik Parr <[hidden email]> wrote:
Can anyone on tell me why changing my default input device works on mac SC but not on Windows? Or can any windows users replicate the problem? 
this:
s=Server.default
s.options.inDevice_("Built-in Input") 

produces: 'Error: Invalid option nil' after bootup of server.

My goal is to route 3 separate channels to supercollider from another application. But I can only get sc to listen to its default device, which I cannot change from within supercollider. If i manually change the default recording device in windows, then sc will hear it.

So I have two questions:
How do i change the default input device from within supercollider?
Is it possible to tell supercollider to listen to 3 separate virtual audio devices?

Thanks in advance,

erik



--
http://www.coleingraham.com
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

ddw_music
In reply to this post by Erik Parr
At Fri, 3 Dec 2010 13:31:15 +0000,
Erik Parr wrote:

>
> [1  <text/plain; us-ascii (quoted-printable)>]
> Can anyone on tell me why changing my default input device works on mac SC but not on Windows? Or can any windows users replicate the problem?
> this:
> s=Server.default
> s.options.inDevice_("Built-in Input")
>
> produces: 'Error: Invalid option nil' after bootup of server.
>
> My goal is to route 3 separate channels to supercollider from another application. But I can only get sc to listen to its default device, which I cannot change from within supercollider. If i manually change the default recording device in windows, then sc will hear it.
>
> So I have two questions:
> How do i change the default input device from within supercollider?
> Is it possible to tell supercollider to listen to 3 separate virtual audio devices?

Jack for Windows?

http://www.grame.fr/~letz/jack-1.9.6.tgz

Re: multiple devices -- SC in OSX handles the issue of multiple hardware interfaces by exploiting a CoreAudio feature, "aggregate devices." In Linux, if it's possible at all, it would depend on configuring jack to address multiple devices.

scsynth doesn't, on any operating system, natively support multiple interfaces -- but, if the OS can make multiple hardware devices look like a single abstraction (as with aggregate devices), scsynth can use them.

hjh


--
James Harkins /// dewdrop world
[hidden email]
http://www.dewdrop-world.net

"Come said the Muse,
Sing me a song no poet has yet chanted,
Sing me the universal."  -- Whitman

blog: http://www.dewdrop-world.net/words
audio clips: http://www.dewdrop-world.net/audio
more audio: http://soundcloud.com/dewdrop_world/tracks

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Routing sound to SC in Windows

MichaelP
This post has NOT been accepted by the mailing list yet.
This post was updated on .
Hi,

on Windows 10 is the same situation
no possibility to change the sound card or as I want to use multiple sound cards
ServerOptions.inDevices_().postln;
ServerOptions.outDevices_().postln;
ServerOptions.devices_().postln;
ServerOptions.inDevices_();
ServerOptions.outDevices_();
ServerOptions.devices_();


ServerOptions.inDevices.postln;
ServerOptions.outDevices.postln;
ServerOptions.devices.postln;
ServerOptions.inDevices;
ServerOptions.outDevices;
ServerOptions.devices;




ERROR: A primitive was not bound. 0 691
Instance of Method {    (0000021366801F80, gc=01, fmt=00, flg=11, set=04)
  instance variables [15]
    raw1 : Float 0.000000   0080000C 00000000
    raw2 : Float 0.000000   00000000 00000000
    code : instance of Int8Array (0000021366802280, size=4, set=2)
    selectors : nil
    constants : nil
    prototypeFrame : instance of Array (00000213668021C0, size=3, set=2)
    context : nil
    argNames : instance of SymbolArray (0000021366802100, size=3, set=2)
    varNames : nil
    sourceCode : nil
    ownerClass : class Meta_ServerOptions (00000213667F86C0)
    name : Symbol 'prListDevices'
    primitiveName : Symbol '_ListAudioDevices'
    filenameSymbol : Symbol 'C:\Program Files\SuperCollider-3.8.0\SCClassLibrary\Common\Control\Server.sc'
    charPos : Integer 4472
}
ERROR: Primitive 'none' failed.
Failed.
RECEIVER:
   nil
PATH: C:/Users/MOX/server_select_soundcard.scd
CALL STACK:
        MethodError:reportError   0000021366E09B48
                arg this = <instance of PrimitiveFailedError>
        Nil:handleError   0000021366E11BD8
                arg this = nil
                arg error = <instance of PrimitiveFailedError>
        Thread:handleError   0000021366E07E68
                arg this = <instance of Thread>
                arg error = <instance of PrimitiveFailedError>
        Object:throw   0000021366E06238
                arg this = <instance of PrimitiveFailedError>
        Object:primitiveFailed   0000021366E38EC8
                arg this = nil
        Interpreter:interpretPrintCmdLine   0000021368A572A8
                arg this = <instance of Interpreter>
                var res = nil
                var func = <instance of Function>
                var code = "ServerOptions.devices;"
                var doc = nil
                var ideClass = <instance of Meta_ScIDE>
        Process:interpretPrintCmdLine   0000021366C78B48
                arg this = <instance of Main>
^^ The preceding error dump is for ERROR: Primitive 'none' failed.
Failed.
RECEIVER: nil
Loading...