Interesting article: "Time-coding audio files" http://www.windytan.com/2014/06/time-coding-audio-files.html The author is a signals hacker who has spoken at CCC and other events, and has determined that "There's no standard method for doing this with WAV or FLAC files". Where "this" means recording the UTC time-of-day in the audio stream, as ongoing data, as opposed to knowing the start time and elapsed time. When recording radio stations (for logging purposes) or environmental noise (which may include long periods of silence that don't get logged) and telephone call speech (for "training purposes") it is often more practical to have a constant timecode at playback that corresponds to the "wall clock" UTC at time of recording. The article proposes 2 methods (with working Perl code) to embed the time as in-band noise in the audio. One method (LSB stealing) requires lossless encoding; the other is audible but can survive lossy encoding. I'm sure that BWF supports timecode (SMPTE or compatible) as out-of-band data, and I assumed that FLAC also had some support for this. Was I wrong? -- -Dec. --- (no microsoft products were used to create this message)
Erik de Castro Lopo
2014-Jun-15 10:25 UTC
[flac-dev] Supporting real-time UTC timestamp data
Declan Kelly wrote:> Interesting article: "Time-coding audio files" > http://www.windytan.com/2014/06/time-coding-audio-files.html > > The author is a signals hacker who has spoken at CCC and other events, > and has determined that "There's no standard method for doing this with > WAV or FLAC files".There doesn't need to be. Both FLAC and WAV are limited to a single sample rate for the whole recording. Therefore, all that is required is a single indicating the UTC timestamp the recording was begun. Broadcast WAV does indeed have a recording timestamp and there is For FLAC the that timestamp can be trasnferred from the WAV file using the --keep-foreign-metadata option.> The article proposes 2 methods (with working Perl code) to embed the > time as in-band noise in the audio. One method (LSB stealing) requires > lossless encoding; the other is audible but can survive lossy encoding.Nice proof of concept, but i feel pretty useless in practice. Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/