براؤزر میں OpenVoice V2 چلانا
میں نے Timeline Studio کے لیے ایک مقامی (local)، کثیر لسانی وائس کلوننگ ورک فلو تیار کیا ہے۔ سب کچھ براؤزر کے اندر چلتا ہے، اس لیے کوئی بھی آڈیو ڈیٹا یا ریفرنس ریکارڈنگ آپ کے ڈیوائس سے باہر نہیں جاتی۔ اس سے آپ کا ڈیٹا نجی اور تیز رہتا ہے۔
یہ سسٹم OpenVoice V2 کو FP16 ONNX، WebGPU، اور IndexedDB کے ساتھ چلاتا ہے۔
ورک فلو کیسے کام کرتا ہے
- ایک زبان اور بنیادی آواز منتخب کریں۔
- اصل تقریر (source speech) تیار کریں۔
- ریفرنس آواز اپ لوڈ کریں یا ریکارڈ کریں۔
- اسپیکر ایمبیڈنگز (speaker embeddings) نکالیں۔
- ٹون کلر کنورژن (tone-color conversion) چلائیں۔
- نتیجہ دیکھیں اور محفوظ کریں۔
تکنیکی تفصیلات
انجن دو حصوں میں تقسیم ہے: ایک WASM پر مبنی ریفرنس انکوڈر اور ایک WebGPU سے چلنے والا کنورٹر۔ اگر WebGPU ناکام ہو جائے تو کنورٹر WASM پر منتقل ہو جاتا ہے تاکہ ہر کوئی اسے استعمال کر سکے۔
میں نے پروڈکشن ماڈل کے لیے FP16 کا انتخاب کیا۔ FP8 موجود ہے، لیکن براؤزر سپورٹ ابھی مستحکم نہیں ہے۔ آج کے دور میں FP16 رفتار اور آڈیو معیار کا بہترین امتزاج فراہم کرتا ہے۔
UI کو ہموار رکھنے کے لیے، میں نے پورے انفرنس پاتھ (inference path) کو Web Worker میں منتقل کر دیا ہے۔ یہ بھاری پروسیسنگ کے دوران براؤزر کو فریز ہونے سے روکتا ہے۔ میں سسٹم کو سست کیے بغیر آڈیو ڈیٹا منتقل کرنے کے لیے transferable ArrayBuffers کا استعمال کرتا ہوں۔
آڈیو معیار کے مراحل
- 22,050 Hz پر ری سیمپل (Resample) کریں۔
- کنورژن کے لیے STFT کا استعمال کریں۔
- RMS ایکٹیویٹی کا استعمال کرتے ہوئے آخری حصوں (tails) کو خودکار طور پر صاف کریں۔
- زیادہ آواز پر clipping سے بچنے کے لیے سگنل کو soft-limit کریں۔
اسٹوریج
میں اسپیکر پروفائلز کو IndexedDB میں محفوظ کرتا ہوں، جس سے آپ انکوڈر کو دوبارہ چلائے بغیر مختلف زبانوں میں ایک ہی آواز کو دوبارہ استعمال کر سکتے ہیں۔
میں نے اسمارٹ کیشنگ (smart caching) بھی شامل کی ہے۔ ماڈل Hugging Face یا ModelScope سے متوازی (parallel) ڈاؤن لوڈ ہوتا ہے؛ اگر براؤزر کیش بھر جائے تو سسٹم ایرر دینے کے بجائے میموری سے ماڈل چلاتا ہے۔
یہ پروجیکٹ محض ایک ONNX ماڈل نہیں ہے—یہ ماڈل کی فراہمی، ہارڈ ویئر فال بیک، اور مقامی ڈیٹا کی مستقل مزاجی (local data persistence) کے لیے ایک مکمل نظام ہے۔
ریپوزٹری: https://github.com/MartinDelophy/ai-video-editor
مکمل تکنیکی تفصیل: https://dev.to/martindelophy/running-openvoice-v2-in-the-browser-with-fp16-onnx-webgpu-and-indexeddb-50kl
اختیاری لرننگ کمیونٹی: https://t.me/GyaanSetuAi
