Jump to content

Working with large pieces in multiple sections


Recommended Posts

All of us, as Opusmodus users, know the possibility to compose a piece with multiples sections and assemble later.

 

We can use the ASSEMBLE-SEQ function in our piece for assemble some material and sections, but we also can use COMPILE-SCORE with multiple pre-defined scores assembled in one COMPILE-SCORE instruction this way:

 

(compile-score '(
	        	score1
			score2
			score3
			etc.
			)
)

This is a very convenient way for assembling multiple sections as multiple score.

i put this instructions in a separate file named COMPILE-SCORE and all other section-score in files named S1, S2, S3.... 

But when the piece grown, you can have many score files in you workspace navigator to evaluate before compiling the full score.

 

In that case, i add a last file named LoadAll. opmo containing the following instruction for load and read in one time all my section's scores:

 

(mapcar 'load
       '(
         "/Users/yourUserName/Opusmodus/Scores/S1.opmo"  ;; S1 for section1, s2 for section2 and so on...
         "/Users/yourUserName/Opusmodus/Scores/S2.opmo" 
         "/Users/yourUserName/Opusmodus/Scores/S3.opmo" 
         "/Users/yourUserName/Opusmodus/Scores/S4.opmo" 
         "/Users/yourUserName/Opusmodus/Scores/S5.opmo" 
         "/Users/yourUserName/Opusmodus/Scores/S6.opmo" 
         "/Users/yourUserName/Opusmodus/Scores/S7.opmo" 
         "/Users/yourUserName/Opusmodus/Scores/S8.opmo" 
                ))

Attached to this post, 2 pictures of one of my workspace showing the organisation of the files.

 

SB.

Capture d’écran 2016-01-30 à 14.44.21.png

Capture d’écran 2016-01-30 à 14.44.26.png

Link to comment
Share on other sites

  • 5 months later...
(progn
  ;;; Laod score files.
  ;;; There is no need for an .opmo extension if all of the scores are in the workspace folder.
  (let ((files
         '(score1
           score2
           score3
           score4
           )))
    (mapcar #'(lambda (x)
                (load (merge-pathnames (string x) *load-truename*)))
            files))
  
  ;;; To assemble the final score form scores:
  (compile-score
   '(score1 ;; score name
     score2
     score2
     score2
     ))
  
;;; The *last-score* is the last compiled score.
  (display-musicxml *last-score*)
  (display-midi *last-score* :display :quick-view)
  )

 

Link to comment
Share on other sites

You can also keep my example and after evaluate all the score evaluate the compile-score '(score1 score 2etc...) with Evaluate and display notation.

It will display the score for the full score with all parts assembly.

 

Once the score notation displayed, you can give it the focus (click on it) and CMD+S for save the Musicxml to file.

 

SB.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

Terms of Use Privacy Policy