Movie File In: воспроизведение
Четыре режима времени, индекс в кадрах файла, Pre-Read против рывков, preload() перед сменой ролика и каналы Info, по которым видно, открылся ли файл.
Movie File In TOP — плеер с управлением по кадрам, и плавность зависит от того, как им управлять.
Режимы
Play Mode на странице Play:
| Режим | Как идёт время | Когда |
|---|---|---|
| Sequential | Файл играет сам: Play включает, Speed задаёт скорость |
Обычное воспроизведение; режим по умолчанию |
| Specify Index | Кадр задаётся параметром Index |
Точный контроль: скрабирование, синхронизация, кадр из CHOP |
| Locked to Timeline | Кадр файла привязан к таймлайну проекта | Контент, сделанный под таймлайн |
| Timecode Object/CHOP/DAT | Кадр берётся из таймкода | Шоу по таймкоду |
Шоу и синхронные машины держатся на Specify Index и таймкоде: кадр
считается из внешнего времени. Index Unit бывает в кадрах файла,
кадрах проекта, секундах или долях 0…1 от длины.
В единицах I счёт идёт по кадрам файла: у ролика на 30 кадров индекс 30
означает секунду, даже если проект идёт в 60.
Что ещё на страницах
File принимает относительный путь от папки проекта и даже адрес
http://. Play, Speed, Cue и Cue Point — транспорт, причём Cue
держит ролик на точке, пока включён. Loop Crossfade сглаживает стык
конца с началом, Audio Loop решает, что на этом стыке делать со звуком.
На Trim обрезают ролик без перекодирования и выбирают, что показывать
за его пределами: держать кадр, зациклить, отразить, чёрное. На Image
находятся межкадровая интерполяция (Interpolate Frames, недёшево),
Deinterlace и Pre-Multiply RGB by Alpha для прозрачности.
Tune
| Параметр | Зачем |
|---|---|
Pre-Read Frames |
Сколько распакованных кадров держать наготове в памяти процессора |
Frame Timeout Strategy |
Что делать, когда кадр не успел: держать прежний, оптимизировать под воспроизведение или под перемотку |
Max Decode CPUs |
Сколько ядер отдать на распаковку |
High Performance Read |
Читать файл с диска в обход кэша системы — для очень тяжёлых файлов: HAP в высоком разрешении, сжатие без потерь |
Hardware Decode |
Аппаратный декодер NVIDIA (на macOS — аппаратный декодер Mac) — Кодеки |
Callbacks DAT |
Свой Python на события плеера |
Видео дёргается в начале клипа или после перемотки — сначала
увеличивают Pre-Read Frames, платя за это памятью.
Кадр идёт к экрану в три шага: чтение с диска, распаковка, загрузка в видеопамять. Распакованные кадры ждут в очереди Pre-Read. После прыжка в другое место ролика нужного кадра в очереди нет, плеер ждёт его чтения и распаковки — это pre-read miss, он и даёт рывок.
Звук и несколько клипов
Звук из файла отдаёт Audio Movie CHOP с путём к плееру в параметре
Movie File In TOP. Он идёт за показываемым кадром, так что синхронен
и тогда, когда Index двигают руками.
Клипы меняют тремя способами. Один плеер и смена File дают паузу
на загрузку — годится, где переход не важен. Два плеера и Cross TOP дают
плавный переход, потому что следующий клип уже открыт. Плейлист по папке
собирают Folder DAT, Replicator или готовый moviePlaylist из палитры —
Плейлист.
Новый файл открывается несколько кадров, иногда дольше. Сменили файл
в момент показа — шоу дёрнулось. Открывайте заранее: op('movie2').preload()
открывает файл и читает первые кадры, стараясь не мешать текущему
воспроизведению, а op('movie2').isFullyPreRead скажет, что всё готово.
Info CHOP на плеере даёт open, open_failed, length, sample_rate
(частоту файла) и index, а pre_read_misses и disk_read_mbit_rate
показывают, сколько кадров не успело и как быстро читается диск. Выведите
их на служебную панель — на площадке это отвечает, не читается файл
или его просто не видно.
Нашли в статье ошибку, устаревшее или непонятное место?
На других пультах
весь переводчик →- ResolumeClip
- MilluminMedia
- MadMapperMedia