{PROJECT}/01_Source_Proxy/ — прокси-комплект внутри проекта (видео-прокси + петличные WAV + транскрипты + LUT; в YTCH / frame-align-проектах петличные WAV = только timeline-рендеры *_timeline.wav — оригиналы рекордера в комплект не входят), самодостаточный для монтажа; передача комплекта с гидом — этап 4.2. Не путать с Source Light — см. таблицу внизу.| параметр | правило |
|---|---|
| разрешение | 3840×2160 — как оригинал, не уменьшено |
| кадры | ровно столько же; проверяется поштучно (ffprobe -count_packets), не «на глаз» |
| частота | та же (25p), сверяется r_frame_rate |
| имена | файлов и папок сцен — 1:1 с оригиналом |
| корень | единственное отличие пути: 01_Source_Proxy/ вместо 01_Source/ — прокси лежат внутри проекта, не папкой-соседкой (стандарт 17.08.2026) |
Зачем так строго: монтажёр режет по прокси, финал собирается на оригиналах. При одинаковых внутренних путях подмена — это смена одной корневой папки, и таймлайн не сдвигается ни на кадр. Уменьшенное прокси (1080p) этого не гарантирует и ломает кадрирование/стабилизацию, оценённые по 4K.
видео hevc_videotoolbox -b:v 8M -tag:v hvc1 # аппаратный HEVC, ~×3.6 реалтайма на клип звук AAC 256k итог ~4 ГБ/час 4K (оригинал ~64 ГБ/час, ≈17×) джобы 3 клипа параллельно
hevc_videotoolbox здесь уместен именно потому, что это прокси: скорость важнее битрейт-эффективности, картинка нужна «смотрибельная», финал всё равно на оригиналах. Для лёгких копий, которые сами становятся исходником (Source Light), выбор другой — программный x265 (см. ниже).
| скрипт | что делает |
|---|---|
verify_ssd.py | сверяет дерево ↔ ingest ↔ транскрипты: пути, wall_offset = creation_time − scene_t0, отсутствие старых имён, целостность против бэкапа |
drive_restructure.py | повторяет реструктуризацию на Drive server-side (rclone moveto в пределах remote) — ничего не качается; дубли уходят в архивную папку, не в rm |
make_proxies.py | транскод с поштучной проверкой числа кадров; резюмируемо — готовый валидный файл пропускается; один авторетрай на упавший клип |
upload_proxies.sh | льёт прокси на Drive; петличные WAV и транскрипты добирает server-side копированием — пакет самодостаточен и релинкуется; финальный rclone check. В YTCH / frame-align-проектах добираются именно *_timeline.wav: оригиналы рекордера (*_orig_*.wav) в комплект не входят (−4.7 ГБ), на Drive они живут в 99_Pipeline/DJI_Audio/{сцена}/; понадобились — пересборка 0113_frame_align.py на SSD |
gen_guide.py | гид монтажёру с кадрами через LUT, хронологией и Drive-ссылками — стандарт и состав: 4.2 Editor Handoff |
run_all.sh | оркестратор: все шаги, Telegram-отчёт на каждом этапе и при падении |
# долгий процесс — только через nohup+caffeinate, лог в проект (память pipe-bg):
nohup caffeinate -is bash ~/YTAI/scripts/999_extra/proxy_pipeline/run_all.sh \
> "$PROJ/00_Setup/logs/proxy_pipeline_$(date +%Y%m%d_%H%M).log" 2>&1 &
Пути проекта, Drive-ID и имя прокси-папки — константы в шапке run_all.sh.
Монтажёр работает в проекте, у которого медиа слинковано на 01_Source_Proxy — открыл наш .prproj, сделал Link Media → Locate в прокси-папку, остальное подхватилось по именам.
Link Media с переключением корня 01_Source_Proxy → 01_Source — внутренние пути идентичны, Premiere подхватывает всё пакетно. Ни один клип не сдвигается: кадров ровно столько же.
.part ломает ffmpeg. Временное имя без известного расширения → «Invalid argument» при инициализации муксера. Лечится явным -f mp4.rclone moveto/copy в пределах одного remote не тратит трафик. Держать --tpslimit 6–8, иначе 403.rm.._*. AppleDouble-файлы на каждый файл и папку; в rclone copy обязателен --exclude "._*", иначе мусор уезжает на Drive.| Editing Proxy (эта страница) | Source Light | |
|---|---|---|
| назначение | монтаж с подменой на оригинал | лёгкая копия вместо оригинала (отдача, архив) |
| кодек | hevc_videotoolbox 8M — быстрый аппаратный | libx265 CRF24 (VMAF ≈ 93.8) — медленнее, качественнее |
| критерий | кадр-в-кадр, имя-в-имя | визуально неотличимо, вес минимален |
| финал | пересборка на оригиналах обязательна | оригинал может вообще не понадобиться |
| тул | 999_extra/proxy_pipeline/ | 999_extra/source_light_transcode.py |
Проверено VMAF-калибровкой: для Source Light аппаратный hevc_videotoolbox дал файл больше при худшем качестве — программный x265 там обязателен. Для прокси наоборот: скорость решает.
| что | где |
|---|---|
| конвейер прокси | ~/YTAI/scripts/999_extra/proxy_pipeline/ (README там же) |
| Source Light | ~/YTAI/scripts/999_extra/source_light_transcode.py |
| передача монтажёру (комплект + гид) | 4.2 Editor Handoff & Proxy Kit |
| Drive-механика, монтажный лист | 3.6 Project Drive Sync · 4.3 Монтажный лист |
| структура сцен на входе | 2.1 Исходники → целевая структура |