int sm_catsig_listen_for(struct sm_catsig_listen_for_parms *listenp)
typedef struct sm_catsig_listen_for_parms {
tSMChannelId channel; /* in */
enum kBESPCatSigAlg {
kBESPCatSigAlgLiveSpeaker=1,
kBESPCatSigAlgLiveSpeakerTone,
} catsig_alg_id; /* in */
tSM_INT abort_catsig_alg; /* in */
} SM_CATSIG_LISTEN_FOR_PARMS;
If this call is invoked with abort_catsig_alg set to zero and catsig_alg_id set to identifier for a signal categorisation algorithm then this call invokes a signal categorisation algorithm on the given channel input. Once enough of the signal has been processed in order to classify it into a definite category then the application is notified and it can then retrieve an indication of the signal category by calling sm_get_recognised().
If a recognition event has been previously associated with channel (see sm_channel_set_event()), then the driver will notify the application with that event whenever a signal has been categorised.
If the signal cannot be categorised, then no event will occur. Thus an application would normally timeout if no categorisation event occurs within a reasonable time. In order to cancel a signal categorisation algorithm job, the call should be invoked with abort_catsig_alg set to 1.
0 when a machine has
been detected and 1 when a live speaker has been
detected.
0 when a machine has
been detected and 1 when a live speaker has been
detected.
Requires the module
td
to have been downloaded.
0 if call completed successfully, otherwise a standard error such as:
This function is part of the Prosody speech processing API.