# Liquidsoap

## audio stream generation

### Documentation index

How to use: Start with the quickstart and make sure you learn how to find help. Then it's as you like: go for another general tutorial, or a specific example, pick a basic notion, or some examples from the cookbook. If you've understood all you need, just browse the reference and compose your dream stream.

If you downloaded a source tarball of liquidsoap, you may first read the build instructions.

#### General tutorials

- Quickstart: where anyone should start.
- Complete case analysis: an example that is not a toy.
- Advanced: overview of more advanced features for serious usage.
- How to find help about operators, settings, server commands, etc.
- Cookbook: contains lots of idiomatic examples.
- Frequently Asked Questions, Troubleshooting

#### Reference

- API reference: All the builtin functions of liquidsoap.
- Settings: The list of available settings for liquidsoap.
- Script language: A more detailed presentation.
- Encoding formats: The available formats for encoding outputs.
- JSON import/export: Importing and exporting language values in JSON.
- LADSPA plugins: Using LADSPA plugins.

#### Core

- Basic concepts: sources, clocks and requests.
- Stream contents: what kind of streams are supported, and how.
- Script loading: load several scripts, learn about the script library.
- Execution phases

#### Specific tutorials

- Blank detection
- Customize metadata
- Seek and cue support: seek and set cue-in and cue-out points in sources.
- External decoders: use an external program for decoding audio files.
- External streams: use an external program for streaming audio data.
- External encoders: use an external audio encoding program.
- HTTP input: relay external streams.
- Harbor input: receive streams from icecast and shoutcast source clients.
- Interaction with the Harbor: interact with a running liquidsoap using the Harbor server.
- Interaction with the server interact with a running liquidsoap instance using the telnet server.
- ICY metadata update: manipulate and configure metadata update in Icecast.
- Normalization and replay gain: normalize audio data.
- Requests-based sources: create advanced sources using requests.
- Shoutcast output: output to shoutcast.
- Dynamic source creation: dynamically create sources using server requests.
- Smart crossfading: define custom crossfade transitions.
- Secure command server: secure authenticated access to the command server.
- Using in production: integrate liquidsoap scripts in a production environment.
- Liquid Flows: add your radio to the webpage of proud users.

#### User scripts

- Bubble: a simple example of a database interface as a custom protocol.
- Geekradio
- RadioPi
- Dolebraï
- Kube
- Frequence3
- Listen to Radio Nova
- Video with a single static image

#### Code snippets

- Code example index