> For clean Markdown of any page, append `.md` to the page URL.
> For a complete documentation index, see https://docs.sarvam.ai/llms.txt.
> For full documentation content in one file, see https://docs.sarvam.ai/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.sarvam.ai/_mcp/server.

# How to adjust the pace (speed)

> Controls the speed at which the speech is delivered.

The `pace` parameter controls the **speed** at which the speech is delivered.

It is optional — if omitted, the **default value** is `1.0` (normal speed).

* **bulbul:v3 range:** `0.5` (slowest) to `2.0` (fastest)
* **bulbul:v2 range:** `0.3` (slowest) to `3.0` (fastest)
* Values \< 1.0 slow the speech down; values > 1.0 speed it up.

### Pace Recommendations by Use Case

| Pace Value | Effect                      | Recommended Use Case                                     |
| ---------- | --------------------------- | -------------------------------------------------------- |
| 0.5 – 0.7  | Very slow, deliberate       | Accessibility tools, elderly users, pronunciation guides |
| 0.8 – 0.9  | Relaxed, measured           | EdTech narration, meditation/wellness apps, tutorials    |
| **1.0**    | **Natural speed (default)** | **Conversational agents, general-purpose TTS**           |
| 1.1        | Slightly brisk              | Notifications, news briefings, professional IVR          |
| 1.2 – 1.5  | Fast, energetic             | Quick summaries, high-engagement marketing audio         |
| 1.6 – 2.0  | Very fast                   | Screen readers, speed-listening (use with caution)       |

Start at `1.0` (natural) or `1.1` (brisk, professional contexts). Avoid values above `1.5` unless specifically building speed-listening features.

### Example Code

```python
from sarvamai import SarvamAI
from sarvamai.play import save

# Initialize the REST client
client = SarvamAI(api_subscription_key="YOUR_SARVAM_API_KEY")

# Generate speech using REST
audio = client.text_to_speech.convert(
    text="Welcome to Sarvam AI!",
    model="bulbul:v3",
    target_language_code="en-IN",
    pace=1.5  # Increase pace for faster speech
)
save(audio, "output1.wav")

```

```python
import asyncio
import base64
from sarvamai import AsyncSarvamAI, AudioOutput
import websockets

async def tts_stream():
    client = AsyncSarvamAI(api_subscription_key="YOUR_SARVAM_API_KEY")

    async with client.text_to_speech_streaming.connect(model="bulbul:v3") as ws:
        await ws.configure(
            target_language_code="hi-IN", 
            speaker="shubh",
            pace=1.5  # Increase pace for faster speech
        )
        print("Sent configuration")

        text = (
            "भारत की संस्कृति विश्व की सबसे प्राचीन और समृद्ध संस्कृतियों में से एक है।"
            "यह विविधता, सहिष्णुता और परंपराओं का अद्भुत संगम है, "
            "जिसमें विभिन्न धर्म, भाषाएं, त्योहार, संगीत, नृत्य, वास्तुकला और जीवनशैली शामिल हैं।"
        )

        await ws.convert(text)
        print("Sent text message")

        await ws.flush()
        print("Flushed buffer")

        chunk_count = 0
        with open("output.mp3", "wb") as f:
            async for message in ws:
                if isinstance(message, AudioOutput):
                    chunk_count += 1
                    audio_chunk = base64.b64decode(message.data.audio)
                    f.write(audio_chunk)
                    f.flush()

        print(f"All {chunk_count} chunks saved to output.mp3")
        print("Audio generation complete")

        
        if hasattr(ws, "_websocket") and not ws._websocket.closed:
            await ws._websocket.close()
            print("WebSocket connection closed.")


if __name__ == "__main__":
    asyncio.run(tts_stream())

# --- Notebook/Colab usage ---
# await tts_stream()

```