Re: [LAD] making sense of Jack MIDI; or, is this an appropriate use for Jack?

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: M Donalies <ingeniousnebbish@...>
Cc: <linux-audio-dev@...>
Date: Friday, February 15, 2013 - 6:20 pm

--14dae9340e5b3f113404d5c76cdb
Content-Type: text/plain; charset=UTF-8

On Fri, Feb 15, 2013 at 10:33 AM, M Donalies wrote:

> On Friday 15 February 2013 11:12:04 Paul Davis wrote:

It means that you have to do that tricky 'sequencing' part, which consists
of scheduling (MIDI) events and only placing them onto the JACK buffer at
the appropriate instant. ALSA MIDI does this for you, as well as providing
a nice API for generating the MIDI events. That's not the trickiest part
though, the real mess begins when you want to deal with the JACK
Transport/Timebase API to follow or generate tempo changes.

--14dae9340e5b3f113404d5c76cdb
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Fri, Feb 15, 2013 at 10:33 AM, M Dona=
lies <ingeniousnebbish@cox.net> wrote:
On Friday 15 February 2013 11:12:04 Paul Davis wrote:

> between ports.

br>

Does that mean:
Don't even think about it unless you're a systems programmer becaus=
e there's
1000 low-level subtleties involved.

Or is it just the tedium of turning all the midi events into binary and mak=
ing
sure all the events are in order to be processed by the target (fluidsynth =
or
soundcard or whatever)?

I can handle the latter, but certainly not the former. My idiot-level
algorithm is kind of like writing realtime midi to a port and looks somethi=
ng
like:
1) My app has a buffer of the binary midi data. Jack is running and I'v=
e
created a midi out port.

2) Jack let's me know what time it is through a callback.

3) To play, I record the current time as my starting time. Then write some<=
br>
events to the port.

4) Wait for another callback and write more data.

Ok, you can stop banging your head on or desk, exclaiming "How does th=
is idiot
even know how to post a message to the list!" I have the feeling this =
is the
equivalent of the car question, "Now tell me again, why do I have to u=
se this
icky motor oil stuff? Pouring water in the reservoir fills it just the same=
and
it's far less messy."
<=
br>It means that you have to do that tricky 'sequencing' part, whic=
h consists of scheduling (MIDI) events and only placing them onto the JACK =
buffer at the appropriate instant. ALSA MIDI does this for you, as well as =
providing a nice API for generating the MIDI events. That's not the tri=
ckiest part though, the real mess begins when you want to deal with the JAC=
K Transport/Timebase API to follow or generate tempo changes.
=C2=A0

--14dae9340e5b3f113404d5c76cdb--

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., Pedro Lopez-Cabanillas, (Fri Feb 15, 5:53 pm)
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., Pedro Lopez-Cabanillas, (Sat Feb 16, 12:16 pm)
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., Pedro Lopez-Cabanillas, (Sat Feb 16, 5:22 pm)
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., Pedro Lopez-Cabanillas, (Sat Feb 16, 9:39 am)
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., Pedro Lopez-Cabanillas, (Sat Feb 16, 10:03 am)
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., Pedro Lopez-Cabanillas, (Sat Feb 16, 11:03 am)
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., Pedro Lopez-Cabanillas, (Fri Feb 15, 7:15 pm)
Re: [LAD] making sense of Jack MIDI; or, is this an appropri..., J. Liles, (Fri Feb 15, 6:20 pm)