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

Bad wi-fi causes lost progress #11537

Open
6 tasks done
kubo6472 opened this issue Sep 15, 2024 · 4 comments
Open
6 tasks done

Bad wi-fi causes lost progress #11537

kubo6472 opened this issue Sep 15, 2024 · 4 comments
Labels
bug Issue is related to a bug player Issues related to any player (main, popup and background)

Comments

@kubo6472
Copy link

kubo6472 commented Sep 15, 2024

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.2

Steps to reproduce the bug

  1. Join a spotty WiFi
  2. Play a video

Expected behavior

Video keeps playing, or freezes at a specific position, and continues when the network fixes itself

Actual behavior

The network error that happens causes the progress to be lost and the video to start playing from the beginning again.

Screenshots/Screen recordings

No response

Logs

Didn't capture last time, will add later

Affected Android/Custom ROM version

Android 14

Affected device model

Pixel 6a

Additional information

When I lose signal, and I'm on data, that network error won't cause this bug. It only happens on spotty WiFi.

@kubo6472 kubo6472 added bug Issue is related to a bug needs triage Issue is not yet ready for PR authors to take up labels Sep 15, 2024
@opusforlife2
Copy link
Collaborator

Didn't capture last time, will add later

Alright. We'll wait.

@opusforlife2 opusforlife2 added the waiting for author If the author doesn't respond, the issue will be auto-closed. Otherwise the label will be removed. label Sep 25, 2024
@kubo6472
Copy link
Author

kubo6472 commented Sep 25, 2024 via email

@github-actions github-actions bot removed the waiting for author If the author doesn't respond, the issue will be auto-closed. Otherwise the label will be removed. label Sep 25, 2024
@opusforlife2 opusforlife2 added the waiting for author If the author doesn't respond, the issue will be auto-closed. Otherwise the label will be removed. label Sep 25, 2024
@kubo6472
Copy link
Author

kubo6472 commented Oct 6, 2024

I got this error and the progress was lost on this video: https://www.youtube.com/watch?v=7bU6IEUaTCg

{"user_action":"play stream","request":"Player error[type=ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT] occurred while playing https://www.youtube.com/watch?v=7bU6IEUaTCg","content_language":"en-US","content_country":"US","app_language":"en_US_#u-fw-mon-mu-celsius","service":"YouTube","package":"org.polymorphicshade.tubular","version":"0.27.2","os":"Linux Android 14 - 34","time":"2024-10-06 09:09","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:103)\n\tat android.os.Looper.loopOnce(Looper.java:232)\n\tat android.os.Looper.loop(Looper.java:317)\n\tat android.os.HandlerThread.run(HandlerThread.java:85)\nCaused by: com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: java.net.SocketTimeoutException: failed to connect to rr1---sn-vufvnav853p5n3-cune.googlevideo.com/37.152.97.140 (port 443) from /10.10.172.168 (port 45874) after 8000ms\n\tat org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:389)\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)\nCaused by: java.net.SocketTimeoutException: failed to connect to rr1---sn-vufvnav853p5n3-cune.googlevideo.com/37.152.97.140 (port 443) from /10.10.172.168 (port 45874) after 8000ms\n\tat libcore.io.IoBridge.connectErrno(IoBridge.java:235)\n\tat libcore.io.IoBridge.connect(IoBridge.java:179)\n\tat java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:142)\n\tat java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:390)\n\tat java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)\n\tat java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)\n\tat java.net.SocksSocketImpl.connect(SocksSocketImpl.java:436)\n\tat java.net.Socket.connect(Socket.java:646)\n\tat com.android.okhttp.internal.Platform.connectSocket(Platform.java:182)\n\tat com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:145)\n\tat com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:116)\n\tat com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:186)\n\tat com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:128)\n\tat com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:97)\n\tat com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:289)\n\tat com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:232)\n\tat com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:465)\n\tat com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:131)\n\tat com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:90)\n\tat com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:30)\n\tat org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.makeConnection(YoutubeHttpDataSource.java:704)\n\tat org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.makeConnection(YoutubeHttpDataSource.java:548)\n\tat org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:383)\n\t... 10 more\n"],"user_comment":""}

Don't know if this is the same error, but it was in the notification:

Exception

  • User Action: play stream
  • Request: Player error[type=ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT] occurred while playing https://www.youtube.com/watch?v=7bU6IEUaTCg
  • Content Country: US
  • Content Language: en-US
  • App Language: en_US_#u-fw-mon-mu-celsius
  • Service: YouTube
  • Version: 0.27.2
  • OS: Linux Android 14 - 34
Crash log

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.loopOnce(Looper.java:232)
	at android.os.Looper.loop(Looper.java:317)
	at android.os.HandlerThread.run(HandlerThread.java:85)
Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: java.net.SocketTimeoutException: failed to connect to rr1---sn-vufvnav853p5n3-cune.googlevideo.com/37.152.97.140 (port 443) from /10.10.172.168 (port 41698) after 8000ms
	at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:389)
	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)
Caused by: java.net.SocketTimeoutException: failed to connect to rr1---sn-vufvnav853p5n3-cune.googlevideo.com/37.152.97.140 (port 443) from /10.10.172.168 (port 41698) after 8000ms
	at libcore.io.IoBridge.connectErrno(IoBridge.java:235)
	at libcore.io.IoBridge.connect(IoBridge.java:179)
	at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:142)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:390)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:436)
	at java.net.Socket.connect(Socket.java:646)
	at com.android.okhttp.internal.Platform.connectSocket(Platform.java:182)
	at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:145)
	at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:116)
	at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:186)
	at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:128)
	at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:97)
	at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:289)
	at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:232)
	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:465)
	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:131)
	at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:90)
	at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:30)
	at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.makeConnection(YoutubeHttpDataSource.java:704)
	at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.makeConnection(YoutubeHttpDataSource.java:548)
	at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:383)
	... 10 more


Another beautiful error

Exception

  • User Action: ui error
  • Request: ACRA report
  • Content Country: US
  • Content Language: en-US
  • App Language: en_US_#u-fw-mon-mu-celsius
  • Service: none
  • Version: 0.27.2
  • OS: Linux Android 14 - 34
Crash log

java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
	at androidx.fragment.app.FragmentManager.checkStateLoss(FragmentManager.java:1632)
	at androidx.fragment.app.FragmentManager.enqueueAction(FragmentManager.java:1672)
	at androidx.fragment.app.BackStackRecord.commitInternal(BackStackRecord.java:341)
	at androidx.fragment.app.BackStackRecord.commit(BackStackRecord.java:306)
	at androidx.fragment.app.DialogFragment.show(DialogFragment.java:507)
	at org.schabi.newpipe.info_list.dialog.StreamDialogDefaultEntry.lambda$static$16(StreamDialogDefaultEntry.java:119)
	at org.schabi.newpipe.info_list.dialog.StreamDialogDefaultEntry.$r8$lambda$E-BGm7Z2EfgISHn-yX4TCRIhxak(StreamDialogDefaultEntry.java:0)
	at org.schabi.newpipe.info_list.dialog.StreamDialogDefaultEntry$$ExternalSyntheticLambda20.accept(R8$$SyntheticClass:0)
	at org.schabi.newpipe.util.SparseItemUtil.lambda$fetchStreamInfoAndSaveToDatabase$4(SparseItemUtil.java:121)
	at org.schabi.newpipe.util.SparseItemUtil.$r8$lambda$cfmnXoy0qdCzt8EeO-smvalxWsM(SparseItemUtil.java:0)
	at org.schabi.newpipe.util.SparseItemUtil$$ExternalSyntheticLambda0.accept(R8$$SyntheticClass:0)
	at io.reactivex.rxjava3.internal.observers.ConsumerSingleObserver.onSuccess(ConsumerSingleObserver.java:62)
	at io.reactivex.rxjava3.internal.operators.single.SingleObserveOn$ObserveOnSingleObserver.run(SingleObserveOn.java:81)
	at io.reactivex.rxjava3.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:123)
	at android.os.Handler.handleCallback(Handler.java:959)
	at android.os.Handler.dispatchMessage(Handler.java:100)
	at android.os.Looper.loopOnce(Looper.java:232)
	at android.os.Looper.loop(Looper.java:317)
	at android.app.ActivityThread.main(ActivityThread.java:8592)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:583)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:878)


@github-actions github-actions bot removed the waiting for author If the author doesn't respond, the issue will be auto-closed. Otherwise the label will be removed. label Oct 6, 2024
@opusforlife2
Copy link
Collaborator

Ah, yes. The standard 8-second timeout. This needs to be increased by a lot.

@opusforlife2 opusforlife2 added player Issues related to any player (main, popup and background) and removed needs triage Issue is not yet ready for PR authors to take up labels Oct 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue is related to a bug player Issues related to any player (main, popup and background)
Projects
None yet
Development

No branches or pull requests

2 participants