Dubifyは「動画をアップロードするだけで吹替版が完成する」サービスですが、内部では5つの工程が独自パイプラインで連携しています。
工程1: 音声分離(Meta Demucs)
動画の音声をボーカル(声)とBGM(ドラム・ベース・その他)に分離します。Meta社が開発したDemucsモデルを使用。分離後のBGMは歪みが少なく、後のミックス工程でクリーンに合成できます。
工程2: 高精度文字起こし + 自動校正
OpenAI Whisperで音声を文字起こしした後、独自の言語モデルが文脈を理解して校正します。
YouTubeのオートダビングが失敗する根本原因は「文字起こしの精度の低さ」です。Dubifyはこの工程に2段階の処理をかけることで、固有名詞や専門用語も正確に認識します。
ユーザーは動画の内容や登場する用語をヒントとして入力できます(例: 「アクアリウム系の動画。毛ガニ、エイハイム、サンゴ砂などが登場」)。これにより校正精度がさらに向上します。
工程3: 2種類の翻訳を同時生成(業界唯一)
ここがDubifyの最大の独自技術です。
普通の翻訳ツールは「正確な翻訳」を1種類出すだけ。しかし吹替では、各セグメントの秒数に収まる長さでないと、読み上げが早口になったり途中で切れたりします。
Dubifyは2種類の翻訳を同時に生成します:
- 字幕用翻訳: 正確で詳細な翻訳(画面表示向け)
- 読み上げ用翻訳: 各セグメントの秒数×12文字以内に収めた短い翻訳(TTS向け)
TTS(音声合成)の発話速度を事前に実測(約13.6文字/秒)し、安全マージンを考慮して12文字/秒を基準としています。
工程4: 感情分析付き音声合成
テキストの感情・トーン・テンポを自動分析し、セグメントごとに個別の発話指示を渡します。
例えば「やばい!」は "Excited and energetic, fast pace" と指示され、「大丈夫かな...」は "Worried, slower pace, lower voice" と指示されます。これにより棒読みにならない自然な読み上げが実現します。
音声はPCMバイナリレベルで正確なタイムスタンプ位置に配置されます。Pythonのwaveモジュールとstructで24000Hz 16bit PCMデータを1サンプル(2バイト)単位で直接操作。既存のライブラリやフレームワークでは実現できなかった精度です。
工程5: BGMミックス + 映像結合
吹替音声と元動画のBGM(工程1で分離済み)をFFmpegでミックスし、元動画の映像と結合して完成です。
全工程の中間ファイルはすべてダウンロード可能。字幕だけ、BGMだけ、翻訳だけなど、必要な部分だけ使うこともできます。