Skip to main content

Python SDK for Yandex Speechkit API.

Project description

Yandex Speechkit Python SDK

PyPI GitHub PyPI - Format Build Status Updates Python 3 codecov Documentation Status

Python SDK for Yandex Speechkit API.

For more information please visit Yandex Speechkit API Docs. This lib supports short and long audio recognition of speechkit

Getting Started

Assuming that you have Python and virtualenv installed, set up your environment and install the required dependencies like this, or you can install the library using pip:

$ git clone https://github.com/TikhonP/yandex-speechkit-lib-python.git
$ cd yandex-speechkit-lib-python
$ virtualenv venv
...
$ . venv/bin/activate
$ python -m pip install -r requirements.txt
$ python -m pip install .
python -m pip install speechkit

Speechkit documentation

See speechkit docs for more info. PDF docs

Using speechkit

There are support of recognizing long and short audio and synthesis. For more information please read docs below.

First you need create session for authorisation:

from speechkit import Session

oauth_token = str('<oauth_token>')
folder_id = str('<folder_id>')
api_key = str('<api-key>')
jwt_token = str('<jwt_token>')

oauth_session = Session.from_yandex_passport_oauth_token(oauth_token, folder_id)
api_key_session = Session.from_api_key(api_key)
jwt_session = Session.from_jwt(jwt_token)

Use created session to make other requests.

There are also function for getting credentials (read docstrings for more info): Speechkit.auth.generate_jwt, speechkit.auth.get_iam_token, speechkit.auth.get_api_key

For audio recognition

Short audio:

from speechkit import ShortAudioRecognition

recognizeShortAudio = ShortAudioRecognition(session)
with open(str('/Users/tikhon/Desktop/out.wav'), str('rb')) as f:
    data = f.read()

print(recognizeShortAudio.recognize(data, format='lpcm', sampleRateHertz='48000'))

# Will be printed: 'text that need to be recognized'

See example with long audio long_audio_recognition.py .

See example with streaming audio streaming_recognize.py

For synthesis

from speechkit import SpeechSynthesis

synthesizeAudio = SpeechSynthesis(session)
synthesizeAudio.synthesize(
    str('/Users/tikhon/Desktop/out.wav'), text='Текст который нужно синтезировать',
    voice='oksana', format='lpcm', sampleRateHertz='16000'
)

License

MIT

Tikhon Petrishchev 2021

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

speechkit-2.0.0.tar.gz (29.4 kB view hashes)

Uploaded Source

Built Distribution

speechkit-2.0.0-py3-none-any.whl (40.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page