Skip to content
View in the app

A better way to browse. Learn more.

Opusmodus

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Audiotinign through reaper / Kontakt

Featured Replies

Hi,

First day with Opusmodus!

I am trying to audition the choralis.opmo example via Reaper / Kontakt.

I configured IAC, the port I named IAC1 shows up as a port in Reaper (it is enabled for midi + control) and the VSTi in Reaper is set to record / audion.

I set the audition prefence in Opusmodus to my port (IAC1) but it still audiotions though the internal GM. 

I then tried adding port: "IAC" like this

 

  (ps 'gm :satb (list v1 v2 v3 v4)
      :flexible-clef nil
      :port "IAC1"
      :tempo 60)
  )

 

but then i get an error in OPUSMODUS compiler:

> Error: OMN Parse Error: fail
> While executing: omn-to-ast, in process Listener-1(7).
> Type cmd-. to abort, cmd-\ for a list of available restarts.
> Type :? for other options.
11 > 

 

What am I missing?

The PS (Preview Score) is for preview your work in progress. Here you can't set the ports, but you can create and define your own instrument-set - the PS and the DEF-INSTRUMENT-SET document explains How-To.

 

The default port setup in the Preferences/Audition is for snippets only.

 

Using ports in DEF-SCORE:


(setf chords 
      '((w c4e4g4) (h g4b4d5) (h c4e4g4) (-h) (q e4g4b4 q)
        (q a4c5e5 mp leg q leg) (q g4b4d5 leg) (q f4a4c5) (w d4f4a4)
        (w a4cs5e5 mf) (-q) (q d4f4a4 q q) (q a4c5e5) (h c4e4g4) (h d4f4a4)
        (q d4fs4a4 leg q leg q) (h g4b4d5 h) (-q) (q bb4d5f5 q q)
        (w eb4g4bb4) (-q) (q c4eb4g4 q) (q g4bb4d5) (h c4eb4g4) (h bb4d5f5)
        (w f4a4c5 h) (-q) (q d4fs4a4) (q g4bb4d5 q q q) (h d4fs4a4 h)
        (-q) (q g4bb4d5) (h c4eb4g4) (h g4bb4d5) (h d4fs4a4 h) (h. g4bb4d5)
        (-q) (w g4bb4d5) (h d4f4a4 h) (-q) (q a4c5e5) (q a4c5e5) (q a4c5e5)
        (h c4eb4g4) (h c4eb4g4) (h g4bb4d5) (q g4bb4d5) (q g4bb4d5)
        (h d4f4a4) (h d4f4a4) (-q) (q d4f4a4 mf) (q a4c5e5 f) (q d4f4a4 p)
        (h. b4d5fs5 p) (q d4f4a4 mp) (q f4a4c5 q q q) (w e4g4b4) (h a4c5e5)
        (-h) (h d4fs4a4) (q d4fs4a4 q) (h g4b4d5) (h g4b4d5) (h e4g4b4)
        (q e4g4b4) (q e4g4b4) (h. c4e4g4) (q c4e4g4) (h f4a4c5)
        (q f4a4c5) (q bb4d5f5) (h. g4b4d5) (q c4e4g4) (h a4cs5e5)
        (h d4f4a4) (q g4b4d5) (q d4fs4a4) (w g4b4d5 p) (w g4b4d5 pp)))

(choralis chords
          :rotation 1
          :index 'v
          :interval 8
          :path '?
          :seed 826083
          :methods
          '(
            :sop ((t5 6) (t-4 (31 32) (3 1)) (t-12 32 2))
            :ten ((t4 (31 32) (3 1)))
            :bass ((t-12 (1 2 3)) (t-12 4 (1 2)))
            )
          )

(def-score choralis1
           (
            :key-signature 'chromatic
            :time-signature '(4 4)
            :flexible-clef nil
            :tempo 60
            :layout (choir-satb-layout 'v1 'v2 'v3 'v4)
            )
  
  (v1 :omn v1 :channel 1 :port 0) 
  (v2 :omn v2 :channel 2)
  (v3 :omn v3 :channel 3)
  (v4 :omn v4 :channel 4)
  )


 

  • Author

Ah, thanks!

 

But it does not compile when I add IAC as my port:

(progn
(setf chords 
      '((w c4e4g4) (h g4b4d5) (h c4e4g4) (-h) (q e4g4b4 q)
        (q a4c5e5 mp leg q leg) (q g4b4d5 leg) (q f4a4c5) (w d4f4a4)
        (w a4cs5e5 mf) (-q) (q d4f4a4 q q) (q a4c5e5) (h c4e4g4) (h d4f4a4)
        (q d4fs4a4 leg q leg q) (h g4b4d5 h) (-q) (q bb4d5f5 q q)
        (w eb4g4bb4) (-q) (q c4eb4g4 q) (q g4bb4d5) (h c4eb4g4) (h bb4d5f5)
        (w f4a4c5 h) (-q) (q d4fs4a4) (q g4bb4d5 q q q) (h d4fs4a4 h)
        (-q) (q g4bb4d5) (h c4eb4g4) (h g4bb4d5) (h d4fs4a4 h) (h. g4bb4d5)
        (-q) (w g4bb4d5) (h d4f4a4 h) (-q) (q a4c5e5) (q a4c5e5) (q a4c5e5)
        (h c4eb4g4) (h c4eb4g4) (h g4bb4d5) (q g4bb4d5) (q g4bb4d5)
        (h d4f4a4) (h d4f4a4) (-q) (q d4f4a4 mf) (q a4c5e5 f) (q d4f4a4 p)
        (h. b4d5fs5 p) (q d4f4a4 mp) (q f4a4c5 q q q) (w e4g4b4) (h a4c5e5)
        (-h) (h d4fs4a4) (q d4fs4a4 q) (h g4b4d5) (h g4b4d5) (h e4g4b4)
        (q e4g4b4) (q e4g4b4) (h. c4e4g4) (q c4e4g4) (h f4a4c5)
        (q f4a4c5) (q bb4d5f5) (h. g4b4d5) (q c4e4g4) (h a4cs5e5)
        (h d4f4a4) (q g4b4d5) (q d4fs4a4) (w g4b4d5 p) (w g4b4d5 pp)))
(choralis chords
          :rotation 1
          :index 'v
          :interval 8
          :path '?
          :seed 826083
          :methods
          '(
            :sop ((t5 6) (t-4 (31 32) (3 1)) (t-12 32 2))
            :ten ((t4 (31 32) (3 1)))
            :bass ((t-12 (1 2 3)) (t-12 4 (1 2)))
            )
          )
(def-score choralis1
           (
            :key-signature 'chromatic
            :time-signature '(4 4)
            :flexible-clef nil
            :tempo 60
            :layout (choir-satb-layout 'v1 'v2 'v3 'v4)
            )
  
  (v1 :omn v1 :channel 1 :port "IAC1") 
  (v2 :omn v2 :channel 2)
  (v3 :omn v3 :channel 3)
  (v4 :omn v4 :channel 4)
  )
)

 

The error message:

> Error: The value #<score choralis1> is not of the expected type list.
> While executing: parse-chord-form-from-stream, in process Listener-1(7).
> Type cmd-. to abort, cmd-\ for a list of available restarts.
> Type :? for other options.
21 > 

 

  • Author

it shows me the same name, so that seems to be fine.

(17 . "IAC1") 

 

if I try this 

 

  (v1 :omn v1 :channel 1 :port 17) 
 

I get the same error.

 

 

 

  • Author

23 > (midi-destinations)

((0 . "Euphonix Port 1") (1 . "Euphonix Port 2") (2 . "Euphonix Port 3") (3 . "Euphonix Port 4") (4 . "RME ARC") (5 . "MIDI Expression WHITE") (6 . "Kenton Killamix Mini") (7 . "FaderPort") (8 . "Live Port") (9 . "User Port") (10 . "Console 1") (11 . "Keyboard") (12 . "MIDI OUT") (13 . "Port 1") (14 . "Port 2") (15 . "Port 3") (16 . "Port 4") (17 . "IAC1") (18 . "Bus 2") (19 . "Bus 3") (20 . "Bus 4") (21 . "Bus 5"))
23 > 

  • Author

same error unfortunately. already tried.

Also tried restarting opusmodus.

  • Author
Just now, Stephane Boussuge said:

The problem is not midi.

One moment.

 

Ok thanks for looking into it! 

Look s like you made some edit to the score that produces the error.

First I will start with the tutorials and the OMN language this will help you to move forwards. 🙂

 

Copy and past exactly that and Do a right click inside your score and select 'Evaluate & Notation & Audition"

 

(setf chords 
      '((w c4e4g4) (h g4b4d5) (h c4e4g4) (-h) (q e4g4b4 q)
        (q a4c5e5 mp leg q leg) (q g4b4d5 leg) (q f4a4c5) (w d4f4a4)
        (w a4cs5e5 mf) (-q) (q d4f4a4 q q) (q a4c5e5) (h c4e4g4) (h d4f4a4)
        (q d4fs4a4 leg q leg q) (h g4b4d5 h) (-q) (q bb4d5f5 q q)
        (w eb4g4bb4) (-q) (q c4eb4g4 q) (q g4bb4d5) (h c4eb4g4) (h bb4d5f5)
        (w f4a4c5 h) (-q) (q d4fs4a4) (q g4bb4d5 q q q) (h d4fs4a4 h)
        (-q) (q g4bb4d5) (h c4eb4g4) (h g4bb4d5) (h d4fs4a4 h) (h. g4bb4d5)
        (-q) (w g4bb4d5) (h d4f4a4 h) (-q) (q a4c5e5) (q a4c5e5) (q a4c5e5)
        (h c4eb4g4) (h c4eb4g4) (h g4bb4d5) (q g4bb4d5) (q g4bb4d5)
        (h d4f4a4) (h d4f4a4) (-q) (q d4f4a4 mf) (q a4c5e5 f) (q d4f4a4 p)
        (h. b4d5fs5 p) (q d4f4a4 mp) (q f4a4c5 q q q) (w e4g4b4) (h a4c5e5)
        (-h) (h d4fs4a4) (q d4fs4a4 q) (h g4b4d5) (h g4b4d5) (h e4g4b4)
        (q e4g4b4) (q e4g4b4) (h. c4e4g4) (q c4e4g4) (h f4a4c5)
        (q f4a4c5) (q bb4d5f5) (h. g4b4d5) (q c4e4g4) (h a4cs5e5)
        (h d4f4a4) (q g4b4d5) (q d4fs4a4) (w g4b4d5 p) (w g4b4d5 pp)))
(choralis chords
          :rotation 1
          :index 'v
          :interval 8
          :path '?
          :seed 826083
          :methods
          '(
            :sop ((t5 6) (t-4 (31 32) (3 1)) (t-12 32 2))
            :ten ((t4 (31 32) (3 1)))
            :bass ((t-12 (1 2 3)) (t-12 4 (1 2)))
            )
          )
(def-score choralis1
           (
            :key-signature 'chromatic
            :time-signature '(4 4)
            :flexible-clef nil
            :tempo 60
            :layout (choir-satb-layout 'v1 'v2 'v3 'v4)
            )
  
  (v1 :omn v1 :channel 1 :port 17) 
  (v2 :omn v2 :channel 2)
  (v3 :omn v3 :channel 3)
  (v4 :omn v4 :channel 4)
  )

SB.

CHORALIS script is not the usual OMN script. Only one chord can be used with addition lengths in a list.

Every function needs to be understand how it works and what are the options doing.

  • Author
10 minutes ago, opmo said:

Look s like you made some edit to the score that produces the error.

First I will start with the tutorials and the OMN language this will help you to move forwards. 🙂

 

 

my code I posted was a direct copy of the Choralis tutorial.

The only thing I tried changing was the output port.

 

When I paste your code you posted above I get the error we are discussing now.

 

I just made "apple + E" instead of "Apple + 1" which gave me a different error:

 

> Error: Odd length keyword list: (:omn v1 :channel 1 :port)
> While executing: ccl::check-keywords, in process Listener-1(7).
> Type cmd-. to abort, cmd-\ for a list of available restarts.
> Type :? for other options.
8 > 

 

 

 

 

 

6 minutes ago, opmo said:

CHORALIS script is not the usual OMN script. Only one chord can be used with addition lengths in a list.

Every function needs to be understand how it works and what are the options doing.

 

So let's start from scratch.

How can I audition the Choralis tutorial example through IAC?

  • Author
On 5/3/2020 at 8:31 PM, Stephane Boussuge said:

you don't evaluate correctly the file...

Do what I've said, just right click into the score and use the menu

 

If I do that it plays through the internal GM. 

 

Here is the output:

? 
? choralis, set: om rotation: 1 path: ? seed: 826083
? choir-satb-layout
make-instrument, name: v1
make-instrument, name: v2
make-instrument, name: v3
make-instrument, name: v4
def-score, name: choralis1
? gen-prob, count: 31 seed: 441896
rnd-sample, size: 31 section: nil exclude: nil seed: 857438
gen-prob, count: 31 seed: 435
gen-choralis
choralis, set: om rotation: nil path: nil seed: 653886
ps
? audition-musicxml-last-score
#<process play loop(10) [Active] #x302002A42ADD>
? 

 

I have preferences / audition set to IAC1.

Place the curser at the end of the expression and press return key. After you can call the last score with control-option-command-1 - this shortcut will play and display the last evaluated score.

 

Use port 0 in the DEF-SCORE:

(def-score choralis1
           (
            :key-signature 'chromatic
            :time-signature '(4 4)
            :flexible-clef nil
            :tempo 60
            :layout (choir-satb-layout 'v1 'v2 'v3 'v4)
            )
  
  (v1 :omn v1 :channel 1 :port 0) 
  (v2 :omn v2 :channel 2)
  (v3 :omn v3 :channel 3)
  (v4 :omn v4 :channel 4)
  )
  • Author
3 minutes ago, opmo said:

Place the curser at the end of the expression and press return key. After you can call the last score with control-option-command-1 - this shortcut will play and display the last evaluated score.

 

 

Yes - that does work - Thanks!!

 

The right click option on the same code auditions through internal.

 

What you wrote above works via IAC to Reaper.

 

Create an account or sign in to comment


Copyright © 2014-2026 Opusmodus™ Ltd. All rights reserved.
Product features, specifications, system requirements and availability are subject to change without notice.
Opusmodus, the Opusmodus logo, and other Opusmodus trademarks are either registered trademarks or trademarks of Opusmodus Ltd.
All other trademarks contained herein are the property of their respective owners.

Powered by Invision Community

Important Information

Terms of Use Privacy Policy

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.