summaryrefslogtreecommitdiff
path: root/src/factories/naudio/v1/SequencePlayerV1.h
blob: 882b93381e03f31cbafd61680f949128ac1a35c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

#ifdef BUILD_UI

#include "ui/audio/SequenceDriver.h"

// Decodes a NAUDIO:V1:SAMPLE parse result to PCM16 at its natural rate.
// Resolves loop/book through the driver's parse-result index.
bool DecodeV1SampleToPcm(const ParseResultData& item, std::vector<int16_t>& pcm, int& rate);

// naudio v1 (SF64-era library) sequence driver. Fonts resolve through the
// game's seq-font table (extracted as the gSeqFontTable ARRAY asset).
class SequencePlayerV1 : public UI::SequenceDriver {
public:
    bool Render(const ParseResultData& item, int option, UI::RenderedAudio& out) override;
};

#endif // BUILD_UI