← Semua alat

Bagi Video

Potong video panjang menjadi klip yang dimulai di tempat videonya berubah β€” bukan setiap tiga puluh detik. Semuanya terjadi di mesin Anda.

Peramban Anda yang membaca dan mengodekan ulang berkas. Tidak ada permintaan yang mengirimnya ke mana pun β€” halaman ini tidak punya server tujuan unggah.

Pertanyaan

Apa bedanya dengan pembagi video lain?

Kebanyakan memotong setiap N detik, sehingga sebuah klip bisa mulai di tengah kalimat dan berakhir di tengah gerakan. Yang ini mencari potongan yang sudah ada di videonya β€” pergantian shot β€” dan menyusun klip dari shot-shot utuh. Anda tetap memilih perkiraan durasinya; batasnya yang jatuh pada perubahan nyata terdekat, bukan pada stopwatch.

Bintang di tiap klip itu apa?

Mesin menilai setiap bingkai contoh dari ketajaman, pencahayaan, kontras, kekayaan warna dan detail, lalu tiap klip mendapat rata-rata berbobot durasi dari shot di dalamnya. Bintangnya relatif terhadap klip terbaik pada video itu, bukan skala mutlak: ia menyarankan ke mana harus melihat lebih dulu, bukan memutuskan apa yang menarik.

Apakah pemangkasan vertikal memotong orang keluar bingkai?

Ia mengambil bagian tengah bingkai, yang benar pada sebagian besar kasus dan salah ketika subjeknya berada di sisi. Di sini belum ada pelacakan wajah, jadi periksa pratinjaunya sebelum diunggah. Bila shot-nya lebar, memangkasnya secara manual biasanya lebih baik.

Apakah videonya diunggah?

Tidak. Peramban mendekodenya, WebAssembly menganalisis bingkainya, dan klipnya dikodekan ulang secara lokal dengan WebCodecs β€” jalur perangkat keras yang sama yang dipakai peramban Anda untuk memutar video. Tidak ada yang dikirim ke mana pun, dan karena itu pula tidak ada batas paket, antrean atau watermark.

Alat lainnya

Pasang ini di proyek Anda sendiri

Splitting video at its shot changes β€” the same way this page does it, on the user's machine, with no server. Take the code, or hand the prompt to a coding agent.

// Shot detection uses the Life2Film engine:
// https://life2film.com/wasm/va_wasm.js
const engine = await import('https://life2film.com/wasm/va_wasm.js');
await engine.default({ module_or_path: 'https://life2film.com/wasm/va_wasm_bg.wasm' });

// pixels: centre-column mean RGB per sampled frame, timestamps in seconds
const { scenes } = JSON.parse(engine.detect_scenes_slick(JSON.stringify({
  pixels, timestamps, duration, algo: 'adjacent_diffs',
})));

The engine is documented for agents, and every tool page is available as markdown by adding .md to its address.