Querying and Setting the Tempo

To retrieve the tempo of a sequence, use the MCI_STATUS command and set the dwItem member of the MCI_STATUS_PARMS structure to MCI_SEQ_STATUS_TEMPO. If the MCI_STATUS command is successful, the dwReturn member of the MCI_STATUS_PARMS structure contains the current tempo.

To change tempo, use the MCI_SET command with the MCI_SEQ_SET_PARMS structure, specifying the MCI_SEQ_SET_TEMPO flag and setting the dwTempo member of the structure to the desired tempo.

The way tempo is represented depends on the division type of the sequence. If
the division type is PPQN, the tempo is represented in beats per minute. If the
division type is one of the SMPTE division types, the tempo is represented in
frames per second. For information about determining the division type of a
sequence, see Retrieving the Sequence Division Type.