+ std::shared_ptr<const FFmpegContent> _ffmpeg_content;
+
+ uint8_t* _avio_buffer = nullptr;
+ int _avio_buffer_size = 4096;
+ AVIOContext* _avio_context = nullptr;
+ FileGroup _file_group;
+
+ AVFormatContext* _format_context = nullptr;
+ std::vector<AVCodecContext*> _codec_context;
+
+ /** AVFrame used for decoding video */
+ AVFrame* _video_frame = nullptr;
+ /** Index of video stream within AVFormatContext */
+ boost::optional<int> _video_stream;
+
+ AVFrame* audio_frame (std::shared_ptr<const FFmpegAudioStream> stream);