Skip to content

Upload a System Recording

When you have a professionally recorded greeting (or one you produced in Audacity), uploading is preferred over dialing in to record — better audio quality and no background noise.

See also Record a System Recording for the in-phone recording method.

Before You Start

  • The audio file is in a UnifiedBX-compatible format (or you're ready to convert).
  • Ideal format: WAV, 8 kHz, mono, 16-bit signed PCM. UnifiedBX will accept higher rates and convert, but pre-converting avoids surprises.

Convert if needed

# MP3 → 8kHz mono PCM WAV using sox:
sox input.mp3 -r 8000 -c 1 -e signed-integer -b 16 output.wav

# Or with ffmpeg:
ffmpeg -i input.mp3 -ar 8000 -ac 1 -acodec pcm_s16le output.wav

# To check an existing WAV's format:
soxi output.wav
# Or:
ffprobe output.wav

You want to see: 8000 Hz, Mono, 16-bit signed PCM.

Steps

  1. Go to System Attributes → Recordings.
  2. Click + Add Recording.
  3. Fill in:
    • Name — short, lowercase, no spaces, e.g. closed-greeting.
    • Description — what it is.
    • LanguageDefault or pick.
  4. Scroll down. Under Or upload a recording from your computer, click Browse and pick the file.
  5. Click Save.
  6. Click Apply Config.

Verify

Point an IVR or Announcement at the new recording and call in to hear it.

You can also test directly:

asterisk -rx "core show file formats"  # confirms supported formats
asterisk -rx "channel originate Local/<ext>@from-internal application Playback custom/closed-greeting"

Common Issues

  • Audio plays at chipmunk speed or super slow. Wrong sample rate. Asterisk expects 8 kHz; if the file is 44.1 kHz mono and Asterisk doesn't auto-resample, you get speed-shifted playback. Pre-convert.
  • Stereo file uploaded. Asterisk handles mono — stereo plays only one channel. Convert to mono.
  • Upload fails for large file. PHP upload_max_filesize and post_max_size are too small. Edit /etc/php.ini or /etc/php/<ver>/apache2/php.ini, then reload Apache.
  • File appears uploaded but doesn't play. Wrong codec. Check ls -l /var/lib/asterisk/sounds/custom/ — the file should be there as a .wav (or .gsm, .ulaw). If you see .mp3, conversion didn't happen.