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

[FIXED in 0.27.5] [YouTube] IOS player response is not valid error when loading some videos #11934

Closed
6 tasks done
rjdg14 opened this issue Jan 17, 2025 · 27 comments · Fixed by TeamNewPipe/NewPipeExtractor#1262
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

@rjdg14
Copy link

rjdg14 commented Jan 17, 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

0.27.4

Steps to reproduce the bug

1: Load a random video
2: Some videos will not play and instead present an error report

Expected behavior

The videos should be loading normally.

Actual behavior

A sad face error page is instead shown along with "Sorry, something went wrong" and a log button.

Screenshots/Screen recordings

No response

Logs

Exception

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 15

Affected device model

Nokia X10

Additional information

Currently this issue is only affecting some videos.

@rjdg14 rjdg14 added bug Issue is related to a bug needs triage Issue is not yet ready for PR authors to take up labels Jan 17, 2025
@NottLexa
Copy link

Same issue here with a strange behavior. I can try to play some videos from my watch history, and one video after another will have the same error with IOS player. However, after trying to play 3 or 4 more videos they begin to work again, and even the old ones, which were initially causing this error. Stopping and reopening the whole app doesn't have any effect on this.

@m-hugo

This comment has been minimized.

@FaFre
Copy link

FaFre commented Jan 17, 2025

Had the same issue on almost all videos, clearing the app cache solved the issue for me.

@smemsh

This comment has been minimized.

@rjdg14
Copy link
Author

rjdg14 commented Jan 17, 2025

Had the same issue on almost all videos, clearing the app cache solved the issue for me.

I would say it's happening randomly on every third or so video, and then clears up after a few attempts. Clearing my cache didn't seem to make a difference.

@ShareASmile ShareASmile added youtube Service, https://www.youtube.com/ and removed needs triage Issue is not yet ready for PR authors to take up labels Jan 18, 2025
@ShareASmile ShareASmile changed the title "IOS player response is not valid" error when loading some videos [YouTube] IOS player response is not valid error when loading some videos Jan 18, 2025
@ShareASmile ShareASmile pinned this issue Jan 18, 2025
@ShareASmile ShareASmile mentioned this issue Jan 18, 2025
6 tasks
@ShareASmile ShareASmile marked this as a duplicate of #11937 Jan 18, 2025
@stevleibelt
Copy link

Same for me but I can not find a pattern. It even happens when pausing a video for less than five minutes. Sometimes it helps switching the network (mobile data vs. wifi), by clearing the cache or waiting up to an hour. No method is a clear problem solver.
My best guess is that youtube is doing a kind of a/b testing on their servers/backends.

@rjdg14
Copy link
Author

rjdg14 commented Jan 18, 2025

Same for me but I can not find a pattern. It even happens when pausing a video for less than five minutes. Sometimes it helps switching the network (mobile data vs. wifi), by clearing the cache or waiting up to an hour. No method is a clear problem solver. My best guess is that youtube is doing a kind of a/b testing on their servers/backends.

What I can say is that it doesn't seem to currently be affecting FreeTube, which I think uses a different method of fetching streams to NewPipe, so the problem is definitely fixable in its current form.

@olemayu
Copy link

olemayu commented Jan 18, 2025

I don't know if this is same for others but on my end I can get past this error by tapping retry a few times. Give it a try while waiting for an update.

@agpsl

This comment has been minimized.

@VitoItalianGamer

This comment has been minimized.

@SleepzCat

This comment has been minimized.

@ShareASmile ShareASmile marked this as a duplicate of #11939 Jan 18, 2025
@gechoto
Copy link

gechoto commented Jan 18, 2025

The IOS player response now returns: "Sign in to confirm that you're not a bot"

this seems somewhat similar to #11139

I do not get this repsonse with other apps using the IOS client for now.
Maybe NewPipe sends some invalid parameter or the used IOS version is too old?

But I also saw some users reporting issues even with an up to date IOS client.
If it still doesn't work for many it might be worth switching to a different client or finding a way to generate po tokens.

@rjdg14
Copy link
Author

rjdg14 commented Jan 18, 2025

The IOS player response now returns: "Sign in to confirm that you're not a bot"

this seems somewhat similar to #11139

I do not get this repsonse with other apps using the IOS client for now. Maybe NewPipe sends some invalid parameter or the used IOS version is too old?

But I also saw some users reporting issues even with an up to date IOS client. If it still doesn't work for many it might be worth switching to a different client or finding a way to generate po tokens.

The behaviour for me is the same as it was a day ago.

I know Apple typically only supports around 3-4 versions of their operating systems at once and apps typically support iOS for no more than a couple of versions prior to the currently supported ones, but doubt this is the issue here.

FreeTube still works without problem so it's clearly something to do with the way NewPipe currently fetches content.

@hikkijr

This comment has been minimized.

@FaFre
Copy link

FaFre commented Jan 18, 2025

The same with me, but I can't view what I want but other videos rarely work... This is the video of 👇👇

https://youtube.com/shorts/L0JYTi-B-3U?si=LmoNJAZaeQWOILpo

What helped me is clearing the cache. Then pressing few times retry on the crash report dialog will eventually play any video, yours included.

@fohfuu

This comment has been minimized.

@jorgedeand
Copy link

Also, if autoplay is enabled it will never go to next video. It will stop in the failed video. But as said before tapping on retry few times will eventually load the video

@zbee

This comment has been minimized.

@stevleibelt
Copy link

Update from my side, even just retrying the video to load helps without clearing anything.

@meheralimeer

This comment has been minimized.

@gechoto
Copy link

gechoto commented Jan 19, 2025

I know Apple typically only supports around 3-4 versions of their operating systems at once and apps typically support iOS for no more than a couple of versions prior to the currently supported ones, but doubt this is the issue here.

Idk but judging by reports of users and what other apps are doing they seem to have less problems with a more recent IOS client so I think it is worth updating it.

FreeTube still works without problem so it's clearly something to do with the way NewPipe currently fetches content.

Of course there are many differences between the two.
For example FreeTube can generate PO tokens. NewPipe cannot.

@rjdg14

This comment has been minimized.

@lrq3000

This comment has been minimized.

@rjdg14

This comment has been minimized.

@depwl9992

This comment has been minimized.

@litetex
Copy link
Member

litetex commented Jan 21, 2025

Since it might still take a moment until TeamNewPipe/NewPipeExtractor#1262 is merged and released with other changes on the fly, I built a debug version with the changes (Warning: not optimized might be a bit slower):

app-debug.zip

Feel free to check it out in the meantime ;)

@TeamNewPipe TeamNewPipe locked as resolved and limited conversation to collaborators Jan 22, 2025
@Stypox
Copy link
Member

Stypox commented Jan 22, 2025

Release v0.27.5 is out with a fix to this issue: https://github.com/TeamNewPipe/NewPipe/releases/tag/v0.27.5

@ShareASmile ShareASmile marked this as a duplicate of #11948 Jan 24, 2025
@AudricV AudricV changed the title [YouTube] IOS player response is not valid error when loading some videos [FIXED in 0.27.5] [YouTube] IOS player response is not valid error when loading some videos Jan 24, 2025
@AudricV AudricV added ASAP Issue needs to be fixed as soon as possible requires extractor change This issue requires a change to the extractor labels Jan 24, 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
Development

Successfully merging a pull request may close this issue.