-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Circumventing geo-restrictions #92
Comments
It would be good to start building a list of videos that are "Blocked in US, Blocked in DE, etc". |
Nah, I can't get it to play using any VPN or proxy. Maybe not a great example, as I suppose it's possible that the link is just broken and the geo-restriction aspect isn't really the issue. |
Here's an example of a video that is allowed in DE but not US: https://invidio.us/watch?v=rV4Mrl2hQro Helpful link: https://www.youtube.com/get_video_info?video_id=rV4Mrl2hQro |
Haven't I seen something like |
You probably saw
|
No, I knew I've seen it. Went through my clipboard manager and found one. IDK if it actually works, but:
(towards the end) |
Doesn't appear to do anything. A while back I put some work into decrypting/resigning |
|
Working on this right now, currently can get info on the videos linked above. https://invidio.us/watch?v=xpWu4_hp00M appears to be allowed in Germany, Japan, Russia, Thailand (of the regions I've tested). The last thing that needs to be done is to proxy the files themselves, although obviously that will be more bandwidth intensive. |
I suggest you to just add this information to the video page, so users can use VPN or proxy to watch videos that are allowed in specific countries. |
That's fair enough. I'm already managing downloads for livestreams, and will do the same for #34 and #90, so I thought I might do that here as well. I do plan on adding info to the video page, something like |
Just pushed fada57a, which provides |
How can you measure that? |
I think what I mean is the regions that allow a user to watch the largest amount of content. So Germany, US, JP, etc. I can't measure it very well, but I think there is a metric where some percentage of videos are exclusive to region I also just clarified my position a bit: the regions that are allowed by the largest number of geo-restricted videos should be added. |
I wonder if its possible to get it to work without having to proxy the video file itself. If it is, then that would be nice. |
Attempting to access a geo-blocked file returns a 403 as well, so it appears the only solution is to proxy that as well. This is also an issue for #90: Google will block access to the file itself in some instances, so this is likely the only solution unfortunately. |
Not sure if you ever successfully implemented a geo-restriction circumvention. I kinda figured you had bc I hadn't run into any problems in quite a while, but this issue's still open, so perhaps not. Just ran into one though, and besides being geo-blocked, the page takes forever just to load an error message. |
Currently the system in place is to cycle through proxies in specific regions, so most of the videos mentioned work (with The reason geo-blocked videos can take a long time to load is if Invidious can't find a proxy or if none of the regions Invidious tries return a valid response. I would like to fix that before I close this. |
A 20$ bounty has been added to this issue. Anyone opening a PR fixing this issue, will receive 20$ (in BTC) from the Invidious project. More details: #1898 |
We could use hola proxies which have a lot of available locations: https://github.com/Snawoot/hola-proxy |
@unixfox Tor is maybe more reliable than random proxy, maybe? |
You can't choose the country exit node on Tor. |
|
Although Tor is a viable solution, we're going to be consuming a large portion of bandwidth on the already limited Tor network; possibly handicapping connections for those who actually needs Tor. Not to mention the fact that Tor is incredibly slow. If this is the solution we decide to use then this should definitely be configurable imo. |
Ok but:
|
We shouldn't use Tor. It wasn't designed to handle such a load, and the current network doesn't have the ressources to be used as a video proxy. See this blog post for more details and the related section in the FAQ |
This issue has been automatically marked as stale and will be closed in 30 days because it has not had recent activity and is much likely outdated. If you think this issue is still relevant and applicable, you just have to post a comment and it will be unmarked. |
One idea that comes to my mind when discussing with other people on matrix is that we could say to the user that this video is available in this other instance because we fetched the countries from the API of the instances list. |
We might have to depend on an external service that categorizes what regions a certain video is allowed in for that considering how YouTube sometimes just doesn't return anything sometimes besides a region-locked error message. |
Piped have a special external service that use demo official key on YouTube official API for checking the regions where the video is available: https://github.com/TeamPiped/region-restriction-checker I have also thought of using www.google.com, force a country in the settings and search for the video ID in the "videos" tab, then check if the video appears. But it doesn't work well. And last thoughts, something I have not yet tested, https://www.tunnelbroker.ch/ allows to configure a country when creating a new IPv6 subnet, I wonder if YouTube takes into account this information that is written in the whois or not. |
This is great! We should find someway of integrating that or something similar we built ourselves into Invidious. I am a bit concerned about calling their official API considering YouTube's recent legal actions but if its an external service and not Invidious directly it should probably be fine.
If that works then that's another alternative and one that is definitely safer than using YouTube's official API. |
I thought we were already circumventing geo-blocking, but we're not.
Blocked in the U.S.:
https://invidio.us/watch?v=xpWu4_hp00M
The text was updated successfully, but these errors were encountered: