![]() |
![]() ![]() ![]() ![]() ![]()
|
next newest topic | next oldest topic |
Author | Topic: Mulichannel Pan to Multichannel Disk? | |
speedo Member |
![]() ![]() ![]() I have a stereo source going to Multichannel Pan. !Angle is being controlled by a live event. Each time a new trigger happens, new sounds are generated with new !Angle values but I need the old ones to continue playing with the same spatial arrangement (panning). So basically, I think I need to record Multichannel Pan to Disk and when the trigger happens, play back the files with something like SplitSurround File player. This is easy to accomplish in stereo with DiskRecorder. But I'm having difficulty accomplishing it with Multichannel mainly because I don't see a way to capture the panning to disk with Multichannel Pan. Is this possible? I assume once I record the multichannel pan output I can then retrieve it with SplitSurroundFile Player. Thanks! IP: Logged | |
SSC Administrator |
![]() ![]() ![]() Hi Speedo, Did you try selecting your MultichannelPan and then choosing Record to disk from the Action menu? That should give you the option to record as many channels as you like into separate files on disk. IP: Logged | |
speedo Member |
![]() ![]() ![]() Got it. Thanks again. IP: Logged | |
speedo Member |
![]() ![]() ![]() This does not do exactly what I need, mainly because the playback name and recording name are the same. Playback is constantly being rewritten by the live "Record to Disk" when it should playback the last iteration complemented by the live input. Perhaps I am overthinking this and the solution is very simple or I need a script that can do the same thing as "Action>Record to Disk" and increment the multichannel output names so it doesn't overwrite the playback track. I couldn't find anything in the smalltalk reference that addressed physical outputs though. Any hints? The general process is something like this: 1) sound1 gets triggered, pans to !angle A and is recorded as recording1 (multichannel) 2) sound2 gets triggered, pans to !angle B. recording1 plays back and is recorded with sound2 to recording2 (multichannel). 3) sound3 gets triggered, pans to !angle C. recording2 plays back and is recorded with sound3 to recording3 (multichannel). 4) sound4 gets triggered etc... up until a max value. IP: Logged | |
SSC Administrator |
![]() ![]() ![]() You could do this kind of thing using MemoryWriter to write into RAM (instead of recording to disk). That would let you do the successive writing, and combining with the next layer. You could put DiskRecorder on the very last step, once you had all the layers. IP: Logged | |
speedo Member |
![]() ![]() ![]() That crossed my mind. The problem is the length and resolution of the material. 6 channels of 24bit, some of the sounds last for 90 minutes before a new one is triggered ![]() IP: Logged | |
SSC Administrator |
![]() ![]() ![]() quote: Are there live aspects to sound1, sound2, etc? (live input and/or live controls?) IP: Logged | |
speedo Member |
![]() ![]() ![]() They are live events created by a realtime xml feed. Data are sent via OSC from max and that sets the sound/parameters. I am basically trying to keep a sonified "record" of the data. So sometimes a new event doesn't trigger for 2 hours, yet I want to capture all of the modulations within that timeframe and play them back when a new event triggers - in 5.1 surround. It's the multichannel aspect that is really throwing me here. My little brain can conceptualize how to layer a stereo output with MemoryWriter / sample playback. But capturing this surround setup and retaining the spatial config during playback is making my brain ooze. Does multichannel Pan have to be the last thing before output? I assume memorywriter won't capture multichannel? [This message has been edited by speedo (edited 17 August 2010).] [This message has been edited by speedo (edited 17 August 2010).] IP: Logged | |
SSC Administrator |
![]() ![]() ![]() I am wondering whether a Tool might be the better way to go for this particular application. Have you ever had the chance to look at the chapter on Tools? (it is primarily Smalltalk coding). The only downside is that the triggering would not be sample-accurate, since the triggering would happen in Smalltalk rather than on the Pacarana. But if the precise start of recording and playback is not an issue, please let me know and I will post an idea for a Tool you could use as a starting point. [This message has been edited by SSC (edited 17 August 2010).] IP: Logged | |
speedo Member |
![]() ![]() ![]() fantastic. i have read the chapter on tools, but have since reverted back a few pages to smalltalk land to wrap my head around it. sure, i would gladly take any hints you might have. sample accuracy is not an issue and events can be 'heard' up to many seconds after the initial onset. thanks again for the assistance. IP: Logged | |
SSC Administrator |
![]() ![]() ![]() OK, I posted a Tool on tweaky share: http://www.symbolicsound.com/cgi-bin/bin/view/Share/Tools under the Recording to/playing back from Disk category. It does the first two steps: 1. Record a multichannel file to disk The resulting disk files will be in your Kyma folder inside the Disk Tracks folder. You can play them back with a SplitSurround player. To see how to record each channel of the 6-channels, open the Sounds that are in the compiled Sound grid (it uses a MultiToMultichannel Sound. IP: Logged | |
speedo Member |
![]() ![]() ![]() Looks great. I will try it tomorrow when I get to the studio first thing. Thanks! IP: Logged | |
speedo Member |
![]() ![]() ![]()
For some reason, the output of MultitoMultichannel isn't getting the angle - it only sounds from one speaker when the angle is at a larger value. However, if I play the sound from MultiChannel Pan it is fine. On the example you sent, and my own, it's not finding the recordings (getting the eyeglasses icon) - even though I can see the recordings in the finder in the Disk Tracks. Not sure why it's doing this but I will investigate further. The tool I built is attached. Not entirely sure what I'm doing but I think I'm on the right track. Basically, I built a numeric variable oscTrig that is tied to the !osc_trig event value in each sound. When !osc_trig is 1 (and the current sound is "notified" it should switch to the next sound in the sound grid. My buttons aren't "notifying" - maybe because the sounds aren't playing because the files can't be found? IP: Logged | |
SSC Administrator |
![]() ![]() ![]() quote: If you put the full pathname into the players it should work. I didn't put the full path since I knew it would be different on your computer. IP: Logged | |
speedo Member |
![]() ![]() ![]() quote: I understand what you're saying but why? In most cases, Kyma hasn't had a problem finding diskplayer or sample file names. Even all of the stock content has relative file paths. I assume I'm misunderstanding something. IP: Logged | |
speedo Member |
![]() ![]() ![]() I'm a little confused about where the ?VoiceNumber allocation is coming from. It looks like the VoiceNumber designates the recorded file name from a collection. But where do I specify the VoiceNumber? The section about the ?VoiceNumber in Kyma Revealed is very short (like 2 sentences). Is it a built in polyphony variable? Ha. This example makes sense but I'm just getting more confused about how the pieces fit together. EDIT: OK, so it looks like it is based on polyphony. Hmmm. I'm not using MIDI or simultaneous voices. I guess I need to figure out a way to customize this a bit for OSC triggering. [This message has been edited by speedo (edited 23 August 2010).] IP: Logged | |
SSC Administrator |
![]() ![]() ![]() Replicators (including MultiToMultichannel, MonoToMultichannel, etc) automatically assign a value to ?VoiceNumber equal to the copy of the replicatedSound. If you find Replicator in the Prototypes, go to the info menu, and select Describe Sound... it gives more of a description of how you can use ?VoiceNumber. IP: Logged | |
speedo Member |
![]() ![]() ![]() Aha. I think I figured out the problem I was having. In the example sound the DiskRecorder was also in the 'SharedSounds'. Now it writes all the files correctly. IP: Logged | |
speedo Member |
![]() ![]() ![]() Finally! I got it! It's working the way I wanted now. Now I just have to tweak it so I won't run out of CPU! [This message has been edited by speedo (edited 23 August 2010).] 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.