-protected:
- /** Seek so that the next peek() will yield the next thing
- * (video/sound frame, subtitle etc.) at or after the requested
- * time. Pass accurate = true to try harder to get close to
- * the request.
+ boost::shared_ptr<VideoDecoder> video;
+ boost::shared_ptr<AudioDecoder> audio;
+ std::list<boost::shared_ptr<TextDecoder> > caption;
+
+ boost::shared_ptr<TextDecoder> only_caption () const;
+
+ /** Do some decoding and perhaps emit video, audio or subtitle data.
+ * @return true if this decoder will emit no more data unless a seek() happens.