Recording user actions

Richard Miller wow at
Sun Feb 20 05:14:48 EST 2005

Thanks for this comprehensive suggestion. Sounds like it could work. 
I'll give it a try.

On Feb 20, 2005, at 12:02 AM, J. Landman Gay wrote:

> On 2/19/05 7:12 AM, Richard Miller wrote:
>> I've got a user on one computer watching a video from inside of a Rev 
>> application I've provided. They can draw objects (mostly circles and 
>> lines) on top of that video while it is playing back in slow motion. 
>> I need to record all of this drawing so it can be recreated / 
>> replayed at a later time on a different computer. Not only does the 
>> motion / drawing need to be recorded, but also the specific times at 
>> which the drawing of the different objects occurred. I suppose, in 
>> some sense, this is an animation.
>> The entire "marking up" session will not exceed 3-5 minutes.
>> How do I record this activity AND keep the file size down as small as 
>> possible (as it needs to be quickly transmitted from the user who did 
>> the marking up to the user that needs to view it)?
> You could try writing a mousemove handler (or a "send in <time>" 
> handler) that repeatedly checks the current tool, and if it is a 
> drawing tool then have it store the mouse location every so many 
> milliseconds, along with the currentTime of the QT movie, the current 
> tool, and whatever else you need (pen color, linewidth, etc.) If the 
> user changes drawing tools or creates a new object, add a blank line 
> to the list you are creating. The list could be stored in a custom 
> property.
> Then for playback, you'd create a single polygon object. Read the list 
> one line at a time and compare the movie time stored there to the 
> currentTime of the movie that is playing. If the times match, set the 
> points of the polygon to the set of recorded points that have been 
> accumulated up to then.
> You can use a single polygon object to simulate any number of drawn 
> objects on screen. An empty line in the object's points list will 
> cause the pen to "lift" and then set down again, effectively creating 
> a new visual object. That's why your recorded list of points should 
> include a blank line each time the original user changes tools or 
> creates a new object.
> -- 
> Jacqueline Landman Gay         |     jacque at
> HyperActive Software           |
> _______________________________________________
> use-revolution mailing list
> use-revolution at

More information about the use-livecode mailing list