# Load audio audio = AudioSegment.from_file(fp, format="mp3")

Here’s a useful, practical guide to using — covering how to get it, why it matters, and workarounds since GTTS itself doesn’t natively support male/female selection. 1. The Core Fact: GTTS Has No Explicit Male/Female Parameter The gtts library (Google Text-to-Speech) uses Google’s standard TTS API, which provides one voice per language — and that voice is typically female-sounding for most languages (e.g., English, Spanish, French). You cannot directly call gtts with voice='male' .

from google.cloud import texttospeech client = texttospeech.TextToSpeechClient() synthesis_input = texttospeech.SynthesisInput(text="Hello, I am a male voice") voice = texttospeech.VoiceSelectionParams( language_code="en-US", name="en-US-Neural2-D", # Male voice ssml_gender=texttospeech.SsmlVoiceGender.MALE ) audio_config = texttospeech.AudioConfig(audio_encoding=texttospeech.AudioEncoding.MP3) response = client.synthesize_speech(input=synthesis_input, voice=voice, audio_config=audio_config)

from gtts import gTTS tts = gTTS(text="Hello", lang="en") # always the default voice (female) The only reliable way is to switch to a different TTS engine or post-process the audio (pitch shifting). Here’s a clean Python approach using pydub to lower the pitch of the GTTS output, making it sound more masculine. Step-by-step male voice transformation: from gtts import gTTS from pydub import AudioSegment from pydub.effects import speedup import io def gtts_male_voice(text, lang='en', pitch_semi= -3): # Generate normal GTTS audio tts = gTTS(text, lang=lang) fp = io.BytesIO() tts.write_to_fp(fp) fp.seek(0)

Download the VAMA App – Online Pujas, Chadhava, Darshan & Horoscope!