<CsoundSynthesizer><CsInstruments>sr = 44100kr = 441ksmps = 100nchnls = 2gidecchnls = 8		; specifies the speaker setup:				; 2 	= stereo speaker setup				; 4 	= quattro (square) speaker setup				; 5 	= pentagon speaker setup				; 5.1 = 5.1 surround speaker setup				; 6 	= hexagonoctogon1 				; 8.1 = octogon1 				; 8.2 = octogon2 				; 8 	= cube				; 12.1= dodecahedron1 				; 12.2= dodecahedron2 			#define FILE #Filename-#	;insert filename here#define HEADER #aif#		;insert filetype here girescale = 1		;  for test decoding; girescale = 		;  for 2chnl decoding; girescale = 		;  for 2chnl decoding; girescale = 		;  for 5 chnl encoding ; girescale = 		;  for 5.1 chnl encoding ; girescale = 		;  for 8chnl cube decoding; girescale = 	 	;  for octogon1 decoding giformat = 2;	**************************************************************************************************************************instr 81	; 2nd ORDER AMBISONICS DECODER				coded 1999-2001 by Jan Jacob Hofmann.	; FURSE - MALHAM - SET OF  EQUATIONS				http://www.sonicarchitecture.de	; More sets of speaker- layouts may be discovered at		Thanks to Richard Furse and Dave Malham	; http://www.muse.demon.co.uk/ref/speakers.html;	**************************************************************************************************************************aw	soundin	"$FILEw.$HEADER."			; input for encoded mono- files, insert filename hereax	soundin	"$FILEx.$HEADER."			; input for encoded mono- files, insert filename hereay	soundin	"$FILEy.$HEADER."			; input for encoded mono- files, insert filename hereaz	soundin	"$FILEz.$HEADER."			; input for encoded mono- files, insert filename herear	soundin	"$FILEr.$HEADER."			; input for encoded mono- files, insert filename hereas	soundin	"$FILEs.$HEADER."			; input for encoded mono- files, insert filename hereat	soundin	"$FILEt.$HEADER."			; input for encoded mono- files, insert filename hereau	soundin	"$FILEu.$HEADER."			; input for encoded mono- files, insert filename hereav	soundin	"$FILEv.$HEADER."			; input for encoded mono- files, insert filename hereaw =	aw *  girescaleax =	ax *  girescale	ay =	ay *  girescale	az =	az *  girescale	ar =	ar *  girescale	as =	as *  girescale	at =	at *  girescale	au =	au *  girescale	av =	av *  girescale	if	gidecchnls ==  2	   	goto 	stereo 		; goto	2chnl  decode	if	gidecchnls ==  4	   	goto 	square		; goto	4chnl  decode	if	gidecchnls ==  5	   	goto 	penta 		; goto	5chnl   decode	if	gidecchnls ==  5.1	goto 	surround		; goto	surround5.1  decodeif	gidecchnls ==  6	   	goto	hexagon		; goto	6chnl   decodeif	gidecchnls ==  8.1	goto 	octagon1		; goto	8chnl  decode (octogon 1)if	gidecchnls ==  8.2	goto 	octagon2		; goto	8chnl  decode (octagon 2)if	gidecchnls ==  8	   	goto 	cube			; goto	8chnl  decode	if	gidecchnls ==  12.1	goto 	dodecahedron1	; goto	12chnl  decode (dodecahedron1)if	gidecchnls ==  12.2	goto 	dodecahedron2	; goto	12chnl  decode (dodecahedron2);	**************************************************************************************stereo: 		; 2chnl (stereo ) decode,2nd  order (second order controlled opposites);	**************************************************************************************;Rig `Controlled Opposites' Decode Matrix (second Order);			w		x		y		z		r		s		t		u		v; Speaker1	<0.0000,1.0000,0.0000>achnl1 	sum 	aw * 0.7071,		ay * 0.5; Speaker2	<0.0000,-1.0000,0.0000>achnl2 	sum	aw * 0.7071,		ay * -0.5kpeak1	peak		achnl1	kpeak2	peak		achnl2			printk	p3, kpeak1,0		printk	p3, kpeak2,4fout 	"$FILEstereo.$HEADER.", giformat,  achnl1, achnl2 	outs	 achnl1, achnl2; soundout	 achnl1, "$FILE.dec1$HEADER.", giformat; soundout	 achnl2, "$FILE.dec2$HEADER.", giformatgoto 	skipend;	**************************************************************************************square:		; Rig `Controlled Opposites' Decode Matrix (second Order);	**************************************************************************************; This rig configuration produces an `in-phase' response and each speaker will have only a single maximum given a moving virtual sound source. ;			w		x		y		z		r		s		t		u		v; Speaker1<0.7071,0.7071,0.0000>  left frontachnl1 	sum	aw *0.3536,	ax *0.2434,	ay * 0.2434, 										av * 0.0964; Speaker2<0.7071,-0.7071,0.0000>  right frontachnl2 	sum	aw *0.3536, ax *0.2434,	ay * -0.2434,										av * -0.0964; Speaker3<-0.7071,-0.7071,0.0000>  right backachnl3 	sum	aw *0.3536,	ax *-0.2434,ay * -0.2434,										av * 0.0964; Speaker4 <-0.7071,0.7071,0.0000>  left backachnl4 	sum	aw *0.3536,	ax *-0.2434, ay * 0.2434,										av * -0.0964kpeak1	peak		achnl1	kpeak2	peak		achnl2	kpeak3	peak		achnl3	kpeak4	peak		achnl4			printk	p3, kpeak1,0		printk	p3, kpeak2,4		printk	p3, kpeak3,8		printk	p3, kpeak4,12fout 	"$FILE.squaredec1.$HEADER.", giformat,  achnl1fout 	"$FILE.squaredec2.$HEADER.", giformat,  achnl2fout 	"$FILE.squaredec3.$HEADER.", giformat,  achnl3fout 	"$FILE.squaredec4.$HEADER.", giformat,  achnl4goto skipend;	**************************************************************************************penta:		; Rig `Controlled Opposites' Decode Matrix (second Order);	**************************************************************************************; This rig configuration produces an `in-phase' response and each speaker will have only a single maximum given a moving virtual sound source. ;			w		x		y		z		r		s		t		u		v  ; Speaker1	<0.8090,0.5878,0.00>	left frontachnl1 	sum	aw *0.2828,	ax *0.2227,	ay * 0.1618,								au *0.0238,	av * 0.0733; Speaker2	<-0.3090,0.9511,0.00>	left backachnl2 	sum	aw *0.2828,	ax*-0.0851,	ay * 0.2619,								au *-0.0624, av * -0.0453; Speaker3	<-1.0000,0.00,0.00>	center backachnl3 	sum	aw *0.2828,	ax * -0.2753,										au * 0.0771	; Speaker4	<-0.3090,-0.9511,0.00> 	right backachnl4 	sum	aw *0.2828,	ax* -0.0851,ay * -0.2619,								au*-0.0624,	av * 0.0453; Speaker5	<0.8090,-0.5878,0.00>	right frontachnl5 	sum	aw *0.2828,	ax* 0.2227,	ay * -0.1618,								au * 0.0238, av * -0.0733                          kpeak1	peak	achnl1	kpeak2	peak	achnl2	kpeak3	peak	achnl3	kpeak4	peak	achnl4	kpeak5	peak	achnl5		printk	p3, kpeak1,0	printk	p3, kpeak2,4	printk	p3, kpeak3,8	printk	p3, kpeak4,12	printk	p3, kpeak5,16	; soundout	 achnl1, "$FILE.pentadec1$HEADER.", giformat		;left front; soundout	 achnl2, "$FILE.pentadec2$HEADER.", giformat		;left back; soundout	 achnl3, "$FILE.pentadec3$HEADER.", giformat		;center back; soundout	 achnl4, "$FILE.pentadec4$HEADER.", giformat		;right back; soundout	 achnl5, "$FILE.pentadec5$HEADER.", giformat		;right frontfout 	"$FILE.pentadec1$HEADER.",  giformat,  achnl1				;left frontfout 	"$FILE.pentadec2$HEADER.",  giformat,  achnl2				;left backfout 	"$FILE.pentadec3$HEADER.",  giformat,  achnl3				;center backfout 	"$FILE.pentadec4$HEADER.",  giformat,  achnl4				;right backfout 	"$FILE.pentadec5$HEADER.",  giformat,  achnl5				;right front	goto skipend;	**************************************************************************************surround:	; Rig `Controlled Opposites' Decode Matrix (First Order controlled opposites)-Rig `Controlled Opposites' Decode Matrix (second Order)is not provided for this rig configuration because of unusual characteristics. ;	**************************************************************************************;			w		x		y		z	; Speaker 1	<0.8660,0.5000,0.0000>   front left achnl1 	sum	aw *0.1690,	ax *0.0797,	ay * 0.0891	; Speaker 2<1.0000,0.0000,0.0000>   front center achnl2 	sum	aw *0.1635,	ax * 0.0923	 ; Speaker 3<0.8660,-0.5000,0.0000>  front right achnl3 	sum	aw *0.1690,	ax *0.0797,	ay * -0.0891	; Speaker 4<-0.5000,0.8660,0.0000>  back left achnl4 	sum	aw *0.4563,	ax *-0.1259,ay * 0.1543	; Speaker 5<-0.5000,-0.8660,0.0000> back right achnl5 	sum	aw *0.4563,	ax *-0.1259,ay * -0.1543kpeak1	peak	achnl1	kpeak2	peak	achnl2	kpeak3	peak	achnl3	kpeak4	peak	achnl4	kpeak5	peak	achnl5			printk	p3, kpeak1,0		printk	p3, kpeak2,4		printk	p3, kpeak3,8		printk	p3, kpeak4,12		printk	p3, kpeak5,16;  soundout	 achnl1, "$FILE.5_1dec1$HEADER.", giformat		;front-left;  soundout	 achnl2, "$FILE.5_1dec2$HEADER.", giformat		;front-center;  soundout	 achnl3, "$FILE.5_1dec3$HEADER.", giformat		;front-right;  soundout	 achnl4, "$FILE.5_1dec4$HEADER.", giformat		;back-left;  soundout	 achnl5, "$FILE.5_1dec5$HEADER.", giformat		;back-rightfout 	"$FILE.5_1dec1$HEADER.",  giformat,  achnl1			;front-leftfout 	"$FILE.5_1dec2$HEADER.",  giformat,  achnl2			;front-centerfout 	"$FILE.5_1dec3$HEADER.",  giformat,  achnl3			;front-rightfout 	"$FILE.5_1dec4$HEADER.",  giformat,  achnl4			;back-leftfout 	"$FILE.5_1dec5$HEADER.",  giformat,  achnl5			;back-rightgoto skipend;	**************************************************************************************hexagon:		; Rig `Controlled Opposites' Decode Matrix (second Order);	**************************************************************************************; This rig configuration produces an `in-phase' response and each speaker will have only a single maximum given a moving virtual sound source. ;			w		x		y		z		r		s		t		u		v; Speaker 1	<0.8660,0.5000,0.0000> left front achnl1 	sum	aw *0.2357, ax *0.1987,	ay * 0.1147,								au *0.0321,	av * 0.0556; Speaker 2	<0.0000,1.0000,0.0000> left side achnl2 	sum	aw * 0.2357,		ay * 0.2294,								au * -0.0643; Speaker 3	<-0.8660,0.5000,0.0000> left back achnl3 	sum	aw *0.2357,	ax *-0.1987, ay * 0.1147,								au *0.0321,	av * -0.0556; Speaker 4	<-0.8660,-0.5000,0.0000> right back achnl4 	sum	aw *0.2357,	ax *-0.1987, ay * -0.1147,								au *0.0321, av * 0.0556; Speaker 5	<0.0000,-1.0000,0.0000> right side achnl5 	sum	aw *0.2357,			ay * -0.2294,								au * -0.0643; Speaker 6	<0.8660,-0.5000,0.0000> right front achnl6 	sum	aw *0.2357,	ax *0.1987,	ay * -0.1147,								au *0.0321,	av * -0.0556kpeak1	peak	achnl1	kpeak2	peak	achnl2	kpeak3	peak	achnl3	kpeak4	peak	achnl4	kpeak5	peak	achnl5	kpeak6	peak	achnl6			printk	p3, kpeak1,0		printk	p3, kpeak2,4		printk	p3, kpeak3,8		printk	p3, kpeak4,12		printk	p3, kpeak5,16		printk	p3, kpeak6,20;  soundout	 achnl1, "$FILE.hexdec1$HEADER.", giformat		; left front;  soundout	 achnl2, "$FILE.hexdec2$HEADER.", giformat		; left side		;  soundout	 achnl3, "$FILE.hexdec3$HEADER.", giformat		; left back		;  soundout	 achnl4, "$FILE.hexdec4$HEADER.", giformat		; right back		;  soundout	 achnl5, "$FILE.hexdec5$HEADER.", giformat		; right side	;  soundout	 achnl6, "$FILE.hexdec6$HEADER.", giformat		; right front	fout 	"$FILE.hexdec1$HEADER.", giformat,  achnl1	; left frontfout 	"$FILE.hexdec2$HEADER.", giformat,  achnl2	; left sidefout 	"$FILE.hexdec3$HEADER.", giformat,  achnl3	; left back	fout 	"$FILE.hexdec4$HEADER.", giformat,  achnl4	; right back	fout 	"$FILE.hexdec5$HEADER.", giformat,  achnl5	; right sidefout 	"$FILE.hexdec6$HEADER.", giformat,  achnl6	; right front	goto skipend;	**************************************************************************************octagon1:	; 8chnl  decode (octagon 1),2nd  order (second order controlled opposites);	**************************************************************************************;			w		x		y		z		r		s		t		u		v; Speaker 1	<0.9239,0.3827,0.0000> achnl1 	sum	aw *0.1768, ax *0.1591,	ay * 0.0659,								au *0.0342,	av * 0.0342; Speaker 2	<0.3827,0.9239,0.0000> achnl2 	sum	aw *0.1768,	ax *0.0659,	ay * 0.1591,								au *-0.0342, av * 0.0342; Speaker 3	<-0.3827,0.9239,0.0000> achnl3	sum	aw *0.1768,	ax *-0.0659, ay * 0.1591,								au *-0.0342,av * -0.0342; Speaker 4	<-0.9239,0.3827,0.0000> achnl4 	sum	aw *0.1768,	ax *-0.1591, ay * 0.0659,								au *0.0342,	av * -0.0342; Speaker 5 	<-0.9239,-0.3827,0.0000> achnl5	sum	aw *0.1768,	ax *-0.1591, ay * -0.0659,								au *0.0342,	av * 0.0342; Speaker 6 	<-0.3827,-0.9239,0.0000> achnl6	sum	aw *0.1768,	ax *-0.0659, ay * -0.1591,								au *-0.0342,av * 0.0342; Speaker 7 	<0.3827,-0.9239,0.0000> achnl7	sum	aw *0.1768,	ax *0.0659,	ay * -0.1591,								au *-0.0342, av * -0.0342; Speaker 8 	<0.9239,-0.3827,0.0000> achnl8 	sum	aw *0.1768,	ax *0.1591,	ay * -0.0659,								au *0.0342,	av * -0.0342kpeak1	peak	achnl1	kpeak2	peak	achnl2	kpeak3	peak	achnl3	kpeak4	peak	achnl4	kpeak5	peak	achnl5	kpeak6	peak	achnl6	kpeak7	peak	achnl7	kpeak8	peak	achnl8		printk	p3, kpeak1,0	printk	p3, kpeak2,3	printk	p3, kpeak3,6	printk	p3, kpeak4,9	printk	p3, kpeak5,12	printk	p3, kpeak6,15	printk	p3, kpeak7,18	printk	p3, kpeak8,21; soundout	 achnl1, "$FILE.oct1dec1$HEADER.",giformat; soundout	 achnl2, "$FILE.oct1dec2$HEADER.",giformat; soundout	 achnl3, "$FILE.oct1dec3$HEADER.",giformat; soundout	 achnl4, "$FILE.oct1dec4$HEADER.",giformat; soundout	 achnl5, "$FILE.oct1dec5$HEADER.",giformat; soundout	 achnl6, "$FILE.oct1dec6$HEADER.",giformat; soundout	 achnl7, "$FILE.oct1dec7$HEADER.",giformat; soundout	 achnl8, "$FILE.oct1dec8$HEADER.",giformatfout 	"$FILE.oct1dec1.$HEADER.", giformat,  achnl1fout 	"$FILE.oct1dec2.$HEADER.", giformat,  achnl2fout 	"$FILE.oct1dec3.$HEADER.", giformat,  achnl3fout 	"$FILE.oct1dec4.$HEADER.", giformat,  achnl4fout 	"$FILE.oct1dec5.$HEADER.", giformat,  achnl5fout 	"$FILE.oct1dec6.$HEADER.", giformat,  achnl6fout 	"$FILE.oct1dec7.$HEADER.", giformat,  achnl7fout 	"$FILE.oct1dec8.$HEADER.", giformat,  achnl8goto skipend;	**************************************************************************************octagon2:	; 8chnl  decode (octagon 2),2nd  order (second order controlled opposites);	**************************************************************************************; Rig `Controlled Opposites' Decode Matrix (Second Order); This rig configuration produces an `in-phase' response and each speaker will have only a single maximum given a moving virtual sound source.;			w		x		y		z		r		s		t		u		v; Speaker 1	<1.0000,0.0000,0.0000>  achnl1 	sum	aw *0.1768,	ax * 0.1721,										au * 0.0482; Speaker 2	<0.7071,0.7071,0.0000> achnl2 	sum	aw *0.1768,	ax *0.1217,	ay * 0.1217,										av * 0.0482; Speaker 3	<0.0000,1.0000,0.0000>  achnl3 	sum	aw * 0.1768,		ay * 0.1721,								au * -0.0482; Speaker 4	<-0.7071,0.7071,0.0000>  achnl4 	sum	aw *0.1768,	ax *-0.1217, ay * 0.1217,										av * -0.0482; Speaker 5	<-1.0000,0.0000,0.0000>  achnl5 	sum	aw *0.1768,	ax * -0.1721, 										au * 0.0482; Speaker 6	<-0.7071,-0.7071,0.0000>  achnl6 	sum	aw *0.1768,	ax *-0.1217, ay * -0.1217,										av * 0.0482; Speaker 7	<0.0000,-1.0000,0.0000>  achnl7 	sum	aw * 0.1768,		ay * -0.1721,								au * -0.0482; Speaker 8	<0.7071,-0.7071,0.0000>  achnl8 	sum	aw *0.1768,	ax *0.1217,	ay * -0.1217,										av * -0.0482octoout:kpeak1	peak		achnl1	kpeak2	peak		achnl2	kpeak3	peak		achnl3	kpeak4	peak		achnl4	kpeak5	peak		achnl5	kpeak6	peak		achnl6	kpeak7	peak		achnl7	kpeak8	peak		achnl8			printk	p3, kpeak1,0		printk	p3, kpeak2,4		printk	p3, kpeak3,8		printk	p3, kpeak4,12		printk	p3, kpeak5,16		printk	p3, kpeak6,20		printk	p3, kpeak7,24		printk	p3, kpeak8,28; soundout	 achnl1, "$FILE.oct2dec1$HEADER.",giformat; soundout	 achnl2, "$FILE.oct2dec2$HEADER.",giformat; soundout	 achnl3, "$FILE.oct2dec3$HEADER.",giformat; soundout	 achnl4, "$FILE.oct2dec4$HEADER.",giformat; soundout	 achnl5, "$FILE.oct2dec5$HEADER.",giformat; soundout	 achnl6, "$FILE.oct2dec6$HEADER.",giformat; soundout	 achnl7, "$FILE.oct2dec7$HEADER.",giformat; soundout	 achnl8, "$FILE.oct2dec8$HEADER.",giformatfout 	"$FILE.oct2dec1$HEADER.", giformat,  achnl1fout 	"$FILE.oct2dec2$HEADER.", giformat,  achnl2fout 	"$FILE.oct2dec3$HEADER.", giformat,  achnl3fout 	"$FILE.oct2dec4$HEADER.", giformat,  achnl4fout 	"$FILE.oct2dec5$HEADER.", giformat,  achnl5fout 	"$FILE.oct2dec5$HEADER.", giformat,  achnl6fout 	"$FILE.oct2dec7$HEADER.", giformat,  achnl7fout 	"$FILE.oct2dec8$HEADER.", giformat,  achnl8goto skipend;	**************************************************************************************cube:		; 8chnl  decode (cube),2nd  order (second order controlled opposites);	**************************************************************************************;  Rig `Controlled Opposites' Decode Matrix (Second Order);			w		x		y		z		r		s		t		u		v  ; Speaker1	<0.5774,0.5774,-0.5774>  	front left lowerachnl1 	sum	aw  *0.1768,ax*0.114,	ay *0.114,	az * -0.114,		as*-0.0369,	at * -0.0369,		av * 0.0369	; Speaker2	<0.5774,-0.5774,-0.5774>	front right lowerachnl2 	sum	aw  *0.1768,ax*0.114,	ay *-0.114,	az * -0.114,		as*-0.0369,	at * 0.0369,		av * -0.0369; Speaker3	<-0.5774,-0.5774,-0.5774>	back right lowerachnl3 	sum	aw  *0.1768,ax*-0.114,	ay *-0.114,	az * -0.114,		as*0.0369,	at * 0.0369,		av * 0.0369; Speaker4	<-0.5774,0.5774,-0.5774>	back left lowerachnl4 	sum	aw  *0.1768,ax*-0.114,	ay *0.114,	az * -0.114,		as*0.0369,	at * -0.0369,		av * -0.0369 ; Speaker5	<0.5774,0.5774,0.5774>		front left upperachnl5 	sum	aw  *0.1768,ax*0.114,	ay *0.114,	az * 0.114,			as*0.0369,	at * 0.0369,		av * 0.0369; Speaker6	<0.5774,-0.5774,0.5774>		front right upperachnl6 	sum	aw  *0.1768,ax*0.114,	ay *-0.114,	az * 0.114,			as*0.0369,	at * -0.0369,		av * -0.0369; Speaker7	<-0.5774,-0.5774,0.5774>	back  right upperachnl7 	sum	aw  *0.1768,ax*-0.114,	ay *-0.114,	az * 0.114,			as*-0.0369,	at * -0.0369,		av * 0.0369; Speaker8	<-0.5774,0.5774,0.5774>		back left upperachnl8 	sum	aw  *0.1768,ax*-0.114,	ay *0.114,	az * 0.114,			as*-0.0369,	at * 0.0369,		av * -0.0369	kpeak1	peak	achnl1	kpeak2	peak	achnl2	kpeak3	peak	achnl3	kpeak4	peak	achnl4	kpeak5	peak	achnl5	kpeak6	peak	achnl6	kpeak7	peak	achnl7	kpeak8	peak	achnl8		printk	p3, kpeak1,0	printk	p3, kpeak2,3	printk	p3, kpeak3,6	printk	p3, kpeak4,9	printk	p3, kpeak5,12	printk	p3, kpeak6,15	printk	p3, kpeak7,18	printk	p3, kpeak8,21;outo	  achnl1, achnl2, achnl3, achnl4, achnl5, achnl6, achnl7, achnl8		;output for writing on Disk or Dat; soundout	 achnl1, "$FILE.cubedec1$HEADER.",giformat; soundout	 achnl2, "$FILE.cubedec2$HEADER.",giformat; soundout	 achnl3, "$FILE.cubedec3$HEADER.",giformat; soundout	 achnl4, "$FILE.cubedec4$HEADER.",giformat; soundout	 achnl5, "$FILE.cubedec5$HEADER.",giformat; soundout	 achnl6, "$FILE.cubedec6$HEADER.",giformat; soundout	 achnl7, "$FILE.cubedec7$HEADER.",giformat; soundout	 achnl8, "$FILE.cubedec8$HEADER.",giformatfout 	"$FILE.cubedec1.$HEADER.", giformat,  achnl1fout 	"$FILE.cubedec2.$HEADER.", giformat,  achnl2fout 	"$FILE.cubedec3.$HEADER.", giformat,  achnl3fout 	"$FILE.cubedec4.$HEADER.", giformat,  achnl4fout 	"$FILE.cubedec5.$HEADER.", giformat,  achnl5fout 	"$FILE.cubedec6.$HEADER.", giformat,  achnl6fout 	"$FILE.cubedec7.$HEADER.", giformat,  achnl7fout 	"$FILE.cubedec8.$HEADER.", giformat,  achnl8goto	skipend;	**************************************************************************************dodecahedron1:			;Rig `Controlled Opposites' Decode Matrix (Second Order);	**************************************************************************************				;This rig configuration produces an 'in-phase' response and each speaker will have only a single maximum given a moving virtual sound source.       ;			w		x		y		z		r		s		t		u		v; Speaker 1 <0.0000,0.0000,1.0000>achnl1 	sum	aw * 0.1179,				az *0.1316,	ar *0.0491                                                                  ; Speaker 2 <0.0000,0.0000,-1.0000>achnl2 	sum	aw * 0.1179,				az*-0.1316,	ar *0.0491; Speaker 3 <0.7236,0.5257,0.4472>achnl3 	sum	aw *0.1179,	ax *0.0952,	ay *0.0692,	az *0.0589,	ar *-0.0098,as *0.0238,	at *0.0173,	au *0.0091,	av * 0.0280; Speaker 4 <-0.7236,-0.5257,-0.4472>achnl4	sum	aw *0.1179, ax *-0.0952, ay *-0.0692,az *-0.0589,ar *-0.0098,as *0.0238, at *0.0173, au *0.0091, av * 0.0280 ; Speaker 5 <0.7236,-0.5257,0.4472>achnl5 	sum	aw *0.1179, ax *0.0952,	ay *-0.0692, az *0.0589, ar *-0.0098,as *0.0238, at *-0.0173, au *0.0091, av * -0.0280; Speaker 6 <-0.7236,0.5257,-0.4472>achnl6 	sum	aw *0.1179, ax *-0.0952, ay *0.0692, az *-0.0589,ar *-0.0098,as *0.0238, at *-0.0173, au* 0.0091, av * -0.0280; Speaker 7 <-0.2764,0.8507,0.4472>achnl7 	sum	aw *0.1179, ax *-0.0364, ay *0.1119, az *0.0589,ar *-0.0098,as *-0.0091, at *0.0280, au *-0.0238, av * -0.0173; Speaker 8 <0.2764,-0.8507,-0.4472>achnl8 	sum	aw *0.1179, ax *0.0364,	ay *-0.1119, az *-0.0589,ar *-0.0098,as *-0.0091, at *0.0280, au *-0.0238, av * -0.0173; Speaker 9 <-0.2764,-0.8507,0.4472>achnl9	sum	aw *0.1179, ax *-0.0364, ay *-0.1119,az *0.0589, ar *-0.0098,as *-0.0091, at *-0.0280, au *-0.0238, av * 0.0173; Speaker 10 <0.2764,0.8507,-0.4472>achnl10 	sum	aw *0.1179, ax *0.0364,	ay *0.1119,	az *-0.0589, ar *-0.0098,as *-0.0091, at *-0.0280, au*-0.0238, av * 0.0173; Speaker 11 <-0.8944,0.0000,0.4472>achnl11 	sum	aw *0.1179,ax * -0.1177,		az *0.0589,	ar *-0.0098, as *-0.0295,		au * 0.0295; Speaker 12 <0.8944,0.0000,-0.4472>achnl12	sum	aw *0.1179,ax * 0.1177,			az *-0.0589, ar *-0.0098,as *-0.0295,		au * 0.0295kpeak1	peak		achnl1	kpeak2	peak		achnl2	kpeak3	peak		achnl3	kpeak4	peak		achnl4	kpeak5	peak		achnl5	kpeak6	peak		achnl6	kpeak7	peak		achnl7	kpeak8	peak		achnl8	kpeak9	peak		achnl9	kpeak10	peak		achnl10	kpeak11	peak		achnl11	kpeak12	peak		achnl12			printk	p3, kpeak1,0		printk	p3, kpeak2,3		printk	p3, kpeak3,6		printk	p3, kpeak4,9		printk	p3, kpeak5,12		printk	p3, kpeak6,15		printk	p3, kpeak7,18		printk	p3, kpeak8,21		printk	p3, kpeak9,24		printk	p3, kpeak10,27		printk	p3, kpeak11,30		printk	p3, kpeak12,33; soundout	 achnl1, "$FILE.do1dec1$HEADER.", giformat; soundout	 achnl2, "$FILE.do1dec2$HEADER.", giformat; soundout	 achnl3, "$FILE.do1dec3$HEADER.", giformat; soundout	 achnl4, "$FILE.do1dec4$HEADER.", giformat; soundout	 achnl5, "$FILE.do1dec5$HEADER.", giformat; soundout	 achnl6, "$FILE.do1dec6$HEADER.", giformat; soundout	 achnl7, "$FILE.do1dec7$HEADER.", giformat; soundout	 achnl8, "$FILE.do1dec8$HEADER.", giformat; soundout	 achnl9, "$FILE.do1dec9$HEADER.", giformat; soundout	 achnl10, "$FILE.do1dec10$HEADER.", giformat; soundout	 achnl11, "$FILE.do1dec11$HEADER.", giformat; soundout	 achnl12, "$FILE.do1dec12$HEADER.", giformatfout 	"$FILE.do1dec1$HEADER.",  giformat,  achnl1				; output for soundfile with headerfout 	"$FILE.do1dec2$HEADER.",  giformat,  achnl2				; output for soundfile with headerfout 	"$FILE.do1dec3$HEADER.",  giformat,  achnl3				; output for soundfile with headerfout 	"$FILE.do1dec4$HEADER.",  giformat,  achnl4				; output for soundfile with headerfout 	"$FILE.do1dec5$HEADER.",  giformat,  achnl5				; output for soundfile with headerfout 	"$FILE.do1dec6$HEADER.",  giformat,  achnl6				; output for soundfile with headerfout 	"$FILE.do1dec7$HEADER.",  giformat,  achnl7				; output for soundfile with headerfout 	"$FILE.do1dec8$HEADER.",  giformat,  achnl8				; output for soundfile with headerfout 	"$FILE.do1dec9$HEADER.",  giformat,  achnl9				; output for soundfile with headerfout 	"$FILE.do1dec10$HEADER.", giformat,  achnl10				; output for soundfile with headerfout 	"$FILE.do1dec11$HEADER.", giformat,  achnl11				; output for soundfile with headerfout 	"$FILE.do1dec12$HEADER.", giformat,  achnl12				; output for soundfile with headergoto	skipend;	**************************************************************************************dodecahedron2:			;Rig `Controlled Opposites' Decode Matrix (Second Order);	**************************************************************************************				;This rig configuration produces an `in-phase' response and each speaker will have only a single maximum given a moving virtual sound source. ;			w		x		y		z		r		s		t		u		v; Speaker 1 <1.0000,0.0000,0.0000>achnl1	sum	aw *0.1179,	ax * 0.1316,				ar * -0.0246,				au * 0.0368; Speaker 2 <-1.0000,0.0000,0.0000>achnl2	sum	aw *0.1179,	ax * -0.1316,				ar * -0.0246,				au * 0.0368; Speaker 3 <0.4472,0.0000,-0.8944>achnl3	sum	aw *0.1179,	ax * 0.0589,		az *-0.1177, ar *0.0344, as * -0.0295,		au * 0.0074; Speaker 4 <-0.4472,0.0000,0.8944>achnl4	sum	aw *0.1179,	ax * -0.0589,		az *0.1177,	ar *0.0344,	as * -0.0295,		au * 0.0074; Speaker 5 <0.4472,0.8507,-0.2764>achnl5	sum	aw *0.1179,	ax *0.0589,	ay *0.1119,	az *-0.0364, ar *-0.0189, as *-0.0091, at *-0.0173, au *-0.0193, av * 0.0280; Speaker 6 <-0.4472,-0.8507,0.2764>achnl6	sum	aw *0.1179,	ax *-0.0589, ay *-0.1119, az *0.0364, ar *-0.0189, as *-0.0091, at *-0.0173, au *-0.0193, av * 0.0280; Speaker 7 <0.4472,-0.8507,-0.2764>achnl7	sum	aw *0.1179,	ax *0.0589,	ay *-0.1119, az *-0.0364, ar *-0.0189, as *-0.0091, at *0.0173, au *-0.0193, av * -0.0280; Speaker 8 <-0.4472,0.8507,0.2764>achnl8	sum	aw *0.1179,	ax *-0.0589, ay *0.1119, az *0.0364, ar *-0.0189, as *-0.0091, at *0.0173, au *-0.0193, av * -0.0280; Speaker 9 <0.4472,0.5257,0.7236>achnl9	sum	aw *0.1179,	ax *0.0589,	ay *0.0692, az *0.0952,	ar *0.014,	as *0.0238, at *0.028,	au *-0.0028, av * 0.0173; Speaker 10 <-0.4472,-0.5257,-0.7236>achnl10	sum	aw *0.1179,	ax *-0.0589, ay *-0.0692, az *-0.0952, ar *0.014, as *0.0238, at *0.028, au *-0.0028, av * 0.0173; Speaker 11 <0.4472,-0.5257,0.7236>achnl11	sum	aw *0.1179,	ax *0.0589, ay *-0.0692, az *0.0952, ar *0.014,	as *0.0238,	at *-0.028, au *-0.0028, av * -0.0173; Speaker 12 <-0.4472,0.5257,-0.7236>achnl12	sum	aw *0.1179,	ax *-0.0589, ay *0.0692, az *-0.0952, ar *0.014, as *0.0238, at-0.028, au *-0.0028,	av * -0.0173kpeak1	peak		achnl1	kpeak2	peak		achnl2	kpeak3	peak		achnl3	kpeak4	peak		achnl4	kpeak5	peak		achnl5	kpeak6	peak		achnl6	kpeak7	peak		achnl7	kpeak8	peak		achnl8	kpeak9	peak		achnl9	kpeak10	peak		achnl10	kpeak11	peak		achnl11	kpeak12	peak		achnl12			printk	p3, kpeak1,0		printk	p3, kpeak2,3		printk	p3, kpeak3,6		printk	p3, kpeak4,9		printk	p3, kpeak5,12		printk	p3, kpeak6,15		printk	p3, kpeak7,18		printk	p3, kpeak8,21		printk	p3, kpeak9,24		printk	p3, kpeak10,27		printk	p3, kpeak11,30		printk	p3, kpeak12,33; soundout	 achnl1, "$FILE.do2dec1$HEADER.", giformat; soundout	 achnl2, "$FILE.do2dec2$HEADER.", giformat; soundout	 achnl3, "$FILE.do2dec3$HEADER.", giformat; soundout	 achnl4, "$FILE.do2dec4$HEADER.", giformat; soundout	 achnl5, "$FILE.do2dec5$HEADER.", giformat; soundout	 achnl6, "$FILE.do2dec6$HEADER.", giformat; soundout	 achnl7, "$FILE.do2dec7$HEADER.", giformat; soundout	 achnl8, "$FILE.do2dec8$HEADER.", giformat; soundout	 achnl9, "$FILE.do2dec9$HEADER.", giformat; soundout	 achnl10, "$FILE.do2dec10$HEADER.", giformat; soundout	 achnl11, "$FILE.do2dec11$HEADER.", giformat; soundout	 achnl12, "$FILE.do2dec12$HEADER.", giformatfout 	"$FILE.do2dec1$HEADER.",  giformat,  achnl1				; output for soundfile with headerfout 	"$FILE.do2dec2$HEADER.",  giformat,  achnl2				; output for soundfile with headerfout 	"$FILE.do2dec3$HEADER.",  giformat,  achnl3				; output for soundfile with headerfout 	"$FILE.do2dec4$HEADER.",  giformat,  achnl4				; output for soundfile with headerfout 	"$FILE.do2dec5$HEADER.",  giformat,  achnl5				; output for soundfile with headerfout 	"$FILE.do2dec6$HEADER.",  giformat,  achnl6				; output for soundfile with headerfout 	"$FILE.do2dec7$HEADER.",  giformat,  achnl7				; output for soundfile with headerfout 	"$FILE.do2dec8$HEADER.",  giformat,  achnl8				; output for soundfile with headerfout 	"$FILE.do2dec9$HEADER.",  giformat,  achnl9				; output for soundfile with headerfout 	"$FILE.do2dec10$HEADER.", giformat, achnl10				; output for soundfile with headerfout 	"$FILE.do2dec11$HEADER.", giformat, achnl11				; output for soundfile with headerfout 	"$FILE.do2dec12$HEADER.", giformat, achnl12				; output for soundfile with headerskipend:endin</CsInstruments><CsScore>/*instr 81     9-CHNL DECODING UNIT, 2nd ORDER AMBISONICS  */		i81	0	35e		e/*instr 40    x,y,z -READER *//*instr 42   x, y, z -CONVERTER*//*instr 46   A,E,D - MOVEMENT SCORE READER*//*instr 47  AED- MODULATOR*//*instr 48  AED RANDOMIZER*//*instr 50   SOUNDFILE READER*//*instr 60   LOCAL ( TRACK APPLIED) REVERB*//*instr 66   GLOBAL REVERB  ( W- CHANNEL APPLIED)*//*instr 70   HRTF ENCODE+IID+ITD*//*instr 71   READING, MIXING, OUTPUT*//*instr 72   9-CHNL ENCODING UNIT, 2nd ORDER AMBISONICS*//*instr 73    MIXING, OUTPUT & 9-CHNL DECODING UNIT, 2nd ORDER AMBISONICS  */</CsScore></CsoundSynthesizer><MacOptions>Version: 3Render: RealAsk: YesFunctions: WindowWindowBounds: 45 62 1021 734Options: -b128 -A -s -m7 -R </MacOptions><MacGUI>ioView nobackground {65535, 65535, 65535}
ioListing {10, 10} {400, 500}</MacGUI>
