Jump to content

julio d'escrivan

Members
  • Posts

    55
  • Joined

  • Last visited

Contact Methods

Profile Information

  • Gender
    Male
  • Location
    Holmfirth, West Yorkshire

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Hi J, I think I obtained the result I wanted, but I am not entirely sure I understand the process... I wanted 5 versions of the original list where each element had its 8ve randomised, as opposed to each sub-list being transposed, and I obtained that. I just want to be sure I understand the order of execution of operations upon a list when they are nested. It seems each function is executed completely before moving to the next outer function, thus passing a list to the next function (as opposed to each element in turn, which I think is what happens with a stream). I guess I am confused between streams and lists (which is what I work with in SC and lists here). This is proving to be a hard learning curve, so thanks for your help. Julio
  2. Hi, Sorry if this is too basic!! I'm trying really to understand details in the order of evaluation. In a recursive line, does the inner nest always produce ALL of its elements before passing the list to the outer nest? in the example below I think this is what happens: 1. randomize-octaves in the list x, the randomise operates on each element of the list in turn and thus creates a new list 2. evaluate that 5 times, thus creating five list with different octave randomisation because the seed is nil 3. the 5 lists are modified where each sequential element in a list may be repeated three times for each element that is not repeated... ratio 1:3 (so it is 3 times as likely to stutter a value than not, correct?) thank you, Julio ;;here is a simple list of pitches (setf x '(a3 b3 c3 d3 e3)) ;; what I want is for a random octave to be evaluated for each individual note of the list... ;; so I did this and it seems to work... (setf exp1 (gen-repeat-seq '(5) 1 3 (gen-eval 5 '(randomize-octaves '(c0 g6) x :seed nil))))
  3. wow, thanks! that is some programming, I don't understand the function but it does what I need, thank you, very much!
  4. Thank you, yes, I understand this software is very notation oriented, perhaps I am asking too much... I have recently seen it done on symbolic composer so I wondered if it was possible here, I can't remember the specific function, but it was not a tempo change. thanks again.
  5. er... thank you, I will, but what you see above was a cut and paste from the documentation... thanks for showing the right way but then the help example needs correcting, and accounting for all input arguments, no? here it is again straight from the help file: Examples: Using the function GEN-LENGTH to make the conversion to lengths: (gen-length '8 ds-i2) => (1/2 1/4 1/4 1/2 1/4 1/8 1/8 1/4 1/4 1/8 1/8 1/4 1/2 1/4 1/4 1/2) (gen-length '16 ds-i2) => (1/4 1/8 1/8 1/4 1/8 1/16 1/16 1/8 1/8 1/16 1/16 1/8 1/4 1/8 1/8 1/4) (gen-length '(8 16) ds-i2) => ((1/2 1/4 1/4 1/2) (1/8 1/16 1/16 1/8) (1/4 1/8 1/8 1/4) (1/4 1/8 1/8 1/4))
  6. Hi J, (or anybody else who knows?) I am trying to find what function generates a written out accelerando... in other words something like this starting in whole notes and down to thirty seconds: w h h e e e e s s s s s s s s t t t t t t t t t t t t t t t t or involving tuplets also, or better still, starting from a given rhythmic value (lengths in opmo?) a geometric progression of lengths. In Supercollider, we use Pgeom and give it a start and end and a multiplier and this allows fro some great accell, stutter effects. What would be the equivalent here? Thanks! Julio
  7. Hi J, I am trying to run the distributive-square examples, evaluating all the previous lines before hand (with the exception of the ones that show the output!) so first I run: (setf ds-i2 (distributive-square (interference2 '(3 2)))) ;;then... (gen-length '8 ds-i2) and I get this: Error: The value 8 is not of the expected type list. > While executing: gen-length, in process Listener-1(7). > Type cmd-. to abort, cmd-\ for a list of available restarts. > Type :? for other options. Also, the argument and values list for this function only lists a sequence and nothing else... I imagine that the '8 is the number of times the sequence is generated? anyway, example does not work... Thank you! Julio
  8. ok, I have looked at the examples and the only thing I see clearly is that duration-add is necessary if there is a negative duration indicated. But I don't understand a negative duration... what you call length in omn is the rhythmic position within the bar, let's say the point at which a sound is triggered (MIDINote On timestamp?). What you call duration is how long that sound is triggered for (MIDINoteOff timestamp?). If that is correct, what does a negative duration do? I don't understand why a duration-add needs to exist... it seems to allow extending the durations by a factor... it is unclear and the documentation is rather cryptic. I am struggling with this... where can I find out more? I searched here and nobody seems to have asked this before...
  9. Hi J, I have done everything you indicate but this is happening again and it is very frustrating but I think I found a workaround: made a new workspace folder created a couple of new files and saved them manually to that folder they appear when I launch but when I start navigating from one to another at some stage they go blank the workaround I found is to manually close all documents open in the composer window, then click on the file in the navigator again and I got it back... It's like the IDE crashes when you have too many docs open in the composition window?
  10. thank you! I found what duration-add is by searching for an example in the documentation, the helpful just mentions the keyword but no more. I had no idea about this... we keep learning! thanks again.
  11. Hi J, I am trying to arpeggiate some chords put together algorithmically, I am following the example document for arpeggios, no2. And adding arp at the articulation keyword for make-omn, but I get an error, so I am wondering if it is just not possible to arpeggiate chords that are changing in the amount of sustain the notes have? (what you call 'duration' in OM language)). My basic premise is that I cannot change the original rhythmic positions of the coreCall set below, yet I want to create different orderings with different octaves and make them sound more legato: see here: ;;identified the core call notes to use as material for chords (setf coreCall '(-h_q_3s t_3s^s gb5 mp 23/640^23/384 db6 mf 5q^25/384 f6 t..^149/1920 eb6 mp e_t_5s bb5 mf -13/480 89/1920^t_x_5s eb5 mp 203/384 ab5 mf )) ;;defined the separate elements as their own variables (setf coreCall-L (omn :length coreCall )) (setf coreCall-P (omn :pitch coreCall )) (setf coreCall-D(omn :duration coreCall )) ;;set to generate chords from pitch (setf callChords (gen-chord 11 1 5 0 24 coreCall-P :count 5 :rnd-octaves t :seed 22)) ;;combine the values to make an alternative call (make-omn :pitch callChords ;;randomise the rhythmic values :length (rnd-order coreCall-L :seed 28) ;;make it more legato by scaling the durations of the notes: :duration (length-augmentation 2 coreCall-D ) :span :length :articulation (mclist '(- arp - arp arp-down - arp -)) ) Thank youin advance for your help!! Julio
  12. Hi again! :) I am setting these pitches: (setf pitchOnlyFirstCall '(bb5 bb5 bb5 bb5 gb5 db6 f6 eb6 bb5 eb5 ab5 gb5 db6 f6 eb6 bb5 eb5 ab5 eb5 eb5 eb5 eb5)) then I want to reverse and transpose down so I do this: (setf leftHand (pitch-transpose 'c0 (nreverse pitchOnlyFirstCall)) ) and the first time I evaluate the snippet I get what I want, the second time I evaluate the snippet I only get one note... So, The helpfile says that nreverse 'destroys the argument', does that mean that the variable I just passed becomes unassigned and this is why I get only one note on second eval? Is there a way to reverse a list without losing the original assignment? I guess I will have to have an intermediary assignment so I don't lose my original list? Thanks! Julio
  13. thanks, I did as you suggested and observe in the finder that of the files that were showing blank, there are duplicates which I did not create (purposefully at least!) and which have a tilde after the name, look at my finder in the picture attached. Don't know how this happened. Anyway, I have started a new workspace within the same folder I have been working all along... thanks.
  14. er... I know how to add files to the navigator... that is not an issue at all. The issue is that when I save files I just created, sometimes the text disappears and they look blank and are uneditable. I have had this behaviour both with and without consolidating files. You tell me it is not a bug but it sure looks like one! In other commercial software like LIVE or Logic, we are used to saving as project and having all related media files kept in the same folder as the project we saved and I find this useful in the long run as you go through many different projects and experiments. An interesting software that implements this kind of saving and includes everything inc video, text files, etc, and URLs is Scrivener. There, every creative writing project gets consolidated in its own folder. This is what I thought consolidate did. The way it is implemented here in OM is not useful to me, I guess. I prefer the consolidate-per-project approach. Thanks!
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy