Hi everyone! I am trying to get my feet wet with TidalCycles but I am unable to get it to run in atom. I have most recent updates for Haskall, Atom, Git, and SuperCollider. The TidalCycle package in atom is installed as well. SuperDirt is installed correctly too, but whenever I try to code in atom, it can’t recognize the language and throws up an error: “Uncaught Cannot call write after a stream was destroyed” Please help!
I also put cabal update into my command line, and it says “Resolving dependencies… Up to Date”
Welcome @ripLift, it is probably a bug in the windows Haskell install that makes it difficult to install the tidal library.
Probably the easiest workaroudn is installing Haskell using the ‘full’ version of the Haskell platform (I don’t use windows so don’t know if you can uninstall the old one first). The latest haskell doesn’t have this version, but you can get a slightly older installer here that should do the job fine:
https://www.haskell.org/platform/download/8.4.3/HaskellPlatform-8.4.3-full-x86_64-setup.exe
Once you’ve installed that, re-doing this in a terminal window:
cabal new-update
cabal new-install tidal --lib
should fix it.
Please let us know how you get on
Hi @yaxu !
I uninstalled the version of Haskell I had and used your link, but once that was finished I put cabal new-update into command prompt and it gave me this: No cabal.project file or cabal file matching the default glob ‘./*.cabal’ was found.
Please create a package description file .cabal or a cabal.project file referencing the packages you want to build.
Ah!
Try
cabal update
then
cabal install tidal
So this is interesting, that worked in my command prompt and downloaded tidal, and in atom I can run a line and it won’t give me any errors but there is no sound. I made sure the sound on my computer is working so it’s specific to atom or perhaps tidal?
It says 'listening for controls ’ and then my IP address
Great, getting closer… Do you have supercollider running with SuperDirt.start
?
I ran that in supercollider and it gave this: WARNING: Dirt could not load some synths from default-synths.scd, because sc3plugins are necessary and missing.
Ok - sample playback e.g. d1 $ sound "bd sn"
should still work fine without sc3plugins installed
I tried running that in atom and it gave me the same “Listening for controls on 127.0.0.1:6010” with no sound
@yaxu would installing the missing plugins fix the problem?
It might be worth a try, but normally sc3plugins is not required for playing samples and most of the effects.
You could try opening a graphical scope in supercollider, to see whether it is sending sound. The easiest way of doing this is clicking around the status bar in the bottom right, and selecting ‘Show scope’. You should see the scope move if there is sound playing. If so, the problem is between supercollider and your sound output.
If not, then the problem is probably between tidal and supercollider. One way of checking this is to try paying a sound that doesn’t exist, e.g. with d1 $ sound "asldfkjasdf"
. If the connection between tidal and sc is fine, you should see ‘instrument not found’ errors in supercollider. Let us know how it goes.
So, I opened up the scope in supercollider and tried to run a line and there was nothing moving. I copied your line and put it into atom and it doesn’t give me the instrument not found error, it still says listening for controls. I put hush underneath and tried to run it and it gave me this:
* Couldn't match expected type `IO () -> Pattern ControlMap'
with actual type `Pattern ControlMap'
* The function `sound' is applied to two arguments,
but its type `Pattern String -> Pattern ControlMap' has only one
In the second argument of `($)', namely `sound "asldfkjasdf" hush'
In the expression: d1 $ sound "asldfkjasdf" hush
I deleted the hush and then just tried to run the fake sound again, and it just gives me a t> each time with nothing in supercollider.
Was there a solution found for this? I’ve had the same problem as the riplift and tried d1 $ sound "asasdlfkj"
but it jsut gave me a t> every time and nothing on the supercollider side.
Hi @Edmund_Dable-Heath, there could be a few things wrong. Have you run SuperDirt.start
in supercollider? If so what output do you see in the supercollider post window?
By the way, the most active tidal forum is now at https://club.tidalcycles.org/
Thanks for getting back to me.
The output I see in the post window is:
Booting server 'localhost' on address 127.0.0.1:57110.
Found 0 LADSPA plugins
Number of Devices: 3
0 : "Built-in Microph"
1 : "Built-in Output"
2 : "DisplayPort"
"Built-in Microph" Input Device
Streams: 1
0 channels 2
"Built-in Output" Output Device
Streams: 1
0 channels 2
SC_AudioDriver: sample rate = 44100.000000, driver's block size = 512
Exception in World_OpenUDP: bind: Address already in use
Server 'localhost' exited with exit code 1.
I previously saw listening to Tidal on port...
but it doesn’t appear to be there anymore.
I can start a thread over on the other forum if that would be more useful?
Oh I should probably mention that a key difference between me and the original poster is I’m running MacOs not Windows
If you ‘kill all servers’ in the menus that will get rid of the ‘address already in use’ error.
Perfect! It’s working now, thank you very much!