Test whether an iPhone plays DeadAir's cuts as an HLS playlist over the original file #180
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Instead of making a DeadAir copy, ipx could hand the player an HLS playlist (.m3u8) whose pieces are byte ranges of the original (
#EXT-X-BYTERANGE), one for each stretch between two silences. No copy on disk, and it is ready as soon as the silences are found (4s for a 72-minute episode). HLS is built into Safari on iOS and plays locked.Test before building (implementation in the next issue):
com.apple.streaming.transportStreamTimestamp). A raw byte range has none. Find out whether Safari plays it anyway, refuses it, or drifts. If it needs the tag, try serving each piece with the tag in front.Tested 2026-10-10 on iOS 18.7 Safari with techpod-358: 649 silences, 790 pieces, the playlist 4116.3s against the original's 4348.0s.
Both versions worked: plain byte ranges of the original, and pieces with an ID3 transportStreamTimestamp in front.
So the timestamp tags are not needed: #181 can be a playlist of plain byte ranges into the file ipx already has. The
stalledevent a few seconds in is Safari pausing its download once it has buffered enough; playback continued through it.Not tested: Chrome and Firefox on a computer, which have no native HLS.