This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs. |
Start a multimedia graph
int32_t MmStart(void *element, MmTime_t mt);
mmedia
This function starts a graph's filters, or an individual filter if element is a filter, starting at the time mt (in microseconds). The element argument is type void * to prevent compiler errors when you pass different structures as this parameter.
If element is a graph, the function calls all the graph's filters' MediaControl->Start() functions, with the media time mt. It then calls all the filters' MediaControl->Resume() function, since filters are started in a paused state.
You should call MmStart() only once for a graph. If at some point you need to change one of the filters, perform the following steps:
If you want to start the graph at a point other than the beginning of the stream (0), you should either seek to a position in the graph, and then start at that position, or start the graph at 0 and then seek to the position:
Example 1:
MmStart(graph, 0); MmSeek(graph, t);
Example 2:
if(!MmSeek(graph, t)) MmStart(graph, t)
// Assuming the graph is created, and whatever filters // were needed are added: MmStart(graph,0);
Neutrino
Safety: | |
---|---|
Interrupt handler | No |
Signal handler | No |
Thread | No |
MmPause(), MmResume(), MmStop()