[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: related question
Re: related question
Tue, 28 Jan 2003 13:44:46 -0600 (CST)
Thanks for the hints -- you are right on target with
the connection to lilypond. Eventual uses would of
course have a more general nature, but you assessed
the primary motivation correctly.
On Tue, 28 Jan 2003, David Boersma wrote:
> > I am interested in making a program that will treat keyboard input
> > in the usual fashion with one added twist: each key will have a unique
> > sound attached to it that will play when at the same time as the
> > corresponding letter appears on the screen. Do you have any idea if this
> > is possible, and how I might proceed?
> Hmm, let me try to relate this question with Lilypond. My guess is that
> you are writing a text editor for entering Lilypond music. Whenever a note
> value is entered you want to hear it, so that instead of listening to the
> midi proofreading output afterwards you can immediately hear which note
> you enter.
> If you are a fan of the command line and mean & lean text oriented
> programs, you might look at the curses/ncurses library for the input. That
> is an old but still frequently used library which enables you to do
> anything with text in a console or an xterm(-like) window, in particular
> you can assign actions to separate keystrokes. Or undoubtely you can hack
> Emacs syntax file for lilypond such that note values can be assigned to
> sound events. If you wish to go for a more graphical solution you'll
> probably look at the Qt and/or GTK/glib libraries which also have
> libfunctions for dealing with keyboard input.
> The actual sound part is a bit harder. I have no programming experience
> with sound but I'm afraid that this is dependent on platform and desktop
> environment: e.g. whether the sound output is governed by a sound manager
> like Arts or Esound, or that you can do direct OSS or ALSA calls. Maybe
> there is a clever midi playing library (or a cmdline program accepting
> stdin) which solves & hides all those issues.
> Well, I don't know, maybe I guessed the intention of your question
> completely wrong.
> Good luck,