Skip to content
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

[Enhancement] /videoplayback proxy send requests like real YouTube client #5033

Open
unixfox opened this issue Oct 29, 2024 · 3 comments
Open
Labels
enhancement Improvement of an existing feature

Comments

@unixfox
Copy link
Member

unixfox commented Oct 29, 2024

YouTube clients are now sending requests using POST method and with a protobuf body.

We should try to replicate this behavior.

FreeTube has already implemented such modification: https://github.com/FreeTubeApp/FreeTube/blob/5a4cd981cdf2c2a20ab68b001746658fd0c6484e/src/renderer/components/ft-shaka-video-player/ft-shaka-video-player.js#L1089-L1107

This implementation should be done in https://github.com/iv-org/invidious/blob/master/src/invidious/routes/video_playback.cr#L3

@unixfox unixfox added the enhancement Improvement of an existing feature label Oct 29, 2024
@Fijxu
Copy link
Contributor

Fijxu commented Oct 29, 2024

Implemented on my fork of http3-ytproxy https://git.nadeko.net/Fijxu/http3-ytproxy/commit/6885fcfc2827da8916bf0ba951d8800077825a44

And a little POC that works well but I don't know if it's implemented correctly: https://git.nadeko.net/Fijxu/invidious/commit/51c5a05b94998f70bed1b19c0bd8ebed8e7bf6de

image

Body:

image

@SamantazFox
Copy link
Member

SamantazFox commented Nov 9, 2024

This format is called UMp, and requires to make a parser for the format this returns.
I've started to work on the thing some time ago, but it needs to be finished:
SamantazFox@cee3b2a

Also, with the upcoming companion, it might not be very relevant anymore.

@unixfox
Copy link
Member Author

unixfox commented Nov 9, 2024

This format is called UMp, and requires to make a parser for the format this returns. I've started to work on the thing some time ago, but it needs to be finished: SamantazFox@cee3b2a

Also, with the upcoming companion, it might not be very relevant anymore.

the first step is not necessarily to handle UMP. but send the requests using POST method and the body here: https://github.com/FreeTubeApp/FreeTube/blob/5a4cd981cdf2c2a20ab68b001746658fd0c6484e/src/renderer/components/ft-shaka-video-player/ft-shaka-video-player.js#L1097

UMP can come later

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improvement of an existing feature
Projects
None yet
Development

No branches or pull requests

3 participants