Refactor documentation for server setup, including livekit and light servers, and add information about required dependencies for MacOS and Ubuntu, including PortAudio, FFmpeg, and CMake.
This commit is contained in:
		
							parent
							
								
									4a69ab1494
								
							
						
					
					
						commit
						8b9aa68633
					
				| 
						 | 
					@ -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.
 | 
					  To install poetry, follow the official guide here.
 | 
				
			||||||
</Card>
 | 
					</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
 | 
					### MacOS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					On MacOS, we use Homebrew (a package manager) to install the required dependencies. Run the following command in your terminal:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
brew install portaudio ffmpeg cmake
 | 
					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
 | 
					### Ubuntu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<Note>Wayland not supported, only Ubuntu 20.04 and below</Note>
 | 
					<Note>Wayland not supported, only Ubuntu 20.04 and below</Note>
 | 
				
			||||||
| 
						 | 
					@ -29,6 +41,12 @@ brew install portaudio ffmpeg cmake
 | 
				
			||||||
sudo apt-get install portaudio19-dev 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
 | 
					### Windows
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- [Git for Windows](https://git-scm.com/download/win).
 | 
					- [Git for Windows](https://git-scm.com/download/win).
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,8 +44,14 @@
 | 
				
			||||||
      "pages": [
 | 
					      "pages": [
 | 
				
			||||||
        "software/introduction",
 | 
					        "software/introduction",
 | 
				
			||||||
        "software/installation",
 | 
					        "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/configure",
 | 
				
			||||||
        "software/flags"
 | 
					        "software/flags"
 | 
				
			||||||
      ]
 | 
					      ]
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -133,3 +133,11 @@ For local TTS, Coqui is used.
 | 
				
			||||||
# Set your profile with a local TTS service
 | 
					# Set your profile with a local TTS service
 | 
				
			||||||
interpreter.tts = "coqui"
 | 
					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>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -43,7 +43,7 @@ One of the key features of the 01 ecosystem is its modularity. You can:
 | 
				
			||||||
To begin using 01:
 | 
					To begin using 01:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
1. [Install](/software/installation) the software
 | 
					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
 | 
					3. [Connect](/hardware/01-light/connect) the Client
 | 
				
			||||||
 | 
					
 | 
				
			||||||
For more advanced usage, check out our guides on [configuration](/software/configure).
 | 
					For more advanced usage, check out our guides on [configuration](/software/configure).
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,16 +0,0 @@
 | 
				
			||||||
---
 | 
					 | 
				
			||||||
title: "Light Server"
 | 
					 | 
				
			||||||
description: "Run your 01"
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<Info> Make sure that you have navigated to the `software` directory. </Info>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
The Light server streams bytes of audio to an ESP32 and the Light Python client.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
It is very lightweight.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
To run the Light server:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
```bash
 | 
					 | 
				
			||||||
poetry run 01 --server light
 | 
					 | 
				
			||||||
```
 | 
					 | 
				
			||||||
| 
						 | 
					@ -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.
 | 
				
			||||||
| 
						 | 
					@ -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
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
		Loading…
	
		Reference in New Issue