Zachary Hall
0b2b6bc459
Some checks failed
Build / build-gentoo (push) Successful in 1m56s
Build / download-system-deps (push) Successful in 5m25s
Build / get-source-code (push) Successful in 12m33s
Build / build-deb (push) Failing after 5m56s
Build / build-appimage (push) Successful in 4m47s
Build / build-android (push) Failing after 3m11s
Build / build-windows (push) Has been cancelled
29 lines
808 B
C++
29 lines
808 B
C++
#pragma once
|
|
#include "playback_backend.hpp"
|
|
extern "C" {
|
|
#include "vgmstream.h"
|
|
}
|
|
#include <stddef.h>
|
|
#include <stdint.h>
|
|
#include "file_backend.hpp"
|
|
class VgmStreamBackend : public PlaybackBackend {
|
|
STREAMFILE *sf;
|
|
VGMSTREAM *vf;
|
|
File *file;
|
|
public:
|
|
inline std::string get_id() override {
|
|
return "vgmstream";
|
|
}
|
|
inline std::string get_name() override {
|
|
return "VGMStream";
|
|
}
|
|
void seek_samples(uint64_t position) override;
|
|
void load(const char *filename) override;
|
|
void switch_stream(int idx) override;
|
|
void cleanup() override;
|
|
int get_stream_idx() override;
|
|
size_t render(void *buf, size_t maxlen) override;
|
|
uint64_t get_position_samples() override;
|
|
void add_licenses() override;
|
|
inline ~VgmStreamBackend() override { }
|
|
};
|