Skip to main content

Install Dependencies

How does it Works?

The main steps involved in the script are as follows:
  1. Environment Setup:
    The script loads essential API credentials (REVERIE_APP_ID and REVERIE_API_KEY) from environment variables using the dotenv package. These credentials are required to authenticate with the Reverie API.
Python
  1. Real-Time Audio Capture:
    The script uses pyaudio to capture real-time audio input from the microphone. This audio is then streamed asynchronously to the Reverie ASR (Automatic Speech Recognition) service for transcription into text.
Python
  1. Speech-to-Text (STT) Conversion:
    The captured audio is processed and transcribed using Reverie’s ASR service. The transcription occurs in real-time, providing immediate feedback as the speech is converted into text.
Python
  1. Translation:
    Once the transcription is complete, the text is sent to Reverie’s NMT (Neural Machine Translation) service to be translated from the source language (e.g., Hindi) to a target language (e.g., English). The translated text is returned for further processing.
Python
  1. Text-to-Speech (TTS) Conversion:
    The translated text is then sent to Reverie’s TTS (Text-to-Speech) service to convert it into speech. The generated audio is played back to the user, providing a seamless speech-to-speech translation experience.
Python
  1. Optional Audio Saving:
    The generated speech audio can optionally be saved to a file (e.g., .wav) for later use or playback.
Python
  1. Audio Playback:
    Using the pydub library, the resulting audio is played back in real-time to the user, completing the cycle of speech-to-text, translation, and speech-to-speech output.
Python
  1. Error Handling:
    The script includes error handling to manage potential issues during the microphone capture, transcription, translation, and speech synthesis processes.
Python

Sample Code