The tone definition ("voice") includes waveform data. Play notes using that tone, and the waveform will play.
maybe i'll do that, it seems easier than playing pcms, i got the sega sound tools working, i can try.
actually, i've merged all sfx into one single file.
if (size_write_total > st->pcm_bsize) {
// _VTV_PRINTF("\n\nmissed");
st->cnt_load_miss++;
// VTV_PRINTF((VTV_s, "P:LMis %d\n buf%X < writ%X\n",
// st->cnt_load_miss, st->pcm_bsize, size_write_total));
// VTV_PRINTF((VTV_s, " r%X w%X\n",
// (st)->ring_read_offset, (st)->ring_write_offset));
}
The sound driver includes commands for triggering sequences and for receiving direct MIDI messages. A sequence is basically a MIDI message stream, converted into a more compact format.
[/QUOTE]
yes but i heard that vgm/wav conversion to midi will not give a good result.
However if you're not using sequenced music, there's no real point in using the Sega driver either. And if you do want to use it, you run into the usual tool problems.
what's the alternative of the sega driver to play just pcms/wav??
my latest problem is now there, i started to debug the pcm lib, when i loose pcm streaming, i reach this point :
if (size_write_total > st->pcm_bsize) {
// _VTV_PRINTF("\n\nmissed");
st->cnt_load_miss++;
// VTV_PRINTF((VTV_s, "P:LMis %d\n buf%X < writ%X\n",
// st->cnt_load_miss, st->pcm_bsize, size_write_total));
// VTV_PRINTF((VTV_s, " r%X w%X\n",
// (st)->ring_read_offset, (st)->ring_write_offset));
}
it's something like the pcm lib refuses to play sound when the write size is higher than the block size, i got 16400 VS 16384
🙁