{"id":20563607,"url":"https://github.com/gooofy/py-espeak-ng","last_synced_at":"2025-04-06T18:14:18.633Z","repository":{"id":37743171,"uuid":"104105627","full_name":"gooofy/py-espeak-ng","owner":"gooofy","description":"Some simple wrappers around eSpeak NG intended to make using this excellent TTS for waveform and IPA generation as convenient as possible.","archived":false,"fork":false,"pushed_at":"2024-10-07T15:48:24.000Z","size":25,"stargazers_count":41,"open_issues_count":8,"forks_count":7,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-30T17:08:47.513Z","etag":null,"topics":["espeak","espeak-ng","python","tts","tts-api","tts-engines"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gooofy.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-09-19T17:24:43.000Z","updated_at":"2025-03-17T23:40:41.000Z","dependencies_parsed_at":"2025-01-01T08:11:32.963Z","dependency_job_id":"9138215f-494d-410a-a8df-70f2ba30c863","html_url":"https://github.com/gooofy/py-espeak-ng","commit_stats":{"total_commits":18,"total_committers":1,"mean_commits":18.0,"dds":0.0,"last_synced_commit":"0ebd5277e950a0b314afb391baf5d92de6c4866a"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gooofy%2Fpy-espeak-ng","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gooofy%2Fpy-espeak-ng/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gooofy%2Fpy-espeak-ng/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gooofy%2Fpy-espeak-ng/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gooofy","download_url":"https://codeload.github.com/gooofy/py-espeak-ng/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526762,"owners_count":20953143,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["espeak","espeak-ng","python","tts","tts-api","tts-engines"],"created_at":"2024-11-16T04:19:46.689Z","updated_at":"2025-04-06T18:14:18.609Z","avatar_url":"https://github.com/gooofy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"py-espeak-ng\n------------\n\nSome simple wrappers around eSpeak NG intended to make using this excellent TTS\nfor waveform and IPA generation as convenient as possible. \n\nTarget audience are developers who would like to use eSpeak NG as-is for speech\nsynthesis in their Python application on GNU/Linux operating systems.\n\nConstructive comments, patches and pull-requests are very welcome.\n\nExamples\n~~~~~~~~\n\nDirect TTS Audio Output\n^^^^^^^^^^^^^^^^^^^^^^^\n\nFirst, import the ESpeakNG engine wrapper:\n[source,python]\n----\nfrom espeakng import ESpeakNG\n----\n\nnow for some simple direct TTS output:\n\n[source,python]\n----\nesng = ESpeakNG()\nesng.say('Hello World!')\n----\n\nlower pitch and speed:\n[source,python]\n----\nesng.pitch = 32\nesng.speed = 150\nesng.say('Hello World!')\n----\n\ntry a different language:\n[source,python]\n----\nesng.voice = 'german'\nesng.say('Hallo Welt!')\n----\n\nspecify phonemes instead of words:\n[source,python]\n----\nesng.voice = 'en-us'\nesng.say(\"[[h@l'oU w'3:ld]]\")\n----\n\nSynthesize Wave File without Playing It\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nFrom Text:\n\n[source,python]\n----\nimport wave\nimport StringIO\n\nesng.voice = 'en-us'\nwavs = esng.synth_wav('Hello World!')\nwav = wave.open(StringIO.StringIO(wavs))\nprint wav.getnchannels(), wav.getframerate(), wav.getnframes()\n----\nresult:\n----\n1 22050 24210\n----\n\nList Available Voices\n^^^^^^^^^^^^^^^^^^^^^\n[source,python]\n----\nl = esng.voices\n----\nresult:\n----\n\u003e\u003e\u003e l[0]\n{'pty': '5', 'language': 'af', 'gender': 'M', 'age': '--', 'voice_name': 'afrikaans', 'file': 'gmw/af'}\n\u003e\u003e\u003e l[1]\n{'pty': '5', 'language': 'am', 'gender': '-', 'age': '--', 'voice_name': 'amharic', 'file': 'sem/am'}\n\u003e\u003e\u003e l[2]\n{'pty': '5', 'language': 'an', 'gender': 'M', 'age': '--', 'voice_name': 'aragonese', 'file': 'roa/an'}\n...\n----\n\nGrapheme to Phoneme (G2P) Conversion\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n[source,python]\n----\nipa = esng.g2p ('Hello World!', ipa=2)\n\n----\nresult:\n----\n\u003e\u003e\u003e print ipa\nhəlˈo͡ʊ wˈɜːld\n----\n\n\nLinks\n~~~~~\n\n* https://github.com/espeak-ng/espeak-ng [eSpeak NG]\n\nRequirements\n~~~~~~~~~~~~\n\n* Python 2 or 3\n* espeak-ng binary installed and in PATH\n\nLicense\n~~~~~~~\n\nMy own code is Apache-2.0 licensed unless otherwise noted in the script's copyright\nheaders.\n\nAuthor\n~~~~~~\n\nGuenter Bartsch \u003cguenter@zamia.org\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgooofy%2Fpy-espeak-ng","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgooofy%2Fpy-espeak-ng","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgooofy%2Fpy-espeak-ng/lists"}