Описание
Plays video content onto a target.
Содержимым может быть либо импортированный ресурс VideoClip, либо URL-адрес, например file://
или https://
. Видеоконтент будет проецироваться на одну из поддерживаемых целей, например на фон камеры или RenderTexture.
Если видеоконтент включает прозрачность, эта прозрачность будет присутствовать в мишени, позволяя видеть объекты за мишенью видео. Если для данных VideoPlayer.source задано значение URL, аудио- и видеоописание того, что воспроизводится, будет инициализировано только после того, как VideoPlayer завершена. Вы можете проверить это с помощью VideoPlayer.isPrepared.
The following demonstrates a few features of the VideoPlayer:
// Examples of VideoPlayer function
using UnityEngine;
public class Example : MonoBehaviour
{
void Start()
{
// Will attach a VideoPlayer to the main camera.
GameObject camera = GameObject.Find("Main Camera");
// VideoPlayer automatically targets the camera backplane when it is added
// to a camera object, no need to change videoPlayer.targetCamera.
var videoPlayer = camera.AddComponent();
// Play on awake defaults to true. Set it to false to avoid the url set
// below to auto-start playback since we're in Start().
videoPlayer.playOnAwake = false;
// By default, VideoPlayers added to a camera will use the far plane.
// Let's target the near plane instead.
videoPlayer.renderMode = UnityEngine.Video.VideoRenderMode.CameraNearPlane;
// This will cause our Scene to be visible through the video being played.
videoPlayer.targetCameraAlpha = 0.5F;
// Set the video to play. URL supports local absolute or relative paths.
// Here, using absolute.
videoPlayer.url = "/Users/graham/movie.mov";
// Skip the first 100 frames.
videoPlayer.frame = 100;
// Restart from beginning when done.
videoPlayer.isLooping = true;
// Each time we reach the end, we slow down the playback by a factor of 10.
videoPlayer.loopPointReached += EndReached;
// Start playback. This means the VideoPlayer may have to prepare (reserve
// resources, pre-load a few frames, etc.). To better control the delays
// associated with this preparation one can use videoPlayer.Prepare() along with
// its prepareCompleted event.
videoPlayer.Play();
}
void EndReached(UnityEngine.Video.VideoPlayer vp)
{
vp.playbackSpeed = vp.playbackSpeed / 10.0F;
}
}
Статические Свойства
controlledAudioTrackMaxCount | Maximum number of audio tracks that can be controlled. (Read Only) |
Свойства
aspectRatio | Определяет, как видеоконтент будет растягиваться, чтобы заполнить целевую область. |
audioOutputMode | Место назначения для аудио, встроенного в видео. |
audioTrackCount | Количество звуковых дорожек, найденных в текущем сконфигурированном источнике данных. (Только чтение) |
canSetDirectAudioVolume | Поддерживаются ли регуляторы громкости прямого вывода для текущей платформы и формата видео. (Только чтение) |
canSetPlaybackSpeed | Можно ли изменить скорость воспроизведения. (Только чтение) |
canSetSkipOnDrop | Можно ли контролировать пропуск кадров для поддержания синхронизации. (Только чтение) |
canSetTime | Можно ли изменить текущее время с помощью свойства time или timeFrames. (Только чтение) |
canSetTimeSource | Можно ли изменить источник времени, за которым следует VideoPlayer. (Только чтение) |
canStep | Возвращает true, если VideoPlayer может переходить вперед по видеоконтенту. (Только чтение) |
clip | Клип, воспроизводимый VideoPlayer. |
clockTime | Время по часам, которому VideoPlayer следует для планирования своих семплов. Время часов выражается в секундах. (Только чтение) |
controlledAudioTrackCount | Количество звуковых дорожек, которыми этот VideoPlayer будет управлять. |
externalReferenceTime | Эталонное время внешних часов, которое VideoPlayer использует для коррекции дрейфа. |
frame | Индекс кадра доступного в данный момент кадра в VideoPlayer.texture. |
frameCount | Количество кадров в текущем видеоконтенте. (Только чтение) |
frameRate | Частота кадров клипа или URL-адреса в кадрах в секунду. (Только чтение) |
height | Высота изображений в видеоклипе или URL-адресе в пикселях. (Только чтение) |
isLooping | Определяет, будет ли VideoPlayer перезапускаться с начала при достижении конца клипа. |
isPaused | Приостановлено ли воспроизведение. (Только чтение) |
isPlaying | Воспроизводится ли контент. (Только чтение) |
isPrepared | Успешно ли VideoPlayer подготовил содержимое для воспроизведения. (Только чтение) |
length | Длина видеоклипа или URL-адрес в секундах. (Только чтение) |
pixelAspectRatioDenominator | Знаменатель соотношения сторон пикселя (число:день) для видеоклипа или URL-адреса. (Только чтение) |
pixelAspectRatioNumerator | Числитель соотношения сторон пикселя (число:день) для видеоклипа или URL-адреса. (Только чтение) |
playbackSpeed | Коэффициент, на который будет умножаться базовая скорость воспроизведения. |
playOnAwake | Будет ли воспроизводиться контент, как только компонент проснется. |
renderMode | Где будет отрисовываться видеоконтент. |
sendFrameReadyEvents | Включает события frameReady. |
skipOnDrop | Разрешено ли VideoPlayer пропускать кадры, чтобы не отставать от текущего времени. |
source | Источник, который VideoPlayer использует для воспроизведения. |
targetCamera | Компонент камеры для отрисовки, когда для параметра VideoPlayer.renderMode установлено значение VideoRenderMode.CameraFarPlane или VideoRenderMode.CameraNearPlane. |
targetCamera3DLayout | Тип 3D-контента, содержащегося в исходном видеоносителе. |
targetCameraAlpha | Общий уровень прозрачности видео плоскости целевой камеры. |
targetMaterialProperty | Свойство текстуры материала, которое используется, когда VideoPlayer.renderMode имеет значение Video.VideoTarget.MaterialOverride. |
targetMaterialRenderer | Рендерер, который является целевым, когда для VideoPlayer.renderMode установлено значение Video.VideoTarget.MaterialOverride. |
targetTexture | RenderTexture для рисования, когда для параметра VideoPlayer.renderMode установлено значение Video.VideoTarget.RenderTexture. |
texture | Внутренняя текстура, в которой размещается видеоконтент. (Только чтение) |
time | Время представления доступного в данный момент кадра в VideoPlayer.texture. |
timeReference | Часы, которые наблюдает VideoPlayer, чтобы обнаружить и исправить дрейф. |
timeSource | [ЕЩЕ НЕ РЕАЛИЗОВАНО] Источник, используемый VideoPlayer для получения текущего времени. |
url | Файл или URL-адрес HTTP, из которого VideoPlayer считывает содержимое. |
waitForFirstFrame | Определяет, будет ли VideoPlayer ожидать загрузки первого кадра в текстуру перед началом воспроизведения, если VideoPlayer.playOnAwake включен. |
width | Ширина изображений в видеоклипе или URL-адресе в пикселях. (Только чтение) |
Публичные Методы
EnableAudioTrack | Включить/выключить декодирование звуковой дорожки. Эффективен только тогда, когда VideoPlayer в данный момент не воспроизводится. |
GetAudioChannelCount | Количество аудиоканалов в указанной звуковой дорожке. |
GetAudioLanguageCode | Возвращает код языка, если он есть, для указанной дорожки. |
GetAudioSampleRate | Получает частоту дискретизации звуковой дорожки в герцах. |
GetDirectAudioMute | Получает состояние отключения звука прямого вывода для указанной дорожки. |
GetDirectAudioVolume | Возвращает громкость прямого вывода для указанной дорожки. |
GetTargetAudioSource | Получает AudioSource, который будет получать образцы аудио для указанной дорожки, если для параметра VideoPlayer.audioOutputMode установлено значение VideoAudioOutputMode.AudioSource. |
IsAudioTrackEnabled | Включено ли декодирование для указанной звуковой дорожки. См. VideoPlayer.EnableAudioTrack для отличия от отключения звука.. |
Pause | Приостанавливает воспроизведение и оставляет текущее время без изменений. |
Play | Запускает воспроизведение. |
Prepare | Инициирует подготовку механизма воспроизведения. |
SetDirectAudioMute | Устанавливает статус отключения звука прямого вывода для указанной дорожки. |
SetDirectAudioVolume | Устанавливает громкость звука прямого вывода для указанной дорожки. |
SetTargetAudioSource | Устанавливает AudioSource, который будет получать образцы звука для указанной дорожки, если эта цель звука выбрана с помощью VideoPlayer.audioOutputMode.. |
StepForward | Немедленно переводит текущее время на один кадр вперед. |
Stop | Останавливает воспроизведение и устанавливает текущее время на 0. |
События
clockResyncOccurred | Вызывается, когда часы VideoPlayer синхронизируются с его VideoTimeReference. |
errorReceived | Об ошибках, таких как проблемы с HTTP-соединением, сообщается через этот обратный вызов. |
frameDropped | [ЕЩЕ НЕ РЕАЛИЗОВАНО] Вызывается, когда видеодекодер не создает кадр в соответствии с источником времени во время воспроизведения. |
frameReady | Вызывается, когда новый кадр готов. |
loopPointReached | Вызывается, когда VideoPlayer достигает конца содержимого для воспроизведения. |
prepareCompleted | Вызывается, когда подготовка VideoPlayer завершена. |
seekCompleted | Вызов после завершения операции поиска. |
started | Вызывается сразу после вызова Play. |
Делегаты
ErrorEventHandler | Тип делегата для событий VideoPlayer, содержащих сообщение об ошибке. |
EventHandler | Тип делегата для всех событий без параметров, создаваемых VideoPlayers. |
FrameReadyEventHandler | Тип делегата для событий VideoPlayer, которые содержат номер кадра. |
TimeEventHandler | Тип делегата для событий VideoPlayer, которые содержат временную позицию. |
Унаследованные члены
Свойства
enabled | Включенные поведения обновляются, отключенные — нет. |
isActiveAndEnabled | Было ли поведение активным и включенным? |
gameObject | Игровой объект, к которому прикреплен компонент. Компонент всегда привязан к игровому объекту. |
tag | Тег игрового объекта. |
transform | Transform, прикрепленный игровому объекту. |
hideFlags | Должен ли объект быть скрыт, сохранен вместе со сценой или изменен пользователем? |
name | Имя объекта |
Публичные Методы
BroadcastMessage | Вызывает метод с именем methodName для каждого MonoBehaviour в игровом объекте или любом из его дочерних элементов. |
CompareTag | Помечен ли этот игровой объект тегом? |
GetComponent | Возвращает компонент, если он прикреплён к игровому объекту, и null, если нет. Также возвращает отключенные компоненты. |
GetComponentInChildren | Возвращает компонент дочернего элемента игрового объекта, используя поиск в глубину. |
GetComponentInParent | Возвращает компонент игрового объекта в любом из его родителей. |
GetComponents | Возвращает все компоненты игрового объекта |
GetComponentsInChildren | Возвращает все компоненты дочерних элементов игрового объекта. Работает рекурсивно. |
GetComponentsInParent | Возвращает все компоненты игрового объекта любого из родителя. |
SendMessage | Вызывает метод с именем methodName для каждого MonoBehaviour в этом игровом объекте. |
SendMessageUpwards | Вызывает метод с именем methodName для каждого MonoBehaviour в этом игровом объекте и для каждого behaviour. |
TryGetComponent | Получает компонент указанного типа, если он существует. |
GetInstanceID | Возвращает идентификатор экземпляра объекта. |
ToString | Возвращает имя объекта. |
Статические Методы
Destroy | Удаляет игровой объект, компонент или актив. |
DestroyImmediate | Уничтожает объект obj. Настоятельно рекомендуется использовать Destroy. |
DontDestroyOnLoad | Не уничтожает целевой объект при загрузке новой сцены. |
FindObjectOfType | Возвращает первый активный загруженный объект. |
FindObjectsOfType | Получает список всех загруженных объектов. |
Instantiate | Клонирует исходный объект и возвращает клон. |
Операторы
bool | Объект существует? |
operator != | Сравнивает, ссылаются ли два объекта на другой объект. |
operator == | Сравнивает две ссылки на объекты, чтобы определить, ссылаются ли они на один и тот же объект. |