< Back to IRCAM Forum

Repeated antescofo~: Allocate more audio buffers (5517 in use)

When I came to my computer this morning the Max console had printed this. Is it an error? A bug?

antescofo~: Allocate more audio buffers (5517 in use)
antescofo~: Allocate more audio buffers (5521 in use)
antescofo~: Allocate more audio buffers (5525 in use)
antescofo~: Allocate more audio buffers (5529 in use)
antescofo~: Allocate more audio buffers (5533 in use)
antescofo~: Allocate more audio buffers (5537 in use)
antescofo~: Allocate more audio buffers (5541 in use)
antescofo~: Allocate more audio buffers (5545 in use)
antescofo~: Allocate more audio buffers (5549 in use)
antescofo~: Allocate more audio buffers (5553 in use)
antescofo~: Allocate more audio buffers (5557 in use)
antescofo~: Allocate more audio buffers (5561 in use)
antescofo~: Allocate more audio buffers (5565 in use)
antescofo~: Allocate more audio buffers (5569 in use)

Hello c-harl-ie.

It is probably an error but not necessarily a serious one. This message means that the incoming audio has not been processed by the listening machine because lack of time.This audio is stored for later processing. It can be the case if they are some heavy computations (or badly behaved computations) somewhere in Max and few cpu resources remain available.

Is this error transient? That is, is antescofo continue running without more such messages? In this case, for some unknown reasons (some heavy processes running outside Max, glitches in audio processing, a temporary network failure when processing OSC, some objects in your patch that have a spurious burst of activity, etc.) the listening machine is temporary behind in its processing. If there is enough processing power, it will catch-up. During catch-up, some musical events may go unnoticed because the detection of the latest events (those that occurred most recently) are privileged.

These messages appear easily if you are in ā€œAudio Interrupt Modeā€ (you can check in Max menu Options/Audio Status). It is a bad idea to run in Audio Interrupt Mode. In this mode, all antescofo computations are done in the audio thread. This ensure a maximal timing accuracy, but it will exhaust the time resources allocated to the audio processing and when the listening module access its time slot, there may not be enough computing time left. You should use instead ā€œScheduler in overdriveā€ mode. In this mode, timing accuracy is a high priority but not at the expense of audio processing.

It can be also caused if you have a very small audio buffer (I/O Vector Size) or a very small Signal Vector Size (both accessible in the audio status window). Small buffer or small Signal Vector Size increase the temporal constraint pressure.

If these messages are reproducible, then try to lighten the patch to see if the problem comes for the load implied by some of the objects you use. The CPU load reported by Max is a good indication. However, it may happen that the processing power is sufficient but the deadlines are still not met due to tricky priorities between the activities of the objects in your patch.

The antescofo object itself is usually lightweight. The processing done within the listening machine is negligible (the functioning of the listening machine alone does not exceed 10% of the CPU processing power reported by Max on my machine). The load may come from the processing of the userā€™s actions in antescofo itself although I have seen this only in case of faulty computations (e.g., non terminating userā€™s function). If you send the ā€œinfoā€ message to antescofo, you will see on the console some statistics that can help to determine if the antescofo usersā€™s actions are too heavy (take a look at the number of messages sent, to the max length of scheduler triggered computations and to the number of scheduler weak-up: this last number must be normalized wrt to the running time but if it is very high, it means that you are trying to manage too much very small delay, i.e. less than 2ms).

Your message seems to imply that Max was running all night. Did this occurs in the context of a batch processing or a non-real-time processing? Antescofo is not meant to run in non-real-time mode (although it might work).

For the sake of completeness, check that you have a release version and not a debug version : the prints on the Max console at antescofo start-up or when you send the ā€œinfoā€ message to the object, should show ā€œRelease version, Blablablha, 1.0-xxx ā€¦ā€ and not ā€œdevelopment versionā€¦ā€. The debug version is at least 10x less efficient than the release version.

1 Like

In Max, this can happen if your Signal Vector Size is too small and consequently Antescofo does not manage to finish computation in-time. Finding the right SigVS is always a challenge in Max and depends largely on your computation power and everything inside your patch! Keeping it low (64) is generally not a good idea on consequent patches. You might want to keep it around 256.

Thanks @giavitto ā€” I had my computer on (sleeping) overnight but with Max stopped. I donā€™t know how this affects the ~antescofo operator in the patch though?

Confirmed release version: antescofo~: release master - 1.0-1, Compiled on Mar 5 2018 17:50:54

To answer your first question, Antescofo appears to continue running, but Iā€™ve had such a hard time getting it to follow reliably in the past few weeks that itā€™s hard to say if it was working ā€˜properlyā€™ or not.

Hereā€™s the full info output:

antescofo~: Verbosity set to 0.
antescofo~: Follower Mode is ON (was on).
antescofo~: setting global variance to 0 (was 0)
antescofo~: Antescofo~ - Score Following and Real-time Programming
antescofo~:                      by Arshia Cont, Philippe Cuvillier, Jose Echeveste, Jean-Louis Giavitto Ā© Antescofoā„¢ 2016-2018
antescofo~:                      release master - 1.0-1, Compiled on Mar  5 2018 17:50:54
antescofo~:           Follower is ON
antescofo~:           Analysis Parameters: nfft=4096, hop=512 (resolution 0.0Hz)
antescofo~:           Number of Harmonics used for spectral match: 10
antescofo~:           Gamma (Energy Correction): 0.000
antescofo~:           Tuned to 0.0Hz
antescofo~:           Pedal 1, Pedal Coefficient 0.000, Pedal Time (ms) 14439403097493127228086572627788896342812099556930892048722311937856193118221372248518281681174069920931931461622825570535372435079126051790396840464266040536268570340989112267311387540993639444768045531094056960000
antescofo~:           Temposmoothness 0.000
antescofo~:           Piano mode ON
antescofo~:           Prevent zigzag ON (forward only)
antescofo~:           Inference version is 2
antescofo~:           Occupancy model is 0.0000
antescofo~:           Decode window length is 21
antescofo~:           KL mode is left
antescofo~:           Current score: "/Volumes/Macintosh HD/Users/cw/Documents/Max 8/Projects/setlist/05-Vincennes-B.asco.txt" with 1752 events and 37 actions
antescofo~:           No preloaded scores.
antescofo~:           AscoGraph communication is OFF.
antescofo~:           Verbosity: 0

Iā€™m trying now to figure this out:

I posted the result of info but I donā€™t see number of messages sent or max length of scheduler triggered computations etc.

If I set verbosity 1 I get

antescofo~: setScore is called: old state chain size=0, new one size = 715, new score size=715
antescofo~: set_decode_window_length() old decodingwin_length = 21, new decodingwin_length = 21, score size =715
antescofo~: Score loaded succesfully with 714 events and 33 actions.

Perhaps related, perhaps not: Slightly concerned by `pedaltime` being reported as a massive int:

antescofo~: Pedal 1, Pedal Coefficient 0.000, Pedal Time (ms) 14439403097493127228086572627788896342812099556930892048722311937856193118221372248518281681174069920931931461622825570535372435079126051790396840464266040536268570340989112267311387540993639444768045531094056960000


Is this a display error or am I actually corrupting it somehow?

Thanks very much.

When your computer leave the sleep mode, the reactivation of the audio chain may experience some transient glitches; it may explain your problem. If the problem doesnā€™t reoccur, you donā€™t have to worry about it.

For the message counts: they appear only with a debug version (sorry, I had forgotten). Again, if you donā€™t experience it again, it is surely due to a transient problem form the audio chain.

For the incorrect pedal time: its a bug in the printing of floating point value. It will be corrected in an upcoming version.