electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » DIY Hardware and Software » ChucK programming language
Asio Chuck
Post new topic   Reply to topic Moderators: Kassen
Page 1 of 2 [34 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: 1, 2 Next
Author Message
lamarcph



Joined: Oct 21, 2004
Posts: 40
Location: Montreal, Canada
G2 patch files: 4

PostPosted: Wed Jun 20, 2007 9:59 pm    Post subject:  Asio Chuck
Subject description: Chuck Asio build. updated; Now 1.2.1.2
Reply with quote  Mark this post and the followings unread

Hi,

I was able to compile Chuck for Asio. There is no code change. Rtaudio is Asio compatible, it was more a question of reconfiguration.

Please understand that this is an experimental version that I tested for a few days. It may or may not fits your needs. From what I can see: realtime latency is a lot better but it's harder on the cpu than the directsound version.

Please be aware that Chuck is bound by the GNU GENERAL PUBLIC LICENSE and the licence described here for rtaudio : http://www.music.mcgill.ca/~gary/rtaudio/index.html#license

The chuck main page is : http://chuck.cs.princeton.edu/

I am trying to post the executable file, renamed as chuck.ck.
To use it, just rename it to chuck.exe

Make sure to have a backup/copy of some sort of your current Chuck install before replacing your chuck.exe. It may not work, I only tested it with a Motu 828MkII. If you enconter dropout, try adjusting the buffer on the soundcard. It might have to be put to something higher than normal. Here with a buffer of 514 samples I can play fairly complex stuff and still have a very usable latency for midi input.

Please try it,

Philippe.

[edited for 1.2.1.0]

[edit by Kas; the latest version; 1.2.1.2 build by Steve is to be found on the second page or by clicking here]



chuck1210asio.ck
 Description:
Asio build of the last chuck version : 1.2.1.0
This is "experimental", it could crash and burn. However, I tested it a bit and it seems ok.

Download
 Filename:  chuck1210asio.ck
 Filesize:  1.48 MB
 Downloaded:  1841 Time(s)


Last edited by lamarcph on Thu Aug 30, 2007 10:01 am; edited 1 time in total
Back to top
View user's profile Send private message
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Wed Jun 20, 2007 10:37 pm    Post subject: Reply with quote  Mark this post and the followings unread

Works like a charm on the OTF examples!

multi-channel works too but requesting "my_signal => dac.chan(3);" yields a nullpointer if ChucK isn't started with a request for more then 2 channels. That's likely a existing issue not caused by your patch though.

Win XP, sp1, E-MU1616m

chuck --probe detects all 6 inputs and all 6 outputs I have installed too. Doesn't detect any of the WM outputs in this form.

Again; great job!

For those just tuning in; this came from a discussion on the ChucK-dev list where Philippe reported that he got Asio working. So; testers are needed, preferably people who got bored with things like bungy jumping and fire jugeling and are looking for a little more danger, as well as a good place to host this. So; here we are.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
lamarcph



Joined: Oct 21, 2004
Posts: 40
Location: Montreal, Canada
G2 patch files: 4

PostPosted: Wed Jun 20, 2007 11:24 pm    Post subject: Reply with quote  Mark this post and the followings unread

If i am not mistaken, rtaudio loads and create channel at chuck startup. Also, if you would like to access only channel 5, you must request 5 channels, and then only use channel 5. This too is a limitation/feature of rtaudio.

The DirectSound api is not loaded in this build, only Asio devices will be usable.
Back to top
View user's profile Send private message
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Wed Jun 20, 2007 11:43 pm    Post subject: Reply with quote  Mark this post and the followings unread

Got it.

I suspected the lack of WM was known; I pointed it out in case that would be a EMU issue.

About those channels; I think it would be better if, upon compilation, ChucK would compare dac.chan(n) against dac.channels() and give a error if n isn't smaller then the number of channels instead of generating a nullpointer error when running. Maybe that's not such a simple check as the parser needs to know the state of the VM and the two might be seperate?

But that's another matter altogether, it works. I have to say I'm quite impressed with RTAudio and ChucK that this just works when switched on, despite the Princeton people not having a ASIO system to test with. That's pritty clean....

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
moudi



Joined: Oct 07, 2006
Posts: 63
Location: Bern Switzerland

PostPosted: Thu Jun 21, 2007 11:40 am    Post subject: Reply with quote  Mark this post and the followings unread

woohhooooot Very Happy
this is definitly great news for all chuck addicted windows chunkies Cool

i hope that i'll be able to test this weekend some basics.
(xp sp2 with a rme hammerfall multiface).

hehe.. seems that i need to learn all the chucking vm commands since i only used the miniAudicle so far. Laughing

cheers to the devs
/moudi
Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Thu Jun 21, 2007 12:36 pm    Post subject: Reply with quote  Mark this post and the followings unread

It's not that hard and if this turns out to work or if we know where and why it fails I imagine we'll see official updates quite soon. It'd be realy cool if this would work with ASIO4ALL as well, that'd open it up for those on more modest cards too.

I didn't have a single hickup and in fact I think it opened more sampling rates too. On that topic; you might want to beware with the outpu of "chuck --probe" on a RME. I saw some odd stuff with the Mini being unable to deal with the variable bit-rate that RME can adapt too.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
kijjaz



Joined: Sep 20, 2004
Posts: 765
Location: bangkok, thailand
Audio files: 4

PostPosted: Thu Jun 21, 2007 3:44 pm    Post subject: Reply with quote  Mark this post and the followings unread

Yes.. this is a good exciting news!
i'm gonna test on emagic a26 usb audio interface and rme hammerfall multiface also.
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
Consul



Joined: May 05, 2007
Posts: 59
Location: Port Huron, Michigan, USA

PostPosted: Thu Jun 21, 2007 6:37 pm    Post subject: Reply with quote  Mark this post and the followings unread

I'll definitely be giving this a test drive. I'm stuck in ASIO4ALL territory for the moment, so I can report back how everything goes.
_________________
Darren Landrum

"Never be afraid to try something new. Remember that a lone amateur built the Ark. A large group of professionals built the Titanic." - Dave Barry
Back to top
View user's profile Send private message AIM Address
Consul



Joined: May 05, 2007
Posts: 59
Location: Port Huron, Michigan, USA

PostPosted: Fri Jun 22, 2007 8:49 am    Post subject: Reply with quote  Mark this post and the followings unread

Well, I have it working fine with ASIO4ALL, without any real issues. I can't really test latency, as I don't have a MIDI in with a keyboard set up at the moment.

Next, I'm going to try it out with Reaper's ReaRoute ASIO loopback driver, and see how that does. chuck --probe shows that driver coming up as dac2, so that's a good sign already.

_________________
Darren Landrum

"Never be afraid to try something new. Remember that a lone amateur built the Ark. A large group of professionals built the Titanic." - Dave Barry
Back to top
View user's profile Send private message AIM Address
Consul



Joined: May 05, 2007
Posts: 59
Location: Port Huron, Michigan, USA

PostPosted: Fri Jun 22, 2007 11:11 am    Post subject: Reply with quote  Mark this post and the followings unread

... And here it is, Reaper recording a track straight from ChucK:

Posted Image, might have been reduced in size. Click Image to view fullscreen.

Is it not nifty? I still need to figure out a way to test latency, but I don't have the room right now to set up my monster Kurzweil MIDIBoard mastercontroller.

_________________
Darren Landrum

"Never be afraid to try something new. Remember that a lone amateur built the Ark. A large group of professionals built the Titanic." - Dave Barry
Back to top
View user's profile Send private message AIM Address
moudi



Joined: Oct 07, 2006
Posts: 63
Location: Bern Switzerland

PostPosted: Fri Jun 22, 2007 2:20 pm    Post subject: Reply with quote  Mark this post and the followings unread

Consul wrote:
Is it not nifty? I still need to figure out a way to test latency, but I don't have the room right now to set up my monster Kurzweil MIDIBoard mastercontroller.

what about when you send a signal from chuck and record it again with it?

SinOsc => dac (patch the output of your soundcard back to the input) adc => WvOut
in the new recorded wave file there should be a delay. divided by two (output latency + input latency) will give you the real latency (not only the buffer size from the soundcard)

should work..??

jassas
/moudi
Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Wed Jun 27, 2007 8:21 pm    Post subject: Reply with quote  Mark this post and the followings unread

After a quick test it seemed to behave fine on a RME. There was a odd noise that persisted after closing ChucK down but that seemed to be some sort of feedback loop in the virtual mixer.

Didn't have the time for a more in-depth investigation but --probe looked fine and my quick code to send random pitches to ten different dac channels compiled without error.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
solipse



Joined: Oct 01, 2006
Posts: 5
Location: france

PostPosted: Sun Jul 01, 2007 4:53 am    Post subject: Reply with quote  Mark this post and the followings unread

Thank you lamarcph,


I finally will be able to plunge me in chuck.
after my first tests (xp pro, rme) that seems to function perfectly… thank
you still!

solipse
Back to top
View user's profile Send private message
kijjaz



Joined: Sep 20, 2004
Posts: 765
Location: bangkok, thailand
Audio files: 4

PostPosted: Mon Jul 02, 2007 4:54 am    Post subject: Reply with quote  Mark this post and the followings unread

Wow yes! Now I'm able to use ChucK with RME Hammerfall Multiface on windows at last!
Thanks.. This is such a good news.
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
lamarcph



Joined: Oct 21, 2004
Posts: 40
Location: Montreal, Canada
G2 patch files: 4

PostPosted: Mon Jul 02, 2007 2:50 pm    Post subject: Reply with quote  Mark this post and the followings unread

hi,
I am working on a new version of the .exe that would work with both Asio and DirectSound.

However, school is taking way to much time these days, so it as been put on hold.
I should get back in a week.

It's fun to see that it works!

Thanks,
Philippe.
Back to top
View user's profile Send private message
L.N.



Joined: Jul 03, 2007
Posts: 3
Location: Helsinki/Finland

PostPosted: Tue Jul 03, 2007 3:01 pm    Post subject:   Reply with quote  Mark this post and the followings unread

Very nice one! I love it and my multiface started purring too:)

This should take some overhead off of the audio buffer streaming.

When will we see an ASIO implementation in miniAudicle,,,?
Back to top
View user's profile Send private message
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Wed Jul 04, 2007 2:08 am    Post subject: Reply with quote  Mark this post and the followings unread

L.N. wrote:

When will we see an ASIO implementation in miniAudicle,,,?


The main issue was that the Princeton people didn't have a ASIO-rig to test with so that's why testing this one is so important. Now that it seems to work I imagine all versions of ChucK should get this quite soon.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
lamarcph



Joined: Oct 21, 2004
Posts: 40
Location: Montreal, Canada
G2 patch files: 4

PostPosted: Fri Jul 20, 2007 9:27 am    Post subject: Reply with quote  Mark this post and the followings unread

Rearoute is quite wonderful.
For some unknown reason, when I use Chuck => ReaRoute => Reaper => ASIO-Motu the cpu usage drops a lot compared to Chuck => ASIO-Motu.
ie I can run an array of 100 detuned SinOsc with a cpu usage of 40-50% while the Chuck => ASIO-Muto will crash and burn at 80 SinOsc max.

Anyone knows why?
Back to top
View user's profile Send private message
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Fri Jul 20, 2007 9:39 am    Post subject: Reply with quote  Mark this post and the followings unread

My bet would be a larger buffer or perhaps rearoute makes it's calls in a way that needs less cpu then the Motu?

Definately interesting.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
chuckles



Joined: Apr 02, 2007
Posts: 72
Location: San Diego, California

PostPosted: Fri Jul 20, 2007 12:33 pm    Post subject: Works here too Reply with quote  Mark this post and the followings unread

Just a data point: Phillipe's executable seems to work just fine for me too. I have a generic Windows XP machine running a Celeron 2.2G, built in "SoundMax" sound chip.

Will try on my P4 system with the Echo MIA card this weekend.

Thanks to Phillipe and cheers to all.

...c...
Back to top
View user's profile Send private message
lamarcph



Joined: Oct 21, 2004
Posts: 40
Location: Montreal, Canada
G2 patch files: 4

PostPosted: Thu Aug 30, 2007 10:03 am    Post subject: Reply with quote  Mark this post and the followings unread

The first post was edited with the 1.2.1.0 build.

Feel free to try it.

Thanks,
Philippe.
Back to top
View user's profile Send private message
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Thu Aug 30, 2007 12:15 pm    Post subject: Reply with quote  Mark this post and the followings unread

You're a hero.
_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24079
Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320

PostPosted: Sat Sep 29, 2007 12:41 pm    Post subject: Re: Asio Chuck
Subject description: Chuck Asio build. Now 1.2.1.0
Reply with quote  Mark this post and the followings unread

lamarcph wrote:
it was more a question of reconfiguration.


Philippe, what compiler did you use and what did you reconfigure exactly?

I'm trying with the usuft visual c express edition and get some nasty syntax errors when I define __WINDOWS_ASIO__ instead of __WINDOWS_DS__

See here for more about what I did.

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
moudi



Joined: Oct 07, 2006
Posts: 63
Location: Bern Switzerland

PostPosted: Sat Apr 12, 2008 7:26 am    Post subject: Reply with quote  Mark this post and the followings unread

hi all
due to kassen's request i made a new asio chuck executable from the 1.2.1.1 source version.
it is still experimental, and i haven't tested this executable so far (only --probe). however, it's the same chuck version as i'm using in the asio-mini which is working well for some months now.

enjoy it
/moudi


chuck.zip
 Description:
ASIO ChucK V1.2.1.1 experimental

Download
 Filename:  chuck.zip
 Filesize:  628.1 KB
 Downloaded:  1059 Time(s)

Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Sat Apr 12, 2008 7:39 am    Post subject: Reply with quote  Mark this post and the followings unread

You're the best! Thanks so much.
_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic Moderators: Kassen
Page 1 of 2 [34 Posts]
View unread posts
View new posts in the last week
Goto page: 1, 2 Next
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software » ChucK programming language
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use