New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rewrite live media transcoder #209
Comments
Nice summary. I prefer Python because I like Python :D |
Not really, since HLS uses fragmented video segments the one to one pipe model doesn't really map. I think serving the result as HTTP is simple enough and map quite well the use case, we are aiming at live transcoding after all :) |
How come it doesn't map? Jellyfin server pipes media in, jellyfin client pipes transcoded result out... All fits IMHO. |
It doesn't really output a stream in the HLS use case, it's a set of independent named files (3s each in jellyfin) with a playlist that references them. I think you need some kind of directory structure to expose that. You don't need to list files however so HTTP seems ok. |
Here is a working prototype: |
Well, actually in case of HLS it's a set of independent URLs, not necessary files... so that's still fine to "pipe them out" of the transcoding server. |
Pipe is the wrong terminology then, pipe is one bitstream in one bitstream out, no name, no url, nothing. Several named streams is clearly not a pipe. |
If you guys decide to go with Go, it'd be awesome because then I could contribute to something 😁 Also -- I'm not sure that python can be considered easier for beginners, Go is a pretty easy language to pick up |
@EraYaN this looks like a proper feature for your "chunk server". Thoughts? |
Seems like it, though I don't have the time to take a look, but if anyone else wants to take a look: https://github.com/EraYaN/FFmpegSegmentManager (it's a rough test) |
Found this issue. Was there anything wrong with @MatMaul ’s implementation? |
Well one problem was that one option was in Go ;). That aside, it will need a lot of extra work and will share a lot of code with the server, so we might be better off doing it in C#. This will also keep the footprint low on the build and while running it. And the main goal is that it should produce reproducible chunks, if at all possible. This would make caching these trivial. And lots of things have changed in the server and lot more things will change. If we ever do something like this it will definitely be a version 11. |
Following a point of @nvllsvm on matrix I am opening an issue for the rewrite of the transcoder engine.
Some random thoughts:
Let the fun begins :)
The text was updated successfully, but these errors were encountered: