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

[YouTube] 2nd occurrence of "IOS player response is not valid error" when loading some videos #11980

Open
6 tasks done
ShareASmile opened this issue Jan 31, 2025 · 18 comments · May be fixed by TeamNewPipe/NewPipeExtractor#1272
Labels
ASAP Issue needs to be fixed as soon as possible bug Issue is related to a bug requires extractor change This issue requires a change to the extractor youtube Service, https://www.youtube.com/

Comments

@ShareASmile
Copy link
Collaborator

ShareASmile commented Jan 31, 2025

Checklist

  • I am able to reproduce the bug with the latest version given here: CLICK THIS LINK.
  • I made sure that there are no existing issues - open or closed - which I could contribute my information to.
  • I have read the FAQ and my problem isn't listed.
  • I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise.
  • This issue contains only one bug.
  • I have read and understood the contribution guidelines.

Affected version

v0.27.5

Steps to reproduce the bug

"IOS client response is not valid" error has stated happening again. It is 2nd time occurrence of such exception was reported In NewPipe Extractor today after it was fixed in a hotfix release of Extractor 0.24.4. First time it was reported in #11934 & was fixed successfully by hotfix release of NewPipe v0.27.5.

Note: it will be pinned and tracked here in one place on the NewPipe repo to avoid duplicates on NewPipe Extractor repo. Users are requested to avoid opening duplicates & unnecessary comments with their exception reports as we are aware of the cause of this issue.

Steps for the reproduction:

1: Load a random YouTube video
2: Some videos will not play and instead present an error report page with sad face which also includes a retry and report error button
3. Pressing "Retry button many times" loads the video but not everytime.

Users facing this issue can use NewPipe_po_tokens apk attached in this comment

Expected behavior

YouTube videos should be loading normally.

Actual behavior

A error page is instead shown along with "Sorry, something went wrong" along with options for retry and report button.

Logs

User provided logs from this comment

Exception

  • User Action: requested stream
  • Request: https://www.youtube.com/watch?v=EzpqJGtLbHs
  • Content Country: BR
  • Content Language: pt-BR
  • App Language: pt_BR
  • Service: YouTube
  • Version: 0.27.5
  • OS: Linux samsung/a11qub/a11q:12/SP1A.210812.016/A115MUBU4CWF1:user/release-keys 12 - 31
Crash log

org.schabi.newpipe.extractor.exceptions.ExtractionException: IOS player response is not valid
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.fetchIosMobileJsonPlayer(YoutubeStreamExtractor.java:974)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:830)
	at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:60)
	at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:77)
	at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:72)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:118)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$bVfA-5gb6gDc8jcAgcGWG5oH0FE(ExtractorHelper.java:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda3.call(R8$$SyntheticClass:0)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4855)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4855)
	at io.reactivex.rxjava3.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
	at io.reactivex.rxjava3.core.Maybe.subscribe(Maybe.java:5377)
	at io.reactivex.rxjava3.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
	at io.reactivex.rxjava3.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
	at io.reactivex.rxjava3.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
	at io.reactivex.rxjava3.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
	at io.reactivex.rxjava3.core.Flowable.subscribe(Flowable.java:16144)
	at io.reactivex.rxjava3.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
	at io.reactivex.rxjava3.core.Maybe.subscribe(Maybe.java:5377)
	at io.reactivex.rxjava3.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4855)
	at io.reactivex.rxjava3.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
	at io.reactivex.rxjava3.core.Scheduler$DisposeTask.run(Scheduler.java:644)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:307)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
	at java.lang.Thread.run(Thread.java:1012)


Affected Android/Custom ROM version

Android 12

Affected device model

Samsung A11

Additional information

N/A

@ShareASmile ShareASmile added bug Issue is related to a bug needs triage Issue is not yet ready for PR authors to take up labels Jan 31, 2025
@ShareASmile ShareASmile pinned this issue Jan 31, 2025
@ShareASmile ShareASmile added ASAP Issue needs to be fixed as soon as possible youtube Service, https://www.youtube.com/ and removed needs triage Issue is not yet ready for PR authors to take up labels Jan 31, 2025
@AudricV AudricV added the requires extractor change This issue requires a change to the extractor label Jan 31, 2025
@gechoto
Copy link

gechoto commented Jan 31, 2025

This commit LuanRT/BgUtils@3fc2116 says "Locally generated Visitor IDs are no longer accepted".

The PR TeamNewPipe/NewPipeExtractor#1262 added code to generate random visitorData locally.

If someone has time it might be worth testing what happens when using visitorData from https://www.youtube.com/sw.js_data instead.

@ramazansancar

This comment has been minimized.

@sheepmax
Copy link

sheepmax commented Feb 1, 2025

I've tried my hand at fixing this in TeamNewPipe/NewPipeExtractor#1271 @gechoto. Not sure it's the cleanest but give it a look.

@Ivce-droid27

This comment has been minimized.

@jan-krieg
Copy link

I've tried my hand at fixing this in TeamNewPipe/NewPipeExtractor#1271 @gechoto. Not sure it's the cleanest but give it a look.

Based on brief testing, can confirm that this patch solved the issue for me; many thanks for sharing @sheepmax!

@JenBytes
Copy link

JenBytes commented Feb 1, 2025

Just wanted to add that for me when I open the app and play a video it always just works fine but while I have that video running and tap on another video then the error appears. If I close the player and tap on the new video I wanted to watch the player comes up and plays the video normally.

@ShareASmile ShareASmile marked this as a duplicate of #11985 Feb 1, 2025
@Jordan112004

This comment has been minimized.

@ShareASmile
Copy link
Collaborator Author

Please refrain from posting non-helpful comments such as "me too" on this thread; it just makes it harder for people to find the actual useful comments. Thanks

@ShareASmile
Copy link
Collaborator Author

Unlike other problems in the past, people have been surprisingly well behaved this time, duplicate issues have been less of a problem, more just duplicate comments, some ignoring even our requests in this issue body to avoid making unuseful comments here asking for quick resolution of the problem and specially when it has a already "ASAP" label on it.

It can't be more obvious than that "it is on our high priority".

we are aware of the cause of this issue & our developers have started working on it and 2 main others (namely http 403 error , sign in to confirm you are not a bot error).

2 PRs have already been opened one for Extractor part as well as one for NewPipe app part. All we need from users as support is to remain hooked patiently.

We will keep you informed. Thank you.

@WiiPH0NE
Copy link

WiiPH0NE commented Feb 1, 2025 via email

@ShareASmile
Copy link
Collaborator Author

ShareASmile commented Feb 1, 2025

Here is the debug apk generated by CI from our po_tokens support PR #11955

NewPipe po-token.zip

This is the Fruit of our developers labour so far to fix the following issues:-

  1. 2nd occurrence of ios player response not valid error i.e. this issue.
  2. HTTP error 403 for playback or download i.e. issue 11803
  3. Missing 720p30 YouTube Video only Streams [YouTube] 720p24-30 FPS video streams missing since v0.27.2 #11486
  4. Implement ability to watch age-restricted videos which are viewable in embeds like game trailers see #11382 comment for more
  5. We have asked for a response there if this solves Sign in to confirm you are not a bot error #11139 as well.
  6. Have Polished some bugs here & there, to know more check dev branch commits since 0.27.5 release
  7. Ah.. It has a donate button too in the sidebar.

@asandikci
Copy link
Contributor

asandikci commented Feb 1, 2025

I thank the team for the hotfixes and improvements. Is this file the same as the one in this (https://github.com/TeamNewPipe/NewPipe/actions/runs/13089632550) CI output?

@ShareASmile
Copy link
Collaborator Author

If it wasn't clear enough, It is current latest debug APK taken from CI's last run of #11955 , unzipped, renamed properly and re-zipped.

https://github.com/TeamNewPipe/NewPipe/actions/runs/13089632550/artifacts/2521351556

It is for convenience of the users without a github account who come to browse NewPipe repo searching for the solutions, land on hot topics or Pinned Issues to try debug apk out. May encourage themselves to test things out & report back by making accounts later.
Note: Downloads from CI requires log in.

@TodorovicSrdjan
Copy link

TodorovicSrdjan commented Feb 1, 2025

For those who cannot or don't want to install debug apk, here is work around that I have found: spamming "Open in browser" 3-10 times make it work. I an not sure if default app should be set (newpipe for yt links or something like that) or default action, but I can watch videos that produce this error if do the thing metioned before.

You can also try to play with "Start playing in a popup".

@Banner-Keith
Copy link

I have tested this change and it resolved the issue for me.

@ShareASmile ShareASmile marked this as a duplicate of #11992 Feb 2, 2025
@ShareASmile ShareASmile marked this as a duplicate of #11990 Feb 2, 2025
@ShareASmile ShareASmile marked this as a duplicate of #11993 Feb 2, 2025
@zeropi2021

This comment has been minimized.

@sophintx

This comment has been minimized.

@TeamNewPipe TeamNewPipe locked as too heated and limited conversation to collaborators Feb 2, 2025
@ShareASmile
Copy link
Collaborator Author

Users facing this issue can use NewPipe_po_tokens apk attached in this comment

Unzip it & install it. It will install as a seperate app. If you want your data imported into this newly installed app NewPipe po-token then Export Data from NewPipe app and Import in the it.

@ShareASmile ShareASmile marked this as a duplicate of #11998 Feb 2, 2025
@ShareASmile ShareASmile marked this as a duplicate of #12003 Feb 3, 2025
@ShareASmile ShareASmile marked this as a duplicate of #12002 Feb 3, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
ASAP Issue needs to be fixed as soon as possible bug Issue is related to a bug requires extractor change This issue requires a change to the extractor youtube Service, https://www.youtube.com/
Projects
None yet