Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы AVFoundation ссылка класса AVAssetReaderTrackOutput

Опции
Развертывание Target:

На этой странице
Язык:

AVAssetReaderTrackOutput

AVAssetReaderTrackOutput определяет интерфейс для чтения данных носителей из сингла AVAssetTrack объект актива читателя актива.

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

AVAssetReaderTrackOutput класс может только произвести несжатый вывод. Для настроек аудиовыхода это означает это AVFormatIDKey должен быть kAudioFormatLinearPCM. Для настроек видеовыхода это означает, что словарь должен содержать значения для несжатого видеовыхода, как определено в Video_Settings.  AVAssetReaderTrackOutput не поддерживает AVSampleRateConverterAudioQualityKey ключ или следующий Video_Settings ключи: AVVideoCleanApertureKey, AVVideoPixelAspectRatioKey, AVVideoScalingModeKey, или AVVideoColorPropertiesKey ключ.

При построении настроек видеовыхода выбор формата пикселя будет влиять на производительность и качество распаковки. Для оптимальной производительности при распаковке видео требуемый формат пикселя должен быть тем, который декодер поддерживает исходно для предотвращения ненужных преобразований. Ниже некоторые рекомендации:

  • Для использования H.264 kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange, или kCVPixelFormatType_420YpCbCr8BiPlanarFullRange если видео, как известно, является полным спектром.

  • На использовании iOS kCVPixelFormatType_420YpCbCr8BiPlanarFullRange для вывода JPEG.

  • Для других кодеков на OS X, kCVPixelFormatType_422YpCbCr8 предпочтительный формат пикселя для видео и обычно обеспечивает лучшую производительность при декодировании. Если необходимо работать в домене RGB, рекомендуется это на iOS kCVPixelFormatType_32BGRA значение используется, и на OS X kCVPixelFormatType_32ARGB рекомендуется.

  • Закодированные носители ProRes могут содержать до 12bits/ch. Если Вашим источником является закодированный ProRes, и Вы хотите сохранить больше, чем 8bits/ch во время распаковки тогда используют один из следующих форматов пикселя: kCVPixelFormatType_4444AYpCbCr16, kCVPixelFormatType_422YpCbCr16, kCVPixelFormatType_422YpCbCr10, или kCVPixelFormatType_64ARGB.  AVAssetReader не поддерживает масштабирование ни с одним из этих высоких форматов пикселя битовой глубины. Если Вы используете их, тогда не указывают kCVPixelBufferWidthKey или kCVPixelBufferHeightKey в outputSettings словарь. Если Вы планируете добавить эти, выборка буферизует к AVAssetWriterInput тогда обратите внимание на то, что только кодеры ProRes поддерживают эти форматы пикселя.

  • Закодированные носители ProRes 4444 могут содержать математически альфа-канал без потерь. Для сохранения альфа-канала во время распаковки используют формат пикселя с альфа-компонентом такой как kCVPixelFormatType_4444AYpCbCr16 или kCVPixelFormatType_64ARGB. Протестировать, содержит ли Ваш источник проверку альфа-канала, что описание формата дорожки имеет a kCMFormatDescriptionExtension_Depth ключ и что его значение равняется 32.

 

Наследование


Соответствует


Оператор импорта


Swift

import AVFoundation

Objective C

@import AVFoundation;

Доступность


Доступный в OS X v10.7 и позже.
  • Возвращает читателя актива, обертывающего указанную дорожку, с дополнительными выходными настройками.

    Объявление

    Objective C

    + (instancetype)assetReaderTrackOutputWithTrack:(AVAssetTrack *)track outputSettings:(NSDictionary *)outputSettings

    Параметры

    track

    Дорожка, от которой читатель должен получить демонстрационные буферы.

    outputSettings

    Словарь выходных настроек, которые будут использоваться для демонстрационного вывода.

    Вы используете ключи от одного из AVAudioSettings.h, Video_Settings, или CVPixelBufferRef, В зависимости от типа среды и требуемого выходного формата.

    Значение nil конфигурирует вывод для продажи выборок в их исходном формате, как сохраненный указанной дорожкой.

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

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

    Читатель актива, переносящийся track, использование установки, определенной outputSettings, nil если инициализация перестала работать.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Доступность

    Доступный в OS X v10.7 и позже.

  • Инициализирует читателя актива для обертывания указанной дорожки, с дополнительными выходными настройками.

    Объявление

    Swift

    init!(track track: AVAssetTrack!, outputSettings outputSettings: [NSObject : AnyObject]!)

    Objective C

    - (instancetype)initWithTrack:(AVAssetTrack *)track outputSettings:(NSDictionary *)outputSettings

    Параметры

    track

    Дорожка, от которой читатель должен получить демонстрационные буферы.

    outputSettings

    Словарь выходных настроек, которые будут использоваться для демонстрационного вывода. Передача nil получить выборки, как сохраненный в дорожке.

    Вы используете ключи от одного из AVAudioSettings.h, Video_Settings, или CVPixelBufferRef, В зависимости от типа среды и требуемого выходного формата.

    Значение nil конфигурирует вывод для продажи выборок в их исходном формате, как сохраненный указанной дорожкой.

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

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

    Читатель актива, переносящийся track, использование установки, определенной outputSettings, nil если инициализация перестала работать.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • outputSettings outputSettings Свойство

    Выходные настройки используются выводом. (только для чтения)

    Объявление

    Swift

    var outputSettings: [NSObject : AnyObject]! { get }

    Objective C

    @property(nonatomic, readonly) NSDictionary *outputSettings

    Обсуждение

    Значение является словарем, содержащим значения для ключей от также Linear_PCM_Format_Settingsдля аудиотреков или CVPixelBufferRef для видеотреков. Значение nil указывает, что вывод возвратит выборки в их исходном формате, как сохраненный в целевой дорожке.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • дорожка дорожка Свойство

    Дорожка, из которой получатель читает демонстрационные буферы. (только для чтения)

    Объявление

    Swift

    var track: AVAssetTrack! { get }

    Objective C

    @property(nonatomic, readonly) AVAssetTrack *track

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.7 и позже.

  • Алгоритм обработки раньше управлял аудио подачей для масштабированных аудио редактирований.

    Объявление

    Swift

    var audioTimePitchAlgorithm: String!

    Objective C

    @property(nonatomic, copy) NSString *audioTimePitchAlgorithm

    Обсуждение

    Поддерживаемые константы определяются в Time Pitch Algorithm Settings.

    NSInvalidArgumentException если это свойство будет установлено в значение кроме определенных констант, будет повышен.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.9 и позже.