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 returns the status on the notify channel when the movie completes.