1 This document contains some ideas that can be used to implement
2 interactivity in media content.
4 Possible application: DVD navigation, flash,...
9 - capture mouse clicks, mouse position, movement occuring on
10 a video display plugin
11 - transport these events to the interested plugins
12 - allow for automation (ie, the technique should work without
14 - the core doesn't care
19 - the videosink element captures mouse events
20 - event is encapsulated into a generic data structure
21 describing the event (need to define a caps?)
22 - event is signalled to the app?.
23 - event is sent upstream?
25 * videosink has to add something to the main_loop to
26 be able to grab events
28 * does the app need to know about the events?
30 - app captures mouse events
31 - no idea if that's possible
32 - app sends events upstream
34 Sending events to plugins
35 -------------------------
37 - are sent upstream using the event methods
41 - are sent to the appropriate plugin by the app
42 * app needs to know what plugins are interested,
46 automation will always work, the app can construct navigation
47 events and insert them into the pipeline.
49 What about flushing to minimize latency?
59 "application/x-gst-navigation"
67 "application/x-gst-navigation"
75 do we need a library for this?
77 do we use custom events and use the mime type to detect the
78 type? do we creat a GST_EVENT_NAVIGATION?
80 can we encapsulate all events into a GstCaps? I would think so
85 - we're basically defining an event model, I don't think there is
86 anything wrong with that.
87 - how is our coordinate system going to work? do
88 we use normalized values, 0-1000000 (or floats)
89 or real pixel values? real pixel values require scalers to adjust
90 the values (I don't think I like that)