Audio-only live stream resumes using outdated buffer, then frequently fails
Platform:
- MacOS 11.6.5 (intel)
Versions tried:
Procedure:
- Create a playlist with an audio-only live stream URL, such as http://ais-sa3.cdnstream1.com/2606_128.aac the history of which can be found here: https://live.mystreamplayer.com/bagel
- Begin playback in VLC and let it go for a few minutes.
- Stop playback.
- Wait a least five minutes.
- Resume playback.
- On rare occasions, playback resumes at the current point in live time. If so, wait a few minutes and return to Step 3.
- If playback has resumed using the old buffer, let it continue.
- After about 30 seconds, one of these things will happen:
- Fresh audio data will be fetched, and playback will suddenly catch up with "live" once more
- or playback will stop with errors like these in the log:
prefetch debug: resuming
main debug: toggling pause
prefetch debug: end of stream
macosx debug: Activated assertion NoIdleSleepAssertion through IOKit (35093)
main debug: EOF reached
faad warning: Unexpected channel configuration change
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: waiting decoder fifos to empty
main debug: killing decoder fourcc `mp4a'
main debug: removing module "faad"
main debug: removing module "samplerate"
main debug: removing module "scaletempo"
auhal debug: Stopping the auhal module
main debug: removing module "float_mixer"
main debug: keeping audio output
main debug: removing module "es"
main debug: removing module "mpeg4audio"
main debug: removing module "record"
main debug: removing module "prefetch"
main debug: removing module "http"
main debug: Program doesn't contain anymore ES
main debug: dead input
main debug: changing item without a request (current 1/2)
main debug: nothing to play
macosx debug: Playback has been ended
macosx debug: Releasing IOKit system sleep blocker (35093)
In my opinion, neither of the two outcomes in Step 8 is good. I think that if a live stream's buffer is several minutes out of date, it should be discarded before playback resumes.