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: Wed, 18 Mar 2009 16:04:43 +0100

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>




reply via email to

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