- RESULT start();
- RESULT preroll();
- RESULT freeze(int cont);
- RESULT unfreeze();
- RESULT setSinglePictureMode(int when);
- RESULT setPictureSkipMode(int what);
- RESULT setFastForward(int frames_to_skip);
- RESULT setSlowMotion(int repeat);
- RESULT setZoom(int what);
+
+ /*
+ The following states exist:
+
+ - stop: data source closed, no playback
+ - pause: data source active, decoder paused
+ - play: data source active, decoder consuming
+ - decoder fast forward: data source linear, decoder drops frames
+ - trickmode, highspeed reverse: data source fast forwards / reverses, decoder just displays frames as fast as it can
+ - slow motion: decoder displays frames multiple times
+ */
+ enum {
+ stateStop,
+ statePause,
+ statePlay,
+ stateDecoderFastForward,
+ stateTrickmode,
+ stateSlowMotion
+ };
+ RESULT set(); /* just apply settings, keep state */
+ RESULT play(); /* -> play */
+ RESULT pause(); /* -> pause */
+ RESULT setFastForward(int frames_to_skip); /* -> decoder fast forward */
+ RESULT setSlowMotion(int repeat); /* -> slow motion **/
+ RESULT setTrickmode(); /* -> highspeed fast forward */
+