You can get all lyric events from BASS_MIDI_StreamGetMarks (with BASS_MIDI_MARK_LYRIC or sometimes BASS_MIDI_MARK_TEXT), and set a BASS_SYNC_MIDI_MARK sync (again with BASS_MIDI_MARK_LYRIC or BASS_MIDI_MARK_TEXT) via BASS_ChannelSetSync to be informed when playback reaches a new lyric event. When the sync is triggered with the current lyric event, you can then get the next line in the events that you got earlier from BASS_MIDI_StreamGetMarks. Please see the documentation for details on the mentioned functions/options.