By imbedding an Index Mark command in text, you can provide non-blocking. DECtalk Software can use index marks to track exactly when the text was spoken. The index marks bind themselves to the next speech sound so you MUST always include a sound after the Index Mark command. Therefore, if you send, "Hello. [:index mark 5]", DECtalk Software waits until the next sound to send the mark to the application. Index marks cannot be put in the middle of a word.
Index Marks are handled differently depending on whether the text-to-speech system is in speech-to-memory mode. When an Index Mark command is encountered while not in this mode, then the index mark is returned to the calling application with a message type of TTS_MSG_INDEX_MARK.
If the text-to-speech system is in the speech-to-memory mode, then the message type is TTS_MSG_BUFFER and the index marks are returned in the index mark array, if allocated, of the memory buffer structure. In addition to the index mark value, there is an index sample number also passed in the array, to allow the user to determine which sample in the memory buffer corresponds to that index mark.
Click here to see help on the Callback Routines and Window Procedures for more information on returning index marks to the calling application.