Closed http403 closed 1 year ago
This happens to me too, but it does that every time I try to open a video. It plays for 1 minute, then it crashes.
Let's see if more people encounter this.
Heppens to me too, not only pipe, but also with Yutube Vanced, Youtube Revanced, SkyTube, LibreTube.
I think google did something to block these apps but I am not sure
My app is also doing this. It 'crashes', gives me the notif and then sometimes restarts from the point it left off and sometimes doesn't. I will keep getting sporadic error notifs until I quit out of the app, whether it restarts or not.
To all users, please use the thumbs up reaction on the main issue to signify you experience the problem unless you have additional information such as, reliably triggering the error, with detailed steps on reproducing it. Thank you.
I updated the steps to reproduce the crash. Though I have no idea how reliable that is.
Do something else (2+ hours)
Then the streaming URLs may have expired (URLs should be only valid for 21540 seconds), and in this case this issue would be a duplicate of #5730. You can still play the video for around 1 minute before getting the error as the player library, ExoPlayer, is configured to have the goal to buffer streams 50 seconds (the default value).
If you can still get sometimes this invalid response code when you start playing a video and after around 1 minute of playback, then it means that YouTube is disabling our last known workaround to use the Android client.
We wouldn't be the only app affected again by this issue, reVanced would be too for instance, but contrary to it, we have the freedom to use almost every YouTube client we want.
@AudricV Thanks for letting me know, and sorry for I didn't search thorough enough.
This proves I didn't find the correct way to reproduce the issue.
@Haitham-7 @openmoth @attilafekete73 and others, as you stated you experienced the issue, could you please share the crash log and possbility step to reproduce? This will help to judge if Google did something new or just a duplicate. Thank you.
@Haitham-7 @openmoth @attilafekete73 and others, as you stated you experienced the issue, could you please share the crash log and possbility step to reproduce? This will help to judge if Google did something new or just a duplicate. Thank you.
The logs:
{"user_action":"play stream","request":"Player error[type=ERROR_CODE_IO_BAD_HTTP_STATUS] occurred while playing https://www.youtube.com/watch?v=iArXv64tCJA","content_language":"en-US","content_country":"US","app_language":"en_US","service":"YouTube","package":"org.polymorphicshade.newpipe","version":"0.25.1","os":"Linux Android 13 - 33","time":"2023-08-19 02:26","exceptions":["com.google.android.exoplayer2.ExoPlaybackException: Source error\n\tat com.google.android.exoplayer2.ExoPlayerImplInternal.handleIoException(exoplayerimplinternal.java:644)\n\tat com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(exoplayerimplinternal.java:616)\n\tat android.os.Handler.dispatchMessage(handler.java:102)\n\tat android.os.Looper.loopOnce(looper.java:210)\n\tat android.os.Looper.loop(looper.java:299)\n\tat [android.os.HandlerThread.run](https://android.os.handlerthread.run/)(handlerthread.java:67)\nCaused by: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 403\n\tat [org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open](https://org.schabi.newpipe.player.datasource.youtubehttpdatasource.open/)(youtubehttpdatasource.java:422)\n\tat [com.google.android.exoplayer2.upstream.DefaultDataSource.open](https://com.google.android.exoplayer2.upstream.defaultdatasource.open/)(defaultdatasource.java:263)\n\tat [com.google.android.exoplayer2.upstream.TeeDataSource.open](https://com.google.android.exoplayer2.upstream.teedatasource.open/)(teedatasource.java:52)\n\tat com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(cachedatasource.java:796)\n\tat [com.google.android.exoplayer2.upstream.cache.CacheDataSource.open](https://com.google.android.exoplayer2.upstream.cache.cachedatasource.open/)(cachedatasource.java:609)\n\tat [com.google.android.exoplayer2.upstream.StatsDataSource.open](https://com.google.android.exoplayer2.upstream.statsdatasource.open/)(statsdatasource.java:84)\n\tat com.google.android.exoplayer2.source.chunk.ContainerMediaChunk.load(containermediachunk.java:124)\n\tat com.google.android.exoplayer2.upstream.Loader$[LoadTask.run](https://loadtask.run/)(loader.java:412)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(threadpoolexecutor.java:1137)\n\tat java.util.concurrent.ThreadPoolExecutor$[Worker.run](https://worker.run/)(threadpoolexecutor.java:637)\n\tat [java.lang.Thread.run](https://java.lang.thread.run/)(thread.java:1012)\n"],"user_comment":"To reproduce the error, just open any video, the first 50 seconds or so will load (which is the buffer limit) then when you reach the end of the buffer the video never loads any further and you get the error"}
@Haitham-7 You are using an old version of NewPipe. Please update to 0.25.2 then report back if you still experiencing the issue. Thank you.
This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.
Here's my error log, although I'm on 0.25.1 and can't update because F-Droid doesn't seem to offer be 0.25.2
com.google.android.exoplayer2.ExoPlaybackException: Source error
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:644)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:616)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:359)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 403
at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:422)
at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:263)
at com.google.android.exoplayer2.upstream.TeeDataSource.open(TeeDataSource.java:52)
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:796)
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:609)
at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:84)
at com.google.android.exoplayer2.source.chunk.ContainerMediaChunk.load(ContainerMediaChunk.java:124)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:412)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.
This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.
This occurred for me recently:
com.google.android.exoplayer2.ExoPlaybackException: Source error
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:644)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:616)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:205)
at android.os.Looper.loop(Looper.java:294)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 403
at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:422)
at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:263)
at com.google.android.exoplayer2.upstream.TeeDataSource.open(TeeDataSource.java:52)
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:796)
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:609)
at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:84)
at com.google.android.exoplayer2.source.chunk.ContainerMediaChunk.load(ContainerMediaChunk.java:124)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:412)
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)
This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.
I don't see the need to reopen this because the error clearly isn't occurring for everyone like last time, but only intermittently, which is to be expected.
I don't see the need to reopen this because the error clearly isn't occurring for everyone like last time, but only intermittently, which is to be expected.
Would it be trivial to make NewPipe catch this error instead, show a generic error, (perhaps retry), instead of "crashing" in the background?
Most network based errors need to be reworked, actually. But it can't be done easily, otherwise, for example, users will keep retrying and never know what's going wrong.
I don't see the need to reopen this because the error clearly isn't occurring for everyone like last time, but only intermittently, which is to be expected.
Would it be trivial to make NewPipe catch this error instead, show a generic error, (perhaps retry), instead of "crashing" in the background?
I support a solution like this. I've been getting this error every day for months, whenever my phone switches between WiFi and data (leaving the house)
When listening to a playlist, it just skips to the next song instead of retrying.
I don't see the need to reopen this because the error clearly isn't occurring for everyone like last time, but only intermittently, which is to be expected.
Would it be trivial to make NewPipe catch this error instead, show a generic error, (perhaps retry), instead of "crashing" in the background?
I think this issue will be appropriate to address by opening a new issue.
Checklist
Affected version
0.25.2
Steps to reproduce the bug
1. Watch video2. App crash approx 1 minute into the video1. Open a video2. (optional) Full screen3. Pause the video at start or middle4. Exit to home (but not quit the app)5. Do something else (2+ hours)6. Go back and resume the videoExpected behavior
Play the video continuously
Actual behavior
About 1 minute into the video after resuming, it will crash with 403.Screenshots/Screen recordings
No response
Logs
Exception
Crash log
Affected Android/Custom ROM version
Android 13
Affected device model
Samsung Galaxy S21 5G FE
Additional information
I know the problem was declared fixed in TeamNewPipe/NewPipeExtractor#1084, but it is still happening.
This issue might look like #10329 but it is different. That issue is a result of 404, mine is a result of 403, thus I decided to open a new one.
Noted, this bahavior is not consistant, and for the span of 3 days of light use, I only encounter twice. It is hard to reproduce, and not as frequent as in 0.25.1.Upon further usage, I sort of find the way to reproduce the crash. However, I have no idea if it's reliable.I didn't apply the workaround in the release note.