เช่น. Pytońskatreść do mowy ซึ่งเป็นภาษาโปแลนด์สำหรับ ข้อความ Python เพื่อพูด แพคเกจสำหรับการเปลี่ยนข้อความที่เขียนเป็นภาษาโปแลนด์เป็นคำพูด
ทั้งสำหรับ Python3 มาตรฐานและสำหรับ iOS
ห้องสมุด LIL นี้ได้รับการออกแบบเพื่อให้มั่นใจว่าผู้คนกำลังเขียนโปรแกรมสำหรับ Pollacks มี ข้อความออฟไลน์ที่ทำงานเป็นซอฟต์แวร์ Python คำพูด สำหรับคนที่พูดภาษาอังกฤษมีอยู่แล้วคือห้องสมุด pyttsx3 ซึ่งให้ฟังก์ชั่นดังกล่าว หากคุณต้องการให้โปรแกรมของคุณ พูดคุย คุณเพียงแค่เรียกใช้คำสั่งไม่กี่คำ
import pyttsx3
engine = pyttsx3 . init ()
engine . say ( "now we're talkin'" )
engine . runAndWait ()และมันก็ง่ายจริงๆ! แต่สำหรับภาษาโปแลนด์ไม่มีสิ่งนั้น จนถึงตอนนี้
มันเป็น avalaible บน 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 ดังนั้นจึงต้องใช้เวลาพอสมควรสำหรับ Python ในการนำเข้าแพ็คเกจ ( pytdm Modulw ดำเนินการ 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 พวกเขาจะทำงานได้ดี
โดยทั่วไปหากคุณมีปัญหาใด ๆ ก่อนคุณสามารถพิมพ์ได้เช่น help(pytdm.mow) และอ่านข้อมูลที่ให้ไว้ที่นั่น
ตัวอย่างสำหรับซอฟต์แวร์ทำงานได้ดีเพียงใด ... การแปล คำภาษาโปแลนด์จะเห็นได้ในไฟล์ demo.py (avalaible on my github) คุณสามารถเรียกใช้มันแล้วดูว่ามันจัดการเพลงโปแลนด์ที่ศักดิ์สิทธิ์ที่สุดได้ดีเพียง barka.py
มีวิดีโอแสดงว่าไฟล์ demo.py ทำงานอย่างไร (บันทึกในคุณภาพต่ำโดยฉันและโพสต์บน YouTube) ที่นี่
นอกจากนี้ด้วยเวอร์ชัน 0.1.0 โหมดภาษาฝรั่งเศสได้รับการแนะนำดังนั้นจึงมีไฟล์สาธิตอื่น demo_fr.py วิดีโอของมันกำลังรันอยู่ที่นี่
ไฟล์ตัวอย่างทั้งหมดอยู่ในไดเรกทอรี demos GitHub
สิ่งที่คุณต้องการคือแพ็คเกจในตัวเช่น re และนอกเหนือจากแพ็คเกจ pyttsx3 (เวอร์ชัน >=2.7 ) มันเป็น avalaible บน pypi เพื่อให้คุณสามารถทำคลาสสิก:
pip install pyttsx3
ปัญหาเดียวคือมันแตกต่างกันสำหรับระบบปฏิบัติการทุกระบบ
สำหรับระบบปฏิบัติการอื่น ๆ ฉันมีเพียงข้อเสนอแนะจากคนอื่น:
pytdm กับภาษาอื่นเป็นปัญหาแม้ว่า - synthesizer ในตัวของ Windows มาโดยไม่มีธงการทำเครื่องหมายภาษาที่จำเป็นสำหรับ pyttsx3 เพื่อตรวจจับดังนั้นการพยายามเปลี่ยนภาษาอาจล้มเหลวโดยสรุป: มันใช้งานได้ดีสำหรับพวกเขาทั้งหมด แต่บางเสียงก็รับรู้แตกต่างกันใน OSS ที่แตกต่างกัน
สำหรับ iOS ให้ดูไดเรกทอรี pythonista บน GitHub ทุกอย่างมี PyTDM เวอร์ชัน iOS
ในฐานะผู้อ่านที่ระมัดระวังอาจสังเกตเห็นฟังก์ชั่นการพูดหลักคือ mów (FYI มันหมายถึง พูด เหมือนใน pyttsx3 ) ใครจะถาม wthell? หรือมากขึ้น Co Do Diabłaอย่างเหมาะสม? แต่นั่นคือวิธีที่แพ็คเกจมีวัตถุประสงค์เพื่อ: ฟังก์ชั่นมีชื่อโปแลนด์ จัดการกับมัน หรือใช้ชื่อเดียวกันโดยไม่มี diacritics ถ้าคุณต้องการจริงๆ
ตอนนี้สำหรับความสงบเกี่ยวกับวิธี การแปล ที่เรียกว่าจริงใช้งานได้จริง
สำหรับทุกคำที่ส่งผ่านไปยังฟังก์ชั่น mów มันเป็นครั้งแรก ที่ tanslated โดย func tłumacz (เช่น แปล ) และเรียกใช้งานได้
repolonizuj เช่น repolonise - มันเกี่ยวข้องกับสิ่งที่แปลกประหลาด ortographic ภาษาโปแลนด์แปลก ๆ เช่นไดอะแกรม, พยัญชนะบางตัวที่ถูก devoiced ฯลฯ futuryści เป็นแรงบันดาลใจ
anglicyzuj IE Anglicise - ต้องใช้ข้อความ repolonised และพยายามค้นหาการประมาณที่ใกล้เคียงที่สุดสำหรับเสียงทั้งหมดที่จะพบ มันทำได้ดีที่สุด
จากนั้น mów จะให้ข้อความ repolonised anglicised กับ engine.say พูดตามที่แสดงด้านบน
ดังนั้นเมื่อคุณทำอะไรบางอย่างเช่น mów('czuję, że będzie dziś dość średni dzień') anglicyzuj ' 'czuje, że bendźe dźiś dość średni dźen' มันเรียกว่า tłumacz ก่อนซึ่งเรียกว่า repolonizuj ที่ส่งคืนข้อความโปแลนด์ที่เรียบง่าย ที่จะกล่าวโดย pyttsx3 :
'choo yeah, zshehh behnjehh jeesh dawshtch shrehdnee jehn'
แน่นอนว่ามันน่าทึ่งมาก
อย่างที่คุณอาจรู้จักกับไลบรารี pyttsx3 เสนอการสังเคราะห์คำพูดใด ๆ ที่เป็นไปได้กับระบบ ดังนั้นมันอาจเกิดขึ้นได้ก็มีภาษาฝรั่งเศสและตอนนี้ก็เป็นไปได้ที่จะใช้กับ pytdm ด้วย
มันเป็นคุณสมบัติที่ค่อนข้างใหม่ดังนั้นคุณไม่ควรคาดหวังว่ามันจะไร้ที่ติ สำหรับตอนนี้ตัวเลขที่ออกเสียงไม่ได้ถูกนำมาใช้ที่นี่ นอกจากนี้ยังไม่ได้รับการทดสอบใด ๆ นอกเหนือจาก MacOS
สิ่งที่ดีคือการถอดความภาษาฝรั่งเศสเป็นภาษาฝรั่งเศสง่ายกว่าภาษาอังกฤษ ทำไม แม้จะมีสิ่งที่หลายคนคิดเกี่ยวกับภาษาฝรั่งเศส แต่จริง ๆ แล้วมันค่อนข้างสมเหตุสมผลและเป็นประจำมากกว่าภาษาอังกฤษ กฎการอ่านของมันไม่ได้ยุ่งและไม่มีกรณีที่แปลกประหลาดมากมาย
คุณต้องติดตั้ง pytdm เวอร์ชัน 0.1.0 หรือสูงกว่า
เพียงเพิ่มอาร์กิวเมนต์ lang="fr" หรือเพียงแค่ fr เมื่อเรียกฟังก์ชั่นเช่น mów หรือ tłumacz ในการตั้งค่ากลับเป็นชุดภาษาอังกฤษ 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 เสริมอย่าลังเลที่จะแยก GitHub repo และให้วิดีโอบางอย่าง :)