You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on May 23, 2024. It is now read-only.
I'm not sure if you've tried it and ran into the same problem as ffmpeg but streamlink (a fork of the now dead livestreamer) is a good tool that hasn't failed on me for downloading twitch streams live. It's usually for just watching streams live but you can have it write to a file with a python script to automatically watch the channel in intervals to see when it goes live and then start saving the stream to a file until the end.
I did it for the Mr Rogers one and it seemed to get it all without any errors, that I know of.
Also, with twitch vods, for say a stream that goes on for 12 hours or more, I think I've seen VODs muted while the streamer is still on if I'm not mistaken, so downloading the vod could be an issue in case twitch mutes it before you are able to get the file. Also with a long stream, downloading the file could take a while and maybe during that time, twitch mutes the vod and the file you download changes with the muted track added in.
also, do you have plans to add chat support to it? Say maybe syncing the stream vod to a chat log with scrubbing support?
The text was updated successfully, but these errors were encountered:
Hi!
Yes, Twitch possibly can mute VOD while it's writing down. At this moment it doesn't mute VODs in realtime. You have enough time to load last chunks before they're muted. If something changes in the future, I have to change downloading to only live.
I don't know why ffmpeg hangs on during recording live stream sometime. Sometime ffmpeg skip chunks if can't update playlist in time. If you got slow server you could possibly have many problems and it doesn't simply to change it. If you have any solution, let me know.
My script works with VOD which will be saved in Twitch CDN while it's recording. You can check it on any channel that VOD updates with live stream. This method has advantages over saving live stream:
VOD will always be continuous
easy to correspond loaded file to VOD on Twitch CDN (a year before live playlist has human readable url)
easy to change server and continue downloading
easy to sync with chat log (thank you for good idea)
The script is running 24/7 on my storage server and I have no problems with muted chunks for more than year.
I have to think about saving chat log with file relative timestamps. In future plans:
add ability to download any VOD, not only with status recording (easy to implement)
add ability to download clips and get list of clips (additional twitch api needed)
add ability to download live stream like ffmpeg does
save synced chat log
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
I'm not sure if you've tried it and ran into the same problem as ffmpeg but streamlink (a fork of the now dead livestreamer) is a good tool that hasn't failed on me for downloading twitch streams live. It's usually for just watching streams live but you can have it write to a file with a python script to automatically watch the channel in intervals to see when it goes live and then start saving the stream to a file until the end.
I did it for the Mr Rogers one and it seemed to get it all without any errors, that I know of.
Also, with twitch vods, for say a stream that goes on for 12 hours or more, I think I've seen VODs muted while the streamer is still on if I'm not mistaken, so downloading the vod could be an issue in case twitch mutes it before you are able to get the file. Also with a long stream, downloading the file could take a while and maybe during that time, twitch mutes the vod and the file you download changes with the muted track added in.
also, do you have plans to add chat support to it? Say maybe syncing the stream vod to a chat log with scrubbing support?
The text was updated successfully, but these errors were encountered: