# Headerless train announcements

DevFeed: [Headerless train announcements](<https://devfeed.tech/articles/headerless-train-announcements-21638.md>)

Original publisher: [Read original article](<https://www.windytan.com/2014/06/headerless-train-announcements.html>)

Author: Oona Räisänen (noreply@blogger.com)

Published: 2014-06-16T18:55:00Z

Content type: article

Language: en

Sources: [Oona Räisänen](<https://devfeed.tech/sources/oona-raisanen.md>)

Topics: [data](<https://devfeed.tech/topics/data.md>), [Filesystems](<https://devfeed.tech/topics/filesystems.md>)

Tags: [audio](<https://devfeed.tech/tags/audio.md>), [audio-media](<https://devfeed.tech/tags/audio-media.md>), [data](<https://devfeed.tech/tags/data.md>), [encoding](<https://devfeed.tech/tags/encoding.md>), [files](<https://devfeed.tech/tags/files.md>), [format](<https://devfeed.tech/tags/format.md>), [gnireenigne](<https://devfeed.tech/tags/gnireenigne.md>), [iso](<https://devfeed.tech/tags/iso.md>)

## AI overview

The article examines a 67-megabyte ISO 9660 image from an older Finnish train announcement device. It documents the file and directory structure, language separation, and 1,950 stored sound files, then investigates their unidentified headerless audio encoding. Analysis suggests 4-bit adaptive differential PCM, and partial decoding produces garbled speech after frequency and spectral processing.

## Source excerpt

The Finnish state railway company just changed their automatic announcement voice, discarding old recordings from trains. It's a good time for some data dumpster diving for the old ones, don't you think? A 67-megabyte ISO 9660 image is produced that once belonged to an older-type onboard announcement device. It contains a file system of 58 directories with five-digit names, and one called "yleis" (Finnish for "general"). Each directory contains files with three-digit file names. For each number, there's 001.inf, 001.txt and 001.snd. The .inf and .txt files seem to contain parts of announcements as ISO 8859 encoded strings, such as "InterCity train" and "to Helsinki". The .snd files obviously contain the corresponding audio announcements. There's a total of 1950 sound files. Directory structure The file system seems to be structurally pointless; there's nothing apparent that differentiates all files in /00104 from files in /00105. Announcements in different languages are numerically separated, though (/001xx = Finnish, /002xx = Swedish, /003xx = English). Track numbers and time readouts are stored sequentially, but there are out-of-place announcements and test files in between. The logic connecting numbers to their meanings is probably programmed into the device for every train route. Everything can be spliced together from almost single words. But many common announcements are also recorded as whole sentences, probably to make them sound more natural. Audio format The audio files are headerless; there is no explicit information about the format, sample rate or sample size anywhere. The byte histogram and Poincaré plot of the raw data suggest a 4-bit sample size; this, along with the fact that all files start with 0x80, is indicative of an adaptive differential PCM encoding scheme. Unfortunately there are as many variations to ADPCM as there are manufacturers of encoder chips. None of the decoders known by SoX produce clean results. But with the right settings for th