1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 06:47:34 +00:00

LibAudio: Allow the MP3 plugin to be constructed from a byte buffer

This commit is contained in:
Lucas CHOLLET 2022-10-13 15:55:21 +02:00 committed by Linus Groh
parent bb17ee8397
commit 754b129f4a
3 changed files with 14 additions and 2 deletions

View file

@ -11,6 +11,7 @@
#include <AK/MemoryStream.h>
#include <AK/Tuple.h>
#include <LibCore/InputBitStream.h>
#include <LibCore/MemoryStream.h>
#include <LibCore/Stream.h>
#include <LibDSP/MDCT.h>
@ -23,6 +24,7 @@ struct ScaleFactorBand;
class MP3LoaderPlugin : public LoaderPlugin {
public:
explicit MP3LoaderPlugin(StringView path);
explicit MP3LoaderPlugin(Bytes buffer);
virtual ~MP3LoaderPlugin() = default;
virtual MaybeLoaderError initialize() override;
@ -72,6 +74,7 @@ private:
u32 m_current_frame_read;
StringView m_path;
OwnPtr<Core::Stream::SeekableStream> m_stream;
Optional<Bytes const&> m_backing_memory;
OwnPtr<Core::Stream::BigEndianInputBitStream> m_bitstream;
DuplexMemoryStream m_bit_reservoir;
};