You should use BASS_ChannelSetSync with flag BASS_SYNC_POS. Put your 2,54 time as the param (in bytes). In the sync proc/callback you call BASS_ChannelStop.
Why didn't I think of that I knew I could set a syncpos, I saw that in the custloop example I just never thought of stopping the channel my self, when getting the call back......
Thanks for waking me!