Record to Ogg with AudioServer and transcode to MP3 with Sync
The AudioServer records better to Ogg than MP3 since it doesn't yet include a realtime MP3 encoder (JUCE has a problematic LAME MP3 writer that uses a wav file and is prone to lost data of the process terminates early).
So, we need Sync to encode any detected Ogg files to MP3.
Steps involved:
-
Detect Ogg files (as well as MP3) in the recordings folder. If Ogg, then transcribe to MP3 during the ffmpeg concat demuxing process (see below). Concatenated/final MP3 files belong in the tmp_uploading folder as usual, and get uploaded to S3 (see source of upload.js for how this works, how it gets S3 credentials, etc).
-
Finish the Audio Server Manager project, so that the AudioServer binary (and config files) can be easily installed from npm.
- Add a basic config for the AudioServer so that it records to Ogg at a relatively high bitrate.
-
Use ffmpeg concat demuxer, and, if needed, transcoding from Ogg to MP3, instead of the
audioconcat
module (which uses the unreliable file-only concat of ffmpeg, which produces invalid MP3 files). https://trac.ffmpeg.org/wiki/Concatenate#demuxer -
Add an option to transcode from Ogg to MP3.
- Some stations will still have systems recording to MP3 audio files.