[manual index][section index]


mpeg - interface to the mpeg device driver


include "draw.m";
include "mpeg.m";
mpeg:= load Mpeg Mpeg->PATH;

play:     fn(d:       ref Display,
               w:       ref Image,
               dopaint: int,
               r:       Rect,
               file:    string,
               notify:  chan of string): string;
ctl:      fn(msg: string): int;
keycolor: fn(d: ref Display): ref Image;


Mpeg provides a primitive interface to the mpeg(3) device.

Play plays the specified MPEG file in rectangle r within window w on display d. The dopaint flag specifies whether, before playing the movie, to paint the rectangle with the chroma key colour of the device.

Notify is a channel upon which to receive errors and status. If notify is nil, play runs synchronously, returning the empty string ("") when the movie completes, or a description of any error. If notify is not nil, play spawns an asynchronous process to play the movie and returns the empty string immediately; the process returns the status on the notify channel when the movie completes.

Ctl writes msg, the string given as an argument, to the MPEG control interface /dev/mpegctl.

Keycolor uses the Display d to create a single-pixel, replicated off screen Image of colour Chroma (16r05).





MPEG(2 ) Rev:  Tue Mar 31 02:42:39 GMT 2015