I'm experimenting with using HLS to serve audio on demand to web clients. The server has a weeks-long continuous audio recording. The user chooses an arbitrary point in time in the recording to start listening. The audio plays until the user stops it or unloads the web page from the browser.

When the source of the audio recording is mp3 encoded (from a Shoutcast live stream) I'd be interested to avoid transcoding to AAC in producing the HLS files.

Iiuc, FFmpeg's hls muxer supports only mpegts and fmp4 segment types. Do these formats accept mp3 audio streams?

Can I create Packed Audio[1] with FFMpeg using the segment muxer? The tricky part seems to be where the HLS spec says

   Each Packed Audio Segment MUST signal the timestamp of its first
   sample with an ID3 Private frame (PRIV) tag [ID3] at the beginning of
   the segment.  The ID3 PRIV owner identifier MUST be
   "com.apple.streaming.transportStreamTimestamp".  The ID3 payload MUST
   be a 33-bit MPEG-2 Program Elementary Stream timestamp expressed as a
   big-endian eight-octet number, with the upper 31 bits set to zero.

I don't think segment muxer will do that. But could a script add the timestamp to a finished segment via ffmpeg cli using metadata key "id3v2_priv.com.apple.streaming.transportStreamTimestamp"[2]?

I'm not sure using either mp3 or Packed Audio segments in HLS are good for breadth of client compatibility but I'm interested to try it out.

Tom

[1] https://tools.ietf.org/html/draft-pantos-hls-rfc8216bis-07#section-3.1.3

[2] https://github.com/FFmpeg/FFmpeg/commit/8a4cc0a2567fa8418709f75af5539cdf76fefb99
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to