parnames.c 63 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <structures.h>
  4. #include <tkglobals.h>
  5. #include <logic.h>
  6. #include <processno.h>
  7. #include <modeno.h>
  8. #include <pnames.h>
  9. #include <cdparams.h>
  10. #include <globcon.h>
  11. /******************************* GET_PARAM_NAMES *******************************/
  12. int get_param_names(int process,int mode,int total_params,aplptr ap)
  13. {
  14. if((ap->param_name = (char **)malloc((total_params) * sizeof(char *)))==NULL) {
  15. sprintf(errstr,"INSUFFICIENT MEMORY: to get_param_names\n");
  16. return(MEMORY_ERROR);
  17. }
  18. switch(process) {
  19. case(ACCU):
  20. ap->param_name[ACCU_DINDEX] = "DECAY_RATE";
  21. ap->param_name[ACCU_GINDEX] = "GLISS_RATE";
  22. break;
  23. case(ALT):
  24. break;
  25. case(ARPE):
  26. ap->param_name[ARPE_WTYPE] = "WAVETYPE";
  27. ap->param_name[ARPE_ARPFRQ] = "RATE_OF_SWEEP";
  28. ap->param_name[ARPE_PHASE] = "START_PHASE";
  29. ap->param_name[ARPE_LOFRQ] = "LOFRQ_LIMIT";
  30. ap->param_name[ARPE_HIFRQ] = "HIFRQ_LIMIT";
  31. ap->param_name[ARPE_HBAND] = "BANDWIDTH";
  32. ap->param_name[ARPE_AMPL] = "AMPLIFICATION";
  33. if(mode==ON || mode==BOOST || mode==ABOVE_BOOST || mode==BELOW_BOOST) {
  34. ap->param_name[ARPE_NONLIN] = "NONLINEAR_DECAY";
  35. ap->param_name[ARPE_SUST] = "SUSTAIN_WINDOWS";
  36. break;
  37. }
  38. break;
  39. case(AVRG):
  40. ap->param_name[AVRG_AVRG] = "AVERAGING_SPAN";
  41. break;
  42. case(BARE):
  43. break;
  44. case(BLTR):
  45. ap->param_name[BLUR_BLURF] = "BLURRING_FACTOR";
  46. ap->param_name[BLTR_TRACE] = "TRACING_INDEX";
  47. break;
  48. case(BLUR):
  49. ap->param_name[BLUR_BLURF] = "BLURRING_FACTOR";
  50. break;
  51. case(BRIDGE):
  52. ap->param_name[BRG_STIME] = "STARTTIME_IN_FILE1";
  53. ap->param_name[BRG_ETIME] = "ENDTIME_IN_FILE1";
  54. ap->param_name[BRG_OFFSET] = "2ND_FILE_OFFSET";
  55. ap->param_name[BRG_SF2] = "FRQ_INTERP_AT_START";
  56. ap->param_name[BRG_SA2] = "AMP_INTERP_AT_START";
  57. ap->param_name[BRG_EF2] = "FRQ_INTERP_AT_END";
  58. ap->param_name[BRG_EA2] = "AMP_INTERP_AT_END";
  59. break;
  60. case(CHANNEL):
  61. ap->param_name[CHAN_FRQ] = "FREQUENCY";
  62. break;
  63. case(CHORD):
  64. case(MULTRANS):
  65. ap->param_name[CHORD_LOFRQ] = "BOTTOM_FRQ";
  66. ap->param_name[CHORD_HIFRQ] = "TOP_FRQ";
  67. break;
  68. case(CHORUS):
  69. ap->param_name[CHORU_AMPR] = "AMP_SPREAD";
  70. ap->param_name[CHORU_FRQR] = "FRQ_SPREAD";
  71. break;
  72. case(CLEAN):
  73. switch(mode) {
  74. case(FROMTIME):
  75. case(ANYWHERE): ap->param_name[CL_SKIPT] = "SKIPTIME"; break;
  76. case(FILTERING):ap->param_name[CL_FRQ] = "LOW_FRQ_LIMIT"; break;
  77. }
  78. ap->param_name[CL_GAIN] = "NOISE_PREGAIN";
  79. break;
  80. case(CROSS):
  81. ap->param_name[CROS_INTP] = "INTERPOLATION";
  82. break;
  83. case(CUT):
  84. ap->param_name[CUT_STIME] = "START_TIME";
  85. ap->param_name[CUT_ETIME] = "END_TIME";
  86. break;
  87. case(DIFF):
  88. ap->param_name[DIFF_CROSS] = "CROSSOVER";
  89. break;
  90. case(DRUNK):
  91. ap->param_name[DRNK_RANGE] = "RANGE_IN_WINDOWS";
  92. ap->param_name[DRNK_STIME] = "STARTTIME_IN_FILE";
  93. ap->param_name[DRNK_DUR] = "OUTFILE_DURATION";
  94. break;
  95. case(EXAG):
  96. ap->param_name[EXAG_EXAG] = "EXAGGERATION";
  97. break;
  98. case(FILT):
  99. switch(mode) {
  100. case(F_HI): case(F_HI_NORM): case(F_LO): case(F_LO_NORM):
  101. case(F_HI_GAIN): case(F_LO_GAIN):
  102. ap->param_name[FILT_FRQ1] = "FREQUENCY";
  103. break;
  104. default:
  105. ap->param_name[FILT_FRQ1] = "LOW_FRQ_LIMIT";
  106. break;
  107. }
  108. ap->param_name[FILT_FRQ2] = "HIGH_FRQ_LIMIT";
  109. ap->param_name[FILT_QQ] = "FILTER_EDGE(S)_WIDTH";
  110. ap->param_name[FILT_PG] = "GAIN";
  111. break;
  112. case(FMNTSEE):
  113. break;
  114. case(FOCUS):
  115. ap->param_name[FOCU_PKCNT] = "MAX_PEAKS_TO_FIND";
  116. ap->param_name[FOCU_BW] = "FILTER_BANDWIDTH";
  117. ap->param_name[FOCU_LOFRQ] = "BOTTOM_FRQ";
  118. ap->param_name[FOCU_HIFRQ] = "TOP_FRQ";
  119. ap->param_name[FOCU_STABL] = "WINDOWCNT_FOR_STABILITY";
  120. break;
  121. case(FOLD):
  122. ap->param_name[FOLD_LOFRQ] = "LOW_FRQ_LIMIT";
  123. ap->param_name[FOLD_HIFRQ] = "HIGH_FRQ_LIMIT";
  124. break;
  125. case(FORM):
  126. ap->param_name[FORM_FTOP] = "HIGH_FRQ_LIMIT";
  127. ap->param_name[FORM_FBOT] = "LOW_FRQ_LIMIT";
  128. ap->param_name[FORM_GAIN] = "GAIN";
  129. break;
  130. case(FORMANTS):
  131. break;
  132. case(FORMSEE):
  133. break;
  134. case(FREEZE):
  135. case(FREEZE2):
  136. break;
  137. case(FREQUENCY):
  138. ap->param_name[FRQ_CHAN] = "CHANNEL";
  139. break;
  140. case(GAIN):
  141. ap->param_name[GAIN_GAIN] = "GAIN";
  142. break;
  143. case(GLIDE):
  144. ap->param_name[GLIDE_DUR] = "DURATION";
  145. break;
  146. case(GLIS):
  147. ap->param_name[GLIS_RATE] = "GLISS_RATE";
  148. ap->param_name[GLIS_HIFRQ] = "HIGH_FRQ_LIMIT";
  149. if(mode==INHARMONIC) {
  150. ap->param_name[GLIS_SHIFT] = "PARTIAL_SPACING_(HZ)";
  151. }
  152. break;
  153. case(GRAB):
  154. ap->param_name[GRAB_FRZTIME] = "FREEZE_MOMENT";
  155. break;
  156. case(GREQ):
  157. break;
  158. case(INVERT):
  159. break;
  160. case(LEAF):
  161. ap->param_name[LEAF_SIZE] = "LEAFSIZE_(WINDOWS)";
  162. break;
  163. case(LEVEL):
  164. break;
  165. case(MAGNIFY):
  166. ap->param_name[MAG_FRZTIME] = "FREEZE_MOMENT";
  167. ap->param_name[MAG_DUR] = "OUTFILE_DURATION";
  168. break;
  169. case(MAKE):
  170. break;
  171. case(MAX):
  172. break;
  173. case(MEAN):
  174. ap->param_name[MEAN_LOF] = "LOW_FRQ_LIMIT";
  175. ap->param_name[MEAN_HIF] = "HIGH_FRQ_LIMIT";
  176. ap->param_name[MEAN_CHAN] = "CHANNELS_TO_COMPARE";
  177. break;
  178. case(MORPH):
  179. ap->param_name[MPH_ASTT] = "AMP_INTERP_START";
  180. ap->param_name[MPH_AEND] = "AMP_INTERP_END";
  181. ap->param_name[MPH_FSTT] = "FRQ_INTERP_START";
  182. ap->param_name[MPH_FEND] = "FRQ_INTERP_END";
  183. ap->param_name[MPH_AEXP] = "AMP_INTERP_EXPONENT";
  184. ap->param_name[MPH_FEXP] = "FRQ_INTERP_EXPONENT";
  185. ap->param_name[MPH_STAG] = "2nd_FILE_ENTRY_TIME";
  186. break;
  187. case(NOISE):
  188. ap->param_name[NOISE_NOIS] = "NOISE_SATURATION";
  189. break;
  190. case(OCT):
  191. ap->param_name[OCT_HMOVE] = "TRANSPOSITION_RATIO";
  192. ap->param_name[OCT_BREI] = "BASS_BOOST";
  193. break;
  194. case(OCTVU):
  195. ap->param_name[OCTVU_TSTEP] = "TIMESTEP_(MS)";
  196. ap->param_name[OCTVU_FUND] = "FUNDAMENTAL_FRQ";
  197. break;
  198. case(P_APPROX):
  199. ap->param_name[PA_PRANG] = "PITCH_SCATTER_RANGE_(SEMIT)";
  200. ap->param_name[PA_TRANG] = "TIME_SCATTER_RANGE_(MS)";
  201. ap->param_name[PA_SRANG] = "CONTOUR_SCAN_RANGE_(MS)";
  202. break;
  203. case(P_CUT):
  204. ap->param_name[PC_STT] = "STARTTIME";
  205. ap->param_name[PC_END] = "ENDTIME";
  206. break;
  207. case(P_EXAG):
  208. ap->param_name[PEX_MEAN] = "MEANPITCH_(MIDI)";
  209. ap->param_name[PEX_RANG] = "INTERVAL_MULTIPLIER";
  210. ap->param_name[PEX_CNTR] = "CONTOUR_EXAGGERATION";
  211. break;
  212. case(P_FIX):
  213. ap->param_name[PF_SCUT] = "PITCH_REMOVAL_STARTTIME";
  214. ap->param_name[PF_ECUT] = "PITCH_REMOVAL_ENDTIME";
  215. ap->param_name[PF_LOF] = "FRQ_BELOW_WHICH_TO_REMOVE_PITCH";
  216. ap->param_name[PF_HIF] = "FRQ_ABOVE_WHICH_TO_REMOVE_PITCH";
  217. ap->param_name[PF_SMOOTH] = "NUMBER_OF_SMOOTHINGS";
  218. ap->param_name[PF_SMARK] = "FRQ_TO_FORCE_AT_START";
  219. ap->param_name[PF_EMARK] = "FRQ_TO_FORCE_AT_END";
  220. break;
  221. case(P_HEAR):
  222. ap->param_name[PH_GAIN] = "GAIN";
  223. break;
  224. case(P_INFO):
  225. break;
  226. case(P_INVERT):
  227. ap->param_name[PI_MEAN] = "INVERSION_CENTRE_(MIDI)";
  228. ap->param_name[PI_BOT] = "LOW_PITCH_LIMIT_(MIDI)";
  229. ap->param_name[PI_TOP] = "HIGH_PITCH_LIMIT_(MIDI)";
  230. break;
  231. case(P_QUANTISE):
  232. break;
  233. case(P_RANDOMISE):
  234. ap->param_name[PR_MXINT] = "MAX_INTERVAL_OF_STRAY";
  235. ap->param_name[PR_TSTEP] = "TIMESTEP_(MS)";
  236. ap->param_name[PR_SLEW] = "RANGE_SLEW";
  237. break;
  238. case(P_SEE):
  239. ap->param_name[PSEE_SCF] = "SCALE_FACTOR";
  240. break;
  241. case(P_SMOOTH):
  242. ap->param_name[PS_TFRAME] = "TIMEFRAME_(MS)";
  243. ap->param_name[PS_MEAN] = "MEANPITCH";
  244. break;
  245. case(P_SYNTH):
  246. case(P_INSERT):
  247. case(P_SINSERT):
  248. case(P_PTOSIL):
  249. case(P_NTOSIL):
  250. case(ANALENV):
  251. case(P_BINTOBRK):
  252. case(MAKE2):
  253. case(P_INTERP):
  254. break;
  255. case(P_VOWELS):
  256. ap->param_name[PV_HWIDTH] = "FORMANT_HALF-WIDTH";
  257. ap->param_name[PV_CURVIT] = "FORMANT_PEAK_STEEPNESS";
  258. ap->param_name[PV_PKRANG] = "FORMANT_PEAK_RANGE";
  259. ap->param_name[PV_FUNBAS] = "EMPHASIS_ON_FUNDAMENTAL";
  260. ap->param_name[PV_OFFSET] = "HOARSENESS";
  261. break;
  262. case(VFILT):
  263. ap->param_name[PV_HWIDTH] = "FORMANT_HALF-WIDTH";
  264. ap->param_name[PV_CURVIT] = "FORMANT_PEAK_STEEPNESS";
  265. ap->param_name[PV_PKRANG] = "FORMANT_PEAK_RANGE";
  266. ap->param_name[VF_THRESH] = "THRESHOLD";
  267. break;
  268. case(P_GEN):
  269. ap->param_name[PGEN_SRATE] = "SAMPLE_RATE_OF_GOAL_SNDFILE";
  270. ap->param_name[PGEN_CHANS_INPUT] = "ANALYSIS_POINTS";
  271. ap->param_name[PGEN_WINOVLP_INPUT] = "ANALWINDOW_OVERLAP";
  272. break;
  273. case(P_TRANSPOSE):
  274. ap->param_name[PT_TVAL] = "TRANSPOSITION_(SEMIT)";
  275. break;
  276. case(P_VIBRATO):
  277. ap->param_name[PV_FRQ] = "VIBRATO_FRQ";
  278. ap->param_name[PV_RANG] = "VIBRATO_RANGE (SEMIT)";
  279. break;
  280. case(P_WRITE):
  281. ap->param_name[PW_DRED] = "DATA_REDUCTION_(SEMIT)";
  282. break;
  283. case(P_ZEROS):
  284. break;
  285. case(PEAK):
  286. ap->param_name[PEAK_CUTOFF] = "LOW_FRQ_LIMIT";
  287. ap->param_name[PEAK_TWINDOW] = "TIME_WINDOW_(SECS)";
  288. ap->param_name[PEAK_FWINDOW] = "FRQ_WINDOW_(SEMIT)";
  289. break;
  290. case(PICK):
  291. ap->param_name[PICK_FUND] = "FUNDAMENTAL_FRQ";
  292. ap->param_name[PICK_LIN] = "FRQ_STEP";
  293. ap->param_name[PICK_CLAR] = "CLARITY";
  294. break;
  295. case(PITCH):
  296. ap->param_name[PICH_RNGE] = "IN-TUNE_RANGE_(SEMIT)";
  297. ap->param_name[PICH_VALID] = "MIN_WINDOWS_TO_CONFIRM_PITCH";
  298. ap->param_name[PICH_SRATIO] = "SIGNAL_TO_NOISE_RATIO_(dB)";
  299. ap->param_name[PICH_MATCH] = "VALID_HARMONICS_COUNT";
  300. ap->param_name[PICH_LOLM] = "LOW_PITCH_LIMIT_(HZ)";
  301. ap->param_name[PICH_HILM] = "HIGH_PITCH_LIMIT_(HZ)";
  302. if(mode==PICH_TO_BRK) {
  303. ap->param_name[PICH_DATAREDUCE] = "DATAREDUCTION_(SEMIT)";
  304. }
  305. break;
  306. case(PLUCK):
  307. ap->param_name[PLUK_GAIN] = "PLUCK_GAIN";
  308. break;
  309. case(PRINT):
  310. ap->param_name[PRNT_STIME] = "START_TIME";
  311. ap->param_name[PRNT_WCNT] = "WINDOW_COUNT";
  312. break;
  313. case(REPITCH):
  314. break;
  315. case(REPITCHB):
  316. ap->param_name[RP_DRED] = "DATAREDUCTION(SEMITONES)";
  317. break;
  318. case(REPORT):
  319. ap->param_name[REPORT_PKCNT] = "PEAKS_TO_FIND";
  320. ap->param_name[REPORT_LOFRQ] = "LOW_FRQ_LIMIT";
  321. ap->param_name[REPORT_HIFRQ] = "HIGH_FRQ_LIMIT";
  322. ap->param_name[REPORT_STABL] = "WINDOWS_TO_AVERAGE";
  323. break;
  324. case(SCAT):
  325. ap->param_name[SCAT_CNT] = "FRQ-BLOCKS_TO_KEEP";
  326. ap->param_name[SCAT_BLOKSIZE] = "FRQ_RANGE_OF_BLOCK";
  327. break;
  328. case(SHIFT):
  329. ap->param_name[SHIFT_SHIF] = "LINEAR_FRQ_SHIFT";
  330. switch(mode) {
  331. case(SHIFT_ALL):
  332. break;
  333. case(SHIFT_ABOVE):
  334. case(SHIFT_BELOW):
  335. ap->param_name[SHIFT_FRQ1] = "FRQ_DIVIDE";
  336. break;
  337. case(SHIFT_BETWEEN):
  338. case(SHIFT_OUTSIDE):
  339. ap->param_name[SHIFT_FRQ1] = "LOW_FRQ";
  340. ap->param_name[SHIFT_FRQ2] = "HIGH_FRQ";
  341. break;
  342. }
  343. break;
  344. case(SHIFTP):
  345. ap->param_name[SHIFTP_FFRQ] = "FRQ_DIVIDE";
  346. ap->param_name[SHIFTP_DEPTH] = "DEPTH";
  347. switch(mode) {
  348. case(P_OCT_UP):
  349. case(P_OCT_DN):
  350. case(P_OCT_UP_AND_DN):
  351. break;
  352. case(P_SHFT_UP):
  353. case(P_SHFT_DN):
  354. ap->param_name[SHIFTP_SHF1] = "TRANSPOSITION_(SEMIT)";
  355. break;
  356. case(P_SHFT_UP_AND_DN):
  357. ap->param_name[SHIFTP_SHF1] = "TRANSPOSITION_1_(SEMIT)";
  358. ap->param_name[SHIFTP_SHF2] = "TRANSPOSITION_2_(SEMIT)";
  359. break;
  360. }
  361. break;
  362. case(SHUFFLE):
  363. ap->param_name[SHUF_GRPSIZE] = "GROUPSIZE_(WINDOWS)";
  364. break;
  365. case(SPLIT):
  366. break;
  367. case(SPREAD):
  368. ap->param_name[SPREAD_SPRD] = "DEGREE_OF_SPREADING";
  369. break;
  370. case(STEP):
  371. ap->param_name[STEP_STEP] = "TIMESTEP";
  372. break;
  373. case(STRETCH):
  374. ap->param_name[STR_FFRQ] = "FRQ_DIVIDE";
  375. ap->param_name[STR_SHIFT] = "TOP_OF_SPECTRUM_STRETCH";
  376. ap->param_name[STR_EXP] = "STRETCH_EXPONENT";
  377. ap->param_name[STR_DEPTH] = "PROCESS_DEPTH";
  378. break;
  379. case(SUM):
  380. ap->param_name[SUM_CROSS] = "CROSSOVER";
  381. break;
  382. case(SUPR):
  383. ap->param_name[SUPR_INDX] = "CHANNELS_TO_SUPRESS";
  384. break;
  385. case(S_TRACE):
  386. ap->param_name[TRAC_INDX] = "CHANNELS_TO_RETAIN";
  387. ap->param_name[TRAC_LOFRQ] = "LOW_FRQ_LIMIT";
  388. ap->param_name[TRAC_HIFRQ] = "HIGH_FRQ_LIMIT";
  389. break;
  390. case(TRACK):
  391. ap->param_name[TRAK_PICH] = "ESTIMATED_STARTPITCH_(HZ)";
  392. ap->param_name[TRAK_RNGE] = "IN-TUNE_RANGE_(SEMIT)";
  393. ap->param_name[TRAK_VALID] = "MIN_WINDOWS_TO_CONFIRM_PITCH";
  394. ap->param_name[TRAK_SRATIO] = "SIGNAL_TO_NOISE_RATIO_(dB)";
  395. ap->param_name[TRAK_HILM] = "HIGH_PITCH_LIMIT_(HZ)";
  396. if(mode==TRK_TO_BRK) {
  397. ap->param_name[TRAK_DATAREDUCE] = "DATAREDUCTION_(SEMITONES)";
  398. }
  399. break;
  400. case(TRNSF):
  401. ap->param_name[TRNSF_LOFRQ] = "MINFRQ";
  402. ap->param_name[TRNSF_HIFRQ] = "MAXFRQ";
  403. break;
  404. case(TRNSP):
  405. ap->param_name[TRNSP_LOFRQ] = "MINFRQ";
  406. ap->param_name[TRNSP_HIFRQ] = "MAXFRQ";
  407. break;
  408. case(TSTRETCH):
  409. ap->param_name[TSTR_STRETCH] = "TIMESTRETCH_MULTIPLIER";
  410. break;
  411. case(TUNE):
  412. ap->param_name[TUNE_FOC] = "FOCUS";
  413. ap->param_name[TUNE_CLAR] = "CLARITY";
  414. ap->param_name[TUNE_INDX] = "TRACE_INDEX";
  415. ap->param_name[TUNE_BFRQ] = "LOW_FRQ_LIMIT";
  416. break;
  417. case(VOCODE):
  418. ap->param_name[VOCO_LOF] = "LOW_FRQ_LIMIT";
  419. ap->param_name[VOCO_HIF] = "HIGH_FRQ_LIMIT";
  420. ap->param_name[VOCO_GAIN] = "GAIN";
  421. break;
  422. case(WARP):
  423. ap->param_name[WARP_PRNG] = "PITCHWARP_RANGE_(SEMIT)";
  424. ap->param_name[WARP_TRNG] = "TIMEWARP_RANGE_(MS)";
  425. ap->param_name[WARP_SRNG] = "CONTOUR_SCAN_RANGE_(MS)";
  426. break;
  427. case(WAVER):
  428. ap->param_name[WAVER_VIB] = "VIBRATO_FRQ";
  429. ap->param_name[WAVER_STR] = "MAX_SPECTRAL_STRETCH";
  430. ap->param_name[WAVER_LOFRQ] = "BASE_FRQ_OF_STRETCH";
  431. ap->param_name[WAVER_EXP] = "EXPONENT";
  432. break;
  433. case(LIMIT):
  434. ap->param_name[LIMIT_THRESH] = "THRESHOLD_AMPLITUDE";
  435. break;
  436. /****************** GROUCHO *****************/
  437. case(DISTORT):
  438. ap->param_name[DISTORT_POWFAC] = "EXAGGERATION";
  439. break;
  440. case(DISTORT_ENV):
  441. ap->param_name[DISTORTE_CYCLECNT] = "CYCLE-GROUP_COUNT";
  442. ap->param_name[DISTORTE_TROF] = "TROUGHING";
  443. ap->param_name[DISTORTE_EXPON] = "RISE-DECAY_EXPONENT";
  444. break;
  445. case(DISTORT_AVG):
  446. ap->param_name[DISTORTA_CYCLECNT] = "CYCLE-GROUP_COUNT";
  447. ap->param_name[DISTORTA_MAXLEN] = "MAX_WAVELEN";
  448. ap->param_name[DISTORTA_SKIPCNT] = "SKIP_CYCLES";
  449. break;
  450. case(DISTORT_OMT):
  451. ap->param_name[DISTORTO_OMIT] = "A";
  452. ap->param_name[DISTORTO_KEEP] = "B";
  453. break;
  454. case(DISTORT_MLT):
  455. ap->param_name[DISTORTM_FACTOR] = "MULTIPLIER";
  456. break;
  457. case(DISTORT_DIV):
  458. ap->param_name[DISTORTM_FACTOR] = "DIVISOR";
  459. break;
  460. case(DISTORT_HRM):
  461. ap->param_name[DISTORTH_PRESCALE] = "PRE-ATTENUATION";
  462. break;
  463. case(DISTORT_FRC):
  464. ap->param_name[DISTORTF_SCALE] = "SCALING_FACTOR";
  465. ap->param_name[DISTORTF_AMPFACT] = "RELATIVE_LOUDNESS";
  466. ap->param_name[DISTORTF_PRESCALE] = "PRE-ATTENUATION";
  467. break;
  468. case(DISTORT_REV):
  469. ap->param_name[DISTORTR_CYCLECNT] = "CYCLE-GROUP_COUNT";
  470. break;
  471. case(DISTORT_SHUF):
  472. ap->param_name[DISTORTS_CYCLECNT] = "CYCLE-GROUP_COUNT";
  473. ap->param_name[DISTORTS_SKIPCNT] = "SKIP_CYCLES";
  474. break;
  475. case(DISTORT_RPTFL):
  476. ap->param_name[DISTRPT_CYCLIM] = "HIGH_FRQ_LIMIT";
  477. /* fall thro */
  478. case(DISTORT_RPT):
  479. case(DISTORT_RPT2):
  480. ap->param_name[DISTRPT_MULTIPLY] = "MULTIPLIER";
  481. ap->param_name[DISTRPT_CYCLECNT] = "CYCLE-GROUP_COUNT";
  482. ap->param_name[DISTRPT_SKIPCNT] = "SKIP_CYCLES";
  483. break;
  484. case(DISTORT_INTP):
  485. ap->param_name[DISTINTP_MULTIPLY] = "MULTIPLIER";
  486. ap->param_name[DISTINTP_SKIPCNT] = "SKIP_CYCLES";
  487. break;
  488. case(DISTORT_DEL):
  489. ap->param_name[DISTDEL_CYCLECNT] = "CYCLE-GROUP_COUNT";
  490. ap->param_name[DISTDEL_SKIPCNT] = "SKIP_CYCLES";
  491. break;
  492. case(DISTORT_RPL):
  493. ap->param_name[DISTRPL_CYCLECNT] = "CYCLE-GROUP_COUNT";
  494. ap->param_name[DISTRPL_SKIPCNT] = "SKIP_CYCLES";
  495. break;
  496. case(DISTORT_TEL):
  497. ap->param_name[DISTTEL_CYCLECNT] = "CYCLE-GROUP_COUNT";
  498. ap->param_name[DISTTEL_SKIPCNT] = "SKIP_CYCLES";
  499. break;
  500. case(DISTORT_FLT):
  501. ap->param_name[DISTFLT_LOFRQ_CYCLELEN] = "LOW_FRQ_LIMIT";
  502. ap->param_name[DISTFLT_HIFRQ_CYCLELEN] = "HIGH_FRQ_LIMIT";
  503. ap->param_name[DISTFLT_SKIPCNT] = "SKIP_CYCLES";
  504. break;
  505. case(DISTORT_INT):
  506. break;
  507. case(DISTORT_CYCLECNT):
  508. break;
  509. case(DISTORT_PCH):
  510. ap->param_name[DISTPCH_OCTVAR] = "TRANSPOSITION_RANGE_IN_OCTAVES";
  511. ap->param_name[DISTPCH_CYCLECNT] = "MAX_CYCLECNT_BTWN_TRANSPOS_VALS";
  512. ap->param_name[DISTPCH_SKIPCNT] = "SKIPCYCLES";
  513. break;
  514. case(DISTORT_OVERLOAD):
  515. ap->param_name[DISTORTER_MULT] = "GATE_LEVEL_WHERE_SIGNAL_IS_CLIPPED";
  516. ap->param_name[DISTORTER_DEPTH] = "DEPTH_OF_DISTORTION_GLAZE";
  517. if(mode==OVER_SINE)
  518. ap->param_name[DISTORTER_FRQ] = "FREQUENCY_OF_DISTORT_SIGNAL";
  519. break;
  520. case(DISTORT_PULSED):
  521. if(mode==PULSE_SYNI)
  522. ap->param_name[PULSE_STARTTIME] = "APPROX_START-SAMPLE_OF_PULSE_STREAM_IN_SRC_SOUND";
  523. else
  524. ap->param_name[PULSE_STARTTIME] = "PULSE_STREAM_START-TIME_IN_SRC_SOUND";
  525. ap->param_name[PULSE_DUR] = "DURATION_OF_IMPULSE_STREAM";
  526. ap->param_name[PULSE_FRQ] = "FREQUENCY_OF_IMPULSES_(HZ)";
  527. ap->param_name[PULSE_FRQRAND] = "RANDOMISATION_OF_FRQ_OF_IMPULSES_IN_SEMITONES";
  528. ap->param_name[PULSE_TIMERAND] = "RANDOMISATION_OF_TIME_CONTOUR_OF_AN_IMPULSE";
  529. ap->param_name[PULSE_SHAPERAND] = "RANDOMISATION_OF_AMPLITUDE_CONTOUR_OF_AN_IMPULSE";
  530. if(mode==PULSE_SYN)
  531. ap->param_name[PULSE_WAVETIME] = "DURATION_OF_WAVECYCLES_TO_GRAB_AS_SOUND_SRC_INSIDE_IMPULSES";
  532. else if(mode==PULSE_SYNI)
  533. ap->param_name[PULSE_WAVETIME] = "NUMBER_OF_WAVECYCLES_TO_GRAB_AS_SOUND_SRC_INSIDE_IMPULSES";
  534. ap->param_name[PULSE_TRANSPOS] = "SEMITONE_TRANSPOSITION_CONTOUR_OF_SOUND_INSIDE_EACH_IMPULSE";
  535. ap->param_name[PULSE_PITCHRAND] = "SEMITONE_RANGE_OF_RANDOMISATION_OF_TRANSPOSITION_CONTOUR";
  536. break;
  537. case(ZIGZAG):
  538. ap->param_name[ZIGZAG_START] = "ZIGZAGGING_START_TIME";
  539. ap->param_name[ZIGZAG_END] = "ZIGZAGGING_END_TIME";
  540. ap->param_name[ZIGZAG_DUR] = "MIN_DURATION_OUTFILE";
  541. ap->param_name[ZIGZAG_MIN] = "MIN_ZIG_LENGTH";
  542. ap->param_name[ZIGZAG_SPLEN] = "SPLICE_LENGTH_(MS)";
  543. if(mode==ZIGZAG_SELF) {
  544. ap->param_name[ZIGZAG_MAX] = "MAX_ZIG_LENGTH";
  545. ap->param_name[ZIGZAG_RSEED]= "RANDOM_SEED";
  546. }
  547. break;
  548. case(LOOP):
  549. ap->param_name[LOOP_OUTDUR] = "OUTFILE_DURATION";
  550. ap->param_name[LOOP_REPETS] = "LOOP_REPEATS";
  551. ap->param_name[LOOP_START] = "STARTTIME_OF_LOOPING";
  552. ap->param_name[LOOP_LEN] = "LOOP_LENGTH_(MS)";
  553. ap->param_name[LOOP_STEP] = "ADVANCE_BETWEEN_LOOPS_(MS)";
  554. ap->param_name[LOOP_SPLEN] = "SPLICE_LENGTH_(MS)";
  555. ap->param_name[LOOP_SRCHF] = "SEARCHFIELD_(MS)";
  556. break;
  557. case(SCRAMBLE):
  558. switch(mode) {
  559. case(SCRAMBLE_RAND):
  560. ap->param_name[SCRAMBLE_MIN] = "MIN_CHUNKLEN";
  561. ap->param_name[SCRAMBLE_MAX] = "MAX_CHUNKLEN";
  562. break;
  563. case(SCRAMBLE_SHRED):
  564. ap->param_name[SCRAMBLE_LEN] = "CHUNK_LENGTH";
  565. ap->param_name[SCRAMBLE_SCAT]= "SCATTER_COEFFICIENT";
  566. break;
  567. default:
  568. sprintf(errstr,"Unknown case in SCRAMBLE: get_param_names()\n");
  569. return(PROGRAM_ERROR);
  570. }
  571. ap->param_name[SCRAMBLE_DUR] = "OUTPUT_DURATION";
  572. ap->param_name[SCRAMBLE_SPLEN] = "SPLICE_LENGTH_(MS)";
  573. ap->param_name[SCRAMBLE_SEED] = "SEED_VALUE";
  574. break;
  575. case(ITERATE):
  576. switch(mode) {
  577. case(ITERATE_DUR): ap->param_name[ITER_DUR] = "OUTPUT_DURATION"; break;
  578. case(ITERATE_REPEATS): ap->param_name[ITER_REPEATS] = "NUMBER_OF_REPEATS"; break;
  579. default:
  580. sprintf(errstr,"Unknown case in ITERATE: get_param_names()\n");
  581. return(PROGRAM_ERROR);
  582. }
  583. ap->param_name[ITER_DELAY] = "DELAY";
  584. ap->param_name[ITER_RANDOM] = "RANDOMISATION_OF_DELAY";
  585. ap->param_name[ITER_PSCAT] = "PITCH_SCATTER";
  586. ap->param_name[ITER_ASCAT] = "AMPLITUDE_SCATTER";
  587. ap->param_name[ITER_FADE] = "PROGRESSIVE_FADE";
  588. ap->param_name[ITER_GAIN] = "OVERALL_GAIN";
  589. ap->param_name[ITER_RSEED] = "SEED_RANDOM_GENERATOR";
  590. break;
  591. case(ITERATE_EXTEND):
  592. switch(mode) {
  593. case(ITERATE_DUR): ap->param_name[ITER_DUR] = "DURATION_OF_OUTPUT_FILE"; break;
  594. case(ITERATE_REPEATS): ap->param_name[ITER_REPEATS] = "NUMBER_OF_REPEATS"; break;
  595. default:
  596. sprintf(errstr,"Unknown case in ITERATE_EXTEND: get_param_names()\n");
  597. return(PROGRAM_ERROR);
  598. }
  599. ap->param_name[ITER_DELAY] = "DELAY";
  600. ap->param_name[ITER_RANDOM] = "RANDOMISATION_OF_DELAY";
  601. ap->param_name[ITER_PSCAT] = "PITCH_SCATTER";
  602. ap->param_name[ITER_ASCAT] = "AMPLITUDE_SCATTER";
  603. ap->param_name[CHUNKSTART] = "START_OF_TIME_FREEZE";
  604. ap->param_name[CHUNKEND] = "END_OF_TIME_FREEZE";
  605. ap->param_name[ITER_LGAIN] = "FROZEN_SEGMENT_GAIN";
  606. ap->param_name[ITER_RRSEED] = "SEED_RANDOM_GENERATOR";
  607. break;
  608. case(DRUNKWALK):
  609. ap->param_name[DRNK_TOTALDUR] = "OUTFILE_DURATION";
  610. ap->param_name[DRNK_LOCUS] = "LOCUS";
  611. ap->param_name[DRNK_AMBITUS] = "AMBITUS";
  612. ap->param_name[DRNK_GSTEP] = "STEP";
  613. ap->param_name[DRNK_CLOKTIK] = "CLOCKTICK";
  614. ap->param_name[DRNK_MIN_DRNKTIK] = "MIN_CLOKTIKS_BTWN_SOBER_MOMENTS";
  615. ap->param_name[DRNK_MAX_DRNKTIK] = "MAX_CLOKTIKS_BTWN_SOBER_MOMENTS";
  616. ap->param_name[DRNK_SPLICELEN] = "SPLICELENGTH_(MS)";
  617. ap->param_name[DRNK_CLOKRND] = "CLOCK_RANDOMISATION";
  618. ap->param_name[DRNK_OVERLAP] = "SEGMENT_OVERLAY";
  619. ap->param_name[DRNK_RSEED] = "SEED_VALUE";
  620. if(mode==HAS_SOBER_MOMENTS) {
  621. ap->param_name[DRNK_MIN_PAUS]= "MIN_LENGTH_SOBER_MOMENTS";
  622. ap->param_name[DRNK_MAX_PAUS]= "MAX_LENGTH_SOBER_MOMENTS";
  623. }
  624. break;
  625. case(SIMPLE_TEX):
  626. case(TIMED):
  627. case(GROUPS):
  628. case(TGROUPS):
  629. case(DECORATED):
  630. case(PREDECOR):
  631. case(POSTDECOR):
  632. case(ORNATE):
  633. case(PREORNATE):
  634. case(POSTORNATE):
  635. case(MOTIFS):
  636. case(TMOTIFS):
  637. case(MOTIFSIN):
  638. case(TMOTIFSIN):
  639. ap->param_name[TEXTURE_DUR] = "OUTPUT_DURATION";
  640. switch(process) {
  641. case(SIMPLE_TEX):
  642. ap->param_name[TEXTURE_PACK]= "EVENT_PACKING";
  643. break;
  644. case(GROUPS):
  645. ap->param_name[TEXTURE_PACK]= "SKIPTIME_BETWEEN_GROUP_ONSETS";
  646. break;
  647. case(MOTIFS):
  648. case(MOTIFSIN):
  649. ap->param_name[TEXTURE_PACK]= "SKIPTIME_BETWEEN_MOTIF_ONSETS";
  650. break;
  651. default:
  652. ap->param_name[TEXTURE_PACK]= "PAUSE_BEFORE_LINE_REPEATS";
  653. break;
  654. }
  655. ap->param_name[TEXTURE_SCAT] = "EVENT_SCATTER";
  656. ap->param_name[TEXTURE_TGRID] = "TIME_GRID_UNIT_(MS)";
  657. ap->param_name[TEXTURE_INSLO] = "FIRST_SND-IN-LIST_TO_USE";
  658. ap->param_name[TEXTURE_INSHI] = "LAST_SND-IN-LIST_TO_USE";
  659. ap->param_name[TEXTURE_MINAMP] = "MIN_EVENT_GAIN_(MIDI)";
  660. ap->param_name[TEXTURE_MAXAMP] = "MAX_EVENT_GAIN_(MIDI)";
  661. ap->param_name[TEXTURE_MINDUR] = "MIN_EVENT_SUSTAIN";
  662. ap->param_name[TEXTURE_MAXDUR] = "MAX_EVENT_SUSTAIN";
  663. ap->param_name[TEXTURE_MINPICH] = "MIN_PITCH_(MIDI)";
  664. ap->param_name[TEXTURE_MAXPICH] = "MAX_PITCH_(MIDI)";
  665. if(process == SIMPLE_TEX)
  666. ap->param_name[TEX_PHGRID] = "PROPORTION_OF_SILENT_EVENTS";
  667. else
  668. ap->param_name[TEX_PHGRID] = "TIME_GRID_FOR_NOTEGROUPS_(MS)";
  669. ap->param_name[TEX_GPSPACE] = "GROUP_SPATIALISATION_TYPE";
  670. ap->param_name[TEX_GRPSPRANGE] = "GROUP_SPATIALISATION_RANGE";
  671. ap->param_name[TEX_AMPRISE] = "GROUP_AMPLITUDE_CHANGE";
  672. ap->param_name[TEX_AMPCONT] = "GROUP_AMPCONTOUR_TYPE";
  673. ap->param_name[TEX_GPSIZELO] = "MIN_GROUPSIZE";
  674. ap->param_name[TEX_GPSIZEHI] = "MAX_GROUPSIZE";
  675. ap->param_name[TEX_GPPACKLO] = "MIN_GROUP-PACKING-TIME_(MS)";
  676. ap->param_name[TEX_GPPACKHI] = "MAX_GROUP-PACKING-TIME_(MS)";
  677. switch(mode) {
  678. case(TEX_NEUTRAL):
  679. ap->param_name[TEX_GPRANGLO]= "MIN_GROUP_PITCHRANGE";
  680. ap->param_name[TEX_GPRANGHI]= "MAX_GROUP_PITCHRANGE";
  681. break;
  682. default:
  683. ap->param_name[TEX_GPRANGLO]= "MIN_HFIELD_NOTES_RANGE";
  684. ap->param_name[TEX_GPRANGHI]= "MAX_HFIELD_NOTES_RANGE";
  685. break;
  686. }
  687. ap->param_name[TEX_MULTLO] = "MIN_MOTIF-DUR-MULTIPLIER";
  688. ap->param_name[TEX_MULTHI] = "MAX_MOTIF-DUR-MULTIPLIER";
  689. ap->param_name[TEX_DECPCENTRE] = "PITCH_CENTRING";
  690. ap->param_name[TEXTURE_ATTEN] = "OVERALL_ATTENUATION";
  691. ap->param_name[TEXTURE_POS] = "SPATIAL_POSITION";
  692. ap->param_name[TEXTURE_SPRD] = "SPATIAL_SPREAD";
  693. ap->param_name[TEXTURE_SEED] = "SEED";
  694. break;
  695. case(GRAIN_COUNT):
  696. case(GRAIN_OMIT):
  697. case(GRAIN_DUPLICATE):
  698. case(GRAIN_REORDER):
  699. case(GRAIN_REPITCH):
  700. case(GRAIN_RERHYTHM):
  701. case(GRAIN_REMOTIF):
  702. case(GRAIN_TIMEWARP):
  703. case(GRAIN_POSITION):
  704. case(GRAIN_ALIGN):
  705. case(GRAIN_GET):
  706. case(GRAIN_REVERSE):
  707. ap->param_name[GR_BLEN] = "MAX_TIME_BETWEEN_GRAINS";
  708. ap->param_name[GR_GATE] = "GATE_LEVEL";
  709. ap->param_name[GR_MINTIME] = "MIN_GRAIN-OFF_TIME";
  710. ap->param_name[GR_WINSIZE] = "ENVELOPE_WINDOW-SIZE_(MS)";
  711. switch(process) {
  712. case(GRAIN_OMIT):
  713. ap->param_name[GR_KEEP] = "GRAINS_TO_KEEP";
  714. ap->param_name[GR_OUT_OF] = "OUT_OF_THIS_MANY";
  715. break;
  716. case(GRAIN_DUPLICATE):
  717. ap->param_name[GR_DUPLS] = "REPETITION_COUNT";
  718. break;
  719. case(GRAIN_TIMEWARP):
  720. ap->param_name[GR_TSTRETCH] = "TIME-STRETCH_RATIO";
  721. break;
  722. case(GRAIN_POSITION):
  723. ap->param_name[GR_OFFSET] = "GRAINTIME_OFFSET";
  724. break;
  725. case(GRAIN_ALIGN):
  726. ap->param_name[GR_OFFSET] = "GRAINTIME_OFFSET";
  727. ap->param_name[GR_GATE2] = "GATE_LEVEL_FOR_2nd_FILE";
  728. break;
  729. default:
  730. break;
  731. }
  732. break;
  733. case(ENV_CREATE):
  734. case(ENV_BRKTOENV):
  735. case(ENV_DBBRKTOENV):
  736. case(ENV_IMPOSE):
  737. case(ENV_PROPOR):
  738. case(ENV_REPLACE):
  739. case(ENV_EXTRACT):
  740. ap->param_name[ENV_WSIZE] = "WINDOW_SIZE_(MS)";
  741. if(process==ENV_EXTRACT && mode==ENV_BRKFILE_OUT) {
  742. ap->param_name[ENV_DATAREDUCE] = "DATA_REDUCTION";
  743. }
  744. break;
  745. case(ENV_ENVTOBRK):
  746. case(ENV_ENVTODBBRK):
  747. ap->param_name[ENV_DATAREDUCE] = "DATA_REDUCTION";
  748. break;
  749. case(ENV_WARPING):
  750. ap->param_name[ENV_WSIZE] = "WINDOW_SIZE_(MS)";
  751. switch(mode) {
  752. case(ENV_NORMALISE):
  753. case(ENV_REVERSE):
  754. case(ENV_CEILING):
  755. break;
  756. case(ENV_DUCKED):
  757. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  758. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  759. break;
  760. case(ENV_EXAGGERATING):
  761. ap->param_name[ENV_EXAG] = "EXAGGERATION";
  762. break;
  763. case(ENV_ATTENUATING):
  764. ap->param_name[ENV_ATTEN] = "ATTENUATION";
  765. break;
  766. case(ENV_LIFTING):
  767. ap->param_name[ENV_LIFT] = "LIFT";
  768. break;
  769. case(ENV_FLATTENING):
  770. ap->param_name[ENV_FLATN] = "AVERAGING_FACTOR";
  771. break;
  772. case(ENV_TSTRETCHING):
  773. ap->param_name[ENV_TSTRETCH] = "TIMESTRETCH_FACTOR";
  774. break;
  775. case(ENV_GATING):
  776. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  777. ap->param_name[ENV_SMOOTH] = "SMOOTHING_FACTOR";
  778. break;
  779. case(ENV_INVERTING):
  780. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  781. ap->param_name[ENV_MIRROR] = "MIRROR_LEVEL";
  782. break;
  783. case(ENV_LIMITING):
  784. ap->param_name[ENV_LIMIT] = "LIMIT_LEVEL";
  785. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  786. break;
  787. case(ENV_CORRUGATING):
  788. ap->param_name[ENV_TROFDEL] = "WINDOW-DELETES_PER_TROUGH";
  789. /* fall thro */
  790. case(ENV_PEAKCNT):
  791. ap->param_name[ENV_PKSRCHWIDTH] = "MIN_WINDOWS_BETWEEN_PEAKS";
  792. break;
  793. case(ENV_EXPANDING):
  794. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  795. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  796. ap->param_name[ENV_SMOOTH] = "SMOOTHING_FACTOR";
  797. break;
  798. case(ENV_TRIGGERING):
  799. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  800. ap->param_name[ENV_TRIGDUR] = "MAX_TRIGGER_DURATION_(MS)";
  801. ap->param_name[ENV_TRIGRISE] = "MIN_TRIGGER_LEVEL-RISE";
  802. break;
  803. default:
  804. sprintf(errstr,"Unknown case for ENVWARP,RESHAPING or REPLOTTING: get_param_names()\n");
  805. return(PROGRAM_ERROR);
  806. }
  807. break;
  808. case(ENV_RESHAPING):
  809. switch(mode) {
  810. case(ENV_NORMALISE):
  811. case(ENV_REVERSE):
  812. case(ENV_CEILING):
  813. break;
  814. case(ENV_DUCKED):
  815. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  816. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  817. break;
  818. case(ENV_EXAGGERATING):
  819. ap->param_name[ENV_EXAG] = "EXAGGERATION";
  820. break;
  821. case(ENV_ATTENUATING):
  822. ap->param_name[ENV_ATTEN] = "ATTENUATION";
  823. break;
  824. case(ENV_LIFTING):
  825. ap->param_name[ENV_LIFT] = "LIFT";
  826. break;
  827. case(ENV_FLATTENING):
  828. ap->param_name[ENV_FLATN] = "AVERAGING_FACTOR";
  829. break;
  830. case(ENV_TSTRETCHING):
  831. ap->param_name[ENV_TSTRETCH] = "TIMESTRETCH_FACTOR";
  832. break;
  833. case(ENV_GATING):
  834. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  835. ap->param_name[ENV_SMOOTH] = "SMOOTHING_FACTOR";
  836. break;
  837. case(ENV_INVERTING):
  838. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  839. ap->param_name[ENV_MIRROR] = "MIRROR_LEVEL";
  840. break;
  841. case(ENV_LIMITING):
  842. ap->param_name[ENV_LIMIT] = "LIMIT_LEVEL";
  843. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  844. break;
  845. case(ENV_CORRUGATING):
  846. ap->param_name[ENV_TROFDEL] = "WINDOW-DELETES_PER_TROUGH";
  847. /* fall thro */
  848. case(ENV_PEAKCNT):
  849. ap->param_name[ENV_PKSRCHWIDTH] = "MIN_WINDOWS_BETWEEN_PEAKS";
  850. break;
  851. case(ENV_EXPANDING):
  852. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  853. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  854. ap->param_name[ENV_SMOOTH] = "SMOOTHING_FACTOR";
  855. break;
  856. case(ENV_TRIGGERING):
  857. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  858. ap->param_name[ENV_TRIGDUR] = "MAX_TRIGGER_DURATION_(MS)";
  859. ap->param_name[ENV_TRIGRISE] = "MIN_TRIGGER_LEVEL-RISE";
  860. break;
  861. default:
  862. sprintf(errstr,"Unknown case for ENVWARP,RESHAPING or REPLOTTING: get_param_names()\n");
  863. return(PROGRAM_ERROR);
  864. }
  865. break;
  866. case(ENV_REPLOTTING):
  867. ap->param_name[ENV_WSIZE] = "WINDOW_SIZE_(MS)";
  868. ap->param_name[ENV_DATAREDUCE] = "DATA_REDUCTION";
  869. switch(mode) {
  870. case(ENV_NORMALISE):
  871. case(ENV_REVERSE):
  872. case(ENV_CEILING):
  873. break;
  874. case(ENV_DUCKED):
  875. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  876. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  877. break;
  878. case(ENV_EXAGGERATING):
  879. ap->param_name[ENV_EXAG] = "EXAGGERATION";
  880. break;
  881. case(ENV_ATTENUATING):
  882. ap->param_name[ENV_ATTEN] = "ATTENUATION";
  883. break;
  884. case(ENV_LIFTING):
  885. ap->param_name[ENV_LIFT] = "LIFT";
  886. break;
  887. case(ENV_FLATTENING):
  888. ap->param_name[ENV_FLATN] = "AVERAGING_FACTOR";
  889. break;
  890. case(ENV_TSTRETCHING):
  891. ap->param_name[ENV_TSTRETCH] = "TIMESTRETCH_FACTOR";
  892. break;
  893. case(ENV_GATING):
  894. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  895. ap->param_name[ENV_SMOOTH] = "SMOOTHING_FACTOR";
  896. break;
  897. case(ENV_INVERTING):
  898. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  899. ap->param_name[ENV_MIRROR] = "MIRROR_LEVEL";
  900. break;
  901. case(ENV_LIMITING):
  902. ap->param_name[ENV_LIMIT] = "LIMIT_LEVEL";
  903. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  904. break;
  905. case(ENV_CORRUGATING):
  906. ap->param_name[ENV_TROFDEL] = "WINDOW-DELETES_PER_TROUGH";
  907. /* fall thro */
  908. case(ENV_PEAKCNT):
  909. ap->param_name[ENV_PKSRCHWIDTH] = "MIN_WINDOWS_BETWEEN_PEAKS";
  910. break;
  911. case(ENV_EXPANDING):
  912. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  913. ap->param_name[ENV_THRESHOLD] = "THRESHOLD_LEVEL";
  914. ap->param_name[ENV_SMOOTH] = "SMOOTHING_FACTOR";
  915. break;
  916. case(ENV_TRIGGERING):
  917. ap->param_name[ENV_GATE] = "GATE_LEVEL";
  918. ap->param_name[ENV_TRIGDUR] = "MAX_TRIGGER_DURATION_(MS)";
  919. ap->param_name[ENV_TRIGRISE] = "MIN_TRIGGER_LEVEL-RISE";
  920. break;
  921. default:
  922. sprintf(errstr,"Unknown case for ENVWARP,RESHAPING or REPLOTTING: get_param_names()\n");
  923. return(PROGRAM_ERROR);
  924. }
  925. break;
  926. case(ENV_DOVETAILING):
  927. ap->param_name[ENV_STARTTRIM] = "INFADE_DURATION";
  928. ap->param_name[ENV_ENDTRIM] = "OUTFADE_DURATION";
  929. ap->param_name[ENV_STARTTYPE] = "SLOPE_EXPONENTIAL:_START";
  930. ap->param_name[ENV_ENDTYPE] = "SLOPE_EXPONENTIAL:_END";
  931. ap->param_name[ENV_TIMETYPE] = "TIME_TYPE";
  932. break;
  933. case(ENV_CURTAILING):
  934. ap->param_name[ENV_STARTTIME] = "START_OF_FADE";
  935. if(mode==ENV_START_AND_DUR || mode==ENV_START_AND_DUR_D)
  936. ap->param_name[ENV_ENDTIME] = "DURATION_OF_FADE";
  937. else
  938. ap->param_name[ENV_ENDTIME] = "END_OF_FADE";
  939. ap->param_name[ENV_ENVTYPE] = "SLOPE_EXPONENTIAL";
  940. ap->param_name[ENV_TIMETYPE] = "TIME_TYPE";
  941. break;
  942. case(ENV_PLUCK):
  943. ap->param_name[ENV_PLK_ENDSAMP] = "PLUCK_ENDSAMPLE_POSITION";
  944. ap->param_name[ENV_PLK_WAVELEN] = "SAMPLES_IN_PLUCK_WAVECCYLE";
  945. ap->param_name[ENV_PLK_CYCLEN] = "NO_OF_CYCLES_IN_PLUCK";
  946. ap->param_name[ENV_PLK_DECAY] = "PLUCK_DECAY_RATE";
  947. break;
  948. case(ENV_TREMOL):
  949. ap->param_name[ENV_TREM_FRQ] = "TREMOLO_FREQUENCY";
  950. ap->param_name[ENV_TREM_DEPTH] = "TREMOLO_DEPTH";
  951. ap->param_name[ENV_TREM_AMP] = "OVERALL_GAIN";
  952. break;
  953. case(ENV_SWELL):
  954. ap->param_name[ENV_PEAKTIME] = "PEAKING_TIME";
  955. ap->param_name[ENV_ENVTYPE] = "SLOPE_EXPONENTIAL";
  956. break;
  957. case(ENV_ATTACK):
  958. ap->param_name[ENV_ATK_GAIN] = "ATTACK_GAIN";
  959. ap->param_name[ENV_ATK_ONSET] = "ATTACK_ONSET_DUR_(MS)";
  960. ap->param_name[ENV_ATK_TAIL] = "ATTACK_DECAY_DUR_(MS)";
  961. ap->param_name[ENV_ATK_ENVTYPE] = "SLOPE_EXPONENTIAL";
  962. switch(mode) {
  963. case(ENV_ATK_GATED):
  964. ap->param_name[ENV_ATK_GATE] = "GATE_LEVEL";
  965. break;
  966. case(ENV_ATK_TIMED):
  967. ap->param_name[ENV_ATK_ATTIME] = "APPROX_ATTACK_TIME";
  968. break;
  969. case(ENV_ATK_XTIME):
  970. ap->param_name[ENV_ATK_ATTIME] = "EXACT_ATTACK_TIME";
  971. break;
  972. case(ENV_ATK_ATMAX):
  973. break;
  974. }
  975. break;
  976. case(ENV_DBBRKTOBRK):
  977. case(ENV_BRKTODBBRK):
  978. break;
  979. case(MIX):
  980. ap->param_name[MIX_ATTEN] = "ATTENUATION";
  981. /* fall thro */
  982. case(MIXMAX):
  983. ap->param_name[MIX_START] = "MIXING_STARTTIME";
  984. ap->param_name[MIX_END] = "MIXING_ENDTIME";
  985. break;
  986. case(MIXTWO):
  987. ap->param_name[MIX_STAGGER] = "STAGGER_FILE2_ENTRY";
  988. ap->param_name[MIX_SKIP] = "SKIP_INTO_2ND_FILE";
  989. ap->param_name[MIX_SKEW] = "AMPLITUDE_SKEW";
  990. ap->param_name[MIX_STTA] = "START_MIX_AT";
  991. ap->param_name[MIX_DURA] = "CUT_OFF_MIX_AT";
  992. break;
  993. case(MIXMANY):
  994. break;
  995. case(MIXBALANCE):
  996. ap->param_name[MIX_STAGGER] = "BALANCE_FUNCTION";
  997. ap->param_name[MIX_SKIP] = "START_TIME_OF_MIXING";
  998. ap->param_name[MIX_SKEW] = "END_TIME_OF_MIXING";
  999. break;
  1000. case(MIXCROSS):
  1001. ap->param_name[MCR_STAGGER] = "STAGGER_FILE2_ENTRY";
  1002. ap->param_name[MCR_BEGIN] = "CROSSFADE_START";
  1003. ap->param_name[MCR_END] = "CROSSFADE_END";
  1004. if(mode==MCCOS) {
  1005. ap->param_name[MCR_POWFAC] = "CROSSFADE_SKEW";
  1006. }
  1007. break;
  1008. case(MIXINBETWEEN):
  1009. switch(mode) {
  1010. case(INBI_COUNT):
  1011. ap->param_name[INBETW] = "FILES_BETWEEN";
  1012. break;
  1013. case(INBI_RATIO):
  1014. break;
  1015. default:
  1016. sprintf(errstr,"Unknown case for MIXINBETWEEN: get_param_names()\n");
  1017. return(PROGRAM_ERROR);
  1018. }
  1019. break;
  1020. case(MIXTEST):
  1021. case(MIXFORMAT):
  1022. case(MIXDUMMY):
  1023. case(MIXINTERL):
  1024. case(MIXSYNC):
  1025. break;
  1026. case(MIX_ON_GRID):
  1027. case(ADDTOMIX):
  1028. break;
  1029. case(AUTOMIX):
  1030. ap->param_name[0] = "MIX_ENVELOPE_FUNCTION";
  1031. break;
  1032. case(MIX_PAN):
  1033. ap->param_name[0] = "PAN_POSITION";
  1034. break;
  1035. case(MIX_AT_STEP):
  1036. ap->param_name[0] = "TIME_STEP";
  1037. break;
  1038. case(SHUDDER):
  1039. ap->param_name[SHUD_STARTTIME] = "START_TIME";
  1040. ap->param_name[SHUD_FRQ] = "FREQUENCY";
  1041. ap->param_name[SHUD_SCAT] = "RANDOMISATION";
  1042. ap->param_name[SHUD_SPREAD] = "SPATIAL_SPREAD";
  1043. ap->param_name[SHUD_MINDEPTH] = "LOUDNESS_DEPTH_MINIMUM";
  1044. ap->param_name[SHUD_MAXDEPTH] = "LOUDNESS_DEPTH_MAXIMUM";
  1045. ap->param_name[SHUD_MINWIDTH] = "EVENT_WIDTH_MINIMUM";
  1046. ap->param_name[SHUD_MAXWIDTH] = "EVENT_WIDTH_MAXIMUM";
  1047. break;
  1048. case(MIXSYNCATT):
  1049. ap->param_name[MSY_WFAC] = "WINDOW_DIVIDER";
  1050. break;
  1051. case(MIXGAIN):
  1052. ap->param_name[MIX_GAIN] = "GAIN";
  1053. ap->param_name[MSH_STARTLINE] = "START_LINE";
  1054. ap->param_name[MSH_ENDLINE] = "END_LINE";
  1055. break;
  1056. case(MIXTWARP):
  1057. if(mode==MTW_TIMESORT)
  1058. break;
  1059. ap->param_name[MSH_STARTLINE] = "START_LINE";
  1060. ap->param_name[MSH_ENDLINE] = "END_LINE";
  1061. switch(mode) {
  1062. case(MTW_REVERSE_T): case(MTW_REVERSE_NT):
  1063. case(MTW_FREEZE_T): case(MTW_FREEZE_NT):
  1064. case(MTW_TIMESORT):
  1065. break;
  1066. case(MTW_SCATTER):
  1067. ap->param_name[MTW_PARAM] = "SCATTER";
  1068. break;
  1069. case(MTW_DOMINO):
  1070. ap->param_name[MTW_PARAM] = "DISPLACEMENT_(SECS)";
  1071. break;
  1072. case(MTW_ADD_TO_TG):
  1073. case(MTW_CREATE_TG_1): case(MTW_CREATE_TG_2): case(MTW_CREATE_TG_3): case(MTW_CREATE_TG_4):
  1074. case(MTW_ENLARGE_TG_1): case(MTW_ENLARGE_TG_2): case(MTW_ENLARGE_TG_3): case(MTW_ENLARGE_TG_4):
  1075. ap->param_name[MTW_PARAM] = "PARAMETER";
  1076. break;
  1077. }
  1078. break;
  1079. case(MIXSWARP):
  1080. if(mode==MSW_TWISTALL) {
  1081. break;
  1082. }
  1083. else if(mode==MSW_TWISTONE) {
  1084. ap->param_name[MSW_TWLINE] = "TWISTED_LINE";
  1085. break;
  1086. }
  1087. ap->param_name[MSH_STARTLINE] = "START_LINE";
  1088. ap->param_name[MSH_ENDLINE] = "END_LINE";
  1089. switch(mode) {
  1090. case(MSW_NARROWED):
  1091. ap->param_name[MSW_NARROWING] = "NARROWING";
  1092. break;
  1093. case(MSW_LEFTWARDS):
  1094. case(MSW_RIGHTWARDS):
  1095. case(MSW_RANDOM):
  1096. case(MSW_RANDOM_ALT):
  1097. ap->param_name[MSW_POS1] = "EDGE_OF_SPACE_RANGE";
  1098. ap->param_name[MSW_POS2] = "OTHER_EDGE_OF_SPACE_RANGE";
  1099. break;
  1100. case(MSW_FIXED):
  1101. ap->param_name[MSW_POS1] = "POSITION";
  1102. break;
  1103. }
  1104. break;
  1105. case(MIXSHUFL):
  1106. ap->param_name[MSH_STARTLINE] = "START_LINE";
  1107. ap->param_name[MSH_ENDLINE] = "END_LINE";
  1108. break;
  1109. case(EQ):
  1110. switch(mode) {
  1111. case(FLT_PEAKING):
  1112. ap->param_name[FLT_BW] = "BANDWIDTH";
  1113. /* fall thro */
  1114. default:
  1115. ap->param_name[FLT_BOOST] = "BOOST_OR_ATTEN";
  1116. ap->param_name[FLT_ONEFRQ] = "FREQUENCY";
  1117. ap->param_name[FLT_PRESCALE] = "PRESCALE";
  1118. ap->param_name[FILT_TAIL] = "DECAY_TAIL_DURATION";
  1119. break;
  1120. }
  1121. break;
  1122. case(LPHP):
  1123. ap->param_name[FLT_GAIN] = "ATTENUATION(dB)";
  1124. ap->param_name[FLT_PASSFRQ] = "PASSBAND";
  1125. ap->param_name[FLT_STOPFRQ] = "STOPBAND";
  1126. ap->param_name[FLT_PRESCALE] = "PRESCALE";
  1127. ap->param_name[FILT_TAIL] = "DECAY_TAIL_DURATION";
  1128. break;
  1129. case(FSTATVAR):
  1130. ap->param_name[FLT_Q] = "ACUITY";
  1131. ap->param_name[FLT_GAIN] = "GAIN";
  1132. ap->param_name[FLT_ONEFRQ] = "FREQUENCY";
  1133. ap->param_name[FILT_TAIL] = "DECAY_TAIL_DURATION";
  1134. break;
  1135. case(FLTBANKN):
  1136. ap->param_name[FLT_Q] = "Q";
  1137. ap->param_name[FLT_GAIN] = "GAIN";
  1138. ap->param_name[FLT_RANDFACT] = "FRQ_RANDOMISATION";
  1139. /* fall thro */
  1140. case(FLTBANKC):
  1141. ap->param_name[FLT_LOFRQ] = "LOW_FRQ";
  1142. ap->param_name[FLT_HIFRQ] = "HIGH_FRQ";
  1143. switch(mode) {
  1144. case(FLT_LINOFFSET):
  1145. ap->param_name[FLT_OFFSET] = "FRQ_OFFSET";
  1146. break;
  1147. case(FLT_EQUALSPAN):
  1148. ap->param_name[FLT_INCOUNT] = "NUMBER_OF_FILTERS";
  1149. break;
  1150. case(FLT_EQUALINT):
  1151. ap->param_name[FLT_INTSIZE] = "INTERVAL_(SEMITONES)";
  1152. break;
  1153. }
  1154. ap->param_name[FILT_TAIL] = "DECAY_TAIL_DURATION";
  1155. break;
  1156. case(FLTBANKU):
  1157. ap->param_name[FLT_Q] = "Q";
  1158. ap->param_name[FLT_GAIN] = "GAIN";
  1159. ap->param_name[FILT_TAIL] = "DECAY_TAIL_DURATION";
  1160. break;
  1161. case(FLTBANKV):
  1162. ap->param_name[FLT_Q] = "Q";
  1163. ap->param_name[FLT_GAIN] = "GAIN";
  1164. ap->param_name[FLT_HARMCNT] = "NUMBER_OF_HARMONICS";
  1165. ap->param_name[FLT_ROLLOFF] = "ROLL_OFF_(dB)";
  1166. ap->param_name[FILT_TAILV] = "DECAY_TAIL_DURATION";
  1167. break;
  1168. case(FLTBANKV2):
  1169. ap->param_name[FLT_Q] = "Q";
  1170. ap->param_name[FLT_GAIN] = "GAIN";
  1171. ap->param_name[FILT_TAILV] = "DECAY_TAIL_DURATION";
  1172. break;
  1173. case(FLTSWEEP):
  1174. ap->param_name[FLT_Q] = "ACUITY";
  1175. ap->param_name[FLT_GAIN] = "GAIN";
  1176. ap->param_name[FLT_LOFRQ] = "LOW_FRQ";
  1177. ap->param_name[FLT_HIFRQ] = "HIGH_FRQ";
  1178. ap->param_name[FLT_SWPFRQ] = "SWEEP_FRQ";
  1179. ap->param_name[FLT_SWPPHASE] = "STARTPHASE_OF_SWEEP";
  1180. ap->param_name[FILT_TAIL] = "DECAY_TAIL_DURATION";
  1181. break;
  1182. case(FLTITER):
  1183. ap->param_name[FLT_Q] = "Q";
  1184. ap->param_name[FLT_GAIN] = "GAIN";
  1185. ap->param_name[FLT_DELAY] = "DELAY";
  1186. ap->param_name[FLT_OUTDUR] = "OUTFILE_DURATION";
  1187. ap->param_name[FLT_PRESCALE] = "PRESCALE";
  1188. ap->param_name[FLT_RANDDEL] = "DELAY_RANDOMISATION";
  1189. ap->param_name[FLT_PSHIFT] = "MAX_PITCH_SHIFT";
  1190. ap->param_name[FLT_AMPSHIFT] = "MAX_LOUDNESS_SHIFT";
  1191. break;
  1192. case(ALLPASS):
  1193. ap->param_name[FLT_GAIN] = "GAIN";
  1194. ap->param_name[FLT_DELAY] = "DELAY_(MS)";
  1195. ap->param_name[FLT_PRESCALE] = "PRESCALE";
  1196. ap->param_name[FILT_TAIL] = "DECAY_TAIL_DURATION";
  1197. break;
  1198. case(MOD_LOUDNESS):
  1199. ap->param_name[LOUD_GAIN] = "GAIN";
  1200. ap->param_name[LOUD_LEVEL] = "LEVEL";
  1201. break;
  1202. case(MOD_SPACE):
  1203. switch(mode) {
  1204. case(MOD_PAN):
  1205. ap->param_name[PAN_PAN] = "PAN_POSITION";
  1206. ap->param_name[PAN_PRESCALE] = "PRESCALING";
  1207. break;
  1208. case(MOD_NARROW):
  1209. ap->param_name[NARROW] = "NARROWING";
  1210. break;
  1211. default:
  1212. break;
  1213. }
  1214. break;
  1215. case(SCALED_PAN):
  1216. ap->param_name[PAN_PAN] = "PAN_POSITION";
  1217. ap->param_name[PAN_PRESCALE] = "PRESCALING";
  1218. break;
  1219. case(MOD_PITCH):
  1220. switch(mode) {
  1221. case(MOD_ACCEL):
  1222. ap->param_name[ACCEL_ACCEL] = "ACCELERATION";
  1223. ap->param_name[ACCEL_GOALTIME] = "GOAL_TIME";
  1224. ap->param_name[ACCEL_STARTTIME] = "START_TIME";
  1225. break;
  1226. case(MOD_VIBRATO):
  1227. ap->param_name[VIB_FRQ] = "CYCLES_PER_SECOND";
  1228. ap->param_name[VIB_DEPTH] = "SEMITONE_DEPTH";
  1229. break;
  1230. default:
  1231. ap->param_name[VTRANS_TRANS] = "TRANSPOSITION";
  1232. break;
  1233. }
  1234. break;
  1235. case(MOD_REVECHO):
  1236. if(mode==MOD_STADIUM) {
  1237. ap->param_name[STAD_PREGAIN] = "INPUT_GAIN";
  1238. ap->param_name[STAD_ROLLOFF] = "LEVEL_LOSS_WITH_DISTANCE";
  1239. ap->param_name[STAD_SIZE] = "STADIUM_SIZE_MULTIPLIER";
  1240. ap->param_name[STAD_ECHOCNT] = "NUMBER_OF_ECHOS";
  1241. } else {
  1242. ap->param_name[DELAY_DELAY] = "DELAY_(MS)";
  1243. ap->param_name[DELAY_MIX] = "DELAYED_SIGNAL_IN_MIX";
  1244. ap->param_name[DELAY_FEEDBACK] = "FEEDBACK";
  1245. ap->param_name[DELAY_LFOMOD] = "LOW_FRQ_MODULATION_DEPTH";
  1246. ap->param_name[DELAY_LFOFRQ] = "MODULATION_FRQ:_-ve_FOR_RANDOM";
  1247. ap->param_name[DELAY_LFOPHASE] = "PHASE_OF_MODULATION";
  1248. ap->param_name[DELAY_LFODELAY] = "ENTRY_DELAY_OF_MODULATION";
  1249. ap->param_name[DELAY_TRAILTIME] = "LENGTH_OF_TAIL_TO_SOUND";
  1250. ap->param_name[DELAY_PRESCALE] = "INPUT_PRESCALING";
  1251. if(mode==MOD_VDELAY)
  1252. ap->param_name[DELAY_SEED] = "RANDOM_SEED";
  1253. }
  1254. break;
  1255. case(MOD_RADICAL):
  1256. switch(mode) {
  1257. case(MOD_REVERSE):
  1258. break;
  1259. case(MOD_SHRED):
  1260. ap->param_name[SHRED_CNT] = "NUMBER_OF_SHREDS";
  1261. ap->param_name[SHRED_CHLEN] = "AVERAGE_CHUNKLENGTH";
  1262. ap->param_name[SHRED_SCAT] = "CUT_SCATTER";
  1263. break;
  1264. case(MOD_SCRUB):
  1265. ap->param_name[SCRUB_TOTALDUR] = "MINIMUM_OUTPUT_DURATION";
  1266. ap->param_name[SCRUB_MINSPEED] = "LOWEST_DOWNWARD_TRANSPOSITION";
  1267. ap->param_name[SCRUB_MAXSPEED] = "HIGHEST_UPWARD_TRANSPOSITION";
  1268. ap->param_name[SCRUB_STARTRANGE] = "SCRUBS_START_NO_LATER_THAN";
  1269. ap->param_name[SCRUB_ESTART] = "SCRUBS_END_NO_EARLIER_THAN";
  1270. break;
  1271. case(MOD_LOBIT):
  1272. ap->param_name[LOBIT_BRES] = "BIT_RESOLUTION";
  1273. ap->param_name[LOBIT_TSCAN] = "SAMPLING_RATE_DIVISION";
  1274. break;
  1275. case(MOD_LOBIT2):
  1276. ap->param_name[LOBIT_BRES] = "BIT_RESOLUTION";
  1277. break;
  1278. case(MOD_RINGMOD):
  1279. ap->param_name[RM_FRQ] = "MODULATING_FREQUENCY";
  1280. break;
  1281. case(MOD_CROSSMOD):
  1282. break;
  1283. }
  1284. break;
  1285. case(BRASSAGE):
  1286. switch(mode) {
  1287. case(GRS_PITCHSHIFT):
  1288. ap->param_name[GRS_PITCH] = "PITCHSHIFT_(SEMIT)";
  1289. break;
  1290. case(GRS_TIMESTRETCH):
  1291. ap->param_name[GRS_VELOCITY] = "TIMESHRINK";
  1292. break;
  1293. case(GRS_REVERB):
  1294. ap->param_name[GRS_DENSITY] = "DENSITY";
  1295. ap->param_name[GRS_PITCH] = "PITCHSHIFT_(SEMIT)";
  1296. ap->param_name[GRS_AMP] = "GRAIN_LOUDNESS_RANGE";
  1297. ap->param_name[GRS_SRCHRANGE] = "SEARCHRANGE_(MS)";
  1298. break;
  1299. case(GRS_SCRAMBLE):
  1300. ap->param_name[GRS_GRAINSIZE] = "GRAINSIZE_(MS)";
  1301. ap->param_name[GRS_SRCHRANGE] = "SEARCHRANGE_(MS)";
  1302. break;
  1303. case(GRS_GRANULATE):
  1304. ap->param_name[GRS_DENSITY] = "DENSITY";
  1305. break;
  1306. case(GRS_BRASSAGE):
  1307. case(GRS_FULL_MONTY):
  1308. ap->param_name[GRS_VELOCITY] = "TIMESHRINK";
  1309. ap->param_name[GRS_DENSITY] = "DENSITY";
  1310. if(mode==GRS_FULL_MONTY) {
  1311. ap->param_name[GRS_HVELOCITY] = "TIMESHRINK_LIMIT";
  1312. ap->param_name[GRS_HDENSITY] = "DENSITY_LIMIT";
  1313. }
  1314. ap->param_name[GRS_GRAINSIZE] = "GRAINSIZE_(MS)";
  1315. ap->param_name[GRS_PITCH] = "PITCHSHIFT_(SEMIT)";
  1316. ap->param_name[GRS_AMP] = "GRAIN_LOUDNESS_RANGE";
  1317. ap->param_name[GRS_SPACE] = "SPATIAL_POSITION";
  1318. ap->param_name[GRS_BSPLICE] = "STARTSPLICE_(MS)";
  1319. ap->param_name[GRS_ESPLICE] = "ENDSPLICE_(MS)";
  1320. if(mode==GRS_FULL_MONTY) {
  1321. ap->param_name[GRS_HGRAINSIZE] = "GRAINSIZE_LIMIT_(MS)";
  1322. ap->param_name[GRS_HPITCH] = "PITCHSHIFT_LIMIT_(SEMIT)";
  1323. ap->param_name[GRS_HAMP] = "LOUDNESS_RANGE_LIMIT";
  1324. ap->param_name[GRS_HSPACE] = "SPATIAL_POSITION_LIMIT";
  1325. ap->param_name[GRS_HBSPLICE] = "STARTSPLICE_LIMIT_(MS)";
  1326. ap->param_name[GRS_HESPLICE] = "ENDSPLICE_LIMIT_(MS)";
  1327. }
  1328. ap->param_name[GRS_SRCHRANGE] = "SEARCHRANGE_(MS)";
  1329. ap->param_name[GRS_SCATTER] = "SCATTER";
  1330. ap->param_name[GRS_OUTLEN] = "OUTPUT_LENGTH_(SECS)";
  1331. ap->param_name[GRS_CHAN_TO_XTRACT] = "INPUT_CHAN_TO_EXTRACT_(-ve_N:_OUTPUT_SPATIALISE_TO_N_CHANS)";
  1332. break;
  1333. }
  1334. break;
  1335. case(SAUSAGE):
  1336. ap->param_name[GRS_VELOCITY] = "TIMESHRINK";
  1337. ap->param_name[GRS_DENSITY] = "DENSITY";
  1338. ap->param_name[GRS_HVELOCITY] = "TIMESHRINK_LIMIT";
  1339. ap->param_name[GRS_HDENSITY] = "DENSITY_LIMIT";
  1340. ap->param_name[GRS_GRAINSIZE] = "GRAINSIZE_(MS)";
  1341. ap->param_name[GRS_PITCH] = "PITCHSHIFT(SEMITONES)";
  1342. ap->param_name[GRS_AMP] = "GRAIN_LOUDNESS_RANGE";
  1343. ap->param_name[GRS_SPACE] = "SPATIAL_POSITION";
  1344. ap->param_name[GRS_BSPLICE] = "STARTSPLICE_(MS)";
  1345. ap->param_name[GRS_ESPLICE] = "ENDSPLICE_(MS)";
  1346. ap->param_name[GRS_HGRAINSIZE] = "GRAINSIZE_LIMIT_(MS)";
  1347. ap->param_name[GRS_HPITCH] = "PITCHSHIFT_LIMIT_(SEMIT)";
  1348. ap->param_name[GRS_HAMP] = "LOUDNESS_RANGE_LIMIT";
  1349. ap->param_name[GRS_HSPACE] = "SPATIAL_POSITION_LIMIT";
  1350. ap->param_name[GRS_HBSPLICE] = "STARTSPLICE_LIMIT_(MS)";
  1351. ap->param_name[GRS_HESPLICE] = "ENDSPLICE_LIMIT_(MS)";
  1352. ap->param_name[GRS_SRCHRANGE] = "SEARCHRANGE_(MS)";
  1353. ap->param_name[GRS_SCATTER] = "SCATTER";
  1354. ap->param_name[GRS_OUTLEN] = "OUTPUT_LENGTH_(SECS)";
  1355. ap->param_name[GRS_CHAN_TO_XTRACT] = "INPUT_CHAN_TO_EXTRACT_(-ve_N:_OUTPUT_SPATIALISE_TO_N_CHANS)";
  1356. break;
  1357. /* TEMPORARY TEST ROUTINE */
  1358. case(WORDCNT):
  1359. /* TEMPORARY TEST ROUTINE */
  1360. break;
  1361. case(PVOC_ANAL):
  1362. ap->param_name[PVOC_CHANS_INPUT] = "ANALYSIS_POINTS";
  1363. ap->param_name[PVOC_WINOVLP_INPUT] = "ANALWINDOW_OVERLAP";
  1364. break;
  1365. case(PVOC_SYNTH):
  1366. break;
  1367. case(PVOC_EXTRACT):
  1368. ap->param_name[PVOC_CHANS_INPUT] = "ANALYSIS_POINTS";
  1369. ap->param_name[PVOC_WINOVLP_INPUT] = "ANALWINDOW_OVERLAP";
  1370. ap->param_name[PVOC_CHANSLCT_INPUT] = "SELECT_A_CHANNEL";
  1371. ap->param_name[PVOC_LOCHAN_INPUT] = "BOTTOM_RESYNTH_CHANNEL";
  1372. ap->param_name[PVOC_HICHAN_INPUT] = "TOP_RESYNTH_CHANNEL";
  1373. break;
  1374. case(EDIT_CUT):
  1375. ap->param_name[CUT_CUT] = "TIME_OF_STARTCUT";
  1376. ap->param_name[CUT_END] = "TIME_OF_ENDCUT";
  1377. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1378. break;
  1379. case(EDIT_CUTMANY):
  1380. ap->param_name[CM_SPLICELEN] = "SPLICELEN_(MS)";
  1381. break;
  1382. case(STACK):
  1383. ap->param_name[STACK_CNT] = "NUMBER_OF_ITEMS";
  1384. ap->param_name[STACK_LEAN] = "STACK_LEAN";
  1385. ap->param_name[STACK_OFFSET] = "ATTACK_TIME";
  1386. ap->param_name[STACK_GAIN] = "OVERALL_GAIN";
  1387. ap->param_name[STACK_DUR] = "HOW_MUCH_OF_OUPUT_TO_MAKE";
  1388. break;
  1389. case(EDIT_CUTEND):
  1390. ap->param_name[CUT_CUT] = "LENGTH_TO_KEEP";
  1391. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1392. break;
  1393. case(EDIT_ZCUT):
  1394. ap->param_name[CUT_CUT] = "TIME_OF_STARTCUT";
  1395. ap->param_name[CUT_END] = "TIME_OF_ENDCUT";
  1396. break;
  1397. case(EDIT_EXCISE):
  1398. ap->param_name[CUT_CUT] = "TIME_OF_STARTCUT";
  1399. ap->param_name[CUT_END] = "TIME_OF_ENDCUT";
  1400. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1401. break;
  1402. case(EDIT_EXCISEMANY):
  1403. case(INSERTSIL_MANY):
  1404. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1405. break;
  1406. case(EDIT_INSERT):
  1407. ap->param_name[CUT_CUT] = "INSERTION_TIME";
  1408. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1409. ap->param_name[INSERT_LEVEL]= "INSERT_LEVEL";
  1410. break;
  1411. case(EDIT_INSERT2):
  1412. ap->param_name[CUT_CUT] = "INSERTION_TIME";
  1413. ap->param_name[CUT_END] = "END_TIME_OF_OVERWRITE";
  1414. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1415. ap->param_name[INSERT_LEVEL]= "INSERT_LEVEL";
  1416. break;
  1417. case(EDIT_INSERTSIL):
  1418. ap->param_name[CUT_CUT] = "INSERTION_TIME";
  1419. ap->param_name[CUT_END] = "DURATION_OF_SILENCE";
  1420. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1421. break;
  1422. case(JOIN_SEQ):
  1423. ap->param_name[MAX_LEN] = "MAX_NUMBER_OF_ITEMS_IN_PATTERN";
  1424. /* fall thro */
  1425. case(EDIT_JOIN):
  1426. case(JOIN_SEQDYN):
  1427. ap->param_name[CUT_SPLEN] = "SPLICELEN_(MS)";
  1428. break;
  1429. case(HOUSE_COPY):
  1430. switch(mode) {
  1431. case(COPYSF):
  1432. break;
  1433. case(DUPL):
  1434. ap->param_name[COPY_CNT] = "NUMBER_OF_DUPLICATES";
  1435. break;
  1436. }
  1437. break;
  1438. case(HOUSE_DEL):
  1439. break;
  1440. case(HOUSE_CHANS):
  1441. switch(mode) {
  1442. case(HOUSE_CHANNEL):
  1443. ap->param_name[CHAN_NO] = "CHANNEL_TO_GET";
  1444. break;
  1445. case(HOUSE_ZCHANNEL):
  1446. ap->param_name[CHAN_NO] = "CHANNEL_TO_ZERO";
  1447. break;
  1448. default:
  1449. break;
  1450. }
  1451. break;
  1452. case(HOUSE_BUNDLE):
  1453. break;
  1454. case(HOUSE_SORT):
  1455. switch(mode) {
  1456. case(BY_DURATION):
  1457. case(BY_LOG_DUR):
  1458. ap->param_name[SORT_SMALL] = "MAX_DURATION_SMALLEST_GROUPING";
  1459. ap->param_name[SORT_LARGE] = "MAX_DURATION_LARGEST_GROUPING";
  1460. ap->param_name[SORT_STEP] = "STEP_BETWEEN_GROUPINGS";
  1461. break;
  1462. default:
  1463. break;
  1464. }
  1465. break;
  1466. case(HOUSE_SPEC):
  1467. switch(mode) {
  1468. case(HOUSE_REPROP):
  1469. ap->param_name[HSPEC_SRATE] = "SAMPLE_RATE";
  1470. ap->param_name[HSPEC_CHANS] = "CHANNELS";
  1471. ap->param_name[HSPEC_TYPE] = "SAMPLE_TYPE";
  1472. break;
  1473. case(HOUSE_RESAMPLE):
  1474. ap->param_name[HSPEC_SRATE] = "SAMPLE_RATE";
  1475. break;
  1476. default:
  1477. break;
  1478. }
  1479. break;
  1480. case(HOUSE_EXTRACT):
  1481. switch(mode) {
  1482. case(HOUSE_CUTGATE):
  1483. ap->param_name[CUTGATE_SPLEN] = "SPLICE_LENGTH_(MS)";
  1484. /* fall thro */
  1485. case(HOUSE_ONSETS):
  1486. ap->param_name[CUTGATE_GATE] = "GATE_LEVEL";
  1487. ap->param_name[CUTGATE_ENDGATE] = "ENDGATE_LEVEL";
  1488. ap->param_name[CUTGATE_THRESH] = "THRESHOLD";
  1489. if(mode == HOUSE_CUTGATE)
  1490. ap->param_name[CUTGATE_SUSTAIN] = "RETAIN_TO";
  1491. ap->param_name[CUTGATE_BAKTRAK] = "BAKTRAK_BY";
  1492. ap->param_name[CUTGATE_INITLEVEL] = "INITIAL_LEVEL";
  1493. ap->param_name[CUTGATE_MINLEN] = "MINIMUM_DURATION_(SECS)";
  1494. ap->param_name[CUTGATE_WINDOWS] = "GATE_WINDOWS";
  1495. break;
  1496. case(HOUSE_TOPNTAIL):
  1497. ap->param_name[TOPN_GATE] = "GATE_LEVEL";
  1498. ap->param_name[TOPN_SPLEN] = "SPLICE_LENGTH_(MS)";
  1499. break;
  1500. case(HOUSE_RECTIFY):
  1501. ap->param_name[RECTIFY_SHIFT] = "SHIFT";
  1502. break;
  1503. case(HOUSE_BYHAND):
  1504. break;
  1505. default:
  1506. break;
  1507. }
  1508. break;
  1509. case(TOPNTAIL_CLICKS):
  1510. ap->param_name[TOPN_GATE] = "GATE_LEVEL";
  1511. ap->param_name[TOPN_SPLEN] = "SPLICE_LENGTH_(MS)";
  1512. break;
  1513. case(HOUSE_BAKUP):
  1514. case(HOUSE_DUMP):
  1515. break;
  1516. case(HOUSE_GATE):
  1517. ap->param_name[GATE_ZEROS] = "MIN_ZERO_CNT_FOR_CUT_POINT";
  1518. break;
  1519. case(HOUSE_RECOVER):
  1520. ap->param_name[DUMP_OK_CNT] = "HEADER_COPIES_RETRIEVED";
  1521. ap->param_name[DUMP_OK_PROP] = "MARKER_VALIDITY";
  1522. ap->param_name[DUMP_OK_SAME] = "HEADER_CONSISTENCY";
  1523. ap->param_name[SFREC_SHIFT] = "SIGNAL_SHIFT_TO_APPLY";
  1524. break;
  1525. case(HOUSE_DISK):
  1526. case(INFO_PROPS):
  1527. case(INFO_SFLEN):
  1528. case(INFO_TIMELIST):
  1529. case(INFO_LOUDLIST):
  1530. case(INFO_TIMEDIFF):
  1531. case(INFO_LOUDCHAN):
  1532. case(INFO_MAXSAMP):
  1533. break;
  1534. case(INFO_MAXSAMP2):
  1535. ap->param_name[MAX_STIME] = "START_TIME_OF_SEARCH";
  1536. ap->param_name[MAX_ETIME] = "END_TIME_OF_SEARCH";
  1537. break;
  1538. case(INFO_PRNTSND):
  1539. ap->param_name[PRNT_START] = "START_TIME_IN_SOUND";
  1540. ap->param_name[PRNT_END] = "END_TIME_IN_SOUND";
  1541. break;
  1542. case(INFO_MUSUNITS):
  1543. switch(mode) {
  1544. case(MU_NOTE_TO_FRQ):
  1545. case(MU_NOTE_TO_MIDI):
  1546. case(MU_INTVL_TO_FRQRATIO):
  1547. case(MU_INTVL_TO_TSTRETCH):
  1548. break;
  1549. default:
  1550. switch(mode) {
  1551. case(MU_MIDI_TO_FRQ):
  1552. ap->param_name[MUSUNIT] = "MIDI_VALUE";
  1553. break;
  1554. case(MU_FRQ_TO_MIDI):
  1555. ap->param_name[MUSUNIT] = "FRQ_VALUE_(HZ)";
  1556. break;
  1557. case(MU_FRQRATIO_TO_SEMIT):
  1558. case(MU_FRQRATIO_TO_INTVL):
  1559. case(MU_FRQRATIO_TO_OCTS):
  1560. case(MU_FRQRATIO_TO_TSTRETH):
  1561. ap->param_name[MUSUNIT] = "RATIO_OF_FREQUENCIES";
  1562. break;
  1563. case(MU_SEMIT_TO_FRQRATIO):
  1564. case(MU_SEMIT_TO_OCTS):
  1565. case(MU_SEMIT_TO_INTVL):
  1566. case(MU_SEMIT_TO_TSTRETCH):
  1567. ap->param_name[MUSUNIT] = "INTERVAL_IN_SEMITONES";
  1568. break;
  1569. case(MU_OCTS_TO_FRQRATIO):
  1570. case(MU_OCTS_TO_SEMIT):
  1571. case(MU_OCTS_TO_TSTRETCH):
  1572. ap->param_name[MUSUNIT] = "INTERVAL_IN_OCTAVES";
  1573. break;
  1574. case(MU_TSTRETCH_TO_FRQRATIO):
  1575. case(MU_TSTRETCH_TO_SEMIT):
  1576. case(MU_TSTRETCH_TO_OCTS):
  1577. case(MU_TSTRETCH_TO_INTVL):
  1578. ap->param_name[MUSUNIT] = "TIME_RATIO";
  1579. break;
  1580. case(MU_GAIN_TO_DB):
  1581. ap->param_name[MUSUNIT] = "GAIN_MULTIPLIER";
  1582. break;
  1583. case(MU_DB_TO_GAIN):
  1584. ap->param_name[MUSUNIT] = "dB_GAIN";
  1585. break;
  1586. case(MU_FRQ_TO_NOTE):
  1587. ap->param_name[MUSUNIT] = "FRQ_VALUE_(HZ)";
  1588. break;
  1589. case(MU_MIDI_TO_NOTE):
  1590. ap->param_name[MUSUNIT] = "MIDI_VALUE";
  1591. break;
  1592. }
  1593. break;
  1594. }
  1595. break;
  1596. case(INFO_DIFF):
  1597. case(INFO_CDIFF):
  1598. ap->param_name[SFDIFF_THRESH] = "MAX_ACCEPTABLE_WANDER";
  1599. ap->param_name[SFDIFF_CNT] = "MAX_DIFFERENCES_TO_ACCEPT";
  1600. break;
  1601. case(INFO_FINDHOLE):
  1602. ap->param_name[HOLE_THRESH] = "THRESHOLD_LEVEL";
  1603. break;
  1604. case(INFO_TIMETOSAMP):
  1605. ap->param_name[INFO_TIME] = "TIME_IN_SECONDS";
  1606. break;
  1607. case(INFO_SAMPTOTIME):
  1608. ap->param_name[INFO_SAMPS] = "TIME_AS_SAMPLE_COUNT";
  1609. break;
  1610. case(INFO_TIMESUM):
  1611. ap->param_name[TIMESUM_SPLEN] = "SPLICELEN_(MS)";
  1612. break;
  1613. case(SYNTH_WAVE):
  1614. ap->param_name[SYN_SRATE] = "SAMPLING_RATE";
  1615. ap->param_name[SYN_CHANS] = "NUMBER_OF_CHANNELS";
  1616. ap->param_name[SYN_DUR] = "DURATION";
  1617. ap->param_name[SYN_FRQ] = "FREQUENCY";
  1618. ap->param_name[SYN_AMP] = "AMPLITUDE";
  1619. ap->param_name[SYN_TABSIZE] = "WAVEFORM_TABLESIZE";
  1620. break;
  1621. case(MULTI_SYN):
  1622. ap->param_name[SYN_SRATE] = "SAMPLING_RATE";
  1623. ap->param_name[SYN_CHANS] = "NUMBER_OF_CHANNELS";
  1624. ap->param_name[SYN_DUR] = "DURATION";
  1625. ap->param_name[SYN_AMP] = "AMPLITUDE";
  1626. ap->param_name[SYN_TABSIZE] = "WAVEFORM_TABLESIZE";
  1627. break;
  1628. case(SYNTH_NOISE):
  1629. ap->param_name[SYN_SRATE] = "SAMPLING_RATE";
  1630. ap->param_name[SYN_CHANS] = "NUMBER_OF_CHANNELS";
  1631. ap->param_name[SYN_DUR] = "DURATION";
  1632. ap->param_name[SYN_AMP] = "AMPLITUDE";
  1633. break;
  1634. case(SYNTH_SIL):
  1635. ap->param_name[SYN_SRATE] = "SAMPLING_RATE";
  1636. ap->param_name[SYN_CHANS] = "NUMBER_OF_CHANNELS";
  1637. ap->param_name[SYN_DUR] = "DURATION";
  1638. break;
  1639. case(SYNTH_SPEC):
  1640. ap->param_name[SS_DUR] = "DURATION";
  1641. ap->param_name[SS_CENTRFRQ] = "CENTRE_FREQUENCY";
  1642. ap->param_name[SS_SPREAD] = "BAND_SPREAD";
  1643. ap->param_name[SS_FOCUS] = "BAND_FOCUS_(MAX)";
  1644. ap->param_name[SS_FOCUS2] = "BAND_FOCUS_(MIN)";
  1645. ap->param_name[SS_TRAND] = "TIME_VARIATION";
  1646. ap->param_name[SS_SRATE] = "SAMPLE_RATE";
  1647. break;
  1648. case(RANDCUTS):
  1649. ap->param_name[RC_CHLEN] = "AVERAGE_CHUNKLENGTH";
  1650. ap->param_name[RC_SCAT] = "SCATTERING";
  1651. break;
  1652. case(RANDCHUNKS):
  1653. ap->param_name[CHUNKCNT] = "NUMBER_OF_CHUNKS";
  1654. ap->param_name[MINCHUNK] = "MIN_CHUNK_LENGTH";
  1655. ap->param_name[MAXCHUNK] = "MAX_CHUNK_LENGTH";
  1656. break;
  1657. case(SIN_TAB):
  1658. ap->param_name[SIN_FRQ] = "CYCLE_LENGTH";
  1659. ap->param_name[SIN_AMP] = "PAN_WIDTH";
  1660. ap->param_name[SIN_DUR] = "DURATION";
  1661. ap->param_name[SIN_QUANT] = "QUANTISATION";
  1662. ap->param_name[SIN_PHASE] = "START_PHASE";
  1663. break;
  1664. case(ACC_STREAM):
  1665. ap->param_name[ACC_ATTEN] = "ATTENUATION";
  1666. break;
  1667. case(HF_PERM1):
  1668. case(HF_PERM2):
  1669. ap->param_name[HP1_SRATE] = "SAMPLE_RATE";
  1670. ap->param_name[HP1_ELEMENT_SIZE]= "DURATION_OF_CHORDS";
  1671. ap->param_name[HP1_GAP_SIZE] = "DURATION_OF_PAUSES_BETWEEN_CHORDS";
  1672. ap->param_name[HP1_GGAP_SIZE] = "DURATION_PAUSES_BETWEEN_CHORD-GROUPS";
  1673. ap->param_name[HP1_MINSET] = "MIN_NUMBER_OF_NOTES_PER_CHORD";
  1674. ap->param_name[HP1_BOTNOTE] = "BOTTOM_NOTE_OF_RANGE";
  1675. ap->param_name[HP1_BOTOCT] = "OCTAVE_OF_BOTTOM_NOTE";
  1676. ap->param_name[HP1_TOPNOTE] = "TOP_NOTE_OF_RANGE";
  1677. ap->param_name[HP1_TOPOCT] = "OCTAVE_OF_TOP_NOTE";
  1678. ap->param_name[HP1_SORT1] = "SORT_CHORDS_BY";
  1679. break;
  1680. case(DEL_PERM):
  1681. ap->param_name[HP1_SRATE] = "SAMPLE_RATE";
  1682. ap->param_name[DP_DUR] = "INITAL_DURATION_OF_NOTES";
  1683. /* fall thro */
  1684. case(DEL_PERM2):
  1685. ap->param_name[DP_CYCCNT] = "CYCLES_OF_PERMUTATION";
  1686. break;
  1687. case(TWIXT):
  1688. case(SPHINX):
  1689. ap->param_name[IS_SPLEN] = "SPLICE_LENGTH_(MS)";
  1690. ap->param_name[IS_SEGCNT] = "NUMBER_OF_SEGMENTS_TO_OUTPUT";
  1691. if(process != TWIXT || mode != TRUE_EDIT)
  1692. ap->param_name[IS_WEIGHT] = "WEIGHTING_OF_FIRST_FILE";
  1693. break;
  1694. case(NOISE_SUPRESS):
  1695. ap->param_name[NOISE_SPLEN] = "SPLICE_LENGTH_(MS)";
  1696. ap->param_name[NOISE_MINFRQ] = "FRQ_ABOVE_WHICH_SIGNAL_COULD_BE_NOISE_(HZ)";
  1697. ap->param_name[MIN_NOISLEN] = "MAXIMUM_DURATION_OF_NOISE_TO_KEEP_(MS)";
  1698. ap->param_name[MIN_TONELEN] = "MINIMUM_DURATION_OF_TONE_TO_KEEP_(MS)";
  1699. break;
  1700. case(TIME_GRID):
  1701. ap->param_name[GRID_COUNT] = "NUMBER_OF_GRIDS";
  1702. ap->param_name[GRID_WIDTH] = "WIDTH_OF_GRID_WINDOWS";
  1703. ap->param_name[GRID_SPLEN] = "SPLICE_LENGTH_(MS)";
  1704. break;
  1705. case(SEQUENCER2):
  1706. ap->param_name[SEQ_SPLIC] = "SPLICE_(MS)";
  1707. /* fall thro */
  1708. case(SEQUENCER):
  1709. ap->param_name[SEQ_ATTEN] = "SOURCE_ATTENUATION";
  1710. break;
  1711. case(CONVOLVE):
  1712. switch(mode) {
  1713. case(CONV_NORMAL):
  1714. break;
  1715. case(CONV_TVAR):
  1716. ap->param_name[CONV_TRANS] = "SEMITONE_TRANSPOSITION_OF_CONVOLVING_FILE";
  1717. break;
  1718. }
  1719. break;
  1720. case(BAKTOBAK):
  1721. ap->param_name[BTOB_CUT] = "TIME_OF_JOIN";
  1722. ap->param_name[BTOB_SPLEN] = "SPLICE_LENGTH_(MS)";
  1723. break;
  1724. case(FIND_PANPOS):
  1725. ap->param_name[PAN_PAN] = "AT_TIME";
  1726. break;
  1727. case(CLICK):
  1728. switch(mode) {
  1729. case(CLICK_BY_TIME):
  1730. ap->param_name[CLIKSTART] = "MAKE_CLICK_FROM_TIME";
  1731. ap->param_name[CLIKEND] = "MAKE_CLICK_TO_TIME";
  1732. break;
  1733. case(CLICK_BY_LINE):
  1734. ap->param_name[CLIKSTART] = "MAKE_CLICK_FROM_DATA_LINE";
  1735. ap->param_name[CLIKEND] = "MAKE_CLICK_TO_DATA_LINE";
  1736. break;
  1737. }
  1738. ap->param_name[CLIKOFSET] = "DATA_LINE_WHERE_MUSIC_STARTS";
  1739. break;
  1740. case(DOUBLETS):
  1741. ap->param_name[BTOB_CUT] = "SEGMENTATION_LENGTH";
  1742. ap->param_name[BTOB_SPLEN] = "SEGMENT_REPEATS";
  1743. break;
  1744. case(SYLLABS):
  1745. ap->param_name[SYLLAB_DOVETAIL] = "DOVETAIL_TIME_(MS)";
  1746. ap->param_name[SYLLAB_SPLICELEN] = "SPLICE_LENGTH_(MS)";
  1747. break;
  1748. case(MAKE_VFILT):
  1749. case(MIX_MODEL):
  1750. break;
  1751. case(BATCH_EXPAND):
  1752. ap->param_name[BE_INFILE] = "INFILE_COLUMN_NUMBER_IN_BATCHFILE";
  1753. ap->param_name[BE_OUTFILE] = "OUTFILE_COLUMN_NUMBER_IN_BATCHFILE";
  1754. ap->param_name[BE_PARAM] = "PARAM_COLUMN_NUMBER_IN_BATCHFILE";
  1755. break;
  1756. case(CYCINBETWEEN):
  1757. ap->param_name[INBETW] = "NUMBER_OF_INTERMEDIATE_FILES";
  1758. ap->param_name[BTWN_HFRQ] = "HIGH_FREQUENCY_CUTOFF";
  1759. break;
  1760. case(ENVSYN):
  1761. ap->param_name[ENVSYN_WSIZE] = "ENVELOPE_WINDOW_SIZE_(MS)";
  1762. ap->param_name[ENVSYN_DUR] = "DURATION_OF_OUTFILE";
  1763. ap->param_name[ENVSYN_CYCLEN] = "DURATION_OF_REPEATING_UNIT";
  1764. ap->param_name[ENVSYN_STARTPHASE] = "START_POINT_WITHIN_FIRST_UNIT";
  1765. switch(mode) {
  1766. case(ENVSYN_RISING):
  1767. ap->param_name[ENVSYN_TROF] = "HEIGHT_OF_ENVELOPE_TROUGH";
  1768. ap->param_name[ENVSYN_EXPON] = "ENVELOPE_RISE_EXPONENT";
  1769. break;
  1770. case(ENVSYN_FALLING):
  1771. ap->param_name[ENVSYN_TROF] = "HEIGHT_OF_ENVELOPE_TROUGH";
  1772. ap->param_name[ENVSYN_EXPON] = "ENVELOPE_DECAY_EXPONENT";
  1773. break;
  1774. case(ENVSYN_TROFFED):
  1775. ap->param_name[ENVSYN_TROF] = "HEIGHT_OF_ENVELOPE_TROUGH";
  1776. ap->param_name[ENVSYN_EXPON] = "ENVELOPE_DECAY_AND_RISE_EXPONENT";
  1777. break;
  1778. }
  1779. break;
  1780. case(RRRR_EXTEND):
  1781. if(mode == 1) {
  1782. ap->param_name[RRR_GATE] = "GATE_LEVEL_BELOW_WHICH_SIGNAL_ENVELOPE_IGNORED";
  1783. ap->param_name[RRR_SKIP] = "NUMBER_OF_UNITS_AT_ITERATIVE_START_TO_OMIT";
  1784. ap->param_name[RRR_GET] = "MINIMUM_NO_OF_SEGMENTS_TO_FIND_IN_SRC";
  1785. ap->param_name[RRR_GRSIZ] = "APPROX_SIZE_OF_GRANULE_(MS)";
  1786. ap->param_name[RRR_AFTER] = "TIME_IN_EXTENDED_ITERATIVE_BEFORE_RITARNDO";
  1787. ap->param_name[RRR_TEMPO] = "EVENT_SEPARATION_IN_FULLY_SLOWED_ITERATIVE";
  1788. ap->param_name[RRR_AT] = "TIME_IN_EXTENDED_ITERATIVE_WHERE_RIT_ENDS";
  1789. } else {
  1790. ap->param_name[RRR_START] = "START_OF_SECTION_TO_BE_EXTENDED";
  1791. ap->param_name[RRR_END] = "END_OF_SECTION_TO_BE_EXTENDED";
  1792. ap->param_name[RRR_GET] = "ANTICIPATED_NO_OF_SEGMENTS_TO_FIND_IN_SRC";
  1793. }
  1794. ap->param_name[RRR_RANGE] = "APPROX_RANGE_OF_ITERATIVE_SOUND_(OCTAVES)";
  1795. if(mode != 2) {
  1796. ap->param_name[RRR_STRETCH] = "TIMESTRETCH_OF_SECTION";
  1797. ap->param_name[RRR_REPET] = "MAX_ADJACENT_OCCURENCES_OF_ANY_SEG_IN_OUTPUT";
  1798. ap->param_name[RRR_ASCAT] = "AMPLITUDE_SCATTER_(MULTIPLIER)";
  1799. ap->param_name[RRR_PSCAT] = "PITCH_SCATTER_(SEMITONES)";
  1800. }
  1801. break;
  1802. case(SSSS_EXTEND):
  1803. ap->param_name[SSS_DUR] = "OUTPUT_DURATION";
  1804. ap->param_name[NOISE_MINFRQ] = "MIN_FRQ_(HZ)_JUDGED_TO_REPRESENT_NOISE";
  1805. ap->param_name[MIN_NOISLEN] = "MIN_DURATION_OF_USUABLE_BLOCK_OF_NOISE_IN_SIGNAL_(MS)";
  1806. ap->param_name[MAX_NOISLEN] = "MAX_DURATION_OF_USUABLE_BLOCK_OF_NOISE_IN_SIGNAL_(SECS)";
  1807. ap->param_name[SSS_GATE] = "NOISE_MUST_BE_ABOVE_THIS_GATE_LEVEL";
  1808. break;
  1809. case(HOUSE_GATE2):
  1810. ap->param_name[GATE2_DUR] = "MAX_GLITCH_DURATION_(MS)";
  1811. ap->param_name[GATE2_ZEROS] = "MIN_GLITCH_SEPARATION_(MS)";
  1812. ap->param_name[GATE2_LEVEL] = "GATING_LEVEL_AT_GLITCH_EDGE";
  1813. ap->param_name[GATE2_SPLEN] = "SPLICE_LENGTH_(MS)";
  1814. ap->param_name[GATE2_FILT] = "SEARCH_WINDOW_(MS)";
  1815. break;
  1816. case(GRAIN_ASSESS):
  1817. break;
  1818. case(ZCROSS_RATIO):
  1819. ap->param_name[ZC_START] = "START_TIME";
  1820. ap->param_name[ZC_END] = "END_TIME";
  1821. break;
  1822. case(GREV):
  1823. ap->param_name[GREV_WSIZE] = "ENVELOPE_WINDOW_SIZE_(MS)";
  1824. ap->param_name[GREV_TROFRAC] = "DEPTH_OF_TROUGHS_AS_PROPORTION_OF_PEAK_HEIGHT";
  1825. ap->param_name[GREV_GPCNT] = "NO_OF_GRAINS_GROUPED_AS_ONE_UNIT";
  1826. switch(mode) {
  1827. case(GREV_TSTRETCH):
  1828. ap->param_name[GREV_TSTR] = "TIME_STRETCH_RATIO";
  1829. break;
  1830. case(GREV_DELETE):
  1831. case(GREV_OMIT):
  1832. ap->param_name[GREV_KEEP] = "NO_OF_UNITS_TO_DELETE";
  1833. ap->param_name[GREV_OUTOF] = "OUT_OF";
  1834. break;
  1835. case(GREV_REPEAT):
  1836. ap->param_name[GREV_REPETS] = "NO_OF_UNIT_REPETITIONS";
  1837. break;
  1838. }
  1839. break;
  1840. case(MANY_ZCUTS):
  1841. break;
  1842. default:
  1843. sprintf(errstr,"Unknown case: get_param_names()\n");
  1844. return(PROGRAM_ERROR);
  1845. }
  1846. return(FINISHED);
  1847. }