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


Метод IAMExtTransport::SetEditPropertySet (strmif.h)

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

Метод SetEditPropertySet регистрирует набор свойств редактирования, описывающий группу свойств редактирования.

Этот метод не реализован.

Синтаксис

HRESULT SetEditPropertySet(
  [in, out] long *pEditID,
  [in]      long State
);

Параметры

[in, out] pEditID

Указатель на длинное целое число, указывающее или получающее идентификатор для набора свойств изменения.

[in] State

Указывает состояние набора свойств редактирования.

Значение Описание
ED_ACTIVE Активирует набор свойств edit.
ED_DELETE Удаляет набор свойств edit.
ED_INACTIVE Деактивирует изменение набора свойств.
ED_REGISTER Регистрирует набор свойств edit.
 

Если значение равно ED_REGISTER, параметр pEditID получает идентификатор для набора свойств edit. Для других флагов используйте параметр pEditID , чтобы указать идентификатор.

Возвращаемое значение

При успешном выполнении этого метода возвращается S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Событие изменения — это набор параметров, определяющих последовательность записи. Например, параметры могут указывать режимы редактирования, точки и точки выхода, а также искать позиции. Каждое событие редактирования состоит из одного или нескольких параметров, называемых свойствами редактирования. Коллекция свойств называется набором свойств edit. Каждый набор свойств редактирования определяется длинным целым числом, назначенным фильтром устройства.

Чтобы создать и выполнить событие изменения, приложение должно выполнить следующие действия:

  • Зарегистрируйте набор свойств edit. SetEditPropertySet Вызовите метод со значением, ED_REGISTER в параметре State. При возврате метода параметр pEditID содержит идентификатор для набора свойств edit. Используйте этот номер для идентификации набора свойств изменения в последующих вызовах метода.
  • Укажите свойства редактирования с помощью метода IAMExtTransport::SetEditProperty .
  • Активируйте событие изменения, вызвав со SetEditPropertySet значением ED_ACTIVE.
  • Поимите транспорт, вызвав SetEditProperty со значением ED_EDIT_SEEK.
  • Запустите граф фильтра.
Например, следующий код настраивает редактирование вставки на всех дорожках:
C++
Регистрация идентификатора набора свойств для редактирования. (Вызывает выделение памяти.) long EditId; SetEditPropertySet(&EditId, ED_REGISTER);

Установите режим редактирования. SetEditProperty(EditId, ED_EDIT_MODE, ED_EDIT_MODE_INSERT); Задайте сведения о событии. SetEditProperty(EditId, ED_EDIT_TRACK, ED_VIDEO | ED_AUDIO_ALL); SetEditProperty(EditId, ED_REHEARSE_MODE, ED_EDIT_PERFORM);

Задайте время источника и записи. SetEditProperty(EditId, ED_EDIT_SRC_INPOINT, 200) SetEditProperty(EditId, ED_EDIT_SRC_OUTPOINT, 500) SetEditProperty(EditId, ED_EDIT_REC_INPOINT, 100) SetEditProperty(EditId, ED_EDIT_REC_OUTPOINT, 400)

Активируйте событие изменения. SetEditPropertySet(&EditId, ED_ACTIVE); Подними машину. SetEditProperty(EditId, ED_EDIT_SEEK, OATRUE);

// Run the graph. (Not shown.)

Реализация DV

MSDV не поддерживает этот метод. Он возвращает E_NOTIMPL.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header strmif.h (включая Dshow.h)
Библиотека Strmiids.lib

См. также раздел

Коды ошибок и успешности

Интерфейс IAMExtTransport

IAMExtTransport::GetEditPropertySet