![]() |
![]() ![]() ![]() ![]() ![]()
|
next newest topic | next oldest topic |
Author | Topic: Memory writer stopping in sync. |
Alain Guisan Member |
![]() ![]() ![]() Hello, When the Memory Writer is in cyclic mode, it seems that it continues to record until the end of the buffer when we switch the trigger to 0. Is there a way to stop recording exactly at that time or, even better, to stop and go when the trigger switch between 0 and 1? Thanks Alain IP: Logged |
Alain Guisan Member |
![]() ![]() ![]() BTW, Is there other prototypes that can read from the memory writer, apart from the Sample player and the SampleCloud? IP: Logged |
SSC Administrator |
![]() ![]() ![]() Right now, the MemoryWriter starts at the beginning of the recording when triggered whether its set for Cyclic or not; it also always records to the end when the trigger is removed. You also can use the Waveshaper with recordings from MemoryWriters. Perhaps there is another way to accomplish what you are trying to do without requiring changes to the MemoryWriter. Could you briefly describe what you want to do? IP: Logged |
Alain Guisan Member |
![]() ![]() ![]() What I am trying to do is to record in the memory writer when the sound is above a certain threshold, so when there is no sound at the input it should stop recording, otherwise it is inserting silence in the memory. Then, when there is some sound again, it should feed the memory writer again, ideally right after the last bit of material that was recorded. The application is a sound installation with various sounding objects, so when people are touching the objects, the sound should be feeding the memory writer and when they stop touching the objects the Sample player should continue looping with this material. As it is now, the process is pretty random, if we stop playing and the memory writer is by chance pretty much at the end of the buffer, then there is little silence inserted. But if we stop when it is at the beginning, then it is fed almost entirely with silence. The other application is a bit more simple. I have the memory writer in cyclic mode recording all the time, but at a certain moment of the performance it must stop recording (and exactly at that time), then the Sample player continues to loop with the material that has been recorded until then. I hope my explanation is clear enough ;-) Would it be a solution to buy the Looper Construction Kit? Thanks a lot for your help. Alain IP: Logged |
SSC Administrator |
![]() ![]() ![]() You can restrict the playback of the Sample to the non-silent parts by adjusting the LoopEnd (or End) of the Sample. To determine the length of the recording, use !Gate durationOfGate which will give you the number of seconds that !Gate was turned on. If you divide this number by the CaptureDuration of the MemoryWriter, this will give you your LoopEnd. Their might be an example of this in the Kyma Sound Library in Sampling/Live Capture and Looping.kym. ---- The best way to determine whether the Looper Construction Kit will do what you need is to read their on-line documentation describing all of their modules. (http://www.greenteasoftware.com/lck.htm) IP: Logged |
pete Member |
![]() ![]() ![]() Hi Alain I think peteDSPModules (Found on the tweaky) will do what you want. If you use a StepWriter module with an UpDownCounter module feeding its index, you should be able to control it all at sample rate. The logic modules may help with the senceing control if they need to be at sample rate too. Pete. You will need to be logged in before you can get to the link. You will need both the UserCode.zip and the PetesDSPModules9-12-03.kym to get it working. [This message has been edited by pete (edited 08 November 2004).] IP: Logged |
mathis Member |
![]() ![]() ![]() Yes, Pete´s sound rule for your application! (and in general, too! ![]() IP: Logged |
Alain Guisan Member |
![]() ![]() ![]() Hi Pete, I'm eager to try your microsounds. But I couldn't make them running yet as it seems I didn't put the .asy file at the right place (could not find any folder with other .asy files in the Kyma X.app folder). I could open the .kym file though and check the various modules. It looks really exciting, a nice addition to the existing Kyma library. It will also be very usefull for other projects I have in mind. Thanks a lot for sharing this with us! SSC: I will try with the "durationOfGate" command too. I was thinking to keep the sample length constant but it would be interesting to see what's happening in this case, with the kind of mess around I do then with the sample player. Thanks! Alain IP: Logged |
pete Member |
![]() ![]() ![]() Hi Alain I'm not running kymaX at the mo but I think you should put the .asy file in the kyma folder to make it auto boot the microsounds. alternativly you can put it anywhere and select "Choose Microsounds" under the file menu in kyma. This way you would have to do the same every time you reboot Kyma. If you are using a mac I think you need to import them first before using them. Maybe some other kyma users can help out here as I've never had to import them myself. Pete IP: Logged |
mathis Member |
![]() ![]() ![]() yes, just save it to the root "kyma" folder. (on PC) IP: Logged |
Alain Guisan Member |
![]() ![]() ![]() Yes, you are right, it was as simple as that ;-) I've put the file in the root of the Kyma folder adn the microsounds are compiled at boot up now. Still have to modify my patch though, I'll let you know how it works (unfortunately, I'll be off for 10 days...). By the way, is there any "index reader" too. This way of reading the memory might be more efficient than the Sample module for the "pattern playback" algorithm that I'm trying to implement (basically, it is a small loop of a few ms that span slowly through the memory buffer with a few samples increment at each loop). Alain IP: Logged |
pete Member |
![]() ![]() ![]() Hi Alain I've said this a few times before, but the waveshapper module is probably the most badly named module in Kyma. It implies something you use for creating destortion and nothing much else. It is actualy one of the most powerfull modules in Kyma and should realy be called memory reader or random access memory player as that is what it is. What ever you put in it's index input determines what point of sample RAM is outputed. If the index rises towards +1 it plays forward and if the index goes towards -1 it plays backwards. This is the module you need just ignore the name. Maybe I should wrap it in a new class and call it memory reader then it may get the popularity it rightly deservse. The ramps counters and index manipulators in petes DSPModules are optimised to work with this module and the memory writer in petes DSPModules is it turn optimised to work with them. Pete. BTW Mathis IP: Logged |
keph Member |
![]() ![]() ![]() quote: heh. i was just thinking the same thing. one thing to note about the "memory reader" is if you are playing audio back, be sure to use an audio rate control if you want smooth scrubbing through the file. if you use constant with somelike !index + (!indexrange * (1 repeatingRamp: !scrubspeed s)), then the scrubbing will run at control rate (1000 hz) and have a downsampled feel to it. IP: Logged |
Alain Guisan Member |
![]() ![]() ![]() Hi Pete, I know it's a long time, but I wanted to thank you for the step writer and other modules of your library. They have been extremely useful and I could build the kind of circular buffer I was looking for. However, I'm running now into a problem as I use three different step writers in a patch and this causes the Out of Realtime problem. It seems they are all scheduled on DSP 5 (I have six of them). the other four DSP's are totally empty in the DSP meter but I still get this error. (I have a Capy 320). Do you have any idea of what I could do? Thanks again for sharing those modules with the community ;-) Alain IP: Logged |
HectorBenard Member |
![]() ![]() ![]() Have you tried doing a forced processor assignment? H IP: Logged |
SSC Administrator |
![]() ![]() ![]() I think the problem is that the modules that Pete has made do not have estimates of the processing time cost, so Kyma is being overly conservative. Last year, we modified some of Pete's modules to include accurate processing time estimates and posted it to this forum. Please read the thread for more info: http://www.symbolicsound.com/cgi-bin/forumdisplay.cgi?action=displayprivate&number=7&topic=000160 IP: Logged |
Alain Guisan Member |
![]() ![]() ![]() I tried with the ForcedProcessorAssignement prototype that I could find thanks to Hector's suggestion and this effectively solved the problem, but only when the sound is played from the editor, not in the timeline. In the timeline it seems that the sound is simply not executed anymore (I've put the module right before the output of the sound). SSC: I will check your version of Pete's modules. Thanks for the link. Hopefully this includes the StepWriter as well. The thread looks very interesting anyway. Alain IP: Logged |
All times are CT (US) | next newest topic | next oldest topic |
![]() ![]() |
This forum is provided solely for the support and edification of the customers of Symbolic Sound Corporation.