Skip to content

Commit

Permalink
Refactor documentation for server setup, including livekit and light …
Browse files Browse the repository at this point in the history
…servers, and add information about required dependencies for MacOS and Ubuntu, including PortAudio, FFmpeg, and CMake.
  • Loading branch information
MikeBirdTech committed Aug 30, 2024
1 parent 4a69ab1 commit 8b9aa68
Show file tree
Hide file tree
Showing 8 changed files with 82 additions and 19 deletions.
18 changes: 18 additions & 0 deletions docs/getting-started/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,24 @@ To run the 01 on your computer, you will need to install a few essential package
To install poetry, follow the official guide here.
</Card>

## What is Poetry?

Poetry is a tool for dependency management and packaging in Python. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you. We use Poetry to ensure that everyone running 01 has the same environment and dependencies.

### MacOS

On MacOS, we use Homebrew (a package manager) to install the required dependencies. Run the following command in your terminal:

```bash
brew install portaudio ffmpeg cmake
```

This command installs:

- PortAudio: A cross-platform audio I/O library
- FFmpeg: A complete, cross-platform solution for recording, converting, and streaming audio and video
- CMake: An open-source, cross-platform family of tools designed to build, test and package software

### Ubuntu

<Note>Wayland not supported, only Ubuntu 20.04 and below</Note>
Expand All @@ -29,6 +41,12 @@ brew install portaudio ffmpeg cmake
sudo apt-get install portaudio19-dev ffmpeg cmake
```

This command installs:

- PortAudio: A cross-platform audio I/O library
- FFmpeg: A complete solution for recording, converting, and streaming audio and video
- CMake: An open-source, cross-platform family of tools designed to build, test and package software

### Windows

- [Git for Windows](https://git-scm.com/download/win).
Expand Down
10 changes: 8 additions & 2 deletions docs/mint.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,14 @@
"pages": [
"software/introduction",
"software/installation",
"software/livekit-server",
"software/light-server",
{
"group": "Server",
"pages": [
"software/server/introduction",
"software/server/livekit-server",
"software/server/light-server"
]
},
"software/configure",
"software/flags"
]
Expand Down
8 changes: 8 additions & 0 deletions docs/software/configure.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -133,3 +133,11 @@ For local TTS, Coqui is used.
# Set your profile with a local TTS service
interpreter.tts = "coqui"
```

<Note>
When using the Livekit server, the interpreter.tts setting in your profile
will be ignored. The Livekit server currently only works with Deepgram for
speech recognition and Eleven Labs for text-to-speech. We are working on
introducing all-local functionality for the Livekit server as soon as
possible.
</Note>
2 changes: 1 addition & 1 deletion docs/software/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ One of the key features of the 01 ecosystem is its modularity. You can:
To begin using 01:

1. [Install](/software/installation) the software
2. [Run](/software/run) the Server
2. [Run](/software/server/introduction) the Server
3. [Connect](/hardware/01-light/connect) the Client

For more advanced usage, check out our guides on [configuration](/software/configure).
Expand Down
16 changes: 0 additions & 16 deletions docs/software/light-server.mdx

This file was deleted.

19 changes: 19 additions & 0 deletions docs/software/server/introduction.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: "Choosing a server"
description: "The servers that powers 01"
---

<CardGroup cols={2}>
<Card title="Light" href="/software/server/light-server">
Light Server
</Card>
<Card title="Livekit" href="/software/server/livekit">
Livekit Server
</Card>
</CardGroup>

## Livekit vs. Light Server

- **Livekit Server**: Designed for devices with higher processing power, such as phones, web browsers, and more capable hardware. It offers a full range of features and robust performance.

- **Light Server**: We have another lightweight server called the Light server, specifically designed for ESP32 devices. It's optimized for low-power, constrained environments.
28 changes: 28 additions & 0 deletions docs/software/server/light-server.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
title: "Light Server"
description: "A lightweight voice server for your 0"
---

## Overview

The Light server streams bytes of audio to an ESP32 and the Light Python client.

### Key Features

- Lightweight
- Works with ESP32
- Can use local options for Speech-to-Text and Text-to-Speech

## Getting Started

### Prerequisites

Make sure you have navigated to the `software` directory before proceeding.

### Starting the Server

To start the Light server, run the following command:

```bash
poetry run 01 --server light
```
File renamed without changes.

0 comments on commit 8b9aa68

Please sign in to comment.