Редактирование потоков

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

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

Вы можете вырезать один или несколько примеров из редактируемого потока с помощью функции EditStreamCut. Чтобы удалить примеры из редактируемого потока, эта функция добавляет запись в таблицу редактирования. Затем функция помещает копию примеров вырезания в новый временный поток, указатель интерфейса которого возвращается в переменной.

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

Вы можете скопировать один или несколько примеров из потока и вставить их в редактируемый поток с помощью функции EditStreamPaste. Чтобы вставить примеры по указанной позиции, эта функция добавляет запись в таблицу редактирования целевого редактируемого потока.

Можно дублировать редактируемый поток с помощью функции EditStreamClone. Эта функция возвращает указатель на интерфейс нового потока. Вы можете скопировать эти потоки в буфер обмена или использовать их для поддержания следа изменений, внесенных в поток.

Вы можете изменить несколько характеристик редактируемого потока с помощью функции EditStreamSetInfo. Эта функция обновляет параметр приоритета, язык, масштаб и скорость, время начала, параметры качества, измерения и координаты назначения, а также текстовое описание потока. Эти элементы хранятся в структуре AVISTREAMINFO, связанной с редактируемым потоком.

Можно также изменить текстовое описание редактируемого потока с помощью функции EditStreamSetName. Эта функция обновляет элемент szName структуры AVISTREAMINFO, связанной с редактируемым потоком.

Функции редактирования работают с потоками. Необходимо вырезать и вставить каждый поток по отдельности, а затем использовать функцию AVIMakeFileFromStreams для создания указателя на файл.

Заметка

Таблицы редактирования в редактируемом потоке поддерживают все изменения для потока. Исходный поток никогда не изменяется.