invidious icon indicating copy to clipboard operation
invidious copied to clipboard

[Feature request] Download link in HTTP only

Open Computershik73 opened this issue 4 years ago • 19 comments

Hello! I am developing a YouTube app for some old devices that do not support https videos online watching (only downloading). I will be very grateful if the API will also provide HTTP links to videos. I know, YouTube supports it, but via an old browser, and it is too difficult to decrypt the link. Please. At this moment, I have to proxify videos via http proxy, whick causes them to lag and buffer.

Computershik73 avatar Jun 17 '21 10:06 Computershik73

Can you prove that youtube support HTTP links and that you can load it fine?

I tried to force the link of video stream from HTTPS to HTTP and I got a 403 HTTP error so I don't think this will work.

unixfox avatar Jun 17 '21 12:06 unixfox

Can you prove that youtube support HTTP links and that you can load it fine?

Nokia 808 on Symbian Belle FP2 with "Android 4.1" useragent plays videos online and gets http links. the user-agent is : "Mozilla/5.0 (Linux; Android 4.1.2; GT-P3110; Profile/MIDP-2.1 Configuration/CLDC-1.1 ) AppleWebKit/535.1 (KHTML, like Gecko) NokiaBrowser/8.3.1.4 Mobile Safari/535.1 3gpp-gba" I can see the whole link in the system player. I will attach the photo now.

Computershik73 avatar Jun 17 '21 13:06 Computershik73

It also works with Windows Phone 8 UserAgent. Here is the proof! The video is from youtube via http. The thing is that https and http videos are generated by two different js scripts...

Computershik73 avatar Jun 17 '21 13:06 Computershik73

http access would greatly benefit Symbian phone users as they would gain access to more content. Due to the restrictions on the old OS video playback is achieved by http access only and this limits what content we have access to. I believe many if not all users of the Symbian platform would benefit from gaining access to invidious if http access was granted. On behalf of all the diehard Symbian fanatics please allow this option for us, we will be eternally grateful 🙏🏻

betabux avatar Jun 24 '21 08:06 betabux

http access would greatly benefit Symbian phone users as they would gain access to more content. Due to the restrictions on the old OS video playback is achieved by http access only and this limits what content we have access to. I believe many if not all users of the Symbian platform would benefit from gaining access to invidious if http access was granted. On behalf of all the diehard Symbian fanatics please allow this option for us, we will be eternally grateful 🙏🏻

We aren't against adding this feature, it's just that it's not a priority for the developers of Invidious. If you want to add this feature the Invidious code is open source and you can contribute to it. That's the beauty of open source :)

unixfox avatar Jun 24 '21 08:06 unixfox

I am happy to hear that you are not against it 👍🏻 I appreciate its not a priority for the developers of invidious. Thank you for your consideration

betabux avatar Jun 24 '21 08:06 betabux

would be nice to have that feature, but understandable what you say too. It's interesting to work YouTube through invidious in Symbian ^3 phones

taraletti avatar Jun 24 '21 09:06 taraletti

I am the author of the issue and the developer of SymTube, a Symbian and MeeGo YouTube app that uses Invidious instances. I have read what you had written above and just want to repeat that users will be grateful for adding this functionality.

Computershik73 avatar Jun 24 '21 15:06 Computershik73

http access would benefit Symbian phone users and could be a start to ressurect the capabilities of this OS. By now, winding videos can lag because the video is proxified via private server maintained by the developer of SymTube (https => http). Http links to videos are needed for old devices. After Invidious's developers add them, the proxy can be disabled. Please, look to the Symbian users. We are still here!

J34N-V3ND3TT4 avatar Jun 27 '21 14:06 J34N-V3ND3TT4

I don't want to be rude, but please stop commenting if it doesn't help in adding this feature.

We already know that a community is seeking for this feature, and "polluting" this issue will make the job harder for future developers that would want to get useful information from this issue in order to develop this feature.

I'm hiding the comments that won't help in developing this feature, these will be classified as spam because there is no better section related to comments that don't provide useful information for developing a feature.

unixfox avatar Jun 27 '21 15:06 unixfox

Just wanted to add that if you run Invidious normally, so in HTTP, you can just replace the googlevideo URLs to the URL of invidious.

For example, this URL: https://r1---sn-cxab5jvh-cg0ek.googlevideo.com/videoplayback?expire=1628918814&ei=vv8WYb6ZJ8L_gQecppCADA&&host=r1---sn-cxab5jvh-cg0ek.googlevideo.com should be converted to http://localhost:3000/videoplayback?expire=1628918814&ei=vv8WYb6ZJ8L_gQecppCADA&&host=r1---sn-cxab5jvh-cg0ek.googlevideo.com. Note: invidious in this case is running on http://localhost:3000 but if that's not the case for you then change the URL to the correct URL.

Then any HTTP only clients will be able to watch the video. The traffic will be proxified through invidious, but that's fine.

unixfox avatar Aug 13 '21 23:08 unixfox

Just wanted to add that if you run Invidious normally, so in HTTP, you can just replace the googlevideo URLs to the URL of invidious.

Can we use this with other invidious instances, i guess? And I did not find any invidious instances that allow to connect by HTTP. My server is not so powerful to launch it by itself, unfortunately. And even worse, the SSL certificate that is used on all instances is not supported on Symbian (it is too new), so I proxify the traffic through my server.

Computershik73 avatar Aug 14 '21 18:08 Computershik73

Unfortunately no you can't do that, all the public instances are forcing to HTTPS because security.

I was talking about if you host invidious locally, but I guess if you are already proxify the traffic through your server, then you already have the same result as having the traffic through a local invidious instance.

unixfox avatar Aug 14 '21 19:08 unixfox

Well there is http://iteroni.com, but it isn't on the official instance list so we can't exactly assert it's quality. Though last time I checked, it does support http.

syeopite avatar Aug 14 '21 19:08 syeopite

Well there is http://iteroni.com, but it isn't on the official instance list so we can't exactly assert it's quality. Though last time I checked, it does support http.

yes, I checked it on my Nokia 808 and iPhone 4, it opens , but the videos do not play still.

I was talking about if you host invidious locally, but I guess if you are already proxify the traffic through your server, then you already have the same result as having the traffic through a local invidious instance.

True, but some people do not like that fact.

Computershik73 avatar Aug 14 '21 21:08 Computershik73

Well there is http://iteroni.com, but it isn't on the official instance list so we can't exactly assert it's quality. Though last time I checked, it does support http.

yes, I checked it on my Nokia 808 and iPhone 4, it opens , but the videos do not play still.

It's an entirely different problem here. Your initial feature request is getting video streams URLs with HTTP, syeopite gave you a workaround. You just have to apply the method that I talked here https://github.com/iv-org/invidious/issues/2165#issuecomment-898768295 but using the invidious instance http://iteroni.com.

We aren't going to support Symbian devices (or any VERY old devices) on the invidious frontend sorry, but we can try to provide streams URLs with HTTP on the invidious API.

Please clarify if that's the correct feature request that you are asking.

unixfox avatar Aug 14 '21 22:08 unixfox

but we can try to provide streams URLs with HTTP on the invidious API.

Please clarify if that's the correct feature request that you are asking.

Yes, this is the exact feature our community of Symbian users ask for.

Computershik73 avatar Aug 19 '21 06:08 Computershik73

but we can try to provide streams URLs with HTTP on the invidious API.

Please clarify if that's the correct feature request that you are asking.

Yes, this is the exact feature our community of Symbian users ask for.

Can you explain how you got the HTTP links for googlevideo in the first place? Explain how you manage to do that in https://github.com/iv-org/invidious/issues/2165#issuecomment-863261429

unixfox avatar Aug 19 '21 08:08 unixfox

Can you explain how you got the HTTP links for googlevideo in the first place? Explain how you manage to do that in #2165 (comment)

Sure,

  1. I changed Symbian system browser's default user agent to Windows Phone 8 system standard useragent using another app (but it can also be changed by modifying some system files)
  2. I tapped on the video before the page loaded completely, it opened the video I selected earlier and it started playing. I attach my useragent string here.
  3. To view the link, I installed "Little Player" app that replaces system player by catching calls to it. "Mozilla/5.0 (compatible; MSIE 10.0 Windows Phone 8.0; Trident/6.0 ) AppleWebKit/535.1 (KHTML, like Gecko) IEMobile/10.0/7.4.2.6 Mobile Safari/535.1 3gpp-gba" On the photo, there is how the web page look after I close the system videoplayer x_3b13833e14

x_f1a6db40b9

Computershik73 avatar Sep 23 '21 19:09 Computershik73