/* * Copyright (c) 2024, Jelle Raaijmakers * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include extern "C" { #include #include } namespace Media::FFmpeg { class FFmpegIOContext { public: explicit FFmpegIOContext(AVIOContext*); ~FFmpegIOContext(); static ErrorOr> create(AK::SeekableStream& stream); AVIOContext* avio_context() const { return m_avio_context; } private: AVIOContext* m_avio_context { nullptr }; }; }