A Flask extension to help in generating Google Text-To-Speech files.
Project description
Flask-gTTS
A Flask extension to add support for Google Text-To-Speech (TTS).
Install:
- With pip
pip install Flask-gTTS
- From the source:
git clone https://github.com/mrf345/flask_gtts.git
cd flask_gtts
python setup.py install
Setup:
- Inside the Flask app:
from flask import Flask, render_template
from flask_gtts import gtts
app = Flask(__name__)
gtts(app)
- Inside the jinja template:
{% block content %}
<audio src="{{ sayit(text='Hello from Flask !')}}"></audio>
{% endblock %}
- Dynamic read TTS example:
<head>
{{ read(id='.readIt') }}
</head>
<body>
<h1 class='readIt'>Say something</h1>
<h1 class='readIT' language='it'>qualcosa da dire</h1>
</body>
- Dynamic route example:
from flask import Flask
from flask_gtts import gtts
# If we want to allow only logged in users for example.
from flask_login import login_required
app = Flask(__name__)
gtts(app,
route=True,
route_decorator=login_required,
route_path='/gtts')
And now you can test the endpoint by accessing http://localhost:5000/gtts/en-us/some text to test
. It will return JSON
response:
{
"mp3": "Generated audio file path."
}
Settings:
gtts()
options:
def __init__(self, app=None, temporary=True, tempdir='flask_gtts', route=False,
route_path='/gtts', route_decorator=None):
'''Extension to help in generating Google Text-To-Speech files.
Parameters
----------
app : Flask Application, optional
Flask application instance, by default None
temporary : bool, optional
Remove the audio files before existing, by default True
tempdir : str, optional
Name of the static directory to store audio files in, by default 'flask_gtts'
route : bool, optional
Enable endpoint to generate TTS file dynamically, by default False
route_path : str, optional
Endpoint route path, by default '/gtts'
route_decorator : callable, optional
Decorator to wrap route endpoint, by default None
failsafe : bool, optional
Failsafe or throw exceptions, by default False
'''
sayit()
options:
def say(self, lang='en-us', text='Flask says Hi!'):
'''Generate a TTS audio file.
Parameters
----------
lang : str, optional
Language to produce the TTS in, by default 'en-us'
text : str, optional
Text to convert into audio, by default 'Flask says Hi!'
Returns
-------
str
Relative url of the generated TTS audio file.
'''
read()
options:
def read(self, id='.toRead', mouseover=False):
'''Read an HTML element inner text.
Parameters
----------
id : str, optional
HTML element css selector, by default '.toRead'
mouseover : bool, optional
Read text on `mouseover` event instead of `click`, by default False
Returns
-------
str
Safe JavaScript to read an HTML element content.
'''
- List of supported languages:
'af' : 'Afrikaans' 'sq' : 'Albanian' 'ar' : 'Arabic' 'hy' : 'Armenian' 'bn' : 'Bengali' 'ca' : 'Catalan' 'zh' : 'Chinese' 'zh-cn' : 'Chinese (Mandarin/China)' 'zh-tw' : 'Chinese (Mandarin/Taiwan)' 'zh-yue' : 'Chinese (Cantonese)' 'hr' : 'Croatian' 'cs' : 'Czech' 'da' : 'Danish' 'nl' : 'Dutch' 'en' : 'English' 'en-au' : 'English (Australia)' 'en-uk' : 'English (United Kingdom)' 'en-us' : 'English (United States)' 'eo' : 'Esperanto' 'fi' : 'Finnish' 'fr' : 'French' 'de' : 'German' 'el' : 'Greek' 'hi' : 'Hindi' 'hu' : 'Hungarian' 'is' : 'Icelandic' 'id' : 'Indonesian' 'it' : 'Italian' 'ja' : 'Japanese' 'km' : 'Khmer (Cambodian)' 'ko' : 'Korean' 'la' : 'Latin' 'lv' : 'Latvian' 'mk' : 'Macedonian' 'no' : 'Norwegian' 'pl' : 'Polish' 'pt' : 'Portuguese' 'ro' : 'Romanian' 'ru' : 'Russian' 'sr' : 'Serbian' 'si' : 'Sinhala' 'sk' : 'Slovak' 'es' : 'Spanish' 'es-es' : 'Spanish (Spain)' 'es-us' : 'Spanish (United States)' 'sw' : 'Swahili' 'sv' : 'Swedish' 'ta' : 'Tamil' 'th' : 'Thai' 'tr' : 'Turkish' 'uk' : 'Ukrainian' 'vi' : 'Vietnamese' 'cy' : 'Welsh'
Credit:
- gTTS: Python Google text-to-speech
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file flask_gtts-0.19.tar.gz
.
File metadata
- Download URL: flask_gtts-0.19.tar.gz
- Upload date:
- Size: 6.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b42fc13b5a976eec93492bf84be9bcf073e62b0a9b013356d2e3bcbe1c9ea5c |
|
MD5 | 3eef9cb10ee98b6494b9064eec55bacb |
|
BLAKE2b-256 | d35c107de11e74d2258ae80cf45cf765e96e172a0c0109a1403927bae6514888 |
File details
Details for the file Flask_gTTS-0.19-py3-none-any.whl
.
File metadata
- Download URL: Flask_gTTS-0.19-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6cf4b881673c413c383239a3e550211036de563dd6612e22cf950786fb62ae68 |
|
MD5 | 6670af1c91a36e4d30aaf70c738386f0 |
|
BLAKE2b-256 | 59216c7439b82994830b302129d82369cff68d45ee005ec9e978b63dec212564 |