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

"Initial player response not valid" #2487

Open
1 task done
CZython opened this issue Jun 2, 2023 · 138 comments
Open
1 task done

"Initial player response not valid" #2487

CZython opened this issue Jun 2, 2023 · 138 comments
Labels
bug Something isn't working

Comments

@CZython
Copy link

CZython commented Jun 2, 2023

Testing requested (edit by kavin)

Hi everyone, I request everyone to please use https://pipedtesting.kavin.rocks/ temporarily as it would help with debugging and fixing this issue. Thanks!

In LibreTube, you can set the custom API URL to https://pipedtestingapi.kavin.rocks

Workaround Found

use one of these instances (because they somehow work):

  1. https://piped.syncpundit.io/
  2. https://piped.kozmik.studio/
  3. https://piped.projectsegfau.lt/
  4. https://piped.pfcd.me/
  5. https://piped.yt/

Official Instance

Describe the bug

Youtube dropped support for API version that Piped uses to load videos.
update: some videos seem to still work

To Reproduce

  1. open any official piped instance
  2. click on a video
  3. profit ???

Expected behavior

Loads name and Video

Logs/Errors

instead of video there is a message:
This content isn't available.

instead of video name there is this text:
Video Not Available

Browser, and OS with Version.

No response

Additional context

UPDATE:

depending on your location different videos seem to be unavailable
source: verification | different result

@CZython CZython added the bug Something isn't working label Jun 2, 2023
@ghost
Copy link

ghost commented Jun 2, 2023

yup, having this happen to me too, kinda scared me at first that every video was the same

@aviallon
Copy link

aviallon commented Jun 2, 2023

Screenshot_20230602-081436_LibreTube

@Akanksh12
Copy link

image

Can confirm this, all instances are affected. However, I have noticed that only some videos are effected by this e.g. charlie bit my finger works but typical unixporn user doesn't.

@ghost
Copy link

ghost commented Jun 2, 2023

the first video mightve worked because you have it in cache, for me no video at all works

@FireMasterK
Copy link
Member

Some regions still appear to work - CA and FR.

@maboroshin
Copy link
Contributor

You won't even get a channel feed.

@NearestWater262
Copy link

How does NewPipe do it? Can we use their method?

@ghost
Copy link

ghost commented Jun 2, 2023

can confirm

@ghost

This comment was marked as spam.

@radhealaniesoftware
Copy link

Im also had a same issue.
Also im trying to play my upload videos and its still works.
Here is the screenshot when i play my video:
Screenshot_20230602-174839
Here is the screenshot when i play the another video:
Screenshot_20230602-174504

Thank you.

@ghost
Copy link

ghost commented Jun 2, 2023

Im also had a same issue.
Also im trying to play my upload videos and its still works.
Here is the screenshot when i play my video:

sussy sonic

@CZython
Copy link
Author

CZython commented Jun 2, 2023

Require double check!

some videos seem to be still functioning while others are not:

and appears to be independent of channel:

Please verify and use emojis to signal if you can replicate.

@ghost

This comment was marked as spam.

@DanielProg39
Copy link

@CZython A bit different for me: the last video you mentioned works, others don't

@DanielProg39
Copy link

Seems that Invidious experienced something similar today: iv-org/invidious.io#71
But now everything works as intended in all Invidious instances. Maybe they know how to deal with this issue?

@ghost

This comment was marked as spam.

@ghost
Copy link

ghost commented Jun 2, 2023

Require double check!
Please verify and use emojis to signal if you can replicate.

it's the opposite for me. the ones you say don't work, are working, and vice versa.

@ghost

This comment was marked as spam.

@CZython
Copy link
Author

CZython commented Jun 2, 2023

in hope of not DDOSing, i need a check these of instances:

  1. https://piped.syncpundit.io/
  2. https://piped.kozmik.studio/
  3. https://piped.projectsegfau.lt/
  4. https://piped.pfcd.me/
  5. https://piped.yt/

because they seem to work...

@Cade66 @DanielProg39 @cyberhardt

@flexagoon
Copy link

@CZython the instances you listed work fine

@ghost

This comment was marked as spam.

@Bnyro Bnyro changed the title Youtube broke backwards compability, therefor all instanced no longer work. "Video not available" shows instead of video title and proper stream Jun 2, 2023
@CZython
Copy link
Author

CZython commented Jun 2, 2023

I'm staring think that the "update/dropped support" is only partial, because on some instances no videos work, while on others some videos work.

and as if by magic, these specific instances work fine.

I'll close this issue and put these instances to the top as workaround, because is obviously no longer satisfies:
"open any piped instance"

Or is there any reason to keep this issue open?

@Bnyro
Copy link
Member

Bnyro commented Jun 2, 2023

It makes sense to keep the issue open as long as the official instance (piped.video) is affected.

@Bnyro
Copy link
Member

Bnyro commented Jun 2, 2023

Which is still the case.

@CZython
Copy link
Author

CZython commented Jun 2, 2023

ok, i'll leave it open

@ghost

This comment was marked as spam.

@ghost
Copy link

ghost commented Jun 2, 2023

in hope of not DDOSing, i need a check these of instances:

1. https://piped.syncpundit.io/

2. https://piped.kozmik.studio/

3. https://piped.projectsegfau.lt/

4. https://piped.pfcd.me/

5. https://piped.yt/

because they seem to work...

@CZython

First one is a 404 for me. the other ones work - I've tested the same video on those instances (except the first one) and on the ones I use: piped.video, piped.qdi.fi and il.ax. The ones I use aren't working, but those you provided seem to work normally.

@ghost
Copy link

ghost commented Jun 2, 2023

Yup, it seems like not all instances were hit by that error. piped.video, piped.qdi.fi and il.ax are definitely having issues. shall we make a list?

@DanielProg39
Copy link

image
Instance selection list doesn't show anything and the official website infinitely loads feed and videos

@DanielProg39
Copy link

image Instance selection list doesn't show anything and the official website infinitely loads feed and videos

Everything works now 🥳

@FireMasterK
Copy link
Member

I solved the problem by adding http_proxy enviroment for the piped-backend container.


    piped:
        image: 1337kavin/piped:latest
        restart: unless-stopped
        volumes:
            - ./config/config.properties:/app/config.properties:ro
        depends_on:
            - postgres
        container_name: piped-backend
        environment:
            HTTP_PROXY: 'socks5://172.60.0.50:1080'
            HTTPS_PROXY: 'socks5://172.60.0.50:1080'
            NO_PROXY: 'localhost, 127.0.0.0/8'

This http_proxy is a randomized location (custom script) wireguard vpn with socks5 support.

You could also configure it with REQWEST_PROXY: socks5://127.0.0.1:1080 as a configuration value or environment variable. I've added support for this in TeamPiped/Piped-Backend@6a2c688

@EsmailELBoBDev2
Copy link

Hi, I have same issues on my instance. I tried to use REQWEST_PROXY and tried to use gluetun but both cases do not work. I really hope someone can help me because I tried 2 cases and made sure it connects with curl but whatever inside docker it does not. example https://piped.esmailelbob.xyz/watch?v=U5lR8GdcJyo

@unstablemaple
Copy link

I have the same issue on my Piped instance, none of the aforementioned workarounds worked. Any idea how to fix this?

@EsmailELBoBDev2
Copy link

@unstablemaple I figured it out with privoxy and REQWEST_PROXY

@unobatbayar
Copy link

I'm having this issue as of today, first time user of piped.

@blacklight
Copy link

blacklight commented Dec 18, 2023

I'm not sure if it's related, but as of the past ~48h I'm no longer receiving updates on my account's subscription feed either.

I haven't configured the proxy for my instance (yet), but I've kicked a bit the can down the road by using my instance for authentication and other instances for streaming.

No problem so far, as the API subscription side still worked even without the dynamic IP workaround. But that no longer seems to be the case. Relevant log traces:

172.21.0.1 - - [18/Dec/2023:14:24:36 +0000] "POST /webhooks/pubsub HTTP/1.0" 204 0 "-" "FeedFetcher-Google; (+http://www.google.com/feedfetcher.html)" "66.249.93.172"
org.schabi.newpipe.extractor.exceptions.ExtractionException: Initial player response is not valid
        at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:885)
        at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:60)
        at me.kavin.piped.server.handlers.PubSubHandlers.lambda$static$1(PubSubHandlers.java:63)
        at java.base/java.lang.Thread.run(Thread.java:1583)

Has anybody being experiencing the same issue lately as well (i.e. subscriptions not updating because of errors from /pubsub, but everything works fine if you browse to the channel page)? Would configuring a SOCK5 proxy fix it, or is it possibly an unrelated issue?

@FireMasterK
Copy link
Member

I'm not sure if it's related, but as of the past ~48h I'm no longer receiving updates on my account's subscription feed either.

I haven't configured the proxy for my instance (yet), but I've kicked a bit the can down the road by using my instance for authentication and other instances for streaming.

No problem so far, as the API subscription side still worked even without the dynamic IP workaround. But that no longer seems to be the case. Relevant log traces:

172.21.0.1 - - [18/Dec/2023:14:24:36 +0000] "POST /webhooks/pubsub HTTP/1.0" 204 0 "-" "FeedFetcher-Google; (+http://www.google.com/feedfetcher.html)" "66.249.93.172"
org.schabi.newpipe.extractor.exceptions.ExtractionException: Initial player response is not valid
        at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:885)
        at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:60)
        at me.kavin.piped.server.handlers.PubSubHandlers.lambda$static$1(PubSubHandlers.java:63)
        at java.base/java.lang.Thread.run(Thread.java:1583)

Has anybody being experiencing the same issue lately as well (i.e. subscriptions not updating because of errors from /pubsub, but everything works fine if you browse to the channel page)? Would configuring a SOCK5 proxy fix it, or is it possibly an unrelated issue?

Yes, your instance's IP blocked by YouTube, you'll need to change it, use a VPN, configure a proxy, or alternatively, if you have an ipv6 prefix, use this.

@FireMasterK FireMasterK pinned this issue Dec 18, 2023
@blacklight
Copy link

blacklight commented Dec 19, 2023

@FireMasterK thanks for the input! I've managed to fix the /pubsub exceptions by throwing a Tor container into the mix:

     ytproxy:
         image: 1337kavin/ytproxy:latest
         restart: unless-stopped
         volumes:
             - ytproxy:/app/socket
         container_name: ytproxy
+        depends_on:
+            - tor
+        environment:
+            REQWEST_PROXY: socks5://piped-tor:9050
+
+    tor:
+        image: lncm/tor
+        container_name: piped-tor
+        volumes:
+            - ./data/tor/data:/etc/tor
+            - ./data/tor/data:/var/lib/tor
+            - ./data/tor/run:/var/run/tor
+        restart: on-failure
+
     piped:
         image: 1337kavin/piped:latest
         restart: unless-stopped
@@ -21,7 +53,15 @@ services:
             - ./config/config.properties:/app/config.properties:ro
         depends_on:
             - postgres
+            - tor
+        environment:
+            REQWEST_PROXY: socks5://piped-tor:9050
         container_name: piped-backend
+

I'm still getting errors when streaming though, but at least the biggest offender is now out of the way - as long as I can get my feed updates, I can still use alternative instances for streaming.

Btw I've just noticed that this commit actually completely removed the support for the HTTP_PROXY variable. Indeed, before settling for Tor over SOCKS5 I did a few unsuccessful tries with Privoxy over HTTP. Is this intentional - i.e. Piped will support only SOCKS5 and not HTTP proxies?

@Deon-Trevor
Copy link

Testing requested (edit by kavin)

Hi everyone, I request everyone to please use https://pipedtesting.kavin.rocks/ temporarily as it would help with debugging and fixing this issue. Thanks!

In LibreTube, you can set the custom API URL to https://pipedtestingapi.kavin.rocks

Workaround Found

use one of these instances (because they somehow work):

  1. https://piped.syncpundit.io/
  2. https://piped.kozmik.studio/
  3. https://piped.projectsegfau.lt/
  4. https://piped.pfcd.me/
  5. https://piped.yt/

Official Instance

Describe the bug

Youtube dropped support for API version that Piped uses to load videos. update: some videos seem to still work

To Reproduce

  1. open any official piped instance
  2. click on a video
  3. profit ???

Expected behavior

Loads name and Video

Logs/Errors

instead of video there is a message: This content isn't available.

instead of video name there is this text: Video Not Available

Browser, and OS with Version.

No response

Additional context

UPDATE:

depending on your location different videos seem to be unavailable source: verification | different result

Ironically my instance: piped.syncpundit.io is now facing the same problem while others seem to have fixed it. @FireMasterK please link me to the fix, I'm dreading reading through ALL the back and forth since it's from half a year back.

@blacklight
Copy link

@Deon-Trevor if you also started experiencing issues lately, and with error logs similar to mine (e.g. the /pubsub API now fails too), then it's because Google has likely extended their IP bans also to the /pubsub API other than the streaming stuff.

A Tor container with SOCK5 thrown in the docker-compose should be enough to circumvent it if it's the case.

@Deon-Trevor
Copy link

@Deon-Trevor if you also started experiencing issues lately, and with error logs similar to mine (e.g. the /pubsub API now fails too), then it's because Google has likely extended their IP bans also to the /pubsub API other than the streaming stuff.

A Tor container with SOCK5 thrown in the docker-compose should be enough to circumvent it if it's the case.

Just switched IP Address and it's working fine. If you don't mind please share your docker compose config so I can implement one as well

@blacklight
Copy link

blacklight commented Dec 20, 2023

The docker-compose diff is in my previous post - you just need to add a basic torrc in data/tor/data with the SOCKS5 relay.

@Deon-Trevor
Copy link

The docker-compose diff is in my previous post - you just need to add a basic torrc to data/tor/data with SOCKS5 relay.

Thanks a bunch mate

@FireMasterK
Copy link
Member

@blacklight you need to use the new Rust based proxy, you're still using the old Golang one. It was changed over a year ago in TeamPiped/Piped-Docker@a77f887

You can git pull and run ./configure-instance.sh again, or make the changes manually too.

@FarisZR
Copy link

FarisZR commented Dec 25, 2023

Yes, your instance's IP blocked by YouTube, you'll need to change it, use a VPN, configure a proxy, or alternatively, if you have an ipv6 prefix, use this.

@FireMasterK

I have implemented IPv6 support in docker and made sure that the containers have V6 connectivity, however Piped seems to always use V4, as it always has the 'Initial player response is not valid' Error, because it's using the banned V4 address and not IPv6.

Is there a way to force piped to use V6 for its connections to YouTube?

my Piped docker setup:
https://github.com/aosus/hyper-aosus/tree/main/piped

Edit, you have to use 2001:db8:x::/64 subnet for it to work.

@Jerroder
Copy link

Jerroder commented Jan 3, 2024

I'm interested as well. I'm having the error and force_resolve: ipv6 fixed it for invidious, but Piped still uses IPv4

@Pamilg8
Copy link

Pamilg8 commented Mar 8, 2024

Official instances do not have this problem. It happened again last time on the lunar.icu server. Blocking problem not solved?

@omentic
Copy link

omentic commented Mar 13, 2024

Hi. I'm getting this error on every instance I try through the LibreTube app. Testing a couple of servers directly, it appears to be a problem through the web interface too (or at least they're not loading videos) so I'm reporting it here.

@Pamilg8
Copy link

Pamilg8 commented May 26, 2024

Doesn't Piped still use the ipv6 rotator provided by Invidious?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests