Media processing pipeline, timeline, mixing, encoding GPU, dan export.
14 tahap dari project hingga publish ready, dengan estimasi porsi waktu render.
Project
0.2sMuat manifest proyek, resolusi target, durasi 20 detik, dan preset platform.
Scene Assets
1.3sStreaming loading aset: video scene, image scene, voice, musik, SFX, subtitle, thumbnail.
Media Validation
0.9sProbe seluruh aset; blokir pipeline bila ada file rusak, codec asing, atau aset hilang.
Timeline Builder
0.6sSusun timeline 10 scene × 2 detik dengan layer, track audio, subtitle, transisi, dan motion.
Video Composer
4.7sCompositing berbasis layer: scene, overlay, motion graphics, logo, watermark, CTA, outro.
Audio Mixer
1.5sMix voice, musik, SFX, ambience dengan ducking, denoise, normalisasi, dan limiter.
Subtitle Composer
1.3sRender subtitle word-by-word multi bahasa dengan gaya karaoke/TikTok/YouTube/cinematic.
Visual Effects
2.8sTerapkan bloom, light rays, partikel, motion blur, depth of field, dan vignette secukupnya.
Color Grading
1.1sTerapkan LUT preset konsisten lintas scene beserta pencocokan white balance.
Quality Control
1.3sCharacter consistency checker, scene quality checker, dan sinkronisasi audio/subtitle.
Encoding
3.9sEncode H.264/H.265/AV1/VP9 pada preset Draft s.d. Lossless dengan akselerasi GPU.
Compression
1.1sBitrate adaptif, constant quality, VBR dua langkah, dan faststart untuk streaming.
Export
0.6sBungkus MP4/MOV/WebM sesuai preset YouTube Shorts, TikTok, Reels.
Publish Ready
0.2sPaket akhir: video, thumbnail, judul, deskripsi, tag, hashtag, caption.
Pipeline diblokir sampai seluruh aturan lolos.
File rusak
Regenerasi asetProbe berhasil, moov atom utuh, tidak ada frame korup.
Resolusi
Regenerasi asetMinimal 1080 × 1920, rasio 9:16 persis.
Frame rate
Versi cadangan24/30/60 FPS konstan; VFR dinormalisasi ke CFR.
Codec
Versi cadanganVideo H.264/H.265/AV1/VP9, audio AAC/Opus/PCM.
Durasi
Regenerasi asetTiap scene 2.00 detik ± 40 ms; total 20.00 detik.
Sinkronisasi
Peringatan logDrift A/V < 40 ms pada seluruh timeline.
Audio
Regenerasi aset48 kHz stereo, puncak ≤ −1 dBTP, tidak silent.
Subtitle
Peringatan logTimestamp monoton naik, tanpa tumpang tindih, ≤ 2 baris.
Missing asset
Versi cadanganSeluruh slot scene terisi atau punya versi cadangan.
Rendering akhir dimulai hanya setelah semua gelombang aset selesai.
Wave 0
Wave 1
Wave 2
Wave 3
Wave 4
Wave 5
Wave 6
Wave 7
Wave 8
Wave 9
10 scene × 2 detik; transisi & motion dipilih otomatis dari suasana cerita.
| Scene | Start → End | Source | Motion / Camera | Transition | Audio / Sub |
|---|---|---|---|---|---|
| Scene 1 | 0.0s → 2.2s | video | Dolly · dolly | Fade | voice / id-ID |
| Scene 2 | 2.2s → 4.4s | video | Parallax · multi-plane | Mask Reveal | voice / id-ID |
| Scene 3 | 4.4s → 6.7s | image | Tilt · vertical | Blur | voice / id-ID |
| Scene 4 | 6.7s → 8.9s | video | Slow Motion · static | Cross Dissolve | voice / id-ID |
| Scene 5 | 8.9s → 11.1s | video | Dolly · dolly | Light Leak | voice / id-ID |
| Scene 6 | 11.1s → 13.3s | image | Parallax · multi-plane | Mask Reveal | voice / id-ID |
| Scene 7 | 13.3s → 15.6s | video | Tilt · vertical | Blur | voice / id-ID |
| Scene 8 | 15.6s → 17.8s | video | Slow Motion · static | Cross Dissolve | voice / id-ID |
| Scene 9 | 17.8s → 20.0s | image | Dolly · dolly | Light Leak | voice+outro / id-ID |
Motion Graphics
0.0 – 20.0s
Lower third + progress bar tipis.
Logo
0.0 – 2.5s
Fade in 8 frame, safe area 6%.
Watermark (opsional)
2.5 – 17.0s
Opacity 18%, sudut kanan bawah.
CTA
16.0 – 18.5s
Spring pop-in, kontras tinggi.
Outro
18.0 – 20.0s
Mask reveal ke brand card.
Voice, musik, SFX, ambience dengan ducking dan limiter.
Voice Over
0 dBTrack referensi utama
Background Music
-14 dBDucking aktif saat voice bicara
Sound Effects
-8 dBDucking aktif saat voice bicara
Ambience
-20 dBDucking aktif saat voice bicara
Noise Reduction
afftdn=nf=-28
Hanya pada track voice.
High-pass
highpass=f=80
Buang rumble di bawah 80 Hz.
Ducking otomatis
sidechaincompress=threshold=0.03:ratio=8:attack=5:release=250
Musik & SFX turun saat voice aktif.
Stereo Balancing
stereotools=balance_in=0
Voice mono-center, musik lebar.
Normalisasi volume
loudnorm=I=-14:TP=-1.5:LRA=11
Target −14 LUFS untuk Shorts.
Audio Limiter
alimiter=limit=0.95
Cegah clipping setelah mixing.
Fade In / Out
afade=t=in:d=0.35, afade=t=out:st=19.4:d=0.6
Selalu di akhir rantai.
Multi bahasa, word-by-word, selalu sinkron dengan audio.
Highlight per kata mengikuti forced alignment, warna aksen bergerak.
Malam itu lentera kecil menyala
Halus, sinematik, dan diterapkan secukupnya.
Motion Engine
Zoom In
Skala 1.00 → 1.12 dengan easing cubic-out.
Zoom Out
Skala 1.14 → 1.00, menyingkap konteks scene.
Pan
Geser horizontal 6% lebar frame, konstan.
Tilt
Geser vertikal 5% tinggi frame ke atas.
Rotate
Rotasi halus ±1.5° untuk aksen playful.
Dolly
Zoom + pergeseran perspektif ringan (fake 3D).
Parallax
Foreground/midground/background beda kecepatan.
Camera Shake
Noise Perlin amplitudo rendah, 4–6 Hz.
Slow Motion
Retime 0.6× dengan interpolasi optical flow.
Speed Ramp
0.5× → 1.6× pada titik aksen audio.
Ken Burns
Zoom + pan simultan untuk aset still.
Depth Simulation
Depth map menggerakkan layer semu 2.5D.
Whip Pan
Pan cepat + motion blur directional.
Transition Engine
Visual Effects
LUT konsisten di seluruh scene.
lut3d=teal_orange_v3.cube, eq=contrast=1.08:saturation=1.05:gamma=0.98
Contrast
1.08
Saturation
1.05
Gamma
0.98
Character Consistency Checker
Scene Quality Checker
Pilih codec, kualitas, resolusi, FPS, dan backend GPU — estimasi dihitung langsung.
Bitrate
9 Mbps
Ukuran file (20s)
22.82 MB
Waktu encode
4.9s
Encoder
h264_nvenc
GPU aktif
ffmpeg -y \ -i timeline.json.mkv \ -c:v h264_nvenc \ -rc vbr -cq 21 -b:v 9M -maxrate 13.5M \ -r 30 \ -vf scale=1080:1920:flags=lanczos,format=yuv420p \ -c:a aac -b:a 192k -ar 48000 -ac 2 \ -movflags +faststart \ out.mp4
Constant Quality
CRF/CQ sebagai default — kualitas stabil lintas scene.
Variable Bitrate
Two-pass VBR bila target ukuran file dikunci.
Bitrate adaptif
Analisis kompleksitas per scene menaikkan bitrate hanya di scene padat gerak.
Fast Start
moov atom dipindah ke depan agar streaming mulai instan.
Ukuran file
Target < 12 MB untuk 20 detik 1080p tanpa artefak kasat mata.
Kontrol antrean dan metrik real-time.
Kisah Lentera Malam
renderingjob_8f21 · high · nvenc · ETA 48s
Robot Kecil Penjaga Kebun
queuedjob_8f22 · normal · nvenc · ETA 190s
Petualangan Awan Biru
pausedjob_8f19 · normal · qsv · ETA 120s
Naga dari Bukit Kabut
failedjob_8f17 · low · cpu · —
Sepatu Ajaib Rani
donejob_8f11 · normal · videotoolbox · —
Progress render
%
Encoding FPS
fps
CPU
%
GPU
%
RAM
GB
Storage
GB
Queue depth
job
Estimasi waktu
detik
Kecepatan encoding
×realtime
Tingkat keberhasilan
%
Checkpoint, resume, retry, dan jejak audit.
Simpan checkpoint per tahap ke object storage (state + hash aset).
Saat gagal, resume dari checkpoint terakhir — bukan dari nol.
Retry otomatis dengan exponential backoff untuk error transien.
Gunakan aset cadangan (versi sebelumnya) bila regenerasi gagal dua kali.
Hanya scene bermasalah yang di-render ulang; scene valid dipertahankan.
Catat seluruh kesalahan beserta konteks tahap, aset, dan parameter encoder.
Log fields
Gate wajib sebelum export dijalankan.
Durasi tepat
Total 20.000 detik ± 1 frame.
Tanpa frame kosong
Tidak ada frame hitam/putih penuh > 2 frame beruntun.
Audio sinkron
Offset voice terhadap mulut/beat < 40 ms.
Subtitle sinkron
Cue mengikuti word timestamp hasil forced alignment.
Scene lengkap
10 dari 10 scene ter-render dan tervalidasi.
Thumbnail tersedia
1080 × 1920 PNG/JPG < 2 MB.
Metadata lengkap
Judul, deskripsi, tag, hashtag, caption terisi.
Rasio 9:16
SAR 1:1, DAR 9:16, tanpa pillarbox.
Bila satu gate gagal, proses berhenti dan hanya tahap bermasalah yang dijalankan ulang.
Preset per platform vertikal + paket publikasi.
| Platform | Format | Catatan |
|---|---|---|
| YouTube Shorts | MP4 · H264 · 1080p · 30fps | ≤ 60 detik, 9:16, faststart. |
| YouTube Shorts 4K | MP4 · H265 · 2160p · 60fps | HDR-ready, bitrate tinggi. |
| TikTok | MP4 · H264 · 1080p · 30fps | Safe area atas 12% & bawah 20%. |
| Instagram Reels | MP4 · H264 · 1080p · 30fps | Audio −14 LUFS, caption burn-in opsional. |
| Facebook Reels | MP4 · H264 · 1080p · 30fps | Kompatibilitas maksimum. |
| Web / WebM | WEBM · VP9 · 1080p · 30fps | Untuk preview in-app tanpa lisensi. |
Kunci render cepat pada volume tinggi.
Lazy loading aset
Aset di-fetch saat tahap membutuhkannya, bukan di awal.
Cache aset stabil
Hash konten sebagai kunci; scene tak berubah dilewati.
Incremental rendering
Segmen scene disimpan terpisah lalu di-concat.
Smart re-render
Diff timeline menandai scene mana yang wajib di-render ulang.
Asset deduplication
Aset identik lintas proyek berbagi satu blob.
Multi-thread processing
Filter graph dipecah ke worker pool per core.
Streaming asset loading
Range request memutar aset besar tanpa unduh penuh.
Total 14 tahap · 6 tahap GPU-accelerated · 9 tahap mendukung smart re-render.