Jack::NetMidiBuffer Class Reference

`#include <JackNetTool.h>`

## Public Member Functions

| NetMidiBuffer (session_params_t *params, uint32_t nports, char *net_buffer)
void | Reset ()
size_t | GetCycleSize ()
int | GetNumPackets (int data_sizen, int max_size)
void | SetBuffer (int index, JackMidiBuffer *buffer)
JackMidiBuffer * | GetBuffer (int index)
void | DisplayEvents ()
int | RenderFromJackPorts ()
void | RenderToJackPorts ()
void | RenderFromNetwork (int sub_cycle, size_t copy_size)
int | RenderToNetwork (int sub_cycle, size_t total_size)

## Detailed Description

Midi buffer and operations class

This class is a toolset to manipulate Midi buffers. A JackMidiBuffer has a fixed size, which is the same than an audio buffer size. An intermediate fixed size buffer allows to uninterleave midi data (from jack ports). But for a big majority of the process cycles, this buffer is filled less than 1%, Sending over a network 99% of useless data seems completely unappropriate. The idea is to count effective midi data, and then send the smallest packet we can. To do it, we use an intermediate buffer. We have two methods to convert data from jack ports to intermediate buffer, And two others to convert this intermediate buffer to a network buffer (header + payload data)

Definition at line 239 of file JackNetTool.h.

The documentation for this class was generated from the following files:

- JackNetTool.h
- JackNetTool.cpp