[gst-devel] "bounties"/...
Andy Wingo
wingo at pobox.com
Tue Jul 20 06:48:01 CEST 2004
Hey Josh,
On Sat, 2004-07-17 at 08:10 -0700, Josh Green wrote:
> I can also see that a GValue event network might be very useful
> in GStreamer. How about the ability to connect a MIDI controller to a
> property of a pad or other object? Connect a GUI control to a property,
> etc.
Interesting. Benjamin has been musing about this recently, too. You
should pick his brain. This is sounding like a better idea now that he
made me think about it more.
GValue networks would be very MAX-like. It would be a cleaner solution
than the one I have now, and probably would be just as efficient: the
GValue could actually be in the buffer, and thus it's just one
allocation instead of two, and that could be from a pool.
For the record, connections between control pads in soundscrape do pass
around control data; it's a normal GstBuffer with length 1, and a
special flag set on it. (I currently use GST_BUFFER_KEY_FRAME, because
all the flags are used by core!). The data is actually a pointer to the
float value member of my GstPad derivative, so nothing is alloc'd.
> Would the mixer respond to MIDI events? How does MIDI enter into that
> description?
I think MIDI is a very old language which is poorly suited to general
control of parameters. That said, it's extremely widespread. Since I
don't use MIDI right now, if I were to build such a system I'd use Open
Sound Control (google for it if you're not familiar).
But as it is, in this case you'd have a Midi2Control element that would
map some parameter of a MIDI channel to SSControl data, which is the
thing I mentioned above.
See if you can work up a patch for the GValue networks :) It could
probably go in as a lib in gst-plugins. It's just a header file, really.
Cheers,
--
Andy Wingo <wingo at pobox.com>
http://ambient.2y.net/wingo/
More information about the gstreamer-devel
mailing list