Aeneas هي مكتبة Python/C ومجموعة من الأدوات لمزامنة الصوت والنص تلقائيًا (ويعرف أيضًا باسم المحاذاة القسرية).
يقوم Aeneas تلقائيًا بإنشاء خريطة التزامن بين قائمة شظايا النص وملف صوتي يحتوي على سرد النص. في علوم الكمبيوتر ، تُعرف هذه المهمة باسم (حساب أ) المحاذاة القسرية تلقائيًا.
على سبيل المثال ، بالنظر إلى هذا الملف النصي وملف الصوت هذا ، يحدد Aeneas ، لكل جزء ، الفاصل الزمني المقابل في ملف الصوت:
1 => [00:00:00.000, 00:00:02.640]
From fairest creatures we desire increase, => [00:00:02.640, 00:00:05.880]
That thereby beauty's rose might never die, => [00:00:05.880, 00:00:09.240]
But as the riper should by time decease, => [00:00:09.240, 00:00:11.920]
His tender heir might bear his memory: => [00:00:11.920, 00:00:15.280]
But thou contracted to thine own bright eyes, => [00:00:15.280, 00:00:18.800]
Feed'st thy light's flame with self-substantial fuel, => [00:00:18.800, 00:00:22.760]
Making a famine where abundance lies, => [00:00:22.760, 00:00:25.680]
Thy self thy foe, to thy sweet self too cruel: => [00:00:25.680, 00:00:31.240]
Thou that art now the world's fresh ornament, => [00:00:31.240, 00:00:34.400]
And only herald to the gaudy spring, => [00:00:34.400, 00:00:36.920]
Within thine own bud buriest thy content, => [00:00:36.920, 00:00:40.640]
And tender churl mak'st waste in niggarding: => [00:00:40.640, 00:00:43.640]
Pity the world, or else this glutton be, => [00:00:43.640, 00:00:48.080]
To eat the world's due, by the grave and thee. => [00:00:48.080, 00:00:53.240]

يمكن إخراج خريطة التزامن هذه للملف في العديد من التنسيقات ، اعتمادًا على تطبيقها:
BeautifulSoup4 و lxml و numpyتم تطوير Aeneas واختباره على Debian 64bit ، مع Python 2.7 و Python 3.5 ، وهما المنصات الوحيدة المدعومة في الوقت الحالي. ومع ذلك ، تم تأكيد Aeneas للعمل على توزيعات Linux الأخرى ، Mac OS X ، و Windows. انظر ملف المنصات للحصول على التفاصيل.
إذا أثبتت تثبيت AENEAS أصليًا على نظام التشغيل الخاص بك ، يتم تشجيعك بشدة على استخدام Aeneas-Vagrant ، والذي يوفر Aeneas داخل صورة Debian افتراضية تعمل تحت VirtualBox و Vagrant ، والتي يمكن تثبيتها على أي نظام تشغيل حديث (Linux ، Mac OS X ، Windows).
تتوفر مثبتات All-In-One لـ Mac OS X و Windows ، ويتم توفير برنامج نصي Bash لتوزيعات Linux المستندة إلى Deb (Debian ، Ubuntu) في هذا المستودع. من الممكن أيضًا تنزيل جهاز VirtualBox+Vagrant الظاهري. يرجى الاطلاع على ملف التثبيت لإجراءات التثبيت المفصلة خطوة بخطوة لأنظمة تشغيل مختلفة.
الإجراء العام المستقل عن نظام التشغيل بسيط:
تثبيت Python (2.7.x المفضل) ، FFMPEG ، و ESPEAK
تأكد من استدعاء التنفيذيين التاليين من قذيتك : espeak و ffmpeg و ffprobe و pip و python
قم أولاً بتثبيت numpy مع pip ثم aeneas (هذا الترتيب مهم):
pip install numpy
pip install aeneasللتحقق مما إذا كنت قد قمت بتثبيت Aeneas بشكل صحيح ، قم بتشغيل:
python -m aeneas.diagnosticsقم بالتشغيل بدون حجج للحصول على رسالة الاستخدام :
python -m aeneas.tools.execute_task
python -m aeneas.tools.execute_jobيمكنك أيضًا الحصول على قائمة من الأمثلة المباشرة التي يمكنك تشغيلها على الفور على جهازك بفضل الملفات المضمنة:
python -m aeneas.tools.execute_task --examples
python -m aeneas.tools.execute_task --examples-all لحساب خريطة التزامن map.json لزوج ( audio.mp3 ، text.txt بتنسيق نص عادي) ، يمكنك تشغيل:
python -m aeneas.tools.execute_task
audio.mp3
text.txt
" task_language=eng|os_task_file_format=json|is_text_type=plain "
map.json (تم تقسيم الأمر إلى خطوط مع for visual clarity ؛ في الإنتاج ، يمكنك الحصول على الأمر بأكمله على سطر واحد و/أو يمكنك استخدام متغيرات shell.)
لحساب خريطة map.smil f001 لزوج ( audio.mp3 id
python -m aeneas.tools.execute_task
audio.mp3
page.xhtml
" task_language=eng|os_task_file_format=smil|os_task_file_smil_audio_ref=audio.mp3|os_task_file_smil_page_ref=page.xhtml|is_text_type=unparsed|is_text_unparsed_id_regex=f[0-9]+|is_text_unparsed_id_sort=numeric "
map.smilكما ترون ، تحدد الوسيطة الثالثة ( سلسلة التكوين ) المعلمات التي تتحكم في تنسيقات I/O وخيارات المعالجة للمهمة. استشر الوثائق للحصول على التفاصيل.
إذا كان لديك العديد من المهام للمعالجة ، فيمكنك إنشاء حاوية عمل لعملياتها:
python -m aeneas.tools.execute_job job.zip output_directory يجب أن يحتوي File job.zip على ملف تكوين config.txt أو config.xml ، مما يوفر AENEAS مع جميع المعلومات اللازمة لتحليل أصول الإدخال وتنسيق ملفات خريطة المزامنة. استشر الوثائق للحصول على التفاصيل.
يحتوي الوثائق على برنامج تعليمي مقترح للغاية يشرح كيفية استخدام أدوات سطر الأوامر المدمجة.
parsed أو plain أو subtitles أو unparsed (XML)mplain و munparsed (XML)id classffmpegfinetuneas )يقوم عدد كبير من المستخدمين بتشغيل Aeneas لمحاذاة الصوت والنص على مستوى الكلمات (أي ، كل جزء عبارة عن كلمة). على الرغم من أن Aeneas لم يتم تصميمه مع مراعاة محاذاة على مستوى الكلمات ، وقد تكون النتائج أدنى من المحاذاة القسرية المستندة إلى ASR للغات ذات نماذج ASR جيدة ، تقدم Aeneas بعض الخيارات لتحسين جودة المحاذاة على مستوى الكلمات:
إذا كنت تستخدم أداة سطر الأوامر aeneas.tools.execute_task ، فيمكنك إضافة --presets-word لتمكين إخفاء MFCC nonspeech ، على سبيل المثال:
$ python -m aeneas.tools.execute_task --example-words --presets-word
$ python -m aeneas.tools.execute_task --example-words-multilevel --presets-word إذا كنت تستخدم Aeneas كمكتبة ، فما عليك سوى تعيين معلمات RuntimeConfiguration المناسبة. يرجى الاطلاع على تعليمي سطر الأوامر للحصول على التفاصيل.
يتم إصدار Aeneas بموجب شروط الإصدار 3 ترخيص GNU Affero العام. راجع ملف الترخيص للحصول على التفاصيل.
يمكن العثور على تراخيص رمز الطرف الثالث والملفات المضمنة في Aeneas في دليل التراخيص.
لم تتضرر أي حقوق نسخ في صنع هذا المشروع.
يوليو 2015 : دعمت ميشيل جيانيلا بسخاء تطوير رمز ضبط الحدود (v1.0.4)
أغسطس 2015 : رعت ميشيل جيانيلا جزئيًا ميناء رمز MFCC/DTW إلى C (v1.1.0)
سبتمبر 2015 : رعاية الأصدقاء في غرب إفريقيا جزئيًا تطوير رمز الكشف عن الرأس/الذيل (v1.2.0)
أكتوبر 2015 : برعاية تبرع مجهول تطوير خيار "YouTube Downloader" (v1.3.0)
أبريل 2016 : قامت مؤسسة Fruch برعاية تطوير وتوثيق V1.5.0
ديسمبر 2016 : Centro Internazionale del Libro Parlato "Adriano Sernagiotto" (Feltre ، إيطاليا) رعت جزئيًا تطوير سلسلة V1.7
هل ترغب في دعم تطوير Aeneas ؟
أنا أقبل الرعاية ل
لا تتردد في الاتصال.
إذا كنت تعتقد أنك عثرت على خطأ أو لديك طلب ميزة ، فيرجى استخدام متتبع مشكلة GitHub لإرساله.
إذا كنت ترغب في طرح سؤال حول استخدام Aeneas ، فإن الخيار الأفضل الخاص بك يتكون من إرسال بريد إلكتروني إلى القائمة البريدية.
وأخيرا ، مساهمات الكود موضع ترحيب! يرجى الرجوع إلى دليل مساهمة الكود للحصول على تفاصيل حول سياسات الفرع وأسلوب الكود المراد متابعته.
شكراً جزيلاً لنيكولا مونتيكشيو ، الذي اقترح استخدام MFCCs و DTW ، وشارك في تطوير الكود التجريبي الأول لمحاذاة الصوت والنص.
ساعد Paolo Bertasi ، الذي طور واجهات برمجة التطبيقات وتطبيق الويب لمزامنة ReadBeyond ، في تشكيل بنية هذه الحزمة لاستخدامها غير المتزامن.
أعد Chris Hubbard ملفات التغليف Aeneas باعتبارها Debian/Ubuntu .deb .
أعد دانييل باير صيغة brew لتثبيت Aeneas وتبعياتها على Mac OS X.
قام دانييل باير وكريس هوبارد وريتشارد مارغتس بتعبئة المثبتات لنظام التشغيل Mac OS X و Windows.
ساهم Firat Ozdemir في رمز HTML/JS finetuneas للحصول على خرائط مزامنة ضبط دقيقة في المتصفح.
ساهم Willem van der Walt في مقتطف الكود لإخراج خريطة المزامنة بتنسيق TextGrid.
ساهم كريس فون في غلاف MacOS TTS.
جميع المساهمين القويين جيثب ، وأعضاء مجموعة Google.