Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>ulaw_8000 and alaw Audio PlayerNew to Visual Studio Code? Get it now.
ulaw_8000 and alaw Audio Player

ulaw_8000 and alaw Audio Player

Gabriele Scotto di Vettimo

| (1) | Free
Play raw G.711 μ-law and A-law 8 kHz audio files (.ulaw_8000, .ulaw, .mulaw, .alaw, .alaw_8000) directly in VS Code, with a waveform and click-to-seek.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

ulaw_8000 and alaw Audio Player

Play raw G.711 μ-law and A-law telephone audio directly in VS Code — with a waveform, click-to-seek, and keyboard play/pause.

Raw G.711 files (.ulaw_8000, .ulaw, .mulaw, .alaw, .alaw_8000) are headerless: they're just 8-bit companded samples at 8000 Hz, mono — the format telephony systems (e.g. Twilio media streams) speak natively. μ-law is the North American / Japanese variant, A-law the European one. Nothing on a normal desktop opens them, and even ffplay needs the format spelled out. This extension makes them click-to-play.

Features

  • Opens *.ulaw_8000, *.ulaw, *.mulaw, *.alaw, and *.alaw_8000 files in an audio player (as the default editor)
  • Waveform rendering with played/unplayed coloring, using your editor theme's colors
  • Click the waveform to seek, drag to scrub, digits 0–9 to jump to tenths, Space to play/pause
  • Zero dependencies, no build step — the G.711 decoding happens in ~25 lines of JavaScript

How it works

The file's bytes are decoded with the standard ITU-T G.711 expansion (μ-law or A-law, chosen by file extension) into PCM, loaded into a Web Audio AudioBuffer at 8000 Hz, and played in the editor webview. Since the format is fixed by convention (8-bit companded, 8 kHz, mono), no header is needed — the file extension is the format declaration.

Development

No install step. Open this folder in VS Code and press F5 — a development host window opens on the samples/ folder; click tone-440hz.ulaw_8000 or tone-440hz.alaw.

To regenerate the sample files: python3 scripts/make_test_tone.py.

Packaging & publishing

Requires Node.js:

npx @vscode/vsce package    # produces ulaw-8000-audio-player-x.y.z.vsix
npx @vscode/vsce publish    # after `npx @vscode/vsce login <publisher>`

Before first publish, set publisher and repository in package.json.

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft