+ // Returns true if there was an error.
+ bool process_queued_commands(AVFormatContext *format_ctx, const std::string &pathname, timespec last_modified, bool *rewound);
+
+ // Returns nullptr if no frame was decoded (e.g. EOF).
+ AVFrameWithDeleter decode_frame(AVFormatContext *format_ctx, AVCodecContext *codec_ctx, const std::string &pathname, int video_stream_index, int audio_stream_index, bool *error);
+
+ bmusb::VideoFormat construct_video_format(const AVFrame *frame, AVRational video_timebase);
+ bmusb::FrameAllocator::Frame make_video_frame(const AVFrame *frame, const std::string &pathname, bool *error);
+