< Back to IRCAM Forum

Antescofo multiples input

Hi,

I would like to use both pitch recognition and internal midi data to simultaneously drive the event following in antescofo. I have written both the “kl” and “midi” arguments into the object and an extra inlet appeared which I assume to be the midi input. However, I am unable to get the object to recognize the midi information. Are there messages or extra info I need to send? Also, is it possible to use both of these functions simultaneously, and then use just the pitch, and then just midi, depending on the needs of the score?

Thanks!

José


  
----------begin_max5_patcher----------
  
822.3ocyX1zbaBCDF9r8uBML8nqGIABa2Ks4POzCscl1LSOzISFYPFqTPhAI
  
RSZlze6EIYbHePhoEn9B1Hurr5gce20byzIdqkWwTdf2.9NXxjalNYhcIyBS
  
1c9DuL5UQoTk0LuHYVFSn8l49MM6Jsc8O84SeOHDBfywDvGYTUYACUa0FoPK
  
nYLqkmTvoo6+khj0lUgyg6VIufoptATMWJNufEocQGgPpLA3iPyIyrlaN.Nq
  
wcPw+k8Nfv24LpNZKWjzvQ9KQlKFux5HTPf8rl9RTlwEoLscCi1sHO1F7x0W
  
758aqJCkk5ZKglEuc5TygYGHMyXJEMg8HZZ.Y8htag95blaC34cuccKb8v4Q
  
fED3PKS8s3.srMbfeLN7W7z7.0i7Pok4iDOv6xO1wC+tyCR+wi1p191VpFrQ
  
Vj49.n2x.6XGHVB9.PvXwus9xR4BVjrTnaFwcolr6UWjlUWFHdvUWXR+Ud0F
  
9x3wb.WjWp8FVZrvl9fwVsqPbmkZvACOLnkwboiF1bobd09.TsIjIBtQEdXY
  
DNXkAKKr4MnEK5Ni76OFIX+rxkOFQwQ+FfZU.RwSDUvnWkgPqHlJHGVB9KnB
  
b3UkySoWOVpxA3lco5tpLZ0vyiPHbz5ZiCs7vor3un67fLBcsK4WxAuBMZ4H
  
1pjk1jCBp6HAi5OlnkIIorV24bSy3ydw8BYYcgeWmQEteprbZQEX0rhyYB55
  
TaD.G7m8e8zS9xo+SO3WmDISkEtq.NOXV8gkUOWaaze3ypoBscfQN4ChqnIr
  
CYHX7vWzTvRkzXUjrf0a0Mqd1xlvPWqWatVnSZkzkAdgiAUnwikLRUsGYOO7
  
IcVGoG6zz17HBMqJCYi72f24BEvORAloZamQy.dapxrzluntNasLsw2FhQW7
  
8gtToWP85IHXK8lBZPPqur+ylG75KrAjY86iUkrrHpFF6UHA2ESwLklKru1g
  
lVY5Izvps73XlnoDZLWYTUiaejyCMhLir8hADYzBmUGUQi+wEbdXdw+63wzY
  
5XBOGYIOjiK5bngCZbnyhALbb5zz77KYEpctzFIUM5tvMcW3L6obg6TqGqZ3
  
eIu19kSMd61o+A.RuVSL
  
-----------end_max5_patcher-----------
  

José,

Your patch is completely correct. In your score, the recognition engine by default uses the first inlet. You can tell the system (in the score) to switch between inlets as in the following example:

BPM 60
NOTE 60 1.0 one
@inlet midi
NOTE 61 1.0 two
@inlet kl
NOTE 62 1.0 three

In this example, the score starts by default on the first inlet ('kl'), it uses the inlet named 'midi' for the event labeled 'two', and back to 'kl' for event labeled 'three'.

NOTE: This scheme actually works but you'll have difficulties combining Audio & MIDI! This is mainly because the probability of observing a pitch in Audio is never 100% but in MIDI it's always 100% if played correctly! This often causes problems in advancing from a MIDI region to Audio region. We should still work on this to make it robust.

I have some ideas on how to make this work. So when you have an example, send it to me to have a look and I can correct current problems and make it work for everyone for the next major release. It's perfect timing since I'm working on combined symbolic+audio following right now.

Hello Arshia,

Thanks for your response!
Unfortunately doesn’t work on the latest version of antescofo. I have this errors messages in the Max window. It’s work only with one message @MIDI (uppercase).

antescofo~ - Stopped!
error: Parser error: syntax error, unexpected id, expecting (
error: file ‘/Volumes/AuDiO-750Go/Evan/antescofo/test-midinotes.txt’ line 3, characters 11-11
antescofo~ - Abort loading score file ‘/Volumes/AuDiO-750Go/Evan/antescofo/test-midinotes.txt’

This is my simple score test:

BPM 50

@inlet MIDI

NOTE 60 0.25 intro-m1
toto toto1

NOTE 61 0.25 intro-m2
toto toto2

NOTE 45 0.25 intro-m3
toto toto3

NOTE 55 0.25 intro-m
toto toto4

And last question… I want that antescofo not jump when I send a note different from that expected. for example in my score I start suivi On and if I send the note 61 its jump to 61 and send “toto1” and “toto2”, that is a normal behavior, but I want that antescofo not jump and just wait for midi note 60 and even if I send 61 continue to wait for note 60. It’s possible? There is some message to do this?

Thanks,

José

José, Your first issue was a bug which was corrected by Jean-Louis @giavitto . Thanks… it’ll be in the next release!

Regarding your JUMP question: You can use the @hook attribute. Example:

BPM 50

@inlet MIDI

NOTE 60 0.25 intro-m1 @hook

toto toto1

NOTE 61 0.25 intro-m2

toto toto2

NOTE 45 0.25 intro-m3

toto toto3

NOTE 55 0.25 intro-m

toto toto4

By putting @hook on event labeled as ‘intro-m1’, you are telling Antescofo that this event should NOT be missed and you should pass over it!

Test this and let us know… .