polymorphicshade / Tubular

A fork of NewPipe that implements SponsorBlock and ReturnYouTubeDislike.
GNU General Public License v3.0
1.55k stars 40 forks source link

Network error #97

Closed VitoItalianGamer closed 2 months ago

VitoItalianGamer commented 3 months ago

Checklist

Affected version

0.27.0

Steps to reproduce the bug

Play any video. Network error occurs.

Expected behavior

Plays normally

Actual behavior

Network error occurs

Screenshots/Recordings

https://github.com/polymorphicshade/Tubular/assets/138238777/41f841c9-e175-472e-b48c-d6f6c5cd4c82

Logs

Exception

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:107)
    at android.os.Looper.loopOnce(Looper.java:238)
    at android.os.Looper.loop(Looper.java:357)
    at android.os.HandlerThread.run(HandlerThread.java:85)
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)


Affected Android/Custom ROM version

Android 12

Affected device model

Moto G Power 2022

Additional information

It's very annoying

onerc commented 3 months ago

Same error, app refuses to play the video until its restarted.

Exception

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.loop(Looper.java:223)
    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:923)


reloaded commented 2 months ago

Same issue here last few days. Within the exception details it shows a HTTP 403 status code.

{"user_action":"play stream","request":"Player error[type=ERROR_CODE_IO_BAD_HTTP_STATUS] occurred while playing https://www.youtube.com/watch?v=3c909oqLfao","content_language":"en-US","content_country":"US","app_language":"en_US","service":"YouTube","package":"org.polymorphicshade.tubular","version":"0.27.0","os":"Linux Android 14 - 34","time":"2024-07-09 11: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:205)\n\tat android.os.Looper.loop(Looper.java:294)\n\tat 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(YoutubeHttpDataSource.java:422)\n\tat com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:263)\n\tat 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(CacheDataSource.java:609)\n\tat com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:84)\n\tat com.google.android.exoplayer2.source.chunk.InitializationChunk.load(InitializationChunk.java:99)\n\tat com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:412)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)\n\tat java.lang.Thread.run(Thread.java:1012)\n"],"user_comment":""}

LuanHimmlisch commented 2 months ago

Started to have the same error

fynn0411 commented 2 months ago

This happened to me as well starting today. Maybe it's interesting to know that other alternative YouTube players are also having this issue (SmartTube for Android TV).

reloaded commented 2 months ago

This happened to me as well starting today. Maybe it's interesting to know that other alternative YouTube players are also having this issue (SmartTube for Android TV).

YouTube must be cracking down on alt players. Seems likely, given the response code is 403 forbidden.

Der-Flip commented 2 months ago

Sadly, same here

Exception

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:225)
    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.InitializationChunk.load(InitializationChunk.java:99)
    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)


VitoItalianGamer commented 2 months ago

Update!!! It now occurs to all videos and restart doesn't work.

reloaded commented 2 months ago

Update!!! It now occurs to all videos and restart doesn't work.

Yep it started happening for me on all videos too about 10 hours ago.

Another change I noticed is, I used to be able to play YouTube videos in the background (including playlist queues that play the next video/song automatically) on the YouTube website using Firefox on android with the "video background play fix" add-on enabled (it disables page visibility API). As of a few days ago that previous behavior and experience no longer works. Now after about 10 minutes the video in the background stops/pauses. When I focus that app and tab I see a loading indicator and after a few seconds it continues playing the video. And playlists will no longer automatically play the next song. Seems they've updated their page to look for page interactions other than browser visibility API, at least on mobile browsers.

They've pushed some updates that hit us below the belt. 😂

Ogloppi commented 2 months ago

Yup, something changed on YouTube side. I'm having this same issue.

tuxayo commented 2 months ago

Shitty workaround: share the video from Tubular to either the UntrackMe app where you have a working invidious instance set. Or share the video to Firefox where you have LibRedirect installed with a working invidious instance set.

v1s7 commented 2 months ago

Same issue. VPN does not help.

Exception

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:240)
    at android.os.Looper.loop(Looper.java:351)
    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.InitializationChunk.load(InitializationChunk.java:99)
    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)


tuxayo commented 2 months ago

Should this ticket be pinned to avoid part of the duplicates being created?

RansomTime commented 2 months ago

Upstream issue and discussion

https://github.com/TeamNewPipe/NewPipe/issues/11255

The original commenter says that they could not reproduce on vanilla newpipe but it certainly seems as if it's an issue with that as well.

tuxayo commented 2 months ago

original commenter says that they could not reproduce on vanilla newpipe

The change was being deployed gradually. I've seen the issue occasionally a few days ago. So it seemed also like NewPipe wasn't affected if one was not using it much. Someone else using NewPipe and checking with Tubular could have concluded that Tubular wasn't affect. It was random. And since yesterday, impossible to play any video, likely the change has been fully deployed.

reloaded commented 2 months ago

original commenter says that they could not reproduce on vanilla newpipe

The change was being deployed gradually. I've seen the issue occasionally a few days ago. So it seemed also like NewPipe wasn't affected if one was not using it much. Someone else using NewPipe and checking with Tubular could have concluded that Tubular wasn't affect. It was random. And since yesterday, impossible to play any video, likely the change has been fully deployed.

that was my experience too.

Caddy8970 commented 2 months ago

Sorry if this is off-topic, but vanilla NewPipe just fixed the issue. You can use the debug version while you wait https://github.com/TeamNewPipe/NewPipeExtractor/pull/1191

reloaded commented 2 months ago

Sorry if this is off-topic, but vanilla NewPipe just fixed the issue. You can use the debug version while you wait TeamNewPipe/NewPipeExtractor#1191

Uh, don't apologize, your comment is totally on topic. I will install the new pipe debug version and test. Perfect timing too as I just started working in my workshop and have had a feeling of incompleteness without music.

reloaded commented 2 months ago

Sorry if this is off-topic, but vanilla NewPipe just fixed the issue. You can use the debug version while you wait TeamNewPipe/NewPipeExtractor#1191

I've been playing YouTube videos using that debug version of new pipe. It was working for a bunch of songs and now it's doing the same thing randomly.

Caddy8970 commented 2 months ago

Sorry if this is off-topic, but vanilla NewPipe just fixed the issue. You can use the debug version while you wait TeamNewPipe/NewPipeExtractor#1191

I've been playing YouTube videos using that debug version of new pipe. It was working for a bunch of songs and now it's doing the same thing randomly.

Huh, all of the videos I've played with it had no issues. I remember having your exact issue with the stable version (before it broke yesterday) and force stopping + clearing the cache fixed it. You should report this to the devs and see if they can fix it.

reloaded commented 2 months ago

Sorry if this is off-topic, but vanilla NewPipe just fixed the issue. You can use the debug version while you wait TeamNewPipe/NewPipeExtractor#1191

I've been playing YouTube videos using that debug version of new pipe. It was working for a bunch of songs and now it's doing the same thing randomly.

Huh, all of the videos I've played with it had no issues. I remember having your exact issue with the stable version (before it broke yesterday) and force stopping + clearing the cache fixed it. You should report this to the devs and see if they can fix it.

Just happened again with the debug build

{"user_action":"play stream","request":"Player error[type=ERROR_CODE_IO_BAD_HTTP_STATUS] occurred while playing https://www.youtube.com/watch?v=H5IiFDL-Btw","content_language":"en-US","content_country":"US","app_language":"en_US","service":"YouTube","package":"org.schabi.newpipe.debug","version":"0.27.0","os":"Linux Android 14 - 34","time":"2024-07-10 17:42","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:205)\n\tat android.os.Looper.loop(Looper.java:294)\n\tat 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(YoutubeHttpDataSource.java:422)\n\tat com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:263)\n\tat 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(CacheDataSource.java:609)\n\tat 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(Loader.java:412)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)\n\tat java.lang.Thread.run(Thread.java:1012)\n"],"user_comment":""}

onerc commented 2 months ago

I'm still getting the same error :/

Exception

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.loop(Looper.java:223)
    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:923)


reloaded commented 2 months ago

I'm still getting the same error :/

Exception

* **User Action:** play stream

* **Request:** Player error[type=ERROR_CODE_IO_BAD_HTTP_STATUS] occurred while playing https://www.youtube.com/watch?v=zcu9EaLP-aM

* **Content Country:** TR

* **Content Language:** en-US

* **App Language:** en_US

* **Service:** YouTube

* **Version:** 0.27.1

* **OS:** Linux Android 11 - 30

Crash log

Yep it happened to me 4 days ago with the new pipe debug build that they were passing around and testing.

https://github.com/polymorphicshade/Tubular/issues/97#issuecomment-2221776946

tuxayo commented 2 months ago

@onerc @reloaded does your issue happen around the one minute mark of some videos? If so, it's #119 (current ticket name isn't accurate)

onerc commented 2 months ago

@onerc @reloaded does your issue happen around the one minute mark of some videos? If so, it's #119 (current ticket name isn't accurate)

You may be right. Just played few videos back to back and got the same error within the first minute of one.

don-dolarson commented 2 months ago

The problem is back with latest 0.27.1.

reloaded commented 2 months ago

The problem is back with latest 0.27.1.

Yep. I saw on the upstream new pipe repo they were talking about another YouTube change that broke it again.

1dolla commented 2 months ago

I think this should be closed and point to the upstream ticket? I know they're working on it, it says so in F-Droid. There's nothing you can do here other than merge once the fix is out.

The last day or two, it's gotten so bad that no video will play whatsoever XD. I've resorted to long-tap, "Open in Browser," then return back, long-tap, and "Mark as Watched."