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

Player crashes after 3 minutes while screen off (fixed through Samsung Device Care) #8664

Closed
5 tasks done
1Olegna opened this issue Jul 20, 2022 · 21 comments
Closed
5 tasks done
Labels
device/software specific Issues that only happen on some devices or with some specific hardware/software question Not really an issue, but more of a question about how something works

Comments

@1Olegna
Copy link

1Olegna commented Jul 20, 2022

Checklist

  • I am able to reproduce the bug with the latest version.
  • I made sure that there are no existing issues - open or closed - which I could contribute my information to.
  • 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.23.1

Steps to reproduce the bug

  1. Play video/audio with screen off.
  2. After 3 minutes the video crashes forcing me to unlock screen in order for video/music to start playing again.

Expected behavior

Video continues to play while screen is off.

Actual behavior

Video crashes after 3 minutes while screen if off. While screen is on there's no issue.

Screenshots/Screen recordings

No response

Logs

Exception

  • User Action: play stream
  • Request: Player error[type=ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT] occurred while playing https://www.youtube.com/watch?v=d5nJqUlvzmE
  • Content Country: US
  • Content Language: en-US
  • App Language: en_US
  • Service: YouTube
  • Version: 0.23.1
  • OS: Linux Android 12 - 31
Crash log

com.google.android.exoplayer2.ExoPlaybackException: Source error
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:641)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:613)
	at android.os.Handler.dispatchMessage(Handler.java:102)
	at android.os.Looper.loopOnce(Looper.java:226)
	at android.os.Looper.loop(Looper.java:313)
	at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: java.net.SocketTimeoutException: failed to connect to rr1---sn-vgqsknse.googlevideo.com/2607:f8b0:4009:d::6 (port 443) from /fc00:bbbb:bbbb:bb01::2c:4026 (port 48808) after 8000ms
	at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:389)
	at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:258)
	at com.google.android.exoplayer2.upstream.TeeDataSource.open(TeeDataSource.java:52)
	at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:786)
	at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:599)
	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:920)
Caused by: java.net.SocketTimeoutException: failed to connect to rr1---sn-vgqsknse.googlevideo.com/2607:f8b0:4009:d::6 (port 443) from /fc00:bbbb:bbbb:bb01::2c:4026 (port 48808) after 8000ms
	at libcore.io.IoBridge.connectErrno(IoBridge.java:236)
	at libcore.io.IoBridge.connect(IoBridge.java:180)
	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:621)
	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


Affected Android/Custom ROM version

Android 12/4.1 One UI

Affected device model

Samsung S10 plus

Additional information

Works fine on galaxy s9 plus, android 10/ 2.5 One UI

@1Olegna 1Olegna added the bug Issue is related to a bug label Jul 20, 2022
@SavageTheUnicorn
Copy link

Are battery optimizations disabled for the Newpipe app? If this doesn't help then it's a problem with the application itself.

@lawson85
Copy link

Follow steps at dontkillmyapp.com

@1Olegna
Copy link
Author

1Olegna commented Jul 22, 2022

I replied back via email, but I don't see the replies. Changed settings and rebooted phone. Will follow up later today. Appreciate the help

@1Olegna
Copy link
Author

1Olegna commented Jul 23, 2022

Same issue after changes were made...

@opusforlife2 opusforlife2 added the player Issues related to any player (main, popup and background) label Jul 25, 2022
@yalexwander
Copy link

Confirming the bug. But not sure if it was the same as in start post. I had stable crash after few minutes after video playback. Independently on screen turned on or off.

Soultion worked for me on android 4.4 : Settings -> Screen -> Sleep time => set to 30 secs(was 5 mins in my case).

@developedby
Copy link

Follow steps at dontkillmyapp.com

According to this website, on Samsung phones, even disabling battery optimizations the phone may still decide to kill the running service.
I tried it on my phone (Samsung Galaxy A53, running OneUI 5.1, Android 13) and even with all battery optimizations disabled I still get a "Network Error" every 2-3 minutes.

I wonder if there's anything NewPipe could do to bypass that

@eldahl
Copy link

eldahl commented Jun 20, 2023

I believe I have the same issue. Happens when switching context away from newpipe. Fails after 1 min exactly.

When pressing play in the background, the app seems to be suspended right away and is reloaded upon reopening.

Device is a Samsung S10e.

Crash report from when switching context, after 1 min:

Exception

  • User Action: play stream
  • Request: Player error[type=ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT] occurred while playing https://www.youtube.com/watch?v=Toq9YLl49KM
  • Content Country: DK
  • Content Language: da-DK
  • App Language: da_DK
  • Service: YouTube
  • Version: 0.24.0
  • OS: Linux samsung/beyond0lteeea/beyond0:12/SP1A.210812.016/G970FXXUGHVJ5:user/release-keys 12 - 31
Crash log

com.google.android.exoplayer2.ExoPlaybackException: Source error
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:632)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:604)
	at android.os.Handler.dispatchMessage(Handler.java:102)
	at android.os.Looper.loopOnce(Looper.java:226)
	at android.os.Looper.loop(Looper.java:313)
	at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: java.net.SocketTimeoutException: failed to connect to rr2---sn-uqj-55gz.googlevideo.com/95.166.96.13 (port 443) from /192.168.1.98 (port 58462) after 8000ms
	at org.schabi.newpipe.player.datasource.YoutubeHttpDataSource.open(YoutubeHttpDataSource.java:389)
	at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:258)
	at com.google.android.exoplayer2.upstream.TeeDataSource.open(TeeDataSource.java:52)
	at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:786)
	at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:599)
	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:920)
Caused by: java.net.SocketTimeoutException: failed to connect to rr2---sn-uqj-55gz.googlevideo.com/95.166.96.13 (port 443) from /192.168.1.98 (port 58462) after 8000ms
	at libcore.io.IoBridge.connectErrno(IoBridge.java:236)
	at libcore.io.IoBridge.connect(IoBridge.java:180)
	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:621)
	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


@Stypox Stypox mentioned this issue Aug 2, 2023
6 tasks
@TobiGr TobiGr pinned this issue Aug 3, 2023
@PaperOrb
Copy link

Just adding my voice to the mix since this doesn't seem to be getting any traction. In my particular case on lineageOS 20 with battery set to unrestricted, I get these network error messages with the screen off, but the app doesn't crash like it used to when I was on an older version of android--it just won't let me play any videos, requiring me to restart newpipe altogether. Switching to a different app for the time being since this has wasted close to a dozen hours within the last year for me and still isn't fixed or addressed.

@Timothy099qw
Copy link

I am interested in fixing this issue, is it possible that this issue can be assigned to me? It seems to be related to the background process. This can possibly be achieved by adding a separate task that always refreshes and shows notification in the menu so that user can confirm its background playing or enable a hidden mini player.

@opusforlife2
Copy link
Collaborator

See #5654 (comment)

@foxjaw
Copy link

foxjaw commented Nov 7, 2023

I guess this is OneUI issue. I was on Lineage, Graphene & now on A14 GSI. Background play never stopped on mine.

@senescence01
Copy link

senescence01 commented Nov 20, 2023

Anyone with this issue using Rethink DNS or similiar blocker? I noticed that removing it resolves the NewPipe background play interruption.

I went down this road after trying a few other apps similar to NewPipe and the interruption happend on all of those.

@opusforlife2
Copy link
Collaborator

Maybe a domain is being blocked that needs to be accessed for continuation, or something.

@foxjaw
Copy link

foxjaw commented Nov 21, 2023

No issues using Cloudfare on personal dns filter.
DOT 1.1.1.1 (853) in both vpnless root mode as well as VPN mode.
Even tried different host files from Steven.
Even tested their private DNS one.one.one.one as well as dns.adguard.com in my android network settings. No issues whatsoever.
I think Rethink DNS might be the culprit.

@senescence01
Copy link

senescence01 commented Nov 21, 2023

Might be, but also could be my specific filter combination avaliable from Rethink app. I didn't go too deep, just noticed it worked since uninstalling Rethink (I switched to Mullvad dns).

@invinciblevenom
Copy link

I have been using NewPipe on my Samsung M21 since OneUI 2.5 to OneUI 4.1 Android 12(Same as OP) now. I always use background play but never faced any issues like this. Even without removing Background restrictions and with apps like SaverTuner, the app never gave any network error.

@invinciblevenom
Copy link

I guess this is OneUI issue. I was on Lineage, Graphene & now on A14 GSI. Background play never stopped on mine.

It's definitely not a OneUI issue else more users would have reported same.

@invinciblevenom
Copy link

Try disabling Adaptive battery from Device Care @1Olegna @developedby @eldahl

@ShareASmile
Copy link
Collaborator

Does this issue occur on current latest v0.27.2 ?

@ShareASmile ShareASmile added the waiting for author If the author doesn't respond, the issue will be auto-closed. Otherwise the label will be removed. label Oct 19, 2024
@eldahl
Copy link

eldahl commented Oct 19, 2024

Yes for me it does.
Fails after 3 mins of background playing with screen off. Here is a fresh crash log:

Exception

  • User Action: play stream
  • Request: Player error[type=ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT] occurred while playing https://www.youtube.com/watch?v=E7EOjkGVmyo
  • Content Country: DK
  • Content Language: da-DK
  • App Language: da_DK
  • Service: YouTube
  • Version: 0.27.2
  • OS: Linux samsung/beyond0lteeea/beyond0:12/SP1A.210812.016/G970FXXUGHVJ5:user/release-keys 12 - 31
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:102)
	at android.os.Looper.loopOnce(Looper.java:226)
	at android.os.Looper.loop(Looper.java:313)
	at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: java.net.SocketTimeoutException: failed to connect to rr1---sn-uqj-caad.googlevideo.com/95.166.96.76 (port 443) from /192.168.1.98 (port 35850) 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:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:920)
Caused by: java.net.SocketTimeoutException: failed to connect to rr1---sn-uqj-caad.googlevideo.com/95.166.96.76 (port 443) from /192.168.1.98 (port 35850) after 8000ms
	at libcore.io.IoBridge.connectErrno(IoBridge.java:236)
	at libcore.io.IoBridge.connect(IoBridge.java:180)
	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:621)
	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


@ShareASmile ShareASmile 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 19, 2024
@eldahl
Copy link

eldahl commented Oct 19, 2024

@invinciblevenom

Try disabling Adaptive battery from Device Care @1Olegna @developedby @eldahl

Adding NewPipe as an app that never sleeps within Device Care fixes the issue.
Definitely an Android battery optimization/app suspend issue.

@opusforlife2 opusforlife2 added device/software specific Issues that only happen on some devices or with some specific hardware/software question Not really an issue, but more of a question about how something works and removed player Issues related to any player (main, popup and background) bug Issue is related to a bug labels Oct 21, 2024
@opusforlife2 opusforlife2 changed the title Player crashes after 3 minutes while screen off Player crashes after 3 minutes while screen off (fixed through Samsung Device Care) Oct 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
device/software specific Issues that only happen on some devices or with some specific hardware/software question Not really an issue, but more of a question about how something works
Projects
None yet
Development

No branches or pull requests

14 participants