Aku coba menyulihsuarakan video dengan OmniVoice (dan berakhir memperbaiki sebuah bug)
Korea ke Inggris terus gagal. Ternyata sebuah bug, jadi aku buka kodenya bersama Claude dan memperbaikinya, lalu pengelolanya menggabungkannya.
Kali ini aku mencoba OmniVoice, sebuah alat sulih suara open-source.
Aku menjalankannya di MacBook Air-ku, dan ia jauh lebih mudah dipasang daripada alat-alat open-source lain yang pernah kucoba. Itu mungkin terdengar sepele, tapi itu hal besar. Memasang alat open-source, sejujurnya, cukup sulit buatku, jadi sekadar berhasil membuat satu berjalan saja sudah setengah pekerjaan.
Ini klip yang ingin kusulihsuarakan, sebuah video pendek berbahasa Korea, sebelum OmniVoice menyentuhnya:
Asli: klip berbahasa Korea yang ingin kusulihsuarakan ke bahasa Inggris
Begitu ia berjalan, aku mulai dari Inggris ke Korea. Itu berjalan tanpa masalah. Jadi aku membalik arah dan mencoba Korea ke Inggris, dan kali ini tiap kalimat memuntahkan error. Aku menjalankannya lagi dan hasilnya sama. Awalnya kukira itu karena aku membuka terlalu banyak hal lain sekaligus, jadi kututup semuanya dan kucoba lagi. Tetap gagal.
Saat itulah aku membuka log. Soalnya aku bukan developer, jadi walaupun menatap log itu, aku tetap nggak ngerti apa sebenarnya yang salah. Maka aku menunjukkannya ke Claude dan bertanya apa yang sedang terjadi dan bagaimana aku bisa memperbaikinya.
Inilah yang kami temukan bersama. Alat ini punya satu langkah yang mendengarkan audio lalu menebak itu bahasa apa, dan untuk videoku tebakannya benar. Log-nya bahkan menyebut ia mendeteksi bahasa Korea dengan keyakinan 98%. Jadi jelas ia tahu. Tapi pada saat semuanya sampai ke langkah penerjemahan, informasi itu sudah lenyap. Karena tak menemukan bahasa sumbernya, kodenya cuma melakukan apa yang sudah diatur untuk dilakukan saat ia tak tahu apa-apa, yaitu menganggapnya bahasa Inggris. Jadi ia mencoba menerjemahkan Inggris ke Inggris, dan karena paket terjemahan Inggris-ke-Inggris memang tak ada, tiap kalimat berakhir dengan error yang sama. Ia tahu videonya berbahasa Korea, lalu melupakannya satu langkah kemudian.
Begitu kami memahami itu, Claude dan aku masuk ke kodenya dan menemukan titik persis di mana ia jatuh kembali ke bahasa Inggris. Di situ kami menambahkan jaring pengaman kecil: kalau ia tak tahu bahasanya, lihatlah huruf di subtitle dan tebak itu bahasa apa. (Kalau hurufnya Korea berarti bahasa Korea, dan gagasan yang sama berlaku untuk bahasa Jepang, Mandarin, dan beberapa lainnya.)
Ada satu hal yang sempat membuatku hampir gila. Setiap kali aku mengedit kode dan membuka ulang aplikasinya, perbaikanku begitu saja hilang. Butuh beberapa saat sampai aku sadar bahwa aplikasinya menulis ulang kodenya sendiri dari nol setiap kali dijalankan, jadi selama ini aku mengedit salinan yang salah. Begitu aku menemukan tempat yang benar untuk membuat perbaikannya, ia akhirnya bertahan.
Setelah itu aku menjalankannya lagi, dan Korea ke Inggris pun berjalan.
Aku berpikir orang lain mungkin mengalami persoalan yang sama denganku, jadi kuunggah ke GitHub sekaligus sebagai issue dan pull request. Aku membuka pull request itu cuma iseng berjaga-jaga, sambil berharap kecil siapa tahu benar-benar diterima. Dan OmniVoice memasukkan perbaikanku! Aku bukan developer, cuma seseorang yang suka sulih suara dengan AI, dan bisa berkontribusi pada kode orang lain membuatku benar-benar senang.
Kamu bisa melihatnya di GitHub: issue yang kubuka dan pull request yang digabungkan.
Beginilah hasil akhirnya:
OmniVoice: disulihsuarakan Korea → Inggris, dengan suara asli yang dikloning
Sejujurnya, hasil ini pun masih belum memuaskanku. Kalau kamu menyimak baik-baik, terdengar sedikit bahasa Korea menyelip di awal beberapa kalimat. Tapi kloning suaranya sungguh bagus. Sejauh ini aku sudah mencoba sejumlah alat sulih suara open-source, dan aku belum melihat satu pun yang menyamai suara penutur aslinya sebaik ini. Akan kutunjukkan di tulisan berikutnya bagaimana aku berusaha menghilangkan selipan itu.
Penilaian
Dapatkan rangkuman dubbing AI mingguan
Rangkuman mingguan soal dubbing AI & berita terbaru. Tanpa spam, bisa berhenti kapan aja.
Komentar (0)
Belum ada komentar — jadi yang pertama, yuk.