include "draw.m"; import Display, Image, Rect: Draw;
include "mpeg.m";
mpeg:= load Mpeg Mpeg->PATH;
Mpeg: module
{
PATH: con "/dis/lib/mpeg.dis";
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;
};
The notify argument 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 will return status on the notify channel when the movie completes.