/* * SSEQ Player - SDAT SWAV (Waveform/Sample) structure * By Naram Qashat (CyberBotX) [cyberbotx@cyberbotx.com] * * Nintendo DS Nitro Composer (SDAT) Specification document found at * http://www.feshrine.net/hacking/doc/nds-sdat.html */ #pragma once #include #include struct PseudoFile; struct SWAV { std::uint8_t waveType; std::uint8_t loop; std::uint16_t sampleRate; std::uint16_t time; std::uint32_t loopOffset; std::uint32_t nonLoopLength; std::vector data; const std::int16_t *dataptr; SWAV(); void Read(PseudoFile &file); void DecodeADPCM(const std::uint8_t *origData, std::uint32_t len); };