gude2000 Posted September 13, 2024 Posted September 13, 2024 This is my first attempt at building a piano piece with strange chords. I will add a right hand melody later, but, I am stuck! Can you tell me what I am doing wrong? Everything goes well until the last "make-omn" generation. I can't seem to marry the rhythm to the chords... can someone tell me how to fix this? I've tried OM GPT but it doesn't compile either with its suggestions. Thanks! ;; JG Jazz Piano Test 1 ;; Create 16 chords to use (setf chords '(e3a3bb3e4 d3g3gs3d4 g3b3cs4f4 fs3b3c4e4 ds3g3gs3d4 ds3fs3gs3d4 eb3f3g3 b3c4g4 b3cs4e4g4 b3cs4ds4a4 d4e4f4b4 ds4gs4a4d5 b3d4ds4g4b4 b4d5ds5f5g5 cs4ds4f4g4a4 d5ds5fs5a4)) ;; Set the time signature to 4/4 for the whole piece (setf time-signature '(1/4 1/4 1/4 1/4)) ;; Create a length pattern for 4 beats and extend it for 4 bars (setf length '(e - - e q q)) (setf extended-length (gen-loop 4 length)) ;; Randomly select chords across 16 bars (setf pitch-loop (gen-loop 4 (rnd-sample 16 chords))) ;; Dynamics (setf velocity '(ff p< mp< f< ff> pp> ff> f> mf> pp< p< mp< mf< f> mp< ff)) ;; Generate the OMN sequence with matching lengths, pitches, and time signature (make-omn :length extended-length :pitch pitch-loop :velocity velocity :time-signature time-signature) Quote
AM Posted September 13, 2024 Posted September 13, 2024 in make-omn -> no "time-signature", only for "def-score"... (make-omn :length extended-length :pitch pitch-loop :velocity velocity) => ((e b3cs4e4g4 ff -e - e b3cs4ds4a4 p< q ds4gs4a4d5 mp< eb3f3g3 f<) (e b3cs4ds4a4 ff> -e - e ds4gs4a4d5 pp> q d3g3gs3d4 ff> d4e4f4b4 f>) (e b4d5ds5f5g5 mf> -e - e ds3g3gs3d4 pp< q b3c4g4 p< d3g3gs3d4 mp<) (e b3cs4ds4a4 mf< -e - e ds4gs4a4d5 f> q eb3f3g3 mp< ff)) Quote
jesele Posted September 13, 2024 Posted September 13, 2024 If you want a time signature you could do like this (omn-to-measure (make-omn :length extended-length :pitch pitch-loop :velocity velocity) time-signature) Jesper Quote
opmo Posted September 13, 2024 Posted September 13, 2024 (omn-to-time-signature (make-omn :length extended-length :pitch pitch-loop :velocity velocity) '(4 4)) Not correct values for the time signature: (setf time-signature '(1/4 1/4 1/4 1/4)) Should be: (setf time-signature '(4 4)) Quote
opmo Posted September 13, 2024 Posted September 13, 2024 As a new user, I highly recommend exploring the documentation. The search function should assist you in finding the information you need. Quote
gude2000 Posted September 13, 2024 Author Posted September 13, 2024 Thanks for the replies. Those suggestions fixed the problem. I did search the documentation and asked OM Chat GPT before posting here for help. As a beginner, even when searching the documentation carefully, one can miss the small details that can solve an issue since there is so much to pay attention to, and even a very small overlooked mistake can lead to "failure". I do appreciate the help of the more experienced users in this forum and look forward to learning more. Thanks for your help and patience! The "time signature" code in the make-omn section at the end that was derailing my code came from OM Chat GPT, by the way... I am surprised it did this, since it is not an argument for the make-omn function. Stephane Boussuge and opmo 2 Quote
RST Posted September 20, 2024 Posted September 20, 2024 My small suggestion is to also spend time with LISP. I have found that this really helps with understanding both the functions and their documentation within Opusmodus. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.