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


Состояние транспорта устройства

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

Чтобы получить текущее состояние устройства, например воспроизведение, приостановку или остановку, вызовите метод IAMExtTransport::get_Mode . Метод извлекает константу, указывающую состояние устройства:

Значение Состояние устройства
ED_MODE_PLAY Воспроизведение
ED_MODE_STOP Stop
ED_MODE_FREEZE Пауза
ED_MODE_FF Перемыкать вперед
ED_MODE_REW Rewind
ED_MODE_RECORD Record
ED_MODE_RECORD_FREEZE Приостановка записи

 

Следующий код проверяет состояние устройства:

LONG State;
hr = MyDevCap.pTransport->get_Mode(&State);
if (SUCCEEDED(hr))
{
    switch (State)
    {
        case ED_MODE_PLAY:
        // ... 
    }
}

Управление dv camcorder