denemo-devel
[Top][All Lists]
Advanced

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

Re: [Denemo-devel] Midi-status


From: Nils Gey
Subject: Re: [Denemo-devel] Midi-status
Date: Fri, 20 Mar 2009 14:06:06 +0100

Addition:
I just made a synchronus recording of a Denemo playback in Ardour.
So I connected Denemo -> Fluidsynth and Fluidsynth(audio)->Ardour and switched 
Ardour to "listen to jack-transport".

Armed an Ardour-track with "record", hit play in Denemo and a sync-recording 
will happen.

Denemos Stop-button stopped the Jacktransport as expected, but did not send a 
real note-off. 

Could the stop-button get some "Midi-Panic" functions?

Nils


On Fri, 20 Mar 2009 13:51:56 +0100
Nils Gey <address@hidden> wrote:

> I just tested the new JACK-midi preferences. I started without JACK running 
> and Denemo showed up, which is an improvement. 
> 
> The button to start/restart Denemo Jack client then worked fine. 
> I loaded a Denemo file with 4 voices and connected them to Fluidsynth and it 
> was all fine.
> 
> Great work, Jeremiah.
> 
> Nils 
> 
> On Wed, 18 Mar 2009 18:31:03 +0300
> alex stone <address@hidden> wrote:
> 
> > Even better.
> > 
> > And my apologies. I tend to think only linux these days, and rarely notice
> > if apps are intended for multi architecture.
> > Fluidsynth sounds good too, and it stills achieves the same thing in the
> > end.
> > 
> > One internal sampler to rule them all, and a single defined midi out
> > framework, for external devices.
> > 
> > Alex.
> > 
> > On Wed, Mar 18, 2009 at 6:04 PM, Nils Gey <address@hidden> wrote:
> > 
> > > I find it comfortable to give away a complete package for simple tasks.
> > > Complete means monolithic in this case.
> > > And Denemo is aimed for Windows and MacOS (and others), too.
> > >
> > > But this is not a contra-"only JACK". It is quite possible to integrate
> > > libfluidsynth and a free, light .sf2 GM-Bank into Denemo so it ships with
> > > its own internal, always-on, sampler.
> > > And because its fluidsynth (or whatever is chosen) its already a
> > > JACK-Audio-lib, that means no work for Denemos own audio-out. Just 
> > > internal
> > > connected midi.
> > >
> > > This sampler can be used easily to give out audio-feedback for midi-in and
> > > other tasks.
> > >
> > > Nils
> > >
> > >
> > >
> > >
> > > On Wed, 18 Mar 2009 17:41:06 +0300
> > > alex stone <address@hidden> wrote:
> > >
> > > > Seconded.
> > > >
> > > > Jack's designed to do all the hard work, and having a single, simple,
> > > > reliable framework, using jack's powerful capabilities, seems like 
> > > > common
> > > > sense to me.
> > > >
> > > > A suggestion.
> > > >
> > > > Define the default midi out as jack multiple ports, (user defined in a
> > > staff
> > > > properties menu)
> > > > Remove any audio playback code, and use the multiport midi out to allow
> > > > other apps, like LS, Qsynth, etc, all plugged into Jack, as the audio
> > > heavy
> > > > lifters, to take the strain, so to speak.
> > > >
> > > > We have all these terrific apps now, working really well, and designed 
> > > > to
> > > > perform specific tasks. Seems like re-inventing the wheel, to try and do
> > > > their jobs too.
> > > >
> > > > Just my view, and importantly, from the perspective of continued
> > > enthusiasm
> > > > for the Denemo project,
> > > > a desire to see it really fly......
> > > >
> > > > Alex.
> > > >
> > > >
> > > > On Wed, Mar 18, 2009 at 5:21 PM, Nils Gey <address@hidden> wrote:
> > > >
> > > > > Yesterday I solved the complete Issue.
> > > > >
> > > > > My system had a fallback-chain (by ALSA):
> > > > > Jack->alsa->PC-speaker(!!)
> > > > >
> > > > > So when JACK blocks my ALSA /dev/dsp or /dev/audio it begins to look
> > > whats
> > > > > possible, and the only free thing was the pcspeaker. So it was not my
> > > > > harddrive at all, but this was so close to each other and the
> > > audio-noise
> > > > > really sounded like a dying harddrive.
> > > > >
> > > > > In the end its still the topic of having (too) many audio-backends in
> > > one
> > > > > application while JACK could cover them all alone.
> > > > >
> > > > > Nils
> > > > >
> > > > >
> > > > > On Wed, 18 Mar 2009 09:08:54 -0500
> > > > > Jeremiah Benham <address@hidden> wrote:
> > > > >
> > > > > > On Thu, 2009-03-12 at 22:11 +0100, Nils Gey wrote:
> > > > > > > I think I've got it.
> > > > > > >
> > > > > > > The audio-feedback is connected to it.
> > > > > > >
> > > > > > > Denemo now requires JACK. If jackd is not present Denemo starts it
> > > > > itself (I recommend to deactivate this and instead give a warning and
> > > only
> > > > > leave non-audio/midi features avaible).
> > > > > > >
> > > > > > > The nature of JACK is that it does not allow any use of the
> > > > > audio-driver while its running.
> > > > > > >
> > > > > > > But Denemo tries to use /dev/dsp /dev/sequencer which is blocked 
> > > > > > > by
> > > > > JACK. If that happens my system goes crazy (instead of a crash).
> > > > > >
> > > > > > I assume regular denemo does not cause this noise? And if you 
> > > > > > deleted
> > > > > > the /dev/dsp and /dev/sequencer and turned off immediate playback
> > > does
> > > > > > the noise stop?
> > > > > >
> > > > > > Jeremiah
> > > > > >
> > > > > >
> > > > > > > And now I remember: In Debian it crashed at this moment. Now here
> > > in
> > > > > Arch it does not crash but produce these weird sounds.
> > > > > > >
> > > > > > > I don't know how to deactiate this crash. Unchecking the Audio
> > > feedback
> > > > > and deleting the two values /dev/midi and /dev/sequencer is not the
> > > > > solution.
> > > > > > >
> > > > > > > I reommend to get rid of support for people without jack. Not for
> > > > > complete Denemo, but for the audio-part. Then --enable-jack can be the
> > > > > standard.
> > > > > > >
> > > > > > > It will mean greater compability and better 
> > > > > > > cross-platform-support,
> > > > > too. And Denemo will loose dependencies like portaudio and can
> > > completly
> > > > > rely on JACK.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Nils
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > On Thu, 12 Mar 2009 11:32:42 -0500
> > > > > > > Jeremiah Benham <address@hidden> wrote:
> > > > > > >
> > > > > > > > On Thu, 2009-03-12 at 17:28 +0100, Nils Gey wrote:
> > > > > > > > > I totally forgot:
> > > > > > > > >
> > > > > > > > > Midi-In *is* working, but the strange hardware-noises are 
> > > > > > > > > still
> > > > > there. So I can put notes in via midi!
> > > > > > > > >
> > > > > > > > > I don't know if I should get an audio-response and what is
> > > needed
> > > > > for that. Maybe thats the reason.
> > > > > > > > > Can I deactivate the audio-response somehow?
> > > > > > > >
> > > > > > > > Try turning off plyaback entered notes immediately in
> > > preferences.
> > > > > See
> > > > > > > > if that fixes it.
> > > > > > > >
> > > > > > > > >
> > > > > > > > > And why are there still the two fields in Denemo options with
> > > > > /dev/sequencer and /dev/midi. Isn't this legacy now?
> > > > > > > >
> > > > > > > > Thats for people who don't compile with --enable-jack
> > > > > > > >
> > > > > > > > Jeremiah
> > > > > > > >
> > > > > > > > > Nils
> > > > > > > > >
> > > > > > > > > On Thu, 12 Mar 2009 15:10:24 +0100
> > > > > > > > > Nils Gey <address@hidden> wrote:
> > > > > > > > >
> > > > > > > > > > First report on midi. I just write what I noticed. I am sure
> > > you
> > > > > probably know most of these already.
> > > > > > > > > >
> > > > > > > > > > I compiled Denemo with --enable-jack. Latest git.
> > > > > > > > > >
> > > > > > > > > > Then I start my jackd, after that Denemo.
> > > > > > > > > > Denemo shows up as input and output client. The output has
> > > voice
> > > > > 1, which is the first staff.
> > > > > > > > > >
> > > > > > > > > > Creating new staffs, with a custom name "test", shows a new
> > > port
> > > > > in QJackCtls
> > > > > > > > > > [+]Denemo
> > > > > > > > > >
> > > > > > > > > > Renaming of the staff has no effect. It stays the the old 
> > > > > > > > > > one
> > > for
> > > > > jack.
> > > > > > > > > >
> > > > > > > > > > With these two staffs, "voice1" and "test", deleting the
> > > first
> > > > > one results in the deletion of the qjackctl port and leaves only
> > > "test",
> > > > > which is fine. Creating a new staff (create new staff above) does not
> > > create
> > > > > a new jack-port.
> > > > > > > > > >
> > > > > > > > > > Creating a new staff with an existing name ("voice1") does
> > > create
> > > > > the staff but not a new jack-port.
> > > > > > > > > >
> > > > > > > > > > I loaded an existing .denemo file with four voices and they
> > > show
> > > > > up correctly as four ports.
> > > > > > > > > >
> > > > > > > > > > Quitting Denemo leaves no traces. Everything is fine.
> > > > > > > > > >
> > > > > > > > > > Now to midi-in:
> > > > > > > > > > For the midi-in testing I used the software jack-keyboard to
> > > > > avoid any hardware and/or alsa-bridge related errors.
> > > > > > > > > >
> > > > > > > > > > I remember I got it working once, a few weeks ago, but today
> > > > > there was no success at all:
> > > > > > > > > >
> > > > > > > > > > Like I said Denemo creates an in-port "denemo" on startup. 
> > > > > > > > > > If
> > > you
> > > > > connect jack-keyboard to it and send notes nothing happens in Denemo. 
> > > > > I
> > > know
> > > > > this is an expected behaviour, but in fact this is not the right
> > > behaviour
> > > > > and confusing. If there is already a midi-in port I (as an uninformed
> > > user)
> > > > > don't see why its not possible. See the suggestions below for that.
> > > > > > > > > >
> > > > > > > > > > So I choose Input->midi input from the menu. The dialog pops
> > > up
> > > > > (which is sooo ugly with my WMII window manager because its stretched
> > > over
> > > > > the whole screen).
> > > > > > > > > > In QJackCtl I now see a second in-port named denemo-01. I am
> > > sure
> > > > > this is a known bug.
> > > > > > > > > > If I connect to the new "denemo-01" it automatically 
> > > > > > > > > > switches
> > > to
> > > > > the first "denemo" port. So connecting to denemo-01 is not possible at
> > > all.
> > > > > > > > > >
> > > > > > > > > > Now comes the freaking part. To avoid confusion: I am some
> > > 80%
> > > > > sure this is related to my system and not to Denemo. I encountered
> > > something
> > > > > like this already with the Video-Lan-Player but I don't know what it 
> > > > > is
> > > > > right now.
> > > > > > > > > >
> > > > > > > > > > Status: Midi-in is now activated, I see two denemo-in ports
> > > in
> > > > > jack and have connected the jack-keyboard to the "denemo" in-port 
> > > > > (btw.
> > > same
> > > > > results with my hardware-keyboard via alsa-bridge).
> > > > > > > > > >
> > > > > > > > > > If I send a note now my systems totally freaks out and my
> > > > > hardware(!) makes constant freaking noises which changes if I send
> > > another
> > > > > midi-note. It sounds a bit like a dial-up modem and it sounds very 
> > > > > very
> > > > > unhealthy.
> > > > > > > > > > To be clear: I don't mean my audio-hardware! And its not the
> > > > > pc-speaker. It sounds like scratching or somethings going wild. Maybe
> > > > > harddrive, maybe some fan... I don't know.
> > > > > > > > > >
> > > > > > > > > > The source of this is Denemo. The sounds are going on until 
> > > > > > > > > > I
> > > > > close Denemo. Cutting jack-connections, stopping jack or other 
> > > > > software
> > > has
> > > > > now effect.
> > > > > > > > > >
> > > > > > > > > > Like I said I believe this is only my system, but there is
> > > some
> > > > > error nontheless. Other software works fine with midi-in/out and
> > > routing.
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Suggestions:
> > > > > > > > > >
> > > > > > > > > > 1) Make --enable-jack default on. Give a warning to the
> > > console
> > > > > if jackd is not started, but let Denemo run. Its a common thing to
> > > restart
> > > > > the client(Denemo) if you want to have jack in the end. I never saw a
> > > > > "reconnect on the fly" function in any Jack-app that works flawless
> > > (like
> > > > > starting the software anew)
> > > > > > > > > >
> > > > > > > > > > 2) Prevent staffs with the same name at all. Every staff,
> > > which
> > > > > means "jack-port" here, should have a unique name. This should have
> > > nothing
> > > > > todo with lilypond staff names. The printout-names should be allowed 
> > > > > to
> > > be
> > > > > different from the internal/jack-name and should be allowed to be
> > > > > non-unique.
> > > > > > > > > >
> > > > > > > > > > 3) The midi-in behaviour is not optimal. I expect sending
> > > > > midi-notes to Denemo as a standard task. So I suggest to get rid of 
> > > > > the
> > > > > midi-in dialog (enharmonic range etc.) as a popup and leave it as a
> > > > > preferences tab.
> > > > > > > > > > In case of enharmonic and key-related behaviour it would be
> > > > > better to look at the actuall staff-keysigns.
> > > > > > > > > >
> > > > > > > > > > 4) Also I suggest to open the Midi-in port right from the
> > > start.
> > > > > Maybe use lash indepently from a lash-project (don't know if thats
> > > possible)
> > > > > to remember the last midi-in connection and try to recreate it. Of it
> > > was
> > > > > the midi-keyboard its likely that its still there. Then you can do an
> > > > > autoconnect, instructed by Denemo.
> > > > > > > > > >
> > > > > > > > > > 5) This creates a situation where Denemo constantly listens
> > > to
> > > > > midi-in, which is a good solution in my eyes. To prevent accidental 
> > > > > use
> > > of
> > > > > the midi-in feature (like putting a dish or some heavy notation on the
> > > > > keyboard, which is a real live situation) I suggest a switch in Denemo
> > > which
> > > > > reroutes all midi-in signals to /dev/null, but which does not cut any
> > > > > connections. Its just a bypass.
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > So far...
> > > > > > > > > >
> > > > > > > > > > Nils
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > _______________________________________________
> > > > > > > > > > Denemo-devel mailing list
> > > > > > > > > > address@hidden
> > > > > > > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Nils Gey <address@hidden>
> > > > >
> > > > >
> > > > > _______________________________________________
> > > > > Denemo-devel mailing list
> > > > > address@hidden
> > > > > http://lists.gnu.org/mailman/listinfo/denemo-devel
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Parchment Studios (It started as a joke...)
> > > >
> > >
> > >
> > > --
> > > Nils Gey <address@hidden>
> > >
> > >
> > > _______________________________________________
> > > Denemo-devel mailing list
> > > address@hidden
> > > http://lists.gnu.org/mailman/listinfo/denemo-devel
> > >
> > 
> > 
> > 
> > -- 
> > Parchment Studios (It started as a joke...)
> > 
> 
> 
> -- 
> Nils Gey <address@hidden>
> 
> 
> _______________________________________________
> Denemo-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/denemo-devel
> 


-- 
Nils Gey <address@hidden>




reply via email to

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