Audio - Data over sound

Free Audio Decode API Endpoint

Receive a short message through sound. Let this device listen while another PC or phone plays the data tones, then recover the text or binary bytes.

  • No account
  • Text and binary
  • Audible or high-frequency
  • 128 bytes per message

WAV to data

POST/audio_decode

https://aisenseapi.com/services/v1

Try it / Receiver

Listen for a message

The sound becomes text or bytes here.

  1. Choose Start listening.
  2. Play the sender's sound.
  3. Read the message here.

Works best in a quiet room. You can always use Stop and decode instead.

00.0 / 40 s

Microphone access starts only when you choose Start listening. The recording is sent to AI SENSE when the tones stop, when you choose Stop and decode, or at the 40-second limit. Cancel discards it without uploading.

Ready. Start listening before the other device plays the sound.

Or decode a WAV file

Mono or stereo. At most 40 seconds and 8 MiB. MP3, AAC and browser WebM recordings are not supported.

WAV to bytes

curl https://aisenseapi.com/services/v1/audio_decode/auto \
  -H 'Content-Type: audio/wav' \
  --data-binary @message.wav

Send the file as the raw request body. Use /audio_decode/audible, /audio_decode/high or /audio_decode/ultrasound to select a mode. /audio_decode and /audio_decode/auto try all three modes within one shared time limit. Choose the mode when you know it to reduce scanning. Recordings in the earlier aisense-audio-v1 format still decode: audible through auto, high and ultrasound with their mode in the path.

{
  "data_base64": "SGVsbG8=",
  "byte_length": 5,
  "text": "Hello",
  "protocol": "aisense-audio-v2",
  "corrected_bits": 0,
  "mode": "audible",
  "sample_rate": 48000,
  "duration_seconds": 5.4
}

This is the whole answer for a recording of Hello. data_base64 is always the exact recovered data. text contains the UTF-8 text when the bytes are valid UTF-8 and is null otherwise. Decode Base64 when you need the original binary file. corrected_bits counts the code bits the decoder repaired; it is not a quality score. sample_rate and duration_seconds describe the uploaded recording.

Through MCP, decode_audio reads a recording of up to 4 MiB that was first stored with Storage, by its storage_id. REST takes up to 8 MiB directly.

Supported recordings

Use uncompressed 16-bit PCM WAV at 44.1 or 48 kHz, mono or stereo. The recording must be no longer than 40 seconds and no larger than 8 MiB. Capture the full message, including its starting tones. A maximum-size message lasts about 17 seconds. Silence before or after the message is allowed within the 40-second recording limit. If a recording contains several messages, the API returns the first intact one.

This decodes the AI SENSE data tones produced by Audio Encode. It does not transcribe speech or recover arbitrary files hidden in music. Lossy conversion and speed changes can damage a transmission.

No message found?

The service returns a JSON error if the recording has no complete, valid message or uses an unsupported format. It does not return guessed text from a damaged signal. Check the HTTP status and the error field.

Record again with the devices closer together and use audible mode first. Wait until the sound finishes before stopping. If the level meter stays at zero, check the microphone selection and browser permission.

Two devices, one sound

Both devices need internet access for the API calls. The message travels between them as sound. Start listening on the receiver before you play the complete WAV on the sender. Keep the devices close together in a quiet room and start at moderate volume.

The receiver needs a microphone and permission to use it. Keep its tab visible while recording. A Bluetooth headset, voice-call processing or a microphone noise filter can remove the data tones. If decoding fails, move the devices closer, try the built-in microphone and play the entire sound again.

Audible mode uses twelve tones from 800 to 3000 Hz. Experimental high mode uses twelve tones from 14.0 to 16.2 kHz, and experimental ultrasound mode twelve tones from 18.0 to 20.2 kHz. Every symbol hops between three sets of four tones, so the room's echo of the previous symbols is ignored, and Reed-Solomon repairs damaged bytes. These higher-frequency modes can still be audible. High-frequency playback and capture vary by device, so start with audible mode. The service cannot guarantee high-frequency reception on a particular phone or laptop.

Privacy and limits

The text or bytes you encode and the recording you decode are sent to AI SENSE over HTTPS. The audio conversion does not create a stored file or a share link. The Try page keeps its recording in browser memory until it sends it for decoding or you cancel it. The microphone stops before the upload begins.

Sound carries the message to anyone close enough to record it. It is not encrypted. High-frequency mode does not make a message private. Only send data you intend to share.

No account or API key is required. Requests also count toward the service-wide limits. Keep messages short and wait for a result before trying again.