Resets a splitter stream and sets its position in the source buffer.
|handle||The splitter handle.
|offset||How far back (in bytes) to position the splitter in the source buffer. This is based on the source's sample format, which may have a different channel count to the splitter.
If successful, TRUE is returned, else FALSE is returned. Use BASS_ErrorGetCode to get the error code.
|BASS_ERROR_HANDLE||handle is not a splitter stream.
This function is the same as BASS_Split_StreamReset except that it also provides the ability to position the splitter stream within the buffer that is shared by all of the splitter streams of the same source. A splitter stream's buffer position determines what data it will next receive. For example, if its position is half a second back, it will receive half a second of buffered data before receiving new data from the source. Calling this function with offset = 0 will result in the next data that the splitter stream receives being new data from the source, and is identical to using BASS_Split_StreamReset.
offset is automatically limited to the amount of data that the source buffer contains, which is in turn limited to the buffer size, determined by the BASS_CONFIG_SPLIT_BUFFER config option. The amount of source data buffered, as well as a splitter stream's position within it, is available from BASS_Split_StreamGetAvailable.
Create a new splitter stream that will first play 0.5s of already buffered data (if available).
split = BASS_Split_StreamCreate(source, 0, NULL); // create a splitter stream
BASS_Split_StreamResetEx(split, BASS_ChannelSeconds2Bytes(source, 0.5)); // set it 0.5s back in the buffer
BASS_ChannelPlay(split, FALSE); // start playing
BASS_Split_StreamGetAvailable, BASS_Split_StreamReset, BASS_CONFIG_SPLIT_BUFFER