AVAsset
AVAsset абстрактный класс для представления синхронизированных аудиовизуальных носителей, таких как видео и звуки. Каждый актив содержит набор дорожек, предназначающихся, чтобы быть представленными или обработанными вместе, каждый универсальный тип среды, включая, но не ограничиваясь этим, аудио, видео, текст, субтитры и подзаголовки.
AVAsset объект определяет коллективные свойства дорожек, включающих актив. (Можно получить доступ к экземплярам AVAssetTrack представление дорожек набора, таким образом, можно исследовать каждый из них независимо, если Вы должны.)
Вы часто инстанцируете использования актива AVURLAsset— конкретный подкласс AVAsset— с NSURLs, относящимися к аудиовизуальным медиаресурсам, таким как потоки (включая прямые трансляции HTTP), файлы фильма в формате QuickTime, файлы MP3 и файлы других типов. Можно также инстанцировать актива с помощью других конкретных подклассов, расширяющих базовую модель для аудиовизуальных носителей полезными способами, как AVComposition делает для временного редактирования.
Свойства активов в целом определяются AVAsset. Кроме того, ссылки на экземпляры AVAssetTrack представление дорожек набора может быть получено, так, чтобы каждый из них мог быть исследован независимо.
Из-за природы синхронизированных аудиовизуальных носителей на успешную инициализацию актива некоторые или все значения для его ключей могут не быть сразу доступными. В любое время значение любого ключа можно требовать, и актив всегда возвращает свое значение синхронно, несмотря на то, что этому, вероятно, придется блокировать вызывающий поток, чтобы сделать так. Когда их значения становятся доступными, во избежание блокирования можно зарегистрировать интерес к определенным ключам и стать уведомленными. Для получения дальнейшей информации посмотрите AVAsynchronousKeyValueLoading.
Играть экземпляр AVAsset, инициализируйте экземпляр AVPlayerItem с ним используйте элемент проигрывателя для установки его состояния представления (такой как, должен ли только ограниченный timeRange актива играться, и т.д.), и обеспечьте элемент проигрывателя для AVPlayer объект согласно тому, должны ли элементы играться отдельно или вместе с набором других элементов.
Можно вставить AVAsset объекты в AVMutableComposition возразите для сборки аудиовизуальных конструкций от одного или более исходных активов.
Разделение на подклассы примечаний
Не в настоящее время возможно разделить на подклассы AVAsset обработать протоколы потоковой передачи или форматы файлов, не поддерживающиеся платформой.
Наследование
-
NSObject -
AVAsset -
AVComposition -
AVMovie -
AVURLAsset
-
NSObject -
AVAsset -
AVComposition -
AVMovie -
AVURLAsset
Соответствует
-
AVAsynchronousKeyValueLoading -
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCopying -
NSObjectProtocol -
Печатаемый -
AVAsynchronousKeyValueLoading -
NSCopying -
NSObject
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в OS X v10.7 и позже.
-
Возвращает актив для проверки медиаресурса.
Объявление
Swift
class func assetWithURL(_URL: NSURL!) -> AnyObject!Objective C
+ (id)assetWithURL:(NSURL *)URLПараметры
URLURL это ссылается на медиаресурс.
Возвращаемое значение
Экземпляр подкласса
AVAssetинициализированный сURL.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Отменяет загрузку всех значений для всех наблюдателей.
Объявление
Swift
func cancelLoading()Objective C
- (void)cancelLoadingОбсуждение
Если какие-либо запросы загрузки являются все еще выдающимися, освобождение экземпляра актива неявно вызывает этот метод.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
commonMetadata commonMetadataСвойствоМассив элементов метаданных для каждого общего ключа метаданных, для которого значение доступно. (только для чтения)
Объявление
Swift
var commonMetadata: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *commonMetadataОбсуждение
Значение является массивом
AVMetadataItemобъекты, один для каждого ключа метаданных от общего ключевого пространства, для которого актив имеет доступное значение. Можно отфильтровать массив использованием локалиmetadataItemsFromArray:withLocale:(AVMetadataItem) или ключевым использованиемmetadataItemsFromArray:withKey:keySpace:(AVMetadataItem).Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Массив строк, каждый представляющий метаданные форматирует, это доступно активу. (только для чтения)
Объявление
Swift
var availableMetadataFormats: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *availableMetadataFormatsОбсуждение
Форматы метаданных могут включать ID3, метаданные iTunes, и т.д. Для получения дополнительной информации посмотрите
AVMetadataItem.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Возвращает массив
AVMetadataItemобъекты, один для каждого элемента метаданных в контейнере указанного форматаОбъявление
Swift
func metadataForFormat(_format: String!) -> [AnyObject]!Параметры
formatМетаданные форматируют, для которого Вы хотите элементы.
Возвращаемое значение
Массив
AVMetadataItemобъекты, один для каждого элемента метаданных в контейнере указанного формата, илиnilпри отсутствии метаданных указанного формата.Обсуждение
Можно отфильтровать массив локалью с помощью
AVMetadataItemметодmetadataItemsFromArray:withLocale:или ключом с помощьюAVMetadataItemметодmetadataItemsFromArray:withKey:keySpace:. ПосмотритеAVMetadataItemFilterиAVMetadataItemклассы для дополнительных методов для фильтрации.Специальные замечания
Этот метод становится вызываемым, не блокируя когда данные в
availableMetadataFormatsсвойство уже загружается.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Локали, доступные для глав в активе. (только для чтения)
Объявление
Swift
var availableChapterLocales: [AnyObject]! { get }Objective C
@property(readonly) NSArray *availableChapterLocalesОбсуждение
Массив содержит экземпляры
NSLocale.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
chapterMetadataGroupsWithTitleLocale (_: containingItemsWithCommonKeys:) - chapterMetadataGroupsWithTitleLocale:containingItemsWithCommonKeys:Возвращает массив глав с данной локалью заголовка и содержащий указанные ключи.
Объявление
Swift
func chapterMetadataGroupsWithTitleLocale(_locale: NSLocale!, containingItemsWithCommonKeyscommonKeys: [AnyObject]!) -> [AnyObject]!Параметры
localeЛокаль элементов метаданных, носящих названия главы, которые будут возвращены (метод поддерживает спецификацию IETF BCP 47 локалей).
commonKeysМассив общих ключей
AVMetadataItemвключать в возвращенный массив.AVMetadataCommonKeyArtworkединственный поддерживаемый ключ.Возвращаемое значение
Массив
AVTimedMetadataGroupобъекты.Обсуждение
Каждый объект в возвращенном массиве содержит
AVMetadataItemобъект, представляющий заголовок главы и свойство диапазона времениAVTimedMetadataGroupобъект равен диапазону времени элемента заголовка главы.AVMetadataItemс указанным общим ключом добавляется к существующемуAVTimedMetadataGroupвозразите если диапазон времени (метка времени и продолжительность) элемента метаданных и перекрытия группы метаданных.Локаль элементов, не переносящих заголовки главы, не должна соответствовать указанный параметр локали. Можно отфильтровать возвращенные элементы на основе использования локали
metadataItemsFromArray:withLocale:.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
chapterMetadataGroupsBestMatchingPreferredLanguages (_:) - chapterMetadataGroupsBestMatchingPreferredLanguages:Возвращает массив глав, локаль которых лучше всего соответствует список предпочтительных языков.
Объявление
Swift
func chapterMetadataGroupsBestMatchingPreferredLanguages(_preferredLanguages: [AnyObject]!) -> [AnyObject]!Параметры
preferredLanguagesМассив
NSStringобъекты, каждый из которых содержит канонический идентификатор IETF BCP 47 языка. Порядок идентификаторов в массиве отражает предпочтительный порядок языка с самым предпочтительным языком, находящимся первым в массиве. Как правило, Вы передаете предпочтительные языки пользователя путем получения этого массива отpreferredLanguagesметод классаNSLocale.Возвращаемое значение
Массив
AVTimedMetadataGroupобъекты.Обсуждение
Каждый объект в возвращенном массиве содержит
AVMetadataItemобъект, представляющий заголовок главы. Свойство диапазона времениAVTimedMetadataGroupобъект равен диапазону времени элемента заголовка главы.Все доступные метаданные главы включены в группы метаданных, включая элементы с общим ключом
AVMetadataCommonKeyArtwork, если присутствуют такие элементы. Элементы, не носящие названия главы, добавляются к существующемуAVTimedMetadataGroupвозразите если диапазон времени (метка времени и продолжительность) элемента метаданных и того из перекрытий группы метаданных. Локаль таких элементов не должна соответствовать локаль заголовков главы.Можно использовать
metadataItemsFromArray:filteredAndSortedAccordingToPreferredLanguages:метод для дальнейшей фильтрации элементов метаданных в каждой группе. Можно также отфильтровать возвращенные элементы на основе локали с помощьюmetadataItemsFromArray:withLocale:метод.Специальные замечания
Становится вызываемым, не блокируя когда данные в
availableChapterLocalesсвойство уже загружается.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.8 и позже.
-
Дорожки содержатся активом. (только для чтения)
Объявление
Swift
var tracks: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *tracksОбсуждение
Дорожки являются экземплярами
AVAssetTrack.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Возвращает дорожку с указанной дорожкой ID.
Объявление
Swift
func trackWithTrackID(_trackID: CMPersistentTrackID) -> AVAssetTrack!Objective C
- (AVAssetTrack *)trackWithTrackID:(CMPersistentTrackID)trackIDПараметры
trackIDtrackID требуемой дорожки актива.
Возвращаемое значение
Дорожка с дорожкой ID
trackID, илиnilесли никакая дорожка с указанным ID не доступна.Обсуждение
Можно вызвать этот метод, не блокируя когда данные в
tracksсвойство уже загружается.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Возвращает массив
AVAssetTrackобъекты актива, дарящие носителям заданную характеристику.Объявление
Swift
func tracksWithMediaCharacteristic(_mediaCharacteristic: String!) -> [AnyObject]!Параметры
mediaCharacteristicХарактеристика носителей, согласно которой получатель фильтрует свои дорожки актива.
Для допустимых значений посмотрите
Media Characteristics.Возвращаемое значение
Массив
AVAssetTrackобъекты тот существующие носители сmediaCharacteristic, или пустой массив, если никакие дорожки с заданной характеристикой не доступны.Обсуждение
Можно вызвать этот метод, не блокируя когда данные в
tracksсвойство уже загружается.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Возвращает массив дорожек актива актива, представляющих носители указанного типа.
Объявление
Swift
func tracksWithMediaType(_mediaType: String!) -> [AnyObject]!Параметры
mediaTypeТип среды, согласно которому актив фильтрует свои дорожки.
Типы среды определяются в
AVAssetTrack.Возвращаемое значение
Массив
AVAssetTrackобъекты актива тот существующие носителиmediaType.Обсуждение
Можно вызвать этот метод, не блокируя когда данные в
tracksсвойство уже загружается.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
trackGroups trackGroupsСвойствоМассив, содержащий все группы дорожки в активе. (только для чтения)
Объявление
Swift
var trackGroups: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *trackGroupsОбсуждение
Это - массив
AVAssetTrackGroupэкземпляры, каждый представляющий различную группировку дорожек в активе.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.9 и позже.
-
hasProtectedContent hasProtectedContentСвойствоБулево значение, указывающее, защитил ли актив содержание. (только для чтения)
Объявление
Swift
var hasProtectedContent: Bool { get }Objective C
@property(nonatomic, readonly) BOOL hasProtectedContentОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Указывает, может ли актив или его URL, использоваться для инициализации экземпляра
AVPlayerItem. (только для чтения)Объявление
Swift
var playable: Bool { get }Objective C
@property(nonatomic, readonly, getter=isPlayable) BOOL playableОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
экспортный экспортныйСвойствоБулево значение, указывающее, может ли актив быть экспортирован с помощью
AVAssetExportSession. (только для чтения)Объявление
Swift
var exportable: Bool { get }Objective C
@property(nonatomic, readonly, getter=isExportable) BOOL exportableОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Булево значение, указывающее, могут ли данные носителей актива быть извлечены с помощью
AVAssetReader. (только для чтения)Объявление
Swift
var readable: Bool { get }Objective C
@property(nonatomic, readonly, getter=isReadable) BOOL readableОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
composable composableСвойствоБулево значение, указывающее, может ли актив использоваться в сегменте
AVCompositionTrackобъект. (только для чтения)Объявление
Swift
var composable: Bool { get }Objective C
@property(nonatomic, readonly, getter=isComposable) BOOL composableОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Возвращает ID, который в настоящее время не использован любой из дорожек в активе.
Объявление
Swift
func unusedTrackID() -> CMPersistentTrackIDObjective C
- (CMPersistentTrackID)unusedTrackIDОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
метаданные метаданныеСвойствоМассив элементов метаданных для всех идентификаторов метаданных, для которых значение доступно. (только для чтения)
Объявление
Swift
var metadata: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *metadataОбсуждение
Массив
AVMetadataItemэкземпляры могут быть отфильтрованы согласно языку с помощьюmetadataItemsFromArray:filteredAndSortedAccordingToPreferredLanguages:метод. Они могут быть отфильтрованы идентификатором с помощьюmetadataItemsFromArray:filteredByIdentifier:метод.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.10 и позже.
-
продолжительность продолжительностьСвойствоПродолжительность актива. (только для чтения)
Объявление
Swift
var duration: CMTime { get }Objective C
@property(nonatomic, readonly) CMTime durationОбсуждение
Если
providesPreciseDurationAndTimingNOfalse, возвращается наилучшая имеющаяся оценка продолжительности. Можно установить степень точности, требуемой для связанных с синхронизацией свойств во время инициализации для активов, инициализированных с URLs (см.AVURLAssetPreferPreciseDurationAndTimingKeyвAVURLAsset).Если
providesPreciseDurationAndTimingYEStrueабсолютная точность, по любой стоимости обработки, влекущей за собой – и стоимость, может быть значительной для определенных форматов носителя, такой как .mpg. ЕслиprovidesPreciseDurationAndTimingустановлен вNOfalse, баланс между точностью и обработкой стоимости возвращается какduration. УстановкаprovidesPreciseDurationAndTimingсвойство кNOfalseвсегда достаточно для типичных сценариев воспроизведения, и в этом случае для некоторых форматов носителя, таков как .mov и .mp4, точность является абсолютной так или иначе.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Булево значение, указывающее, обеспечивает ли актив точную синхронизацию. (только для чтения)
Объявление
Swift
var providesPreciseDurationAndTiming: Bool { get }Objective C
@property(nonatomic, readonly) BOOL providesPreciseDurationAndTimingОбсуждение
Можно установить степень точности, требуемой для связанных с синхронизацией свойств во время инициализации для активов, инициализированных с URLs (см.
AVURLAssetPreferPreciseDurationAndTimingKeyвAVURLAsset).Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
См. также
-
Закодированный или созданный размер визуальной части актива. (только для чтения)
Оператор осуждения
Используйте
naturalSizeиpreferredTransform, как надлежащий, видеотреков актива вместо этого (см. такжеtracksWithMediaType:).Объявление
Objective C
@property(nonatomic, readonly) CGSize naturalSizeОператор импорта
Objective C
@import AVFoundation;Доступность
Доступный в OS X v10.7 и позже.
Осуждаемый в OS X v10.8.
-
preferredRate preferredRateСвойствоЕстественный уровень, на котором должен играться актив. (только для чтения)
Объявление
Swift
var preferredRate: Float { get }Objective C
@property(nonatomic, readonly) float preferredRateОбсуждение
Это значение часто, но не всегда,
1.0.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
preferredTransform preferredTransformСвойствоПредпочтительное преобразование для применения к визуальному содержанию актива для представления или обработки. (только для чтения)
Объявление
Swift
var preferredTransform: CGAffineTransform { get }Objective C
@property(nonatomic, readonly) CGAffineTransform preferredTransformОбсуждение
Значение часто, но не всегда, идентификационные данные преобразовывают.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
preferredVolume preferredVolumeСвойствоПредпочтительный объем, в котором слышимые носители актива должен играться. (только для чтения)
Объявление
Swift
var preferredVolume: Float { get }Objective C
@property(nonatomic, readonly) float preferredVolumeОбсуждение
Это значение часто, но не всегда,
1.0.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
Ссылочные ограничения, используемые получателем. (только для чтения)
Объявление
Swift
var referenceRestrictions: AVAssetReferenceRestrictions { get }Objective C
@property(nonatomic, readonly) AVAssetReferenceRestrictions referenceRestrictionsОбсуждение
Для
AVURLAsset, это свойство отражает, что значение передало в дляAVURLAssetReferenceRestrictionsKey,если таковые имеются.Значение по умолчанию для этого свойства
AVAssetReferenceRestrictionForbidNone. ПосмотритеAVURLAssetReferenceRestrictionsKeyдля полного обсуждения ссылочных ограничений.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.7 и позже.
-
availableMediaCharacteristicsWithMediaSelectionOptions availableMediaCharacteristicsWithMediaSelectionOptionsСвойствоМассив характеристик носителей, для которых опция выбора носителей доступна. (только для чтения)
Объявление
Swift
var availableMediaCharacteristicsWithMediaSelectionOptions: [AnyObject]! { get }Objective C
@property(nonatomic, readonly) NSArray *availableMediaCharacteristicsWithMediaSelectionOptionsОбсуждение
Значение этого свойства является массивом
NSStringобъекты, каждая строка, указывающая характеристику носителей, для которой опция выбора носителей доступна.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.8 и позже.
-
Возвраты
AVMediaSelectionGroupобъект, содержащий одну или более опций с указанной характеристикой носителей.Объявление
Swift
func mediaSelectionGroupForMediaCharacteristic(_mediaCharacteristic: String!) -> AVMediaSelectionGroup!Objective C
- (AVMediaSelectionGroup *)mediaSelectionGroupForMediaCharacteristic:(NSString *)mediaCharacteristicПараметры
mediaCharacteristicХарактеристика носителей, для которой Вы хотите получить доступные опции выбора носителей.
Только
AVMediaCharacteristicAudible,AVMediaCharacteristicVisual, иAVMediaCharacteristicLegibleв настоящее время поддерживаются.Передача
AVMediaCharacteristicAudibleполучить группу доступных параметров для аудио носителей на различных языках и в различных целях, таких как дескриптивное аудио.Передача
AVMediaCharacteristicLegibleполучить группу доступных параметров для подзаголовков на различных языках и в различных целях.Передача
AVMediaCharacteristicVisualполучить группу доступных параметров для видео носителей.
Возвращаемое значение
AVMediaSelectionGroupобъект, содержащий одну или более опций с характеристикой носителей, указаннойmediaCharacteristic, илиnilесли ни один не мог бы быть найден.Обсуждение
Можно вызвать этот метод, не блокируя когда ключ
availableMediaCharacteristicsWithMediaSelectionOptionsбыл загружен.Можно отфильтровать опции в возвращенной группе выбора носителей согласно пригодности для игры, локали, и дополнительные характеристики носителей могут быть выполнены с помощью методов фильтрации, определенных в
AVMediaSelectionGroupкласс.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.8 и позже.
-
creationDate creationDateСвойствоУказывает дату создания актива. (только для чтения)
Объявление
Swift
var creationDate: AVMetadataItem! { get }Objective C
@property(nonatomic, readonly) AVMetadataItem *creationDateОбсуждение
Значение этого свойства может быть
nil.Если дата создания была сохранена активом в форме, которая может быть преобразована в
NSDateобъект,dateValueсвойство элемента метаданных обеспечивает экземплярNSDate. Иначе дата создания доступна только как строковое значение, с помощьюAVMetadataItemклассstringValueметод.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в OS X v10.8 и позже.
