denemo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Denemo-devel] Denemo and Jack


From: Jeremiah Benham
Subject: Re: [Denemo-devel] Denemo and Jack
Date: Sun, 17 May 2009 08:27:52 -0500
User-agent: Mutt/1.5.18 (2008-05-17)

On Sun, May 17, 2009 at 11:47:12AM +0100, Richard Shann wrote:
> Now I have looked into the code - it seems that everyone using JACK with
> MIDI input will be activating the code which calls portaudio output
> routines to emit a (denemo synthesized) note for each MIDI key pressed.
> This will happen regardless of the setting of prefs->playback
> immediately.
> On my machine, I actually hear these notes. There is no other code to
> output single notes  - nothing has been written to output a single note
> via JACK, only an entire MIDI file (used when playback is invoked).
> 
> Can anyone who is using JACK midi in say whether they hear synthesized
> sine wave pitches played on entering notes (the same as are heard when
> the Input->MIDI input has *not* been checked and notes are being entered
> from the pckeyboard)?

When compiled with jack, I don't hear these tones. I don't hear them when 
entering from pckeyboard either. 

> 
> It will be good to output MIDI notes via JACK rather than synthetic
> ones: It seems that the fundamental bit of code looks like this
> 
>                                 buffer = jack_midi_event_reserve(port_buf, i, 
> 3);
>                               buffer[2] = 64;         /* velocity */
>                               buffer[1] = note_frqs[j];
>                               buffer[0] = 0x90;       /* note on */
> 
> (taken from the examples). Jeremiah - were you planning to do something
> like this?

You can go ahead. I tried to create something but did not know how to create a 
timer to turn the note off.
The code is the similar for note off. It would look something like: 
                                
                                 buffer = jack_midi_event_reserve(port_buf, i, 
3);
                               buffer[2] = 0;         /* velocity */
                               buffer[1] = note_frqs[j];
                               buffer[0] = 0x80;       /* note off */

I am unsure about the velocity buffer[2]. Having it be anyting on a Note Off 
would probably be ok. 

Jeremiah


> 
> '''
> > This assumes all JACK preferences are unticked
> > ie 
> > start denemo Edit->preferences
> >       * Not Enable Jack Transport starts
> >       * Not Jack Transport starts stopped 
> >       * Not Enable jack at startup 
> >       * exit denemo
> >       * 
> I should have also mentioned the once-only setup in qjackctl of setting
> Setup->Midi Driver->"seq" rather than "none" which was set initially.
> 
> Richard
> 
> 
> 
> _______________________________________________
> Denemo-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/denemo-devel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]