# Install libgsm with Homebrew

Lossy speech compression library. Version 1.0.24 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:libgsm
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install libgsm
```

  Evidence: provider-native install command

## Package facts

- **Package key:** brew:libgsm
- **Package manager:** Homebrew
- **Version:** 1.0.24
- **Source summary:** Lossy speech compression library
- **Homepage:** <https://www.quut.com/gsm/>
- **Generated:** 2026-08-03T00:40:33+00:00

## Executables

- tcat (alias)
- toast (alias)
- untoast (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 1.0.24
## Project history and usage

libgsm is Jutta Degener and Carsten Bormann's C implementation of the GSM 06.10 RPE-LTP speech codec, distributed with a small Unix-style toolset headed by toast, untoast, and tcat. It matters in package collections because it is a compact, long-lived reference implementation of a telephony-era codec that still appears wherever old audio formats, speech samples, or GSM-framed test data need to be handled.

### Project history

The project began in 1992 at the Technical University of Berlin, where Degener's research group needed a speech-compression algorithm for multimedia conferencing experiments and selected the ETSI GSM 06.10 speech codec. Degener and Bormann implemented the GSM 06.10 RPE-LTP coder and decoder in C, exposing both a library API and standalone tools for encoding and decoding speech data.

The implementation reflects early-1990s Unix multimedia culture: the toast command was modeled after Unix compress, but it produces lossy .gsm speech data rather than reversible compressed files. The upstream page documents details such as 160-sample PCM frames encoded into 264-bit GSM frames, optional frame inspection, and portability notes for Unix-like systems, VMS, MS-DOS, and 64-bit DEC Alpha systems.

### Adoption history

libgsm spread through operating-system package collections because it solved a narrow problem with few dependencies. Build a GSM 06.10 codec and get small command-line tools for batch conversion. The batch input lists packages for Homebrew, Debian, Ubuntu, MacPorts, Nix, and openSUSE, showing the usual path for old C libraries that remain useful as compatibility glue.

### How it is used

Users normally encounter libgsm either as a dependency of audio or telephony software, or through the toast, untoast, and tcat commands for converting raw speech samples to and from GSM 06.10 data. Developers use the library when they need a small C codec implementation rather than a full multimedia framework.

### Why package nerds care

libgsm is the kind of package that makes old media stacks work quietly: tiny, ancient, standards-adjacent, and still carried because removing it breaks obscure but real audio workflows. Its licensing and provenance are also notable because Homebrew records the TU-Berlin-2.0 license while the upstream page preserves the original research-code distribution context.

### Timeline

- 1992: Work began at the Technical University of Berlin for multimedia-conferencing experiments.
- 1994: The upstream notes described real-time GSM 06.10 coding as requiring at least a medium-scale workstation.
- Patchlevel 9: WAV format #49 support was integrated after outside experimentation with compressed wave files.
- Patchlevel 24: The upstream release notes fixed undefined behavior from left-shifting negative signed integers.

### Related projects

- ETSI GSM 06.10 defines the speech-compression algorithm implemented by libgsm.
- toast, untoast, and tcat are the command-line programs distributed with the library.
- WAV format #49 is a parallel GSM 06.10 framing used by some Windows audio workflows.

### Sources

- <https://formulae.brew.sh/formula/libgsm>
- <https://www.quut.com/berlin/gsm/etsi.html>
- <https://www.quut.com/berlin/gsm/gsm-3.html>
- <https://www.quut.com/gsm>


## Security Notes

library-like package without higher-risk signals.

- **Geiger risk:** green / low
- library-like package without higher-risk signals


## Combined YAML source

View the package source record on GitHub. [combined/libgsm.yml](https://github.com/automic-vault/db/blob/main/combined/libgsm.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
