Comment by bryanrasmussen
1 day ago
What I'd like - a tool to stream to timestamps and then stream out between two timestamps to a local file.
This would really improve various workflows.
1 day ago
What I'd like - a tool to stream to timestamps and then stream out between two timestamps to a local file.
This would really improve various workflows.
in fact I will point out that if this were possible and people had a lot of data of people using streaming out sections of torrents instead of the whole stream it would be another bit of evidence for torrents being used for fair use.
How do you stream a timestamp?
answered here https://news.ycombinator.com/item?id=46367384
How do you stream a timestamp?
I'm not sure if you're being facetious and making fun of my saying stream a timestamp instead of stream to a particular time in the video, but if so I guess https://news.ycombinator.com/item?id=46364765 suggested a way.
I just expected you would stream to point X in the stream that would be to the timestamp set to start and then to point y which would be the end. Obviously it would have to be able to figure out how the streamed file would map to time, which I don't know how to do which is why I said I would like a tool that did it other than announcing I made a tool that did it myself.
Of course obviously some tools like yt-dlp etc. have this capability with the --download-sections property but I want something for torrents.
No, I totally misunderstood.
I vibe coded a little tool [0] that can stream range requests from torrents.
It's a little buggy and super rough around the edges, but it's definitely possible because your torrent client can prioritize piece requests and http standards support http range requests, just requesting parts of a document. I lightly tested it with VLC and seeking the playback to the middle of a video
[0] https://github.com/cbluth/bittorrent
You negotiate the header to find the video length, to then issue http get requests with the offset to the timestamp. Sometimes there’s an API that cuts with ffmpeg and returns the buffer. Sometimes you just need to fetch the raw bytes between offset+0 and offset+n.