Поделиться через


Настройка формата времени

[Функция, связанная с этой страницей, MCI, является устаревшей функцией. Он был вытеснен MediaPlayer. MediaPlayer оптимизирован для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код MediaPlayer вместо MCIпо возможности. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]

Используйте сообщение команды MCI_SET вместе со структурой MCI_SET_PARMS, чтобы задать формат времени для открытого устройства. Задайте для элемента dwTimeFormat одно из следующих констант.

Постоянный Формат времени
MCI_FORMAT_BYTES Байты (в файлах с модуляцией импульсного кода [PCM])
MCI_FORMAT_MILLISECONDS (формат в миллисекундах) Миллисекунд
MCI_FORMAT_MSF Минута/секунда/кадр
MCI_FORMAT_SAMPLES Образцы
MCI_FORMAT_SMPTE_24 SMPTE, 24 кадра
MCI_FORMAT_SMPTE_25 SMPTE, 25 кадр
MCI_FORMAT_SMPTE_30 SMPTE, 30 кадров
MCI_FORMAT_SMPTE_30DROP SMPTE, 30 кадров
MCI_FORMAT_TMSF Трек/минута/секунда/кадр
MCI_SEQ_FORMAT_SONGPTR Указатель песни MIDI

 

Следующий пример задает формат времени в миллисекундах на устройстве, указанном переменной wDeviceID с помощью функции mciSendCommand.

UINT wDeviceID; 
MCI_SET_PARMS mciSetParms; 

// Set time format to milliseconds. 

mciSetParms.dwTimeFormat = MCI_FORMAT_MILLISECONDS; 
if( mciSendCommand(wDeviceID, MCI_SET, MCI_SET_TIME_FORMAT, 
                  (DWORD) &mciSetParms)) 
{
    // Error, unable to set time format. 
    return FALSE; 
}
else 
{
    // Time format set successfully. 
    return TRUE; 
}