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


Метод IDiscFormat2TrackAtOnce::AddAudioTrack (imapi2.h)

Записывает поток данных на текущий носитель в виде новой дорожки.

Синтаксис

HRESULT AddAudioTrack(
  [in] IStream *data
);

Параметры

[in] data

Интерфейс IStream звуковых данных для записи в качестве следующей дорожки на носителе.

Формат данных содержит 44,1 кГц, 16-разрядные стерео и необработанные образцы звука. Это тот же формат, который используется в звуковых примерах в звуковом файле Microsoft WAV (без заголовка).

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

S_OK возвращается при успешном выполнении, но в результате реализации могут быть возвращены другие коды успешного выполнения. Следующие коды ошибок обычно возвращаются при сбое операции, но не представляют единственные возможные значения ошибок:

Код возврата Описание
E_POINTER
Недопустимый указатель.

Значение: 0x80004003

E_IMAPI_DF2TAO_MEDIA_IS_NOT_PREPARED
Запрошенная операция действительна, только если носитель был "подготовлен".

Значение: 0xC0AA0502

E_IMAPI_DF2TAO_WRITE_IN_PROGRESS
В настоящее время выполняется операция записи.

Значение: 0xC0AA0500

E_IMAPI_DF2TAO_TRACK_LIMIT_REACHED
Носители CD-R и CD-RW поддерживают не более 99 звуковых дорожек.

Значение: 0xC0AA0508

E_IMAPI_DF2TAO_STREAM_NOT_SUPPORTED
Предоставленный аудиопоток недопустим.

Значение: 0xC0AA050D

E_IMAPI_DF2TAO_NOT_ENOUGH_SPACE
На носителе недостаточно места для добавления предоставленной звуковой дорожки.

Значение: 0xC0AA0509

E_FAIL
Неуказанным сбоем.

Значение: 0x80004005

E_INVALIDARG
Один или несколько аргументов недопустимы.

Значение: 0x80070057

E_OUTOFMEMORY
Не удалось выделить необходимую память.

Значение: 0x8007000E

E_IMAPI_RECORDER_COMMAND_TIMEOUT
Устройству не удалось принять команду в течение времени ожидания. Это может быть вызвано тем, что устройство перешло в несогласованное состояние, или может потребоваться увеличить время ожидания для команды.

Значение: 0xC0AA020D

E_IMAPI_RECORDER_INVALID_RESPONSE_FROM_DEVICE
Устройство сообщило непредвиденные или недопустимые данные для команды.

Значение: 0xC0AA02FF

E_IMAPI_RECORDER_MEDIA_UPSIDE_DOWN
Носитель вставляется вверх дном.

Значение: 0xC0AA0204

E_IMAPI_RECORDER_MEDIA_BECOMING_READY
Диск сообщил, что он находится в процессе подготовки. Повторите запрос позже.

Значение: 0xC0AA0205

E_IMAPI_RECORDER_MEDIA_NO_MEDIA
На устройстве нет носителя.

Значение: 0xC0AA0202

E_IMAPI_RECORDER_MEDIA_FORMAT_IN_PROGRESS
В настоящее время форматируется носитель. Дождитесь завершения формата, прежде чем пытаться использовать носитель.

Значение: 0xC0AA0206

E_IMAPI_RECORDER_MEDIA_BUSY
Диск сообщил, что он выполняет длительную операцию, например завершает запись. Диск может быть непригодным для использования в течение длительного периода времени.

Значение: 0xC0AA0207

E_IMAPI_LOSS_OF_STREAMING
Сбой записи, так как диск не получил данные достаточно быстро, чтобы продолжить запись. Эта проблема может быть решена при перемещении исходных данных на локальный компьютер, снижении скорости записи или включении параметра "недостаточно свободного буфера".

Значение: 0xC0AA0300

E_IMAPI_RECORDER_MEDIA_INCOMPATIBLE
Носитель несовместим или имеет неизвестный физический формат.

Значение: 0xC0AA0203

E_IMAPI_RECORDER_DVD_STRUCTURE_NOT_PRESENT
Структура DVD отсутствует. Это может быть вызвано несовместимыми используемыми дисками или средой.

Значение: 0xC0AA020E

E_IMAPI_RECORDER_NO_SUCH_MODE_PAGE
Устройство сообщило, что запрошенная страница режима (и тип) отсутствует.

Значение: 0xC0AA0201

E_IMAPI_RECORDER_INVALID_MODE_PARAMETERS
Диск сообщил, что сочетание параметров, предоставленных на странице режима для команды MODE SELECT, не поддерживается.

Значение: 0xC0AA0208

E_IMAPI_RECORDER_MEDIA_WRITE_PROTECTED
Диск сообщил, что носитель защищен от записи.

Значение: 0xC0AA0209

E_IMAPI_RECORDER_MEDIA_SPEED_MISMATCH
Скорость носителя несовместима с устройством. Это может быть вызвано использованием носителя с более высокой или более низкой скоростью, чем диапазон поддерживаемых устройством скоростей.

Значение: 0xC0AA020F

HRESULT_FROM_WIN32(ERROR_INVALID_HANDLE)
Указанный дескриптор недопустим.

Значение: 6

HRESULT_FROM_WIN32(ERROR_DEV_NOT_EXIST)
Указанный сетевой ресурс или устройство больше не доступны.

Значение: 55

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

Значение: 0xC0AA0210

E_IMAPI_REQUEST_CANCELLED
Запрос отменен.

Значение: 0xC0AA0002

Комментарии

Перед вызовом этого метода необходимо вызвать методы IDiscFormat2TrackAtOnce::p ut_Recorder и IDiscFormat2TrackAtOnce::P repareMedia .

Кроме того, следует рассмотреть возможность вызова следующих методов, если их значения по умолчанию не подходят для вашего приложения:

Чтобы определить ход выполнения операции записи, необходимо реализовать интерфейс DDiscFormat2TrackAtOnceEvents . Примеры реализации обработчика событий в скрипте см. в разделе Мониторинг хода выполнения с помощью событий.

Носитель может вмещать 99 дорожек звуковых данных. Нумерирование треков начинается с 1. Последняя дорожка — 99.

Безмолвие или примеры данных, содержащие нули, будут добавлены в операцию записи отслеживания следующими способами:

  • Минимальный размер дорожки составляет 4 секунды, и при необходимости данные дорожки будут увеличены в соответствии с этим требованием.
  • Из-за характера записи трека за один раз между последующими звуковыми дорожками добавляется двухсекундный разрыв. Этот разрыв, как правило, скрыт пк на основе игроков, но может быть заметен на некоторых потребительских электронных оборудования.

Требования

   
Минимальная версия клиента Windows Vista, Windows XP с пакетом обновления 2 (SP2) [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header imapi2.h

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

IDiscFormat2TrackAtOnce

IDiscFormat2TrackAtOnce::CancelAddTrack