الانتقال إلى المحتوى الرئيسي
تتيح لنا SUNO إنشاء شخصية صوتية مخصصة عبر أي ملف صوتي، لتحقيق استنساخ الصوت لاستخدامه في توليد الموسيقى. بخلاف واجهة Persona API الحالية (التي تستخدم audio_id المُنشأ بواسطة Suno)، تقبل هذه الواجهة audio_url متاحًا للعامة، أي تسجيلك الصوتي الخاص. يشرح هذا المستند طريقة تكامل واجهة برمجة تطبيقات استنساخ الصوت.

الخطوة الأولى: إنشاء شخصية صوتية

تحتوي واجهة برمجة التطبيقات هذه على ثلاث معاملات إدخال: audio_url (إلزامي)، وهو رابط لملف صوتي بتنسيق MP3 أو WAV يمكن الوصول إليه علنًا ويحتوي على صوت بشري واضح لشخص واحد؛ وname وdescription (اختياريان)، وهما اسم ووصف الشخصية الصوتية.
متطلبات الملف الصوتي
  • يجب أن يكون تنسيق الصوت WAV أو MP3
  • يجب أن تتراوح مدة الصوت بين 10~240 ثانية، ويوصى باستخدام مادة صوتية نظيفة وجافة لشخص واحد لمدة 30~60 ثانية
  • يجب أن يحتوي الصوت على صوت بشري واضح وقابل للتعرّف لشخص واحد يتحدث أو يغني
  • يُرجى التأكد من تجنب ضوضاء الخلفية، والمرافقة الموسيقية، والصدى، والارتداد الصوتي؛ إذ إن الأغاني الكاملة المصحوبة بمرافقة موسيقية لا تجتاز عادةً التحقق من البصمة الصوتية
  • لا تضمّن عدة متحدثين أوأصواتًا بشرية متعددة
  • قد تؤدي المواد ذات مستوى الصوت المنخفض جدًا أو الكلام غير الواضح أو الضوضاء الشديدة إلى فشل الاستنساخ أوضعف نتيجة التوليد توضيح قيود الاستخدام
  • الشخصيات الصوتية التي يتم إنشاؤها عبر رفع الصوت هي موارد خاصة
  • هذه الشخصية الصوتية لا تدعم إعادة الاستخدام عبر الحسابات
  • يُنصح باستخدامها في أقرب وقت ممكن بعد نجاح الإنشاء، فقد تصبح غير صالحة أو غير متاحة إذا لم تُستخدم لفترة طويلة
  • يتم إنشاء name المُعاد تلقائيًا بواسطة النظام، ويُرجى الاعتماد على persona_id المُعاد
يُرجى إعادة المحاولة أولًا عند فشل الاستدعاء استنساخ الصوت مهمة كثيفة الحوسبة، وحتى إذا كانت المادة متوافقة تمامًا، فهناك احتمال معين لحدوث فشل عرضي، ومن الردود الشائعة مثل voices_sound_different (لم يجتز التحقق من البصمة الصوتية) وغيرها. هذا النوع من الفشل لا علاقة له بجودة الصوت، وعادةً ما تنجح إعادة المحاولة باستخدام المادة نفسها، ويُنصح بتنفيذ 1~2 من عمليات إعادة المحاولة التلقائية للنتائج الفاشلة عند التكامل. لن يتم احتساب رسوم على الطلبات الفاشلة.
يُعد https://cdn.acedata.cloud/suno_demo.mp3 أعلاه مادة نموذجية يمكن استدعاؤها مباشرةً (MP3، 41 ثانية، صوت جاف لشخص واحد). إذا كنت بحاجة إلى مثال بتنسيق WAV، فيمكنك استخدام https://cdn.acedata.cloud/uploads/82d23b97-ec1c-4b41-91b8-989fc51f8765 (WAV، 41 ثانية، أحادي القناة 44.1kHz).
تكون النتيجة كما يلي:
كما يمكن ملاحظة، فإن حقل persona_id في data هو معرّف الشخصية الصوتية التي تم إنشاؤها. يكون حقل is_public دائمًا false، لأن الشخصيات الصوتية التي يتم إنشاؤها عبر رفع الصوت هي خاصة. لاحظ أن name المُعاد يتم إنشاؤه تلقائيًا بواسطة النظام، ويُرجى استخدام persona_id للإشارة إلى هذه الشخصية الصوتية لاحقًا.

الخطوة الثانية: استخدام الشخصية الصوتية لتوليد الموسيقى

بعد الحصول على معرّف الشخصية الصوتية، يمكننا استخدام Suno Audios Generation API لتوليد الموسيقى. اضبط action على generate، واضبط persona_id على معرّف الشخصية الصوتية المُعاد أعلاه، وستستخدم الأغنية المُولدة الصوت المستنسخ للغناء.
ملاحظة: يدعم استنساخ الصوت نماذج chirp-v4-5 والإصدارات الأعلى فقط (مثل chirp-v4-5 وchirp-v5 وchirp-v5-5)، ولا يدعم chirp-v4.
تكون النتيجة كما يلي:
يمكن استخدام persona_id لتوليد generate، ويمكن استخدامه أيضًا للغناء المعاد cover / upload_cover. لا يلزم تعبئة vocal_gender في الوقت نفسه عند تحديد الصوت؛ ولا تزال درجة تشابه الصوت تعتمد على المادة المرجعية ونتيجة التوليد. الصوت الذي يتم إنشاؤه عبر هذه الواجهة هو مورد خاص. قبل إعادة غناء أغنية موجودة، استدعِ أولًا /suno/upload، ومرّر audio_url للأغنية الأصلية وpersona_id لهذا الصوت؛ وبعد نجاح الرفع، استخدم data.audio_id المُعاد وpersona_id نفسه لاستدعاء /suno/audios:
يجب استخدام قناة الخدمة نفسها لإنشاء الصوت ورفع الأغنية الأصلية وإعادة الغناء. يُرجى عدم إعادة استخدام معرّفات الأغاني التي لم تُربط مسبقًا بهذا الصوت الخاص مباشرةً؛ لمزيد من التفاصيل، راجع رفع الصوت المرجعي في Suno.