أي. Pytońska treść do mowy وهو البولندية لنص بيثون إلى الكلام . حزمة لتحويل النص المكتوبة باللغة البولندية إلى الكلام.
كلاهما للبيثون 3 و iOS.
تم تصميم مكتبة LIL هذه من أجل التأكد من أن برمجة الأشخاص لـ Pollacks لديهم نوع من النص الذي يعمل في وضع عدم الاتصال إلى برنامج Python الكلام . بالنسبة للأشخاص الذين يتحدثون باللغة الإنجليزية هناك بالفعل مكتبة pyttsx3 التي توفر مثل هذه الوظائف. إذا كنت تريد أن يتحدث البرنامج الخاص بك ، فما عليك سوى تشغيل عدد قليل من الأوامر
import pyttsx3
engine = pyttsx3 . init ()
engine . say ( "now we're talkin'" )
engine . runAndWait ()وهو حرفيًا بهذه السهولة! ولكن بالنسبة للبولندية لم يكن هناك شيء من هذا القبيل. حتى الآن.
إنه جاذب على Pypi! يمكنك فقط الجري:
pip install pytdmويمكنك استخدامه هكذا!
للاطلاع على إصدار iOS ، راجع دليل Pythonista على Github ، لا تستخدم pip هناك-فقط ضع هذا الملف في دليل Python Modules/site-packages-3 وإعادة تشغيل التطبيق. سيتم إضافة الوحدة النمطية إلى المسار وبعد ذلك يمكنك ببساطة استيراده.
يعتمد على حزمة pyttsx3 التي ذكرتها. الشيء هو أنه على عكس ما يعتقده الكثير من الناس الذين يتحدثون الإنجليزية (النظر إليكم الأمريكيون) ، فإن البولندية قابلة للتوضيح لشخص يعرف اللغة الإنجليزية (أو الفرنسية - انظر أدناه).
ما يفعله PyTDM هو
pyttsx3العلامة النجمية أعلاه بجوار كلمة "ترجمة" موجودة لسبب ما - إنها ليست ترجمة بالضبط. أشبه النسخ أو الترجمة. Anglicises أو Francises اعتمادًا على اللغة التي اختارها المرء. سنعود إلى ذلك لاحقًا
للحصول على أشياء أساسية بسيطة ، يجب عليك القيام بذلك على النحو التالي:
import pytdm
pytdm . mów ( "dzień dobry, dobranoc" )أو الطريقة الثانية:
from pytdm import mowa
mowa . mów ( "dzień dobry, dobranoc" ) وبعد ذلك يمكنك أن تستمع بسعادة إلى الصوت الحلو للغة البولندية التي يتحدث بها صوت مزج pyttsx3 . أليس هذا رائع؟
ليس عليك أن تبدأ المحرك كما يفعل المرء مع pyttsx3 وبالتالي يستغرق بعض الوقت لبيثون لاستيراد الحزمة (يقوم Modulw pytdm بإجراء أمر pyttsx3.init() نفسه عند استيراده).
مع الإصدار 0.1.0 جاءت وظيفة حفظ النص المنطوق في الملفات! إنه يشبه ببساطة جعل الكمبيوتر يقول الأشياء:
pytdm . zapisz ( "dzień dobry świecie!" , "example.mp3" ) وسيتم حفظ ملفك في CWD الخاص بك تحت اسم "example.mp3" . لا يعمل 100 ٪ بشكل صحيح. لسبب ما يبدو أن pyttsx3 ينهار عند محاولة حفظ ملف ثانٍ في نفس الجلسة. أو بالأحرى يتم حفظ الملف بالفعل ولكن الأمر لا يتوقف عن تنفيذ نفسه. أفترض أن القضية في جزء pyttsx3 .
تحتوي الوظائف على أسماء بولندية مثل mów أو tłumacz مع تلك الرسالة الغريبة المضحكة ، ولكن إذا كنت تريد ، يمكنك استخدامها بدون Diacritics على سبيل المثال. اكتب mow أو tlumacz . سوف يعملون على ما يرام.
بشكل عام إذا كان لديك أي مشاكل أولاً ، يمكنك كتابة EG. help(pytdm.mow) وقراءة المعلومات المقدمة هناك.
مثال على مدى عمل البرنامج مع تقريبا ... ترجمة الكلمات البولندية يجب أن نرى في ملف demo.py (Avalaible على github). يمكنك فقط تشغيله ، ثم ترى مدى تعامله مع الأغنية البولندية الأكثر قداسة (في الواقع ، الأستاذ المقدس الثاني. بالنسبة لأحد أكثر الأقداس ، انظر barka.py )-نشيد الجمهورية البولندية الثالثة.
يوجد مقطع فيديو يوضح كيف يعمل ملف demo.py (المسجل بجودة منخفضة من قبلي ونشره على YouTube) هنا.
أيضًا مع الإصدار 0.1.0 تم تقديم الوضع الفرنسي وبالتالي هناك ملف تجريبي آخر demo_fr.py . مقطع فيديو له يتم تشغيله هنا.
جميع الملفات التجريبية موجودة في دليل GITHUB demos .
كل ما تحتاجه هو حزم مدمجة مثل re وبصرف النظر عن حزمة pyttsx3 (الإصدار >=2.7 ). إنه أمر جاذبية على PYPI حتى تتمكن فقط من القيام بالكلاسيكية:
pip install pyttsx3
المشكلة الوحيدة هي أنها مختلفة لكل نظام تشغيل.
لنظام التشغيل الآخر ، لدي فقط بعض التعليقات من الآخرين:
pytdm مع لغات أخرى مشكلة - حيث يأتي مزج Windows المدمج دون وجود علامات على علامات اللغة لاكتشاف pyttsx3 للكشف وبالتالي محاولة تغيير اللغة غالبًا.في الختام: إنه يعمل بشكل جيد بالنسبة لهم جميعًا ، لكن بعض الأصوات تتحقق بشكل مختلف على OSS مختلف.
للاطلاع على iOS ، انظر دليل pythonista على Github. كل شيء هناك إصدار iOS من PyTDM .
نظرًا لأن القارئ الحذر قد لاحظ بالفعل أن وظيفة التحدث الرئيسية هي mów (وهذا يعني أن القول كما هو الحال في pyttsx3 ). يمكن للمرء أن يسأل Wthell؟ أو بشكل أكثر سوءًا ، DIABła؟ ولكن هذا هو بالضبط ما كان المقصود من الحزمة أن تكون: الوظائف لها أسماء بولندية. التعامل معها. أو استخدم نفس الاسم بدون الرسوم إذا كنت بحاجة حقًا إلى ذلك.
الآن للحصول على بعض التحاقم حول كيفية عمل عملية الترجمة المسمى بالفعل.
لكل كلمة تم تمريرها إلى وظيفة mów ، يتم تنصيبها أولاً من قِبل Func tłumacz آخر تحمل اسم البولندية (أي ترجمة ) ويدعو 2 وظائف أخرى أولاً:
repolonizuj ie. repolonise - إنه يتعامل مع جميع الأشياء البولندية البولندية مثل الرسوم البيانية ، وبعض الحروف الساكنة التي يتم تنفيذها وما إلى ذلك .
anglicyzuj ie. Anglicise - يستغرق النص المبلور ويحاول العثور على أقرب التقريبات لجميع الأصوات التي يمكن العثور عليها. انها تبذل قصارى جهدها.
عندها فقط يعطي mów النص المنعش على engine.say كما هو موضح أعلاه.
لذلك عندما تفعل شيئًا مثل mów('czuję, że będzie dziś dość średni dzień') يدعو أولاً tłumacz الذي يدعو repolonizuj الذي يعيد هذا النص البولندي المبسط: 'czuje, że bendźe dźiś dość średni dźen' dośe anglicyzuj . بواسطة pyttsx3 :
'choo yeah, zshehh behnjehh jeesh dawshtch shrehdnee jehn'
من المؤكد أنه مذهل.
كما قد تكون تعرف أن مكتبة pyttsx3 تقدم أي مزج خطاب Avalaible للنظام. لذلك قد يحدث ذلك ، كما أن لدى الفرنسي والآن من الممكن استخدامه مع pytdm أيضًا.
إنها ميزة جديدة نسبيًا ، لذا يجب ألا تتوقع أن تكون خالية من العيوب. حتى الآن لا يتم تنفيذ الأرقام حتى يتم تنفيذها هنا. كما أنه لم يتم اختباره في أي مكان بصرف النظر عن ماكوس حتى الآن.
الشيء الجيد هو أنه من الأسهل في الواقع نسخ البولندية إلى الفرنسية من اللغة الإنجليزية. لماذا؟ حسنًا ، على الرغم من ما يفكر فيه الكثير من الناس في اللغة الفرنسية ، فهي في الواقع منطقية للغاية وأكثر انتظامًا من اللغة الإنجليزية. قواعد القراءة ليست بهذه الفوضى وليس هناك العديد من حالات الحافة الغريبة.
يجب أن يكون لديك إصدار pytdm 0.1.0 أو أعلى مثبت.
فقط أضف وسيطة lang="fr" أو ببساطة fr عند استدعاء وظائف مثل mów أو tłumacz . لإعادةه إلى اللغة الإنجليزية Set lang="en" .
> >> import pytdm
> >> pytdm . tłumacz ( "czuję, że będzie dziś dość średni dzień" , "fr" )
'tchouyé, jé baindjé djich dochtch chrédgni djègn'
> >> pytdm . mów ( "czuję, że będzie dziś dość średni dzień" , "fr" )
czuję , że będzie dziś dość średni dzień وهناك وظيفة francyzuj التي تعمل بنفس مثل anglicyzuj المذكورة من قبل ولكن للفرنسية.
gTTS اختياريلا تتردد في توتر ريبو جيثب وتقديم بعض مقاطع الفيديو :)