Когда режем живую картинку людей: крупности из 4K, рамка по силуэту, смена камер по речи, синхрон по звуку, прокси.
YTCG37 · speaker in a windowYTEVO03 · half-frame screenYTLAB01 · multicam
Approaches
Карточки — главные (canon или работают в нескольких фильмах), строки реестра — остальные. Поиск и фильтр — по группе.
YTCH14 · Спикер в центре · YTAgeFree16 v4 18.10 (П1.13/П1.14): лица и эмоции наездом из 4K до ×1,6–1,8 — «можно ещё крупнее!»; YTAgeFree17 v1; YTEVO04 v1; YTLAB 02.10: «быть крупным прямо»; YTEVO03 v3 06.10: крупный из 4K-двойки ×2–2,5
крупный план одного — когда он говорит один и второй не нужен в кадре
05_editing/0514_teaser/teaser.py (cx, cy of the sync)
YTCH14 · сцена на диване · YTAgeFree16 v3: во всех синхронах Яны в центре был Дмитрий Николаевич — в кадре на двоих явные cx/cy, крупность такая, что второе лицо уходит из окна
под шторкой кадр уезжает вправо, говорящий — в центре правой части; разница полей 12–69 px
не по лицу и не по точке между глаз: силуэт несимметричен — центр уезжал на 64 px (медиана)
05_editing/0510_headless_cut/solo.py silhouette → plan (frame_fit) · 999_extra/bin/vision_person (Apple Vision) · framing.py (L / R / T px before → after on the version page) · director.py reframe · 0514_teaser plan · frame_fit; 05_editing/0510_headless_cut/solo.py silhouette (Apple Vision); version page section Framing by measurement
YTCH14 v3 · YTCG37 v4 · Спикер в центре · YTCG37 v3 → v4 03.10: 34 из 36 планов правее центра (медиана 64 px, до 354) → разница полей ≤ 4 px, над головой 14–26 % → 83–195 px; YTLAB01 02.10: окно общего плана по лицам — 7 из 109 резали человека; YTEVO02 v7: «меньше места над головой» → ×1,15 · YTCG37 v3 → v4 03.10: все 36 планов числами и парами кадров · YTEVO02 v7: наезд ×1,15 отдельной версией, v6 цел
YTCH14 · 03:55 · YTCR06 05.10: история без камеры — целиком под перебивками от первого слова до последнего; лицо героя под его голосом — только где он в кадре молчит (по диаризации 17 из 45 «молчащих» планов — говорил); YTFP02 · YTCR03 (Влад): у каждого куска петлички вердикт — синхрон проверяем · только петличка (материал для закадра) · вне сцены
YTCH14 · Multicam Word-Sync · Audio Fine Sync · YTCH10: 12 сцен, 151 клип, 314 замеров за 1:33, невязка 0,1–2,5 мс; YTEVO03: 14 сцен, 41 клип Pocket — арбитр радиокопия петлички в камере, часы спаренных DJI ±1 ч; YTUVIE01 25.09: запись экрана найдена полной корреляцией · YTEVO03 18.09: ночной разбор дня — часы и синхрон по речи · YTAgeFree S3 04–06.10: часы петличек врут по комплекту — каждый файл по звуку ко всем клипам · YTCH10 16.08: 151 клип, невязка 0,1–2,5 мс · YTUVI 12.07: день 705, CAM2 −398 дней · YTCR03 31.05: FX3A +67,5 мин · YTCR04: часы TX врали — найдено только по расшифровкам · YTEVO03 24–25.09: 14 сцен, 44 полосы · YTFP03: 98 % клипов на 0,0 мс
Роман, 03.10 · Спикер в центре — раздел «Теория планов» надо построить · трейлеры YTCG39/YTCG42 05–07.10 и тизеры YTAgeFree S3: глаза на верхней трети; YTUVIE01 1.1.1 05.10: 6 наездов ×1,15, конец наезда — по последнему слову; YTCR04 v7.1 03.10: три пика; YTCG37 v4–v6: глаза на 20 % — «тесно сверху»
22.09 · Roman · YTCH спринт 3 17.08: 441 прокси 8-битными и без TC → контракт 22.09; ALL BTS 25.09: 11 клипов iPhone вылетели по порогу битрейта; YTCH10 17.08 — папка в проекте
31.05 · Roman · YTCR03 31.05: старый 0105 взял fps выброса 50p на весь проект; YTUVI 12.07: дни 704/705; YTCR02/YTCR03 — сцена и запись экрана дописаны; YTEVO03; YTUVIE
в фильм идут только дубли из листа дублей; края — по звуку петлички, глазами на листе огибающих (edgeplot) 05_editing/0510_headless_cut/solo.py edges → edgeplot → listen → dialog → plan → gfx build → run (SOLO.md)
Fill what the main camera missed from the second camera
YTEVO02 15–20.09: дыра A 3,16 с на шве C0008/C0009; финал достроен с B (+1:49)
основная камера не писала (шов файлов) или закончила раньше — кусок и финал достраиваются со второй камеры, сведённой по звуку 05_editing/0509_review_cycle/examples/ytevo02/write_angles.py (xcorr, piecewise drift map)
Lav WAV rebuilt offline by a measured per-take shift
YTUVIE01 25.09: 28 730 → 31 мс, 322 → 26 мс, 248 → 22 мс — все три урока внутри кадра
звук разъехался при верной раскладке — петличку не двигают на таймлайне, а пересобирают офлайн по замеру: new[t] = old[t + сдвиг(дубль)] 999_extra/wordsync_multicam/relav2.py
Key outdoor scene placed in a calculated golden hour
YTEVO 18.09: освящение в Лисьем Носу не позже 18:00 (закат 18:51)
ключевая сцена на улице ставится строго в золотой час, посчитанный по восходу и закату для даты и города NOAA sun calc
AI avatar shoot spec: looks by manners, listen and idle takes, 360
YTUVIAI ТЗ v1–v5 01–05.10; спринт 12–25.10
3–5 образов, в каждом три манеры (эмоции, спокойно, разговор с оператором); дубль «15 с слушает → речь → 15 с молча» 999_extra/ytuviai/build_tz.py (tz.json)
29.97 sources in a 25p film conformed via 25p windows to keep sync
YTFP02 04.10: ZV-E1 29,97
исходник 29,97 к/с в фильме 25p даёт картинку позже звука до 3 кадров — промежуточные 25p только из окон монтажа со временем исходника 999_extra/ytfp02_25p.py · 05_editing/0511_doc_cut/TICKET_conform_2997_sync.md
Slow push-in across a speech piece, face kept in place
YTCR04
медленный наезд +6 % за кусок: zoompan кадр за кадром тем же окном, лицо остаётся на месте 05_editing/0511_story_cut/sc_conform.py (push of the piece)
Screen recording placed into the ingest by speech correlation
YTUVIE01 25–26.09: ручное место промахивалось на 6 с – 5:57, пики 0,97–0,99, TX02 подтвердил до 6 мс
запись экрана встаёт по речи, а не «с нуля урока»: полная корреляция огибающих против петлички урока, дрейф — по четвертям 999_extra/wordsync_multicam/screencast_sync.py --project P --scene S [--apply] · screencast_offset.py · timeline_sync_audit.py
Day device map: the same instant on every camera via a shared lav
YTAgeFree S3 день 2: 177 связей, невязка ≤ 10 мс у 175, уход до 70 мс за 30 мин · FX3-1479 ↔ Pocket 0064 — до 4,8 мс
карта связей дня: каждая петличка × каждый клип — грубо по 3-граммам слов, точно GCC-PHAT в ≤ 6 точках, сдвиг и уход часов 05_editing/0514_teaser/daymap.py --index ... --words ... --wav16 ... · devmap.py CLIP T --daymap D1 · plan: sync: true, clip: <other camera>
Sony file seams checked by sound, not by creation time
YTEVO02 11.09: швы 0,0–1,6 — одна запись, «2,8 с потеряно» опровергнуто, C0010 не скопирован · 15.09: камера A не писала 3,16 с
непрерывность длинной записи Sony, разрезанной на файлы ~4,19 ГБ, проверяют по звуку на швах: скачок сэмпла, огибающая 5 мс ffmpeg -sseof -0.4 / -t 0.4 -> f32le -> numpy
звук камеры и петличку сшивают независимо от часовых поясов: 8 окон по 18 с, GCC-PHAT в полосе 150–5500 Гц YTAgeFree08 project scripts (sweep_audio.py, calib.py)
trial
Код подхода постоянный — по нему подход называют в плане фильма и хэндоффе. new — решения Романа и Тани 02–26.10 из хэндоффов и памяти: раньше их не было ни на одной странице. Пунктир — open: в фильм только после решения Романа. Как добавить новый подход — Edit · Add.
Tools
Скрипты, движки, навыки и сервисы, на которых держатся подходы этой страницы; полный реестр — /map/tools/.
5
0510_headless_cut/solo.py
script · color · edit · sound 05_editing/0510_headless_cut/solo.py