![]() |
![]() ![]() ![]() ![]() ![]()
|
next newest topic | next oldest topic |
Author | Topic: autosampler tool in Wiki | |
Luddy Member |
![]() ![]() ![]() Hi, I posted an auto-sampling tool in the Wiki, under Share / Tools / Sampling. The tool creates a multisample from a Kyma sound. The sound must be parameterized by the ?KeyPitch variable. The tool has input fields for beginning and ending pitch, and sample duration. It then walks through each pitch in the specified range, playing the sound and capturing the result in a wave file that is stamped with the appropriate base pitch. The samples are placed in a user-specified directory. The sound to be sampled must be saved in the compiled sound grid that is included in the tool's directory. It is easy to use this tool to sample hardware synthesizers as well (through the excellent Kyma A/D converters!) To do this, you create a sound that uses MIDINote to play ?KeyPitch to the MIDI output; the MIDI Note should be mixed with an Input sound that listens to the Capybara input that the synthesizer's audio output is plugged into. If this is unclear and anyone is interested, I can post a sound that does this. Another interesting possibility that I've experimented with is to sample a sound that plays a short MIDI sequence, transposed by the value of <sequence pitch> - ?KeyPitch. For example, the sequence might play the note C3, and send some pitch bend and channel pressure. You could then sample it over an octave, to get the effect of those control messages on the individual pitches in that range. -Luddy IP: Logged | |
Phi Curtis Member |
![]() ![]() ![]() Wow, that sounds brilliant. Thanks for sharing! IP: Logged | |
cristian_vogel Member |
![]() ![]() ![]() nice! thanks man IP: Logged | |
Luddy Member |
![]() ![]() ![]() Thanks, let me know if there are problems. -L IP: Logged | |
Bill Meadows Member |
![]() ![]() ![]() quote: Well, it's a bit slow and primitive, but it works - far easier than doing it by hand. I haven't tried sampling an external synth yet, but that could be handy. A possible enhancement: Could you add an "interval" control so it wouldn't be limited to semitone steps? For example, one could set the interval to 12 and get only one sample per octave in the note range specified. Nice work. Thanks. IP: Logged | |
Luddy Member |
![]() ![]() ![]() Hi, yeah, I have been thinking of adding that (interval param) as well. As soon as I get a bit of time, I'll drop that in and update it on the wiki. Do you mean that it's slow, even if you discount the actual sound playing / sample recording time? Maybe I've got some unnecessary delays in there somewhere... -Luddy [This message has been edited by Luddy (edited 28 October 2008).] IP: Logged | |
Bill Meadows Member |
![]() ![]() ![]() It seems like it re-compiles the Sound for every sample. Maybe that's necessary, but it adds a lot of overhead. btw - I liked your example Sound. IP: Logged | |
Luddy Member |
![]() ![]() ![]() Aha! I have to look more deeply into the sound grid that is available to tools. Seems like it ought to be possible to arrange for the sampled sound to be precompiled somehow ... -L IP: Logged | |
cristian_vogel Member |
![]() ![]() ![]() the tool doesn't send !KeyDown or !gate ? so how can I trigger the sample or MIDI keyboard? also the recompiling for each recording makes it very time consuming, when the sound is a big one... I managed to get the tool to send a gate true to ?gate , but until we can make it step through the pitches and send gates and record to disk, without recompiling each time, its not going to be saving that much time in my case... [This message has been edited by cristian_vogel (edited 17 November 2008).] IP: Logged | |
Luddy Member |
![]() ![]() ![]() Hi Cristian, I use OutputMIDIEvent or OutputMIDIEventInBytes to send notes to external modules. I trigger them unconditionally, i.e., with a '1'. I had not thought of putting !KeyDown into a sound that I am automatically sampling, because that would mean that the sound would be waiting for external events to arrive, whereas I simply want it to play unconditionally at the same instant that the recording begins. Concerning compilation, I think to avoid it a different approach would be needed. When a tool invokes a named sound from a sound grid, and passes parameters to it, then a compilation occurs. This is necessary to turn the parameters into capytalk, I think. If instead the tool created just one sound, played it from beginning to end to generate all the notes, then separately cut the recording into samples, that would avoid the compilation I think. Maybe there is another way that I'm not thinking of? The tool doesn't save you any time unless you do something else while it is running, haha. -Luddy
[This message has been edited by Luddy (edited 17 November 2008).] IP: Logged | |
Luddy Member |
![]() ![]() ![]()
Anyway, the problem is that this thing is also not very fast, and it compiles the input sounds many times, although only in the context of a single overall compile-and-load. Any ideas about how to design something that would do this with just a single compile of the sound to be sampled? -Luddy 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.