Ссылка констант основы AV
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Этот документ описывает константы, определенные в платформе Основы AV, не описанной в отдельных классах или в проблемно-ориентированных ссылках констант. См. также:
-
Константы для идентификации различных типов среды.
Объявление
Swift
let AVMediaTypeVideo: String let AVMediaTypeAudio: String let AVMediaTypeText: String let AVMediaTypeClosedCaption: String let AVMediaTypeSubtitle: String let AVMediaTypeTimecode: String let AVMediaTypeMetadata: String let AVMediaTypeMuxed: String
Objective C
NSString *const AVMediaTypeVideo; NSString *const AVMediaTypeAudio; NSString *const AVMediaTypeText; NSString *const AVMediaTypeClosedCaption; NSString *const AVMediaTypeSubtitle; NSString *const AVMediaTypeTimecode; NSString *const AVMediaTypeTimedMetadata; NSString *const AVMediaTypeMetadata; NSString *const AVMediaTypeMuxed;
Константы
-
AVMediaTypeVideo
Указывает видео.
Доступный в iOS 4.0 и позже.
-
AVMediaTypeAudio
Указывает аудио.
Доступный в iOS 4.0 и позже.
-
AVMediaTypeText
Указывает текст.
Доступный в iOS 4.0 и позже.
-
AVMediaTypeClosedCaption
Указывает содержание субтитров.
Доступный в iOS 4.0 и позже.
-
AVMediaTypeSubtitle
Указывает подзаголовки.
Доступный в iOS 4.0 и позже.
-
AVMediaTypeTimecode
Указывает временной код.
Доступный в iOS 4.0 и позже.
-
AVMediaTypeTimedMetadata
Указывает синхронизированные метаданные.
Доступный в iOS 4.0 через iOS 5.1.
-
AVMediaTypeMetadata
Указывает метаданные.
Доступный в iOS 6.0 и позже.
-
AVMediaTypeMuxed
Указывает мультиплексированные носители.
Доступный в iOS 4.0 и позже.
-
-
Эти строковые константы определяют, как видео выведено на экран в прямоугольнике границ уровня.
Объявление
Swift
let AVLayerVideoGravityResize: String let AVLayerVideoGravityResizeAspect: String let AVLayerVideoGravityResizeAspectFill: String
Objective C
NSString * const AVLayerVideoGravityResize; NSString * const AVLayerVideoGravityResizeAspect; NSString * const AVLayerVideoGravityResizeAspectFill;
Константы
-
AVLayerVideoGravityResize
Указывает, что видео должно быть расширено для заполнения границ уровня.
Доступный в iOS 4.0 и позже.
-
AVLayerVideoGravityResizeAspect
Указывает, что проигрыватель должен сохранить форматное соотношение видео и соответствовать видео в границах уровня.
Доступный в iOS 4.0 и позже.
-
AVLayerVideoGravityResizeAspectFill
Указывает, что проигрыватель должен сохранить форматное соотношение видео и заполнить границы уровня.
Доступный в iOS 4.0 и позже.
Обсуждение
Вы используете эти константы при установке
videoGravity
свойствоAVPlayerLayer
илиAVCaptureVideoPreviewLayer
экземпляр. -
-
Константы для указания характеристик типов среды.
Объявление
Swift
let AVMediaCharacteristicVisual: String let AVMediaCharacteristicAudible: String let AVMediaCharacteristicLegible: String let AVMediaCharacteristicFrameBased: String
Objective C
NSString *const AVMediaCharacteristicVisual; NSString *const AVMediaCharacteristicAudible; NSString *const AVMediaCharacteristicLegible; NSString *const AVMediaCharacteristicFrameBased;
Константы
-
AVMediaCharacteristicVisual
Указывает, что носители визуальны.
Доступный в iOS 4.0 и позже.
-
AVMediaCharacteristicAudible
Указывает, что носители являются слышимыми.
Доступный в iOS 4.0 и позже.
-
AVMediaCharacteristicLegible
Указывает, что носители являются четкими.
Доступный в iOS 4.0 и позже.
-
AVMediaCharacteristicFrameBased
Указывает, что носители основаны на кадре.
Доступный в iOS 4.0 и позже.
-
-
Эти константы определяют ключи словаря для конфигурирования сжатия видео и настроек сжатия для видео активов.
Объявление
Swift
let AVVideoCodecKey: String let AVVideoCodecH264: String let AVVideoCodecJPEG: String let AVVideoWidthKey: String let AVVideoHeightKey: String let AVVideoCompressionPropertiesKey: String let AVVideoAverageBitRateKey: String let AVVideoQualityKey: String let AVVideoMaxKeyFrameIntervalKey: String let AVVideoProfileLevelKey: String let AVVideoProfileLevelH264Baseline30: String let AVVideoProfileLevelH264Baseline31: String let AVVideoProfileLevelH264Baseline41: String let AVVideoProfileLevelH264Main30: String let AVVideoProfileLevelH264Main31: String let AVVideoProfileLevelH264Main32: String let AVVideoProfileLevelH264Main41: String let AVVideoProfileLevelH264High40: String let AVVideoProfileLevelH264High41: String let AVVideoPixelAspectRatioKey: String let AVVideoPixelAspectRatioHorizontalSpacingKey: String let AVVideoPixelAspectRatioVerticalSpacingKey: String let AVVideoCleanApertureKey: String let AVVideoCleanApertureWidthKey: String let AVVideoCleanApertureHeightKey: String let AVVideoCleanApertureHorizontalOffsetKey: String let AVVideoCleanApertureVerticalOffsetKey: String
Objective C
NSString *const AVVideoCodecKey; NSString *const AVVideoCodecH264; NSString *const AVVideoCodecJPEG; NSString *const AVVideoWidthKey; NSString *const AVVideoHeightKey; NSString *const AVVideoCompressionPropertiesKey; NSString *const AVVideoAverageBitRateKey; NSString *const AVVideoQualityKey; NSString *const AVVideoMaxKeyFrameIntervalKey; NSString *const AVVideoProfileLevelKey; NSString *const AVVideoProfileLevelH264Baseline30; NSString *const AVVideoProfileLevelH264Baseline31; NSString *const AVVideoProfileLevelH264Baseline41; NSString *const AVVideoProfileLevelH264Main30; NSString *const AVVideoProfileLevelH264Main31; NSString *const AVVideoProfileLevelH264Main32; NSString *const AVVideoProfileLevelH264Main41; NSString *const AVVideoProfileLevelH264High40; NSString *const AVVideoProfileLevelH264High41; NSString *const AVVideoPixelAspectRatioKey; NSString *const AVVideoPixelAspectRatioHorizontalSpacingKey; NSString *const AVVideoPixelAspectRatioVerticalSpacingKey; NSString *const AVVideoCleanApertureKey; NSString *const AVVideoCleanApertureWidthKey; NSString *const AVVideoCleanApertureHeightKey; NSString *const AVVideoCleanApertureHorizontalOffsetKey; NSString *const AVVideoCleanApertureVerticalOffsetKey;
Константы
-
AVVideoCodecKey
Указывает, что ключ для доступа к имени кодека раньше кодировал видео.
Соответствующее значение является экземпляром
NSString
; эквивалентныйCMVideoCodecType
.Доступный в iOS 4.0 и позже.
-
AVVideoCodecH264
Указывает, что видео было закодировано с помощью H264.
Доступный в iOS 4.0 и позже.
-
AVVideoCodecJPEG
Указывает, что видео было закодировано с помощью кодера JPEG.
Доступный в iOS 4.0 и позже.
-
AVVideoWidthKey
Указывает ключ для доступа к ширине видео в пикселях.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoHeightKey
Указывает ключ для доступа к высоте видео в пикселях.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoCompressionPropertiesKey
Указывает ключ для доступа к свойствам сжатия.
Соответствующее значение является экземпляром
NSDictionary
.Доступный в iOS 4.0 и позже.
-
AVVideoAverageBitRateKey
Указывает ключ для доступа к средней скорости передачи данных (как биты в секунду) используемый в кодировании.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoQualityKey
Указывает, что ключ для доступа к JPEG кодировал качество.
Соответствующее значение является экземпляром
NSNumber
0.0-1.0.Доступный в iOS 5.0 и позже.
-
AVVideoMaxKeyFrameIntervalKey
Указывает ключ для доступа к максимальному интервалу между ключевыми кадрами.
Соответствующее значение является экземпляром
NSNumber
.1
средние ключевые кадры только.Доступный в iOS 4.0 и позже.
-
AVVideoProfileLevelKey
Указывает ключ для доступа к видео профилю.
Доступный в iOS 4.0 и позже.
-
AVVideoProfileLevelH264Baseline30
Указывает базовый профиль уровня 3.0.
Доступный в iOS 4.0 и позже.
-
AVVideoProfileLevelH264Baseline31
Указывает базовый профиль уровня 3.1.
Доступный в iOS 4.0 и позже.
-
AVVideoProfileLevelH264Baseline41
Указывает базовый профиль уровня 4.1.
Доступный в iOS 5.0 и позже.
-
AVVideoProfileLevelH264Main30
Указывает основной профиль уровня 3.0.
Доступный в iOS 4.0 и позже.
-
AVVideoProfileLevelH264Main31
Указывает основной профиль уровня 3.1.
Доступный в iOS 4.0 и позже.
-
AVVideoProfileLevelH264Main32
Указывает основной профиль уровня 3.2.
Доступный в iOS 5.0 и позже.
-
AVVideoProfileLevelH264Main41
Указывает основной профиль уровня 4.1.
Доступный в iOS 5.0 и позже.
-
AVVideoProfileLevelH264High40
Указывает высокоуровневый 4.0 профиль.
Доступный в iOS 6.0 и позже.
-
AVVideoProfileLevelH264High41
Указывает высокоуровневый 4.1 профиль.
Доступный в iOS 6.0 и позже.
-
AVVideoPixelAspectRatioKey
Указывает ключ для доступа к попиксельной пропорции.
Соответствующее значение является экземпляром
NSDictionary
.Доступный в iOS 4.0 и позже.
-
AVVideoPixelAspectRatioHorizontalSpacingKey
Указывает ключ для доступа к пространству по горизонтали попиксельной пропорции.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoPixelAspectRatioVerticalSpacingKey
Указывает ключ для доступа к пространству по вертикали попиксельной пропорции.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoCleanApertureKey
Указывает ключ для доступа к чистой апертуре.
Соответствующее значение является экземпляром
NSDictionary
.Доступный в iOS 4.0 и позже.
-
AVVideoCleanApertureWidthKey
Указывает ключ для доступа к чистой апертурной ширине.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoCleanApertureHeightKey
Указывает ключ для доступа к чистой апертурной высоте.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoCleanApertureHorizontalOffsetKey
Указывает ключ для доступа к чистому апертурному горизонтальному смещению.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
AVVideoCleanApertureVerticalOffsetKey
Указывает ключ для доступа к чистому апертурному вертикальному смещению.
Соответствующее значение является экземпляром
NSNumber
.Доступный в iOS 4.0 и позже.
-
-
Эти константы указывают UTIs для различных форматов файлов.
Объявление
Swift
let AVFileType3GPP: String let AVFileType3GPP2: String let AVFileTypeAIFC: String let AVFileTypeAIFF: String let AVFileTypeCoreAudioFormat: String let AVFileTypeAppleM4V: String let AVFileTypeMPEG4: String let AVFileTypeAppleM4A: String let AVFileTypeQuickTimeMovie: String let AVFileTypeWAVE: String let AVFileTypeAMR: String let AVFileTypeAC3: String let AVFileTypeMPEGLayer3: String let AVFileTypeSunAU: String
Objective C
NSString *const AVFileType3GPP; NSString *const AVFileType3GPP2; NSString *const AVFileTypeAIFC; NSString *const AVFileTypeAIFF; NSString *const AVFileTypeAMR; NSString *const AVFileTypeAC3; NSString *const AVFileTypeMPEGLayer3; NSString *const AVFileTypeSunAU; NSString *const AVFileTypeCoreAudioFormat; NSString *const AVFileTypeAppleM4V; NSString *const AVFileTypeMPEG4; NSString *const AVFileTypeAppleM4A; NSString *const AVFileTypeQuickTimeMovie; NSString *const AVFileTypeWAVE;
Константы
-
AVFileType3GPP
UTI для 3GPP формат файла.
Значение этого UTI
public.3gpp
. Файлы идентифицируются с.3gp.3gpp, и .sdv расширения.Доступный в iOS 4.0 и позже.
-
AVFileType3GPP2
UTI для 3GPP2 формат файла.
Значение этого UTI
public.3gpp2
. Файлы идентифицируются с.3g2.3gp2 расширения.Доступный в iOS 7.0 и позже.
-
AVFileTypeAIFC
UTI для формата аудиофайла AIFC.
Значение этого UTI
public.aifc-audio
. Файлы идентифицируются с .aifc и .cdda расширениями.Доступный в iOS 4.0 и позже.
-
AVFileTypeAIFF
UTI для формата аудиофайла AIFF.
Значение этого UTI
public.aiff-audio
. Файлы идентифицируются с .aif и .aiff расширениями.Доступный в iOS 4.0 и позже.
-
AVFileTypeCoreAudioFormat
UTI для формата файла CoreAudio.
Значение этого UTI
com.apple.coreaudio-format
. Файлы идентифицируются с .caf расширением.Доступный в iOS 4.0 и позже.
-
AVFileTypeAppleM4V
UTI для формата видеофайла iTunes.
Значение этого UTI
com.apple.m4v-video
. Файлы идентифицируются с .m4v расширением.Доступный в iOS 4.0 и позже.
-
AVFileTypeMPEG4
UTI для формата файла MPEG 4.
Значение этого UTI
public.mpeg-4
. Файлы идентифицируются с .mp4 расширением.Доступный в iOS 4.0 и позже.
-
AVFileTypeAppleM4A
UTI для формата аудиофайла Apple m4a.
Значение этого UTI
com.apple.m4a-audio
. Файлы идентифицируются с .m4a расширением.Доступный в iOS 4.0 и позже.
-
AVFileTypeQuickTimeMovie
UTI для формата файла фильма в формате QuickTime.
Значение этого UTI
com.apple.quicktime-movie
. Файлы идентифицируются с .mov и .qt расширениями.Доступный в iOS 4.0 и позже.
-
AVFileTypeWAVE
UTI для формата аудиофайла WAVE.
Значение этого UTI
com.microsoft.waveform-audio
. Файлы идентифицируются с .wav, .wave, и .bwf расширениями.Доступный в iOS 4.0 и позже.
-
AVFileTypeAMR
UTI для адаптивного формата аудиофайла мультиуровня.
Значение этого UTI
org.3gpp.adaptive-multi-rate-audio
. Файлы идентифицируются с .amr расширением.Доступный в iOS 4.0 и позже.
-
AVFileTypeAC3
UTI для формата аудиофайла AC 3.
Значение этого UTI
public.ac3-audio
. Файлы идентифицируются с .ac3 расширением.Доступный в iOS 7.0 и позже.
-
AVFileTypeMPEGLayer3
UTI для формата аудиофайла уровня 3 MPEG.
Значение этого UTI
public.mp3
. Файлы идентифицируются с .mp3 расширением.Доступный в iOS 7.0 и позже.
-
AVFileTypeSunAU
UTI для формата аудиофайла Sun/NeXT.
Значение этого UTI
public.au-audio
. Файлы идентифицируются с .au и .snd расширениями.Доступный в iOS 7.0 и позже.
-
-
Поддержка интеграции с Базовой Анимацией.
Объявление
Swift
let AVCoreAnimationBeginTimeAtZero: CFTimeInterval
Objective C
const CFTimeInterval AVCoreAnimationBeginTimeAtZero
Константы
-
AVCoreAnimationBeginTimeAtZero
Используйте эту константу для установки анимации CoreAnimation
beginTime
свойство, чтобы быть временем0
.Константа является маленьким, ненулевым, положительным значением, препятствующим тому, чтобы CoreAnimation заменил
0.0
сCACurrentMediaTime
.Доступный в iOS 4.0 и позже.
-
-
Константы, чтобы указать, как видео должно масштабироваться для адаптации данной области.
Объявление
Swift
let AVVideoScalingModeKey: String let AVVideoScalingModeFit: String let AVVideoScalingModeResize: String let AVVideoScalingModeResizeAspect: String let AVVideoScalingModeResizeAspectFill: String
Objective C
NSString *const AVVideoScalingModeKey; NSString *const AVVideoScalingModeFit; NSString *const AVVideoScalingModeResize; NSString *const AVVideoScalingModeResizeAspect; NSString *const AVVideoScalingModeResizeAspectFill;
Константы
-
AVVideoScalingModeKey
Ключ для получения режима масштабирования видео из словаря.
Доступный в iOS 5.0 и позже.
-
AVVideoScalingModeFit
Обрезка для удаления граничной области обработки; сохраните форматное соотношение обрезанного источника путем сокращения указанной ширины или высоты при необходимости.
Этот режим не масштабирует маленький источник до больших размерностей.
Доступный в iOS 5.0 и позже.
-
AVVideoScalingModeResize
Обрезка для удаления граничной области обработки; остаток масштаба к конечной области.
Этот режим не сохраняет форматное соотношение.
Доступный в iOS 5.0 и позже.
-
AVVideoScalingModeResizeAspect
Сохраните форматное соотношение источника и области оставлений заливки с черным цветом для адаптации целевым размерностям.
Доступный в iOS 5.0 и позже.
-
AVVideoScalingModeResizeAspectFill
Сохраните форматное соотношение источника и обрежьте изображение для адаптации целевым размерностям.
Доступный в iOS 5.0 и позже.
-
-
Характеристика носителей, которая может присутствовать в
AVMediaSelectionOption
объект.Объявление
Swift
let AVMediaCharacteristicIsMainProgramContent: String let AVMediaCharacteristicIsAuxiliaryContent: String let AVMediaCharacteristicContainsOnlyForcedSubtitles: String let AVMediaCharacteristicTranscribesSpokenDialogForAccessibility: String let AVMediaCharacteristicDescribesMusicAndSoundForAccessibility: String let AVMediaCharacteristicDescribesVideoForAccessibility: String let AVMediaCharacteristicEasyToRead: String
Objective C
NSString *const AVMediaCharacteristicIsMainProgramContent; NSString *const AVMediaCharacteristicIsAuxiliaryContent; NSString *const AVMediaCharacteristicContainsOnlyForcedSubtitles; NSString *const AVMediaCharacteristicTranscribesSpokenDialogForAccessibility; NSString *const AVMediaCharacteristicDescribesMusicAndSoundForAccessibility; NSString *const AVMediaCharacteristicDescribesVideoForAccessibility; NSString *const AVMediaCharacteristicEasyToRead;
Константы
-
AVMediaCharacteristicIsMainProgramContent
Указывает, что опция включает содержание, это отмечено автором содержания как внутреннее представлению актива.
Пример: опция, представляющая основное аудио программы для представления, независимо от локали, обычно имела бы эту характеристику.
Значение этой характеристики
"public.main-program-content"
.Присутствие этой характеристики для опции носителей выведено; любая опция, не имеющая характеристики
AVMediaCharacteristicIsAuxiliaryContent
как полагают, имеет характеристику.Доступный в iOS 5.0 и позже.
-
AVMediaCharacteristicIsAuxiliaryContent
Указывает, что опция включает содержание, это отмечено автором содержания как вспомогательное к представлению актива.
Пример: опция, представляющая аудио носители, содержащие комментарий относительно представления, обычно имела бы эту характеристику.
Значение этой характеристики
"public.auxiliary-content"
.Для фильма в формате QuickTime и .m4v файлов, опция носителей, как полагают, имеет характеристику
AVMediaCharacteristicIsAuxiliaryContent
если это явно тегируется с той характеристикой или если, как элемент альтернативной группы дорожки, ее связанная дорожка исключена из автовыбора.Доступный в iOS 5.0 и позже.
-
AVMediaCharacteristicContainsOnlyForcedSubtitles
Указывает, что опции представляют только вызванные подзаголовки.
Опции носителей с принудительными только подзаголовками обычно выбираются, когда 1) пользователь не выбрал четкую опцию с характеристикой доступности или вспомогательной целью, и 2) ее локаль соответствует локаль выбранной слышимой опции выбора носителей.
Значение этой характеристики
"public.subtitles.forced-only"
.Присутствие этой характеристики для четкой опции носителей выведено из описания формата связанной дорожки, представляющей носители подзаголовка.
Доступный в iOS 5.0 и позже.
-
AVMediaCharacteristicTranscribesSpokenDialogForAccessibility
Указывает, что опция включает четкое содержание в язык его указанной локали, записывающей разговорное диалоговое окно.
Это возможно для четкой опции носителей включать и записи разговорного диалогового окна и описания музыки и звуковых эффектов.
Значение этой характеристики
"public.accessibility.transcribes-spoken-dialog"
.Для фильма в формате QuickTime и .m4v файлов, опция носителей, как полагают, имеет характеристику
AVMediaCharacteristicTranscribesSpokenDialogForAccessibility
только если это явно тегируется с той характеристикой.Доступный в iOS 5.0 и позже.
-
AVMediaCharacteristicDescribesMusicAndSoundForAccessibility
Указывает, что опция включает четкое содержание в язык его указанной локали, описывающей музыку и звуковые эффекты, происходящие в аудио программы.
Это возможно для четкой опции носителей включать и записи разговорного диалогового окна и описания музыки и звуковых эффектов.
Значение этой характеристики
"public.accessibility.describes-music-and-sound"
.Для фильма в формате QuickTime и .m4v файлов, опция носителей, как полагают, имеет характеристику
AVMediaCharacteristicDescribesMusicAndSoundForAccessibility
только если это явно тегируется с той характеристикой.Доступный в iOS 5.0 и позже.
-
AVMediaCharacteristicDescribesVideoForAccessibility
Указывает, что опция включает слышимое содержание, описывающее визуальную часть представления.
Это возможно для четкой опции носителей включать и записи разговорного диалогового окна и описания музыки и звуковых эффектов.
Значение этой характеристики
"public.accessibility.describes-video"
.Для фильма в формате QuickTime и .m4v файлов опция носителей, как полагают, имеет характеристику
AVMediaCharacteristicEasyToRead
только если это явно тегируется с той характеристикой.Доступный в iOS 5.0 и позже.
-
AVMediaCharacteristicEasyToRead
Указывает, что опция обеспечивает четкое содержание на языке его указанной локали и что содержание было отредактировано для простоты чтения.
Дорожки субтитров, переносящие «простого читателя» заголовки (на спецификацию CEA-608) должны быть тегированы с этой характеристикой. Дорожки подзаголовка могут также быть тегированы с этой характеристикой, где это необходимо.
Значение этой характеристики
"public.easy-to-read"
.Для фильма в формате QuickTime и .m4v файлов опция носителей, как полагают, имеет характеристику
AVMediaCharacteristicEasyToRead
только если это явно тегируется с той характеристикой.Доступный в iOS 6.0 и позже.
Обсуждение
Каждая дорожка .mov файлов и .m4v файлов (т.е. файлов типа
AVFileTypeQuickTimeMovie
иAVFileTypeAppleM4V
) может дополнительно перенести один или несколько маркированные характеристики носителей, каждая из которых объявляет цель, черту или некоторое другое свойство различения носителей дорожки.Например, дорожка, содержащая аудио, смешивающее исходное содержание программы с дополнительными описаниями рассказа визуального действия, может быть тегирована с характеристикой носителей
"public.accessibility.describes-video"
для различения его от других аудиотреков, сохраненных в том же файле, которые не содержат дополнительный рассказ.Каждая маркированная характеристика носителей в .mov и .m4v файлах сохранена в дорожке userdata как userdata элемент типа
'tagc'
(представленный как FourCharCode), который состоит из стандартного заголовка атома (размер и тип) сопровождаемый массивом символов US-ASCII (8-разрядный, высокий ясный бит) включение значения тега. Символьный массив не является струной до; нет никакого нуля завершения. userdata размер атома элемента является суммой стандартного размера заголовка атома (8) и размера массива символа US-ASCII.Можно проверить маркированные характеристики носителей дорожки следующим образом:
NSArray *trackUserDataItems = [myAVAssetTrack metadataForFormat:AVMetadataFormatQuickTimeUserData];
NSArray *trackTaggedMediaCharacteristics = [AVMetadataItem metadataItemsFromArray:trackUserDataItems
withKey:AVMetadataQuickTimeUserDataKeyTaggedCharacteristic
keySpace:AVMetadataKeySpaceQuickTimeUserData];
for (AVMetadataItem *metadataItem in trackTaggedMediaCharacteristics) {
NSString *thisTrackMediaCharacteristic = [metadataItem stringValue];
}
Можно использовать
hasMediaCharacteristic:
] определить, имеет ли дорожка определенную характеристику носителей, выведена ли характеристика из ее типа среды или описаний формата (такой какAVMediaCharacteristicAudible
илиAVMediaCharacteristicContainsOnlyForcedSubtitles
) или требует явного тегирования (такой какAVMediaCharacteristicTranscribesSpokenDialogForAccessibility
илиAVMediaCharacteristicEasyToRead
). Обратите внимание на то, что явное тегирование не может использоваться для переопределения выводов из типов среды дорожек или описаний формата; например:[anAVAssetTrack hasMediaCharacteristic:AVMediaCharacteristicVisual]
возвратится
NO
false
для любого аудиотрека, даже если дорожка была упрямо тегирована с визуальной характеристикой.Маркированные характеристики носителей могут быть записаны в QuickTime userdata выходной дорожки, связанной с
AVAssetWriterInput
возразите следующим образом, при условии, что тип выходного файла писателя актива такжеAVFileTypeQuickTimeMovie
илиAVFileTypeAppleM4V
:AVMutableMetadataItem *myTaggedMediaCharacteristic = [[AVMutableMetadataItem alloc] init];
[myTaggedMediaCharacteristic setKey:AVMetadataQuickTimeUserDataKeyTaggedCharacteristic];
[myTaggedMediaCharacteristic setKeySpace:AVMetadataKeySpaceQuickTimeUserData];
[myTaggedMediaCharacteristic setValue:aMeaningfulCharacteristicAsNSString];
[myMutableArrayOfMetadata addObject:myTaggedMediaCharacteristic];
[myAssetWriterInput setMetadata:myMutableArrayOfMetadata];
-