add sample rate parameter in raw sample import

This commit is contained in:
tildearrow 2024-01-16 21:12:34 -05:00
parent ab3624789b
commit 928bfd2afd
4 changed files with 16 additions and 6 deletions

View file

@ -954,7 +954,7 @@ class DivEngine {
DivSample* sampleFromFile(const char* path);
// get raw sample
DivSample* sampleFromFileRaw(const char* path, DivSampleDepth depth, int channels, bool bigEndian, bool unsign, bool swapNibbles);
DivSample* sampleFromFileRaw(const char* path, DivSampleDepth depth, int channels, bool bigEndian, bool unsign, bool swapNibbles, int rate);
// delete sample
void delSample(int index);

View file

@ -302,7 +302,7 @@ DivSample* DivEngine::sampleFromFile(const char* path) {
#endif
}
DivSample* DivEngine::sampleFromFileRaw(const char* path, DivSampleDepth depth, int channels, bool bigEndian, bool unsign, bool swapNibbles) {
DivSample* DivEngine::sampleFromFileRaw(const char* path, DivSampleDepth depth, int channels, bool bigEndian, bool unsign, bool swapNibbles, int rate) {
if (song.sample.size()>=256) {
lastError="too many samples!";
return NULL;
@ -420,8 +420,8 @@ DivSample* DivEngine::sampleFromFileRaw(const char* path, DivSampleDepth depth,
return NULL;
}
sample->rate=32000;
sample->centerRate=32000;
sample->rate=rate;
sample->centerRate=rate;
sample->depth=depth;
sample->init(samples);