1 poin oleh GN⁺ 8 hari lalu | 1 komentar | Bagikan ke WhatsApp
  • Editor video yang memproses langsung di browser tanpa unggah file, dengan dukungan pengeditan multi-track, navigasi per frame, dan monitor sumber
  • Dibangun berbasis FFmpeg WASM dan WebCodecs, sehingga semua pemrosesan berlangsung sepenuhnya di dalam browser
  • Menyediakan alat video inti seperti ubah ukuran video, skala, potong, edit cut, kompresi, pembuatan thumbnail, dan watermark
  • Mendukung pemrosesan audio serta fitur subtitle dan teks, termasuk konversi dari input MP4·MOV·WebM·MKV·AVI ke MP3·WAV·AAC·M4A·FLAC
  • Alat edit berbasis web yang juga menyediakan preset kompresi untuk Discord, Email, WhatsApp, Slack, dan Twitter serta preset ubah ukuran untuk TikTok, Instagram Reels, dan YouTube Shorts

Editor video

  • Mendukung pengeditan multi-track, pemrosesan berbasis WebCodecs, navigasi per frame, dan monitor sumber
  • Termasuk fitur membuat New Project
  • Menyediakan kemampuan edit video langsung di dalam browser

Metode pemrosesan utama

  • Dibangun berbasis FFmpeg WASM
  • Semua pemrosesan dilakukan di dalam browser

Alat video

  • Resize & Scale

    • Menyediakan fitur ubah ukuran dan skala video
  • Trim & Cut

    • Menyediakan fitur pemotongan video dan edit cut
  • Compress

    • Menyediakan fitur kompresi video
  • Drop Zone

    • Menyediakan alat Drop Zone
  • Thumbnails

    • Menyediakan fitur pembuatan thumbnail
  • Watermark

    • Menyediakan fitur watermark

Audio dan fitur tambahan

  • Audio Processing

    • Menyediakan fitur pemrosesan audio
  • Subtitles & Text

    • Menyediakan fitur subtitle dan teks

Kompresi berdasarkan platform

  • Compress for Discord

    • Menyediakan fitur kompresi video untuk Discord
  • Compress for Email

    • Menyediakan fitur kompresi video untuk Email
  • Compress for WhatsApp

    • Menyediakan fitur kompresi video untuk WhatsApp
  • Compress for iMessage

    • Menyediakan fitur kompresi video untuk iMessage
  • Compress for Slack

    • Menyediakan fitur kompresi video untuk Slack
  • Compress for Twitter

    • Menyediakan fitur kompresi video untuk Twitter

Ubah ukuran berdasarkan platform

  • Resize for TikTok

    • Menyediakan fitur ubah ukuran video untuk TikTok
  • Resize for Instagram Reels

    • Menyediakan fitur ubah ukuran video untuk Instagram Reels
  • Resize for YouTube Shorts

    • Menyediakan fitur ubah ukuran video untuk YouTube Shorts
  • Resize for Instagram Post

    • Menyediakan fitur ubah ukuran video untuk Instagram Post
  • Resize for LinkedIn

    • Menyediakan fitur ubah ukuran video untuk LinkedIn
  • Resize for Facebook

    • Menyediakan fitur ubah ukuran video untuk Facebook
  • Resize for Twitter

    • Menyediakan fitur ubah ukuran video untuk Twitter
  • Resize for Pinterest

    • Menyediakan fitur ubah ukuran video untuk Pinterest

Konversi format audio

  • MP4 to MP3

    • Menyediakan fitur untuk mengonversi MP4 ke MP3
  • MOV to MP3

    • Menyediakan fitur untuk mengonversi MOV ke MP3
  • WebM to MP3

    • Menyediakan fitur untuk mengonversi WebM ke MP3
  • MKV to MP3

    • Menyediakan fitur untuk mengonversi MKV ke MP3
  • AVI to MP3

    • Menyediakan fitur untuk mengonversi AVI ke MP3
  • MP4 to WAV

    • Menyediakan fitur untuk mengonversi MP4 ke WAV
  • MP4 to AAC

    • Menyediakan fitur untuk mengonversi MP4 ke AAC
  • MP4 to M4A

    • Menyediakan fitur untuk mengonversi MP4 ke M4A

Mengonversi video ke audio

  • Video to MP3

    • Menyediakan fitur untuk mengonversi video ke MP3
  • Video to WAV

    • Menyediakan fitur untuk mengonversi video ke WAV
  • Video to FLAC

    • Menyediakan fitur untuk mengonversi video ke FLAC
  • Video to AAC

    • Menyediakan fitur untuk mengonversi video ke AAC

1 komentar

 
GN⁺ 8 hari lalu
Komentar Hacker News
  • Menurut saya, meskipun FFmpeg dijalankan lewat WebAssembly, isu lisensinya tetap ada. FFmpeg berlisensi LGPL 2.1, sementara VidStudio terlihat seperti closed source, dan saya juga tidak menemukan keterangan bahwa ini perangkat lunak bebas. Kalau didistribusikan ke browser klien dalam bentuk seperti ini, sepertinya ada kemungkinan melanggar syarat LGPL, dan menurut saya halaman FFmpeg legal juga layak dijadikan rujukan

    • closed source itu sendiri memungkinkan, tetapi saya ingat ada persyaratan tambahan di LGPL. Misalnya, harus menyediakan tautan ke source dari versi FFmpeg yang dipakai, dan kalau dynamic linking maka pengguna harus bisa mengganti library dengan build mereka sendiri, sedangkan kalau static linking harus menyediakan alat agar bisa melakukan relinking dengan build yang kompatibel. Saya baru-baru ini meninjau LGPL jadi masih cukup ingat, tetapi kalau saya salah saya terbuka untuk dikoreksi
    • Terima kasih sudah mengingatkan, jujur saja awalnya saya tidak terlalu memikirkan licensing secara mendalam. Awalnya ini adalah kumpulan alat eksperimen codec video dan audio yang dibuat untuk dijalankan secara lokal, lalu belakangan saya merasa hasilnya cukup layak dipakai orang lain sehingga saya buka ke publik. Malam ini saya akan melakukan perubahan yang diperlukan agar sepenuhnya patuh. Setidaknya saya sudah menulis FFmpeg dengan ejaan yang benar, dan proyek wasm ini juga membuat saya merasa perlu lebih mempelajari perbedaan GPL dan LGPL
    • Menurut saya tetap mungkin mematuhi LGPL tanpa membuka source seluruh aplikasi. Misalnya dengan memisahkan aplikasi dan ffmpeg ke isolate yang berbeda, yaitu proses wasm yang berbeda, atau menyediakan cara agar pengguna bisa menggabungkan build FFmpeg wasm yang mereka kompilasi sendiri dengan kode wasm aplikasi yang closed source. Apakah pemisahan isolate saja juga cukup untuk memenuhi GPL mungkin bisa dipandang mirip dengan memanggil FFmpeg sebagai alat command-line, tetapi menurut saya bagian itu secara hukum agak abu-abu
    • LGPL pada dasarnya memang mengizinkan penggunaan library di perangkat lunak tertutup
    • Hanya saja, beberapa codec populer bersifat GPL, jadi jika opsi itu diaktifkan, mungkin sisa kode juga harus didistribusikan di bawah GPL
  • Performanya benar-benar mengesankan, dan cara status dipertahankan juga terasa sangat mulus. Waktu dulu saya mencoba editor video berbasis browser, biasanya cepat tersendat, jadi saya cukup kaget melihat ini bertahan dengan baik. Namun bagian track kurang berjalan dengan baik, dan di Firefox on Windows saya tidak bisa mengubah urutan dengan drag and drop. Saya juga tidak menemukan alat transform seperti posisi, rotasi, dan ukuran untuk menyesuaikan video dengan rasio aspek berbeda, misalnya video vertikal dan horizontal

    • Terima kasih atas dukungannya, manipulasi track memang belum sepenuhnya saya bereskan. Jadi untuk sekarang klip belum bisa dipindah antar-track dan saya juga belum sempat memikirkan pengubahan urutan track, tetapi akan saya lihat. Untuk transform, setelah klip dimasukkan ke track lalu diklik, seharusnya muncul panel di sisi kanan program monitor, dan meskipun opsinya masih terbatas, beberapa hal sudah ada. Jujur saja, ada bagian yang rasanya hanya berhasil saya rangkai dengan bantuan LLM
  • Menurut saya, kegagalan hvc1 dan 10-bit yang disebut di atas bukan masalah fallback FFmpeg-wasm, melainkan kesenjangan dukungan browser untuk WebCodecs. Jalur HEVC di Firefox masih parsial, dan 10-bit lebih rapuh lagi. Chrome umumnya berjalan, tetapi Firefox benar-benar gagal pada file yang biasanya direkam secara default oleh iPhone atau Android terbaru. Jadi untuk mengurangi drop-off saat uji impor, menurut saya akan bagus jika ada pemberitahuan bahwa browser tidak bisa mendekode codec ini dan disarankan mencoba Chrome

    • Menurut saya itu saran yang bagus. Setelah masalah licensing terlewati, masih ada segunung error yang harus dibereskan, dan kalau itu tertangani saya rasa kegunaannya akan jauh lebih baik
  • Saya penasaran bagaimana perbandingannya dengan https://omniclip.app/, https://tooscut.app, https://clipjs.mohy.dev/

    • Saya juga penasaran bagaimana perbandingannya dengan https://pikimov.com. Menurut saya itu editor video berbasis browser lain yang cukup sering terlihat belakangan ini
    • Sejujurnya saya belum tahu, dan layanan-layanan yang Anda bagikan itu baru pertama kali saya lihat. Saya akan mencobanya langsung untuk membandingkan, terima kasih sudah membagikannya
  • Menarik bahwa dulu aplikasi yang sepenuhnya berfokus lokal tanpa akun dan tanpa unggahan sekarang kembali menjadi proposisi nilai tersendiri

    • Kali ini ada perbedaan berupa lingkungan sandboxed, dan kalau Anda terbiasa menangani skrip greasemonkey, sepertinya ada ruang untuk memodifikasinya juga. Selain itu saya merasa menyenangkan bahwa semua teks di dalam aplikasi bisa dipilih serta bisa copy-paste
    • Saya setuju, tetapi saya juga berpikir pihak yang mengeluarkan uang untuk pengembangan perangkat lunak pada akhirnya tetap harus mencari cara monetisasi. Hanya saja saya berharap caranya tidak terlalu predatoris. Sekarang rasanya semuanya berubah menjadi langganan dan terus menarik uang pengguna setiap bulan
    • Namun menurut saya, tidak seperti aplikasi lama, hal-hal seperti ini saat ini sebenarnya bukan aplikasi native OS
  • Selamat atas peluncurannya. Saya juga pernah menempuh jalan yang sama di videotobe.com, dan sempat mencoba arsitektur yang sepenuhnya client-side dengan ffmpeg.wasm, tetapi runtuh pada video panjang. Karena batas memori dan waktu encoding, akhirnya saya beralih ke pipeline pemrosesan cloud. Namun di sini, pembagian antara WebCodecs, Pixi, dan ffmpeg.wasm tampak seperti berhasil mengatasi kedua masalah itu dengan baik, dan saya terkesan karena media lebih dari 3 jam benar-benar bisa bertahan di VidStudio

    • Senang sekali dan terima kasih atas berbagi pengalaman seperti ini. Belakangan saya agak kehilangan semangat karena error yang menumpuk di sentry, jadi ini benar-benar memberi tenaga. Saya juga sudah mendorong ffmpeg wasm sejauh mungkin, bahkan mencoba menyelesaikan masalah memori dengan worker fs, tetapi saya merasa manfaatnya tidak sebanding dengan usahanya. Codec video itu sendiri memang luar biasa, tetapi saya jadi sadar bahwa sebelumnya saya meremehkan betapa banyak ffmpeg menangani pipeline decode, transform, dan encode
  • Menarik bahwa kita hidup di masa ketika privasi tidak lagi dianggap sebagai default, melainkan sebagai fitur. Saya juga sedang membangun sesuatu di bidang ini, dan saya merasa keunggulan tidak perlu upload justru cukup sulit disampaikan kepada pengguna yang sudah terbiasa menganggap semua hal memang seharusnya ada di cloud

    • Saya justru berpikir mayoritas pengguna memang menginginkan data mereka ada di cloud. Mengedit di desktop lalu mengirim tautan sehingga klien bisa langsung melihat di ponsel, tanpa perlu export terpisah, dan perubahan langsung tercermin memang jelas nyaman. Bahkan di luar bisnis pun, alur berbagi video dengan keluarga, memberi masukan, lalu langsung merevisi punya daya tarik tersendiri. Bukan berarti solusi lokal saja tidak ada gunanya, tetapi saya menduga bagi kebanyakan pengguna, keunggulan cloud akan terasa lebih menarik
    • Itu benar, tetapi pada saat yang sama, kalau dipikirkan bahwa model bisnis yang paling sukses bergantung pada penjualan data pribadi, menurut saya arus seperti ini juga terasa terlalu masuk akal
  • Saya sangat tertarik pada gagasan alat yang berjalan lokal di browser. Karena situs web pada dasarnya hanya berperan sebagai media distribusi, penggunaannya jadi mudah, dan saya juga membutuhkan alat seperti ini sehingga saya mengujinya dengan antusias. Tetapi baik percobaan pertama maupun kedua sama-sama gagal. Ketika saya memasukkan video yang direkam dengan ponsel Pixel, di Firefox muncul pesan "Your browser does not support the codec "hvc1.2.4.L156". Try a different video.", lalu saya pindah ke Chrome dan muncul "Audio decode failed: your browser cannot decode the audio in "..._webm.bin". Try re-encoding the file with AAC audio.". Cukup disayangkan, tetapi saya benar-benar berharap ini bisa diperbaiki, dan akan bagus jika ada cara untuk mendapat pemberitahuan saat sudah diperbaiki

    • Ini sudah masuk todo list saya, dan begitu sudah diperbaiki saya pasti akan kembali ke sini untuk memberi tahu. Masalah utamanya adalah dukungan codec yang tidak konsisten, dan software muxer yang pernah saya lihat juga punya banyak celah dalam dukungan codec. Selain itu, nama codec audio dan video kadang tampil berbeda tergantung platform dan browser, jadi ternyata lebih rumit daripada yang saya kira. Saya akan mencoba mendalaminya lagi secepat mungkin
  • Menurut saya menggunakan WebCodecs untuk timeline scrubbing adalah pilihan yang tepat. Namun saya penasaran bagaimana cache frame ditangani. Buffer decoder WebCodecs dimemory-map dan bisa direbut kembali oleh browser saat ada tekanan, jadi saya penasaran apakah ada cache LRU terpisah di atasnya atau semuanya diserahkan ke decoder. Saya juga ingin tahu bagaimana cara bertahan dari masalah halaman mati akibat penggunaan memori WebCodecs di latar belakang pada perangkat mobile, terutama perangkat dengan batas memori ketat seperti iPhone

  • Saya sangat menyukai tautan compress-to-X di bagian bawah dan alat konversi dari X ke Y. Saya terutama suka alat dengan preset ukuran file target berdasarkan tingkatan langganan Discord. Selama ini saya menggunakan alat online berbasis server yang mengharuskan upload, tetapi sekarang sepertinya saya akan memakai ini. Saya sebenarnya tidak sedang butuh editor video full-featured, hanya sekadar melihat-lihat karena penasaran, tetapi ini tetap terasa sebagai penemuan yang cukup keren