I wrote a program to record streams from HLS, in case it is useful to someone. I intended to use so that I could record TV shows and then convert to DVD video format to record onto DVDs, but also may be used to record CBC radio (I do not have a radio receiver on my computer, so I use this instead). It is written in C and it is available in my GitHub account.
Git repository
(Some features are not implemented yet, such as selecting alternative renditions.)
🦂 zzo38
May 20 · 3 days ago
🎮 jprjr · May 20 at 21:59:
interesting - what's the advantage of using this over ffmpeg?
looking over the code, I think this may only handle mpeg-ts streams. I didn't see anything that looked like it would handle an initialization segment for fragmented mp4, and packed audio usually requires stripping the id3 tags that are in every segment before you concatenate them.
🦂 zzo38 [OP] · May 21 at 05:13:
You are right that I did not add any handling of fragmented MP4 (or anything else relating to framing); it is something that I should add if I know how to do it. I have not had a problem with keeping all of the ID3 tags though; it seems to play without stripping the ID3 tags. Many features are not implemented yet (some of which will be separate files, such as the stuff related to TV guide and EIA-608), but it also has some functions different from FFmpeg (as far as I know; but I don't know all of the functions of FFmpeg).
(Another difference is that it does not have as many dependencies as ffmpeg, and should hopefully be simpler to read and to modify.)