AVPlayer
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 4.0 и позже.
Вы используете AVPlayer
возразите для реализации контроллеров и пользовательских интерфейсов для сингла - или воспроизведение многократного элемента. Случай многократного элемента поддерживает усовершенствованные способы поведения.
AVPlayer
работы одинаково хорошо с локальными и удаленными медиа-файлами, если Вы с надлежащей информацией о готовности играть или о потребности ждать дополнительных данных перед продолжением.
Можно вывести на экран визуальное содержание элементов, играемых экземпляром AVPlayer
в уровне CoreAnimation класса AVPlayerLayer
; для синхронизации воспроизведения в реальном времени с другими уровнями CoreAnimation можно использовать AVSynchronizedLayer
. Вы не можете использовать экземпляр AVVideoCompositionCoreAnimationTool
с AVPlayer
объект; для оффлайнового рендеринга Вас должен вместо этого использовать AVAssetExportSession
.
Можно наблюдать состояние проигрывателя с помощью наблюдения значения ключа. Так, чтобы можно было добавить и удалить наблюдателей безопасно, AVPlayer
сериализирует уведомления об изменениях, происходящих динамично во время воспроизведения на очереди отгрузки. По умолчанию эта очередь является основной очередью (см. dispatch_get_main_queue
). Для обеспечения безопасного доступа к неатомарным свойствам проигрывателя, в то время как о динамических изменениях в состоянии воспроизведения можно сообщить необходимо сериализировать доступ с очередью уведомления получателя. В общем падеже такая сериализация естественно достигается путем вызова AVPlayer
различные методы на основном потоке или очереди.
Внешний режим воспроизведения
Внешний режим воспроизведения - когда видеоданные отправляются во внешнее устройство, такое как Apple TV через AirPlay, и мини-коннектор базировал адаптеры HDMI/VGA для полноэкранного воспроизведения в его исходной точности. Воспроизведение видео AirPlay также считают как «внешнее воспроизведение» режимом.
На «внешнем экране» режим (также известный как зеркальное отражение и второй дисплей), видеоданные представляются на устройстве хоста (например, iPhone), представил видео, повторно сжат и передан внешнему устройству, и внешнее устройство распаковывает и выводит на экран видео.
Внешние свойства воспроизведения влияют на Воспроизведение видео AirPlay и являются заменой для осуждаемых свойств поддержки AirPlay.
-
Инициализирует новый проигрыватель для игры единственного аудиовизуального ресурса, на который ссылается данный URL.
Параметры
URL
URL, идентифицирующий аудиовизуальный ресурс.
Возвращаемое значение
Получатель, инициализированный для игры аудиовизуального ресурса, указанного
URL
.Обсуждение
Этот метод неявно создает
AVPlayerItem
объект. Можно получить использование элемента проигрывателяcurrentItem
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Возвращает новый проигрыватель для игры единственного аудиовизуального ресурса, на который ссылается данный URL.
Объявление
Swift
class func playerWithURL(_
URL
: NSURL!) -> AnyObject!Objective C
+ (id)playerWithURL:(NSURL *)
URL
Параметры
URL
URL, идентифицирующий аудиовизуальный ресурс.
Возвращаемое значение
Новый проигрыватель, инициализированный для игры аудиовизуального ресурса, указанного
URL
.Обсуждение
Этот метод неявно создает
AVPlayerItem
объект. Можно получить использование элемента проигрывателяcurrentItem
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Инициализирует новый проигрыватель для игры данного единственного аудиовизуального элемента.
Объявление
Swift
init!(playerItem
item
: AVPlayerItem!)Objective C
- (instancetype)initWithPlayerItem:(AVPlayerItem *)
item
Параметры
item
Элемент проигрывателя.
Возвращаемое значение
Получатель, инициализированный для игры
item
.Обсуждение
Можно использовать этот метод для игры элементов, для которых у Вас есть существующее
AVAsset
объект (см.initWithAsset:
вAVPlayerItem
).Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Возвращает новый проигрыватель, инициализированный для игры данного единственного аудиовизуального элемента
Объявление
Swift
class func playerWithPlayerItem(_
item
: AVPlayerItem!) -> AnyObject!Objective C
+ (id)playerWithPlayerItem:(AVPlayerItem *)
item
Параметры
item
Элемент проигрывателя.
Возвращаемое значение
Новый проигрыватель, инициализированный для игры
item
.Обсуждение
Можно использовать этот метод для игры элементов для который
AVAsset
объект был ранее создан (см.initWithAsset:
вAVPlayerItem
).Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Начинает воспроизведение текущего элемента.
Объявление
Swift
func play()
Objective C
- (void)play
Обсуждение
Это совпадает с установкой
rate
к1.0
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Воспроизведение пауз.
Объявление
Swift
func pause()
Objective C
- (void)pause
Обсуждение
Это совпадает с установкой
rate
к0.0
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
rate
СвойствоДействующий курс воспроизведения.
Объявление
Swift
var rate: Float
Objective C
@property(nonatomic) float rate
Обсуждение
Значение
0.0
средние значения приостанавливают видео, в то время как значение1.0
игра на естественном уровне текущего элемента. Уровни кроме0.0
и1.0
если связанный элемент проигрывателя возвращается, может использоватьсяYES
true
дляAVPlayerItem
свойстваcanPlaySlowForward
илиcanPlayFastForward
. Если элемент проигрывателя возвращается, поддерживаются отрицательные диапазоны значений уровняYES
true
дляcanPlayReverse
,canPlaySlowReverse
, иcanPlayFastReverse
свойства.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
– игра
– пауза
canPlayFastForward
(Класс AVPlayerItem)canPlaySlowForward
(Класс AVPlayerItem)canPlayReverse
(Класс AVPlayerItem)canPlaySlowReverse
(Класс AVPlayerItem)canPlayFastReverse
(Класс AVPlayerItem) -
actionAtItemEnd
СвойствоДействие для выполнения, когда элемент закончил играть.
Объявление
Swift
var actionAtItemEnd: AVPlayerActionAtItemEnd
Objective C
@property(nonatomic) AVPlayerActionAtItemEnd actionAtItemEnd
Обсуждение
Для возможных значений посмотрите AVPlayerActionAtItemEnd.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
Заменяет элемент проигрывателя новым элементом проигрывателя.
Объявление
Swift
func replaceCurrentItemWithPlayerItem(_
item
: AVPlayerItem!)Objective C
- (void)replaceCurrentItemWithPlayerItem:(AVPlayerItem *)
item
Параметры
item
Элемент проигрывателя.
Обсуждение
Этот метод должен только быть вызван на экземпляры проигрывателя, создаваемые без очередей. Если проигрыватель инициализируется с многократными элементами, метод выдает исключение.
Замена элемента сразу происходит, элемент становится проигрывателем
currentItem
.Используя
replaceCurrentItemWithPlayerItem:
метод для замены проигрывателяcurrentItem
с собой ничего не делает. В iOS 4.0 и ранее, делая попытку этого повысил исключение.Используйте наблюдение значения ключа для наблюдения
currentItem
свойство для изменений.Специальные замечания
Новый элемент должен иметь того же наборщика как элемент, который он заменяет, или не имейте никакого наборщика.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
Начинает загружать данные носителей в начало конвейеры носителей для воспроизведения.
Объявление
Swift
func prerollAtRate(_
rate
: Float, completionHandlercompletionHandler
: ((Bool) -> Void)!)Objective C
- (void)prerollAtRate:(float)
rate
completionHandler:(void (^)(BOOL finished))completionHandler
Параметры
rate
Скорость воспроизведения для использования при определении, сколько данных для загрузки.
completionHandler
Блок для выполнения, когда проигрыватель заканчивает попытку загрузки. Этот блок берет содержащий единственный булев параметр
YES
true
если данные были загружены илиNO
false
если была проблема. Например, значение могло бы бытьNO
false
если предварительный рулон был прерван изменением времени или несовместимым изменением уровня.Обсуждение
Этот метод загружает данные, запускающиеся в текущем времени воспроизведения элемента. Действующий курс для элемента воспроизведения должен всегда быть 0 до вызова этого метода. После вызовов метода обработчик завершения можно изменить скорость воспроизведения элемента для начала воспроизведения.
Если объект проигрывателя не готов играть (
status
свойство неAVPlayerStatusReadyToPlay
), этот метод выдает исключение.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
Отмены предварительно загружение данных носителей.
Объявление
Swift
func cancelPendingPrerolls()
Objective C
- (void)cancelPendingPrerolls
Обсуждение
Этот метод отменяет любые незаконченные операции для подготовки конвейера рендеринга к текущему элементу.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
См. также
-
Возвращает текущее время текущего элемента.
Возвращаемое значение
Текущее время текущего элемента.
Обсуждение
Это свойство не является заметным значением ключа; использовать
addPeriodicTimeObserverForInterval:queue:usingBlock:
илиaddBoundaryTimeObserverForTimes:queue:usingBlock:
вместо этого.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
Перемещает курсор воспроизведения в данное время.
Параметры
time
Время, в которое можно переместить курсор воспроизведения.
Обсуждение
Время, ослепленное к, может отличаться с требуемого времени для эффективности. Поскольку видит демонстрационный точный поиск
seekToTime:toleranceBefore:toleranceAfter:
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
Перемещает курсор воспроизведения во время, указанное объектом даты.
Параметры
date
Время, в которое можно переместить курсор воспроизведения.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
См. также
-
Когда искать работа была или завершена или была прервана, перемещает курсор воспроизведения и выполняет указанный блок.
Объявление
Swift
func seekToTime(_
time
: CMTime, completionHandlercompletionHandler
: ((Bool) -> Void)!)Objective C
- (void)seekToTime:(CMTime)
time
completionHandler:(void (^)(BOOL finished))completionHandler
Параметры
time
Время, в которое требуется переместить курсор воспроизведения.
completionHandler
Блок для вызова, когда искать работа была или завершена или была прервана. Блок берет один параметр:
finished
Указывает, завершилась ли искать работа.
Обсуждение
Используйте этот метод, чтобы искать на требуемое время для текущего элемента проигрывателя и быть уведомленными, когда завершится работа. Если искать запрос завершается, не будучи прерванным (или другим, ищут запрос или любой другой работой), обработчик завершения, который Вы обеспечиваете, выполняется с
finished
набор параметра кYES
true
.Если другой ищет, запрос уже происходит при вызове этого метода обработчик завершения для происходящего ищут, запрос сразу выполняется с
finished
набор параметра кNO
false
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 5.0 и позже.
-
Когда искать работа завершается или прервана, перемещает курсор воспроизведения в требуемое время и выполняет указанный блок.
Объявление
Swift
func seekToDate(_
date
: NSDate!, completionHandlercompletionHandler
: ((Bool) -> Void)!)Objective C
- (void)seekToDate:(NSDate *)
date
completionHandler:(void (^)(BOOL finished))completionHandler
Параметры
date
Время, в которое можно переместить курсор воспроизведения.
completionHandler
Блок для вызова, когда искать работа была или завершена или была прервана. Блок берет один параметр:
finished
Указывает, завершилась ли искать работа.
Обсуждение
Используйте этот метод, чтобы искать на требуемое время для текущего элемента проигрывателя и быть уведомленными, когда завершится работа. Если искать запрос завершается, не будучи прерванным (или другим, ищут запрос или любой другой работой), обработчик завершения, который Вы обеспечиваете, выполняется с
finished
набор параметра кYES
true
.Если другой ищет, запрос уже происходит при вызове этого метода обработчик завершения для происходящего ищут, запрос сразу выполняется с
finished
набор параметра кNO
false
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 5.0 и позже.
-
Перемещает курсор воспроизведения в течение связанного требуемого времени.
Объявление
Параметры
time
Время, в которое требуется переместить курсор воспроизведения.
toleranceBefore
Допуск, позволенный прежде
time
.toleranceAfter
Допуск, позволенный после
time
.Обсуждение
Время, ослепленное к, будет в диапазоне
[time-beforeTolerance, time+afterTolerance]
, и может отличаться с требуемого времени для эффективности. Если Вы передаетеkCMTimeZero
для обоихtoleranceBefore
иtoleranceAfter
(для запроса демонстрационного точного поиска), можно подвергнуться дополнительной задержке декодирования.Передача
kCMTimePositiveInfinity
для обоихtoleranceBefore
иtoleranceAfter
совпадает с обменом сообщениямиseekToTime:
непосредственно.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
seekToTime (_: toleranceBefore:toleranceAfter:completionHandler:) - seekToTime:toleranceBefore:toleranceAfter:completionHandler:
Когда искать работа была или завершена или была прервана, перемещает курсор воспроизведения в течение связанного требуемого времени и вызывает указанный блок.
Объявление
Параметры
time
Время, в которое требуется переместить курсор воспроизведения.
toleranceBefore
Допуск, позволенный прежде
time
.toleranceAfter
Допуск, позволенный после
time
.completionHandler
Блок для вызова, когда искать работа была или завершена или была прервана.
Блок берет один параметр:
finished
Обозначенный, завершилась ли искать работа.
Обсуждение
Используйте этот метод, чтобы искать на требуемое время для текущего элемента проигрывателя и быть уведомленными, когда искать работа будет завершена.
Время, ослепленное к, будет в диапазоне
[time-beforeTolerance, time+afterTolerance]
, и может отличаться с требуемого времени для эффективности. Если Вы передаетеkCMTimeZero
для обоихtoleranceBefore
иtoleranceAfter
(для запроса демонстрационного точного поиска), можно подвергнуться дополнительной задержке декодирования.Вызов этого метода с
toleranceBefore
набор кkCMTimePositiveInfinity
иtoleranceAfter
набор кkCMTimePositiveInfinity
совпадает с вызовомseekToTime:
.Обработчик завершения для любого предшествующего ищет запрос, который находится все еще в процессе, будет сразу вызван с
finished
набор параметра кNO
false
. Если новый запрос завершается, не будучи прерванным другим, ищут запрос, или любой другой работой указанный обработчик завершения будет вызван сfinished
набор параметра кYES
true
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 5.0 и позже.
-
allowsExternalPlayback
СвойствоБулево значение, указывающее, позволяет ли проигрыватель переключаться на внешний режим воспроизведения.
Объявление
Swift
var allowsExternalPlayback: Bool
Objective C
@property(nonatomic) BOOL allowsExternalPlayback
Обсуждение
Значение по умолчанию этого свойства
YES
true
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
externalPlaybackActive
СвойствоБулево значение, указывающее, играет ли проигрыватель в настоящее время видео во внешнем режиме воспроизведения. (только для чтения)
Объявление
Swift
var externalPlaybackActive: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isExternalPlaybackActive) BOOL externalPlaybackActive
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
Булево значение, указывающее, должен ли проигрыватель автоматически переключиться на внешний режим воспроизведения, в то время как внешний экранный режим активен для игры видеоконтента.
Объявление
Swift
var usesExternalPlaybackWhileExternalScreenIsActive: Bool
Objective C
@property(nonatomic) BOOL usesExternalPlaybackWhileExternalScreenIsActive
Обсуждение
Проигрыватель автоматически переключится назад на внешний экранный режим, как только заканчивается воспроизведение видео. Краткий переход может быть видим на внешнем дисплее при автоматическом переключении между этими двумя режимами. Значение по умолчанию этого свойства
NO
false
. Значение этого свойства не имеет никакого эффекта еслиallowsExternalPlayback
NO
false
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
externalPlaybackVideoGravity
СвойствоВидео серьезность проигрывателя для внешнего режима воспроизведения только.
Объявление
Swift
var externalPlaybackVideoGravity: String!
Objective C
@property(nonatomic, copy) NSString *externalPlaybackVideoGravity
Обсуждение
Значение этого свойства могло быть
AVLayerVideoGravityResize
,AVLayerVideoGravityResizeAspectFill
, илиAVLayerVideoGravityResizeAspect
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
Синхронизирует скорость воспроизведения и время текущего элемента с внешним источником.
Объявление
Параметры
rate
Скорость воспроизведения для элемента.
itemTime
Точное время, в которое можно соответствовать воспроизведение элемента. Для использования текущего времени текущего элемента указать
kCMTimeInvalid
.hostClockTime
Время узла, в которое можно синхронизировать воспроизведение. Если Вы указываете
kCMTimeInvalid
, уровень и время установлен вместе без любой внешней синхронизации.Обсуждение
Этот метод корректирует timebase текущего элемента так, чтобы время в
itemTime
находится в синхронизации со временем вhostClockTime
. Таким образом, еслиhostClockTime
указывает время в прошлом, timebase элемента корректируется, чтобы заставить его появиться, как будто элемент работал на указанном уровне с тех порitemTime
. И еслиhostClockTime
указывает время в будущем, воспроизведение корректируется назад (если возможный) так, чтобы значение вitemTime
происходит в точный момент, в котором часы узла достигают значенияhostClockTime
. Если нет никакого содержания для игры перед временем, указаннымitemTime
, воспроизведение содержит, до эти два раза входит в синхронизацию.Этот метод не гарантирует, что данные носителей загружаются, прежде чем timebase начинает перемещаться. Однако, если бы Вы указываете время узла в ближайшем будущем, которое дало бы Вам некоторое время, чтобы загрузить данные носителей и подготовиться к воспроизведению.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
masterClock
СвойствоОсновной тактовый генератор, используемый для элемента timebases.
Объявление
Swift
var masterClock: CMClock!
Objective C
@property(nonatomic, retain) CMClockRef masterClock
Обсуждение
Значение по умолчанию этого свойства
NULL
, что означает, что автоматически выбран основной тактовый генератор. Когда не -NULL
, это свойство переопределяет автоматический выбор основного тактового генератора для элемента timebases. Это является самым полезным при синхронизации фильмов только для видео с аудио, играемым другим источником.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
addPeriodicTimeObserverForInterval (_: queue:usingBlock:) - addPeriodicTimeObserverForInterval:queue:usingBlock:
Вызов запросов данного блока во время воспроизведения для создания отчетов об изменяющемся времени.
Объявление
Swift
func addPeriodicTimeObserverForInterval(_
interval
: CMTime, queuequeue
: dispatch_queue_t!, usingBlockblock
: ((CMTime) -> Void)!) -> AnyObject!Параметры
interval
Интервал вызова блока во время нормального воспроизведения, согласно прогрессу текущего времени проигрывателя.
queue
Последовательная очередь та, на который
block
должен ставиться в очередь.Если Вы передаете
NULL
, основная очередь (полученное использованиеdispatch_get_main_queue(3) Mac OS X Developer Tools Manual Page
) используется. Передача параллельной очереди приведет к неопределенному поведению.block
Блок, который будет периодически вызываться.
Блок берет единственный параметр:
time
Время, в которое вызывается блок.
Возвращаемое значение
Непрозрачный объект, которому Вы передаете как параметр
removeTimeObserver:
отменять наблюдение.Обсуждение
Необходимо сохранить возвращенное значение, пока Вы хотите, чтобы наблюдатель времени был вызван проигрывателем. Каждый вызов этого метода должен быть соединен с соответствующим вызовом к
removeTimeObserver:
.Блок периодически вызывается в указанном интервале, интерпретируемом согласно временной шкале текущего элемента. Блок также вызывается каждый раз, когда время переходит и каждый раз, когда воспроизведение запускается или останавливается. Если интервал соответствует очень короткому интервалу в режиме реального времени, проигрыватель может вызывать блок менее часто, чем требуемый. Несмотря на это, проигрыватель будет вызывать блок достаточно часто для клиента для обновления признаков текущего времени соответственно в его интерфейсе конечного пользователя.
Специальные замечания
Выпуск наблюдателя возражает без вызова
removeTimeObserver:
приведет к неопределенному поведению.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
addBoundaryTimeObserverForTimes (_: queue:usingBlock:) - addBoundaryTimeObserverForTimes:queue:usingBlock:
Вызов запросов блока, когда требуемое время пересечено во время нормального воспроизведения.
Объявление
Swift
func addBoundaryTimeObserverForTimes(_
times
: [AnyObject]!, queuequeue
: dispatch_queue_t!, usingBlockblock
: (() -> Void)!) -> AnyObject!Objective C
- (id)addBoundaryTimeObserverForTimes:(NSArray *)
times
queue:(dispatch_queue_t)queue
usingBlock:(void (^)(void))block
Параметры
times
Массив
NSValue
объекты, содержащиеCMTime
значения, представляющие времена, в которые можно вызватьblock
.queue
Последовательная очередь та, на который
block
должен ставиться в очередь.Если Вы передаете
NULL
, основная очередь (полученное использованиеdispatch_get_main_queue(3) Mac OS X Developer Tools Manual Page
) используется. Передача параллельной очереди приведет к неопределенному поведению.block
Блок, который будет вызван, когда любое из времен в
times
пересечен во время нормального воспроизведения.Возвращаемое значение
Непрозрачный объект, которому Вы передаете как параметр
removeTimeObserver:
остановить наблюдение.Обсуждение
Необходимо сохранить возвращенное значение, пока Вы хотите, чтобы наблюдатель времени был вызван проигрывателем. Каждый вызов этого метода должен быть соединен с соответствующим вызовом к
removeTimeObserver:
.Специальные замечания
Поток
block
вызывается на, может не быть обслужен циклом выполнения приложения. Если необходимо выполнить работу в пользовательском интерфейсе, необходимо гарантировать, что работа возвращается к основному потоку.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
Отменяет ранее зарегистрированного наблюдателя времени.
Объявление
Swift
func removeTimeObserver(_
observer
: AnyObject!)Objective C
- (void)removeTimeObserver:(id)
observer
Параметры
observer
Объект, возвращенный предыдущим вызовом к
addPeriodicTimeObserverForInterval:queue:usingBlock:
илиaddBoundaryTimeObserverForTimes:queue:usingBlock:
.Обсуждение
По возврату вызывающей стороне не гарантируют того нового наблюдателя времени, которого блоки начнут выполнять. В зависимости от вызывающего потока и очереди, используемой для добавления наблюдателя времени, блок в полете может продолжать выполняться после этого метода возвраты. Можно гарантировать синхронное удаление наблюдателя времени путем постановки в очередь вызова к
removeTimeObserver
на той очереди. Также вызовитеdispatch_sync(queue, ^{})
послеremoveTimeObserver
ожидать любых блоков в полете, чтобы закончить выполняться.Необходимо использовать этот метод для явной отмены каждый раз, когда наблюдатель добавил использование
addPeriodicTimeObserverForInterval:queue:usingBlock:
иaddBoundaryTimeObserverForTimes:queue:usingBlock:
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
closedCaptionDisplayEnabled
СвойствоУказывает, закрыло ли использование проигрывателя ввод субтитров.
Объявление
Swift
var closedCaptionDisplayEnabled: Bool
Objective C
@property(nonatomic, getter=isClosedCaptionDisplayEnabled) BOOL closedCaptionDisplayEnabled
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
muted
СвойствоУказывает, отключен ли аудиовыход проигрывателя звук.
Объявление
Swift
var muted: Bool
Objective C
@property(nonatomic, getter=isMuted) BOOL muted
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 7.0 и позже.
-
volume
СвойствоОбъем воспроизведения аудио для проигрывателя, в пределах от
0.0
через1.0
в линейной шкале.Объявление
Swift
var volume: Float
Objective C
@property(nonatomic) float volume
Обсуждение
Значение
0.0
указывает тишину; значение1.0
(значение по умолчанию), указывает полную громкость для экземпляра проигрывателя.Используйте это свойство для управления громкостью проигрывателя относительно другого аудиовыхода.
Для обеспечения UI в iOS для корректировки системного объема воспроизведения аудио используйте
MPVolumeView
класс, обеспечивающий управление воспроизведением носителей, которое ожидают пользователи iOS и чье появление можно настроить.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 7.0 и позже.
-
status
СвойствоУказывает, может ли проигрыватель использоваться для воспроизведения. (только для чтения)
Объявление
Swift
var status: AVPlayerStatus { get }
Objective C
@property(nonatomic, readonly) AVPlayerStatus status
Обсуждение
Когда значение этого свойства
AVPlayerStatusFailed
, Вы больше не можете использовать проигрыватель для воспроизведения, и необходимо создать новый экземпляр для замены его. Если это происходит, можно проверить значение ошибочного свойства для определения природы отказа.Это свойство является значением ключа заметное наблюдение Значения ключа использования.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
error
СвойствоЕсли состояние получателя
AVPlayerStatusFailed
, это описывает ошибку, вызвавшую отказ. (только для чтения)Объявление
Swift
var error: NSError! { get }
Objective C
@property(nonatomic, readonly) NSError *error
Обсуждение
Значение этого свойства является ошибочным объектом, описывающим то, что заставило получатель больше не быть в состоянии играть элементы. Если состояние получателя не
AVPlayerStatusFailed
, значение этого свойстваnil
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
currentItem
СвойствоТекущий элемент проигрывателя. (только для чтения)
Объявление
Swift
var currentItem: AVPlayerItem! { get }
Objective C
@property(nonatomic, readonly) AVPlayerItem *currentItem
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
Булево значение, указывающее, затеняется ли выведенный из-за недостаточной внешней защиты. (только для чтения)
Объявление
Swift
var outputObscuredDueToInsufficientExternalProtection: Bool { get }
Objective C
@property(nonatomic, readonly) BOOL outputObscuredDueToInsufficientExternalProtection
Обсуждение
Элементам, включающим защиту от копирования или другие формы безопасности, мог бы затенить их визуальное содержание объект проигрывателя, если текущая конфигурация устройства не удовлетворяет требования для защиты элемента. Это свойство сообщает, затеняет ли проигрыватель в настоящее время элемент. Если текущий элемент не требует внешней защиты или если конфигурация устройства достаточно защищает элемент, значение этого свойства установлено в
NO
false
.Можно использовать это свойство, чтобы определить, изменить ли пользовательский интерфейс приложения для отражения изменения в видимости. Можно наблюдать изменения в значении этого свойства с помощью наблюдения Значения ключа.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
-
Указывает, играет ли проигрыватель в настоящее время видео через AirPlay. (только для чтения)
Объявление
Objective C
@property(nonatomic, readonly, getter=isAirPlayVideoActive) BOOL airPlayVideoActive
Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 5.0 и позже.
Осуждаемый в iOS 6.0.
См. также
-
Указывает, позволяет ли проигрыватель воспроизведение видео AirPlay.
Объявление
Objective C
@property(nonatomic) BOOL allowsAirPlayVideo
Обсуждение
Значение по умолчанию
YES
true
.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 5.0 и позже.
Осуждаемый в iOS 6.0.
-
Указывает, должен ли проигрыватель автоматически переключиться на Видео AirPlay, в то время как Экран AirPlay активен для игры видеоконтента, переключаясь назад на Экран AirPlay, как только сделано воспроизведение.
Объявление
Objective C
@property(nonatomic) BOOL usesAirPlayVideoWhileAirPlayScreenIsActive
Обсуждение
Значение по умолчанию
NO
false
.Это свойство не имеет никакого эффекта если
allowsAirPlayVideo
NO
false
.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 5.0 и позже.
Осуждаемый в iOS 6.0.
См. также
-
Указывает, должен ли получатель применить текущие критерии выбора автоматически к элементам проигрывателя.
Объявление
Swift
var appliesMediaSelectionCriteriaAutomatically: Bool
Objective C
@property(nonatomic) BOOL appliesMediaSelectionCriteriaAutomatically
Обсуждение
По умолчанию,
AVPlayer
экземпляр применяет критерии выбора на основе установок системы. Для переопределения критериев по умолчанию любой группы выбора носителей использоватьsetMediaSelectionCriteria:forMediaCharacteristic:
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 7.0 и позже.
-
Возвращает автоматические критерии выбора для носителей, который имеет указанную характеристику носителей.
Объявление
Swift
func mediaSelectionCriteriaForMediaCharacteristic(_
mediaCharacteristic
: String!) -> AVPlayerMediaSelectionCriteria!Objective C
- (AVPlayerMediaSelectionCriteria *)mediaSelectionCriteriaForMediaCharacteristic:(NSString *)
mediaCharacteristic
Параметры
mediaCharacteristic
Характеристика носителей, для которой критерии выбора должен быть возвращен. Поддерживаемые значения включают
AVMediaCharacteristicAudible
,AVMediaCharacteristicLegible
, иAVMediaCharacteristicVisual
.Возвращаемое значение
Автоматические критерии выбора носителей для
mediaCharacteristic
.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 7.0 и позже.
-
setMediaSelectionCriteria (_: forMediaCharacteristic:) - setMediaSelectionCriteria:forMediaCharacteristic:
Применяет автоматические критерии выбора для носителей, который имеет указанную характеристику носителей.
Объявление
Swift
func setMediaSelectionCriteria(_
criteria
: AVPlayerMediaSelectionCriteria!, forMediaCharacteristicmediaCharacteristic
: String!)Objective C
- (void)setMediaSelectionCriteria:(AVPlayerMediaSelectionCriteria *)
criteria
forMediaCharacteristic:(NSString *)mediaCharacteristic
Параметры
criteria
Экземпляр AVPlayerMediaSelectionCriteria, указывающего критерии выбора.
mediaCharacteristic
Характеристика носителей, для которой должны быть применены критерии выбора. Поддерживаемые значения включают
AVMediaCharacteristicAudible
,AVMediaCharacteristicLegible
, иAVMediaCharacteristicVisual
.Обсуждение
Критериям применятся к
AVPlayerItem
экземпляр, когда:Это приготовлено для игры.
Определенные выборы носителей сделаны
AVPlayerItem
экземпляр с помощью методаselectMediaOption:inMediaSelectionGroup:
в другой группе. Автоматический выбор в одной группе может быть под влиянием определенного выбора в другой группе.Лежа в основе изменения установок системы, например, системного языка, заголовков доступности.
Определенные выборы, сделанные
AVPlayerItem
экземпляр с помощью методаselectMediaOption:inMediaSelectionGroup:
метод в любой группе переопределит автоматический выбор в той группе, пока элемент проигрывателя не получит aselectMediaOptionAutomaticallyInMediaSelectionGroup:
сообщение.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 7.0 и позже.
-
Возможные значения
status
свойство, чтобы указать, может ли это успешно играть элементы.Объявление
Swift
enum AVPlayerStatus : Int { case Unknown case ReadyToPlay case Failed }
Objective C
enum { AVPlayerStatusUnknown, AVPlayerStatusReadyToPlay, AVPlayerStatusFailed }; typedef NSInteger AVPlayerStatus;
Константы
-
Unknown
AVPlayerStatusUnknown
Указывает, что состояние проигрывателя еще не известно, потому что это не попыталось загрузить новые медиаресурсы для воспроизведения.
Доступный в iOS 4.0 и позже.
-
ReadyToPlay
AVPlayerStatusReadyToPlay
Указывает, что проигрыватель готов играть
AVPlayerItem
экземпляры.Доступный в iOS 4.0 и позже.
-
Failed
AVPlayerStatusFailed
Указывает, что больше не может играть проигрыватель
AVPlayerItem
экземпляры из-за ошибки.Ошибка описана значением проигрывателя
error
свойство.Доступный в iOS 4.0 и позже.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-
-
Вы используете эти константы с
actionAtItemEnd
для указания действия, проигрыватель должен взять, когда это заканчивает играть.Объявление
Swift
enum AVPlayerActionAtItemEnd : Int { case Advance case Pause case None }
Objective C
enum { AVPlayerActionAtItemEndAdvance = 0, AVPlayerActionAtItemEndPause = 1, AVPlayerActionAtItemEndNone = 2, }; typedef NSInteger AVPlayerActionAtItemEnd;
Константы
-
Advance
AVPlayerActionAtItemEndAdvance
Указывает, что проигрыватель должен совершенствоваться к следующему элементу, если существует тот.
Доступный в iOS 4.1 и позже.
-
Pause
AVPlayerActionAtItemEndPause
Указывает, что проигрыватель должен приостановить игру.
Доступный в iOS 4.0 и позже.
-
None
AVPlayerActionAtItemEndNone
Указывает, что проигрыватель ничего не должен делать.
Доступный в iOS 4.0 и позже.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
-