Csound Csound-dev Csound-tekno Search About

[Csnd] Combine multiple mono soundfiles to a single multichannel soundfile

Date2012-12-15 13:08
FromBjoern Houdorf
Subject[Csnd] Combine multiple mono soundfiles to a single multichannel soundfile
Hi


Is there a way to combine multiple mono soundfiles to a single multichannel
soundfile in Csound ?

Suppose I have some short soundfiles:

sf-000.wav, sf-001.wav, sf-002.wav, ......., sf-N.wav, 
where N is a positive integer, say: N = 200

I would like to make a single multichannel soundfile:

soundfile.wav 

And if I play soundfile.wav[123], then I play only channel number 123

I could then play soundfile[a], where a could be a random integer, and loop
it







--
View this message in context: http://csound.1045644.n5.nabble.com/Combine-multiple-mono-soundfiles-to-a-single-multichannel-soundfile-tp5718801.html
Sent from the Csound - General mailing list archive at Nabble.com.

Date2012-12-15 14:06
Frompeiman khosravi
SubjectRe: [Csnd] Combine multiple mono soundfiles to a single multichannel soundfile
If you're on the mac or windows try Richard Dobson's MCTOOLS: http://people.bath.ac.uk/masrwd/mctools.html

On OSX you can use the application called De-Interleaver, from BEAST. (http://www.birmingham.ac.uk/facilities/BEAST/research/mulch.aspx)

Or Sample Manager (not free but cheap) http://www.audiofile-engineering.com/samplemanager/


Best,
Peiman

On 15 December 2012 13:08, Bjoern Houdorf <vandretgaaendeelevator@gmail.com> wrote:
Hi


Is there a way to combine multiple mono soundfiles to a single multichannel
soundfile in Csound ?

Suppose I have some short soundfiles:

sf-000.wav, sf-001.wav, sf-002.wav, ......., sf-N.wav,
where N is a positive integer, say: N = 200

I would like to make a single multichannel soundfile:

soundfile.wav

And if I play soundfile.wav[123], then I play only channel number 123

I could then play soundfile[a], where a could be a random integer, and loop
it







--
View this message in context: http://csound.1045644.n5.nabble.com/Combine-multiple-mono-soundfiles-to-a-single-multichannel-soundfile-tp5718801.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2012-12-15 15:21
FromRichard Dobson
SubjectRe: [Csnd] Combine multiple mono soundfiles to a single multichannel
On 15/12/2012 14:06, peiman khosravi wrote:
> If you're on the mac or windows try Richard Dobson's MCTOOLS:
> http://people.bath.ac.uk/masrwd/mctools.html
>


In this case, not an  option as I still have an upper limit of 16 input 
files to "interlx", as files are simply listed as command line 
arguments. For a huge number of channels I would need to modify it to 
read from a text file. I am not sure how useful that will really be with 
standard WAVE files!

Richard Dobson




Date2012-12-15 16:35
FromBjoern Houdorf
Subject[Csnd] Re: Combine multiple mono soundfiles to a single multichannel soundfile
Thanks


I have made the code below in the SuperCollider programming language, and I
would like to rewrite it in Csound, if I can:



b = SoundFile.collectIntoBuffers("vokalsvaerm/*")*EnvGen.kr(Env.perc, 0.5,
doneAction: 0); 

(
{
var number = b.numChannels, randomNumber, trigger, delayed, panned, sound,
mixedSound, rotatedSound;
trigger = Dust.kr(Array.fill(number,1), 1, -0.5); // Generates random
impulses from -0.5 to 0.5. as a excitation function
randomNumber = TRand.kr(1, number, trigger);
sound = PlayBuf.ar(Array.fill(number,1) ,randomNumber,1,trigger,0,0);
delayed = DelayL.ar(sound, trigger, trigger); // delaying the soundfiles
panned = Pan2.ar(delayed, Array.fill(number,{1.0.rand2})); // pan them out
in stereo field
mixedSound = 0.05*Mix.new(panned);// and mix them to one stereo signal
rotatedSound = Rotate2.ar(mixedSound[0], mixedSound[1], LFSaw.kr(0.1)); //
rotate stereo signal
}.play; // play them
)










--
View this message in context: http://csound.1045644.n5.nabble.com/Combine-multiple-mono-soundfiles-to-a-single-multichannel-soundfile-tp5718801p5718823.html
Sent from the Csound - General mailing list archive at Nabble.com.

Date2012-12-15 16:40
FromVictor Lazzarini
SubjectRe: [Csnd] Re: Combine multiple mono soundfiles to a single
yes, you can do similar stuff, just adapt my examples.

Victor
On 15 Dec 2012, at 16:35, Bjoern Houdorf wrote:

> Thanks
> 
> 
> I have made the code below in the SuperCollider programming language, and I
> would like to rewrite it in Csound, if I can:
> 
> 
> 
> b = SoundFile.collectIntoBuffers("vokalsvaerm/*")*EnvGen.kr(Env.perc, 0.5,
> doneAction: 0); 
> 
> (
> {
> var number = b.numChannels, randomNumber, trigger, delayed, panned, sound,
> mixedSound, rotatedSound;
> trigger = Dust.kr(Array.fill(number,1), 1, -0.5); // Generates random
> impulses from -0.5 to 0.5. as a excitation function
> randomNumber = TRand.kr(1, number, trigger);
> sound = PlayBuf.ar(Array.fill(number,1) ,randomNumber,1,trigger,0,0);
> delayed = DelayL.ar(sound, trigger, trigger); // delaying the soundfiles
> panned = Pan2.ar(delayed, Array.fill(number,{1.0.rand2})); // pan them out
> in stereo field
> mixedSound = 0.05*Mix.new(panned);// and mix them to one stereo signal
> rotatedSound = Rotate2.ar(mixedSound[0], mixedSound[1], LFSaw.kr(0.1)); //
> rotate stereo signal
> }.play; // play them
> )
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> --
> View this message in context: http://csound.1045644.n5.nabble.com/Combine-multiple-mono-soundfiles-to-a-single-multichannel-soundfile-tp5718801p5718823.html
> Sent from the Csound - General mailing list archive at Nabble.com.
> 
> 
> Send bugs reports to the Sourceforge bug tracker
>            https://sourceforge.net/tracker/?group_id=81968&atid=564599
> Discussions of bugs and features can be posted here
> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"
> 

Dr Victor Lazzarini
Senior Lecturer
Dept. of Music
NUI Maynooth Ireland
tel.: +353 1 708 3545
Victor dot Lazzarini AT nuim dot ie