Crash log
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:669)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:619)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
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:764)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:664)
... 30 more
It doesn't look like what you described.
Anyway, could you install a debug version (RC of v0.19.4 should work I think), connect your phone to your PC through USB, open Chrome, go to chrome://inspect, open NewPipe on your phone, select that NewPipe instance in Chrome, go to the Network tab, try to reproduce the issue, and once you've successfully reproduced the issue, send me the HAR?
Certainly,
Mind you link 🔗 to the download location?
Or a set of build instructions for the debug version (w/ gradle).
Much obliged.
https://github.com/TeamNewPipe/NewPipe/files/4702060/app-debug_RC2.zip
right, thanks.
this bug is hard to reproduce.. I only came across it a handful of times.
This happend to me after searching for something and viewing first ~10 results.
Just posting another log:
https://haste.tchncs.de/ufabucitux.rb
@allendema: Again, if you could still reproduce this issue, could you install a debug version (like this one), connect your phone to your PC through USB, open Chrome, go to chrome://inspect, open that debug version of NewPipe on your phone, select that NewPipe instance in Chrome, go to the Network tab, try to reproduce the issue, and once you've successfully reproduced the issue, right-click in Chrome, select "Save as HAR with Content" and send me that HAR? Then I might be able to fix this issue. The crash report is kind of useless for fixing this kind of issues.
Edit: https://github.com/TeamNewPipe/NewPipeExtractor/blob/dev/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java#L661 is the relevant code and youtube-dl's implementation is at https://github.com/ytdl-org/youtube-dl/blob/master/youtube_dl/extractor/youtube.py#L2070. It seems like youtube-dl not only falls back to the embedded player when it's age restricted, but also when the normal player somehow doesn't work. I will probably implement that tomorrow, which will hopefully fix the issue.
Now that I'm thinking about it...
...isn't the 'encryption code' is that little bit of text embedded in the HTML (the one that dentex.github.io keeps patching and calls the "encrypted signature").
You might be able to make the extractor more stable, if you'll force few arguments such as
?disable_polymer=1 to the end of every URL (videos too) for favouring the more static version of YouTube (embedded IFRAMEs can use that too), which is easier to extract things out of (and maybe also &gl=GB&hl=en-GB to force specific language and country, in cases where the content does not matter too much, such just for grabbing the data for the MP4/WEBM av/a/v streams URLs).
?disable_polymer=1
No, first old layout is disabled for few days and secondly using their JSON is more stable than scrapping the HTML page
&gl=GB&hl=en-GB
No, it has no effect, what has effect is the HTTP header Accept-Language, and it's always en-GB for NewPipe. And actually it matters, because the video titles are dependent from the Accept-Language.
thanks, that's good to know.
I am getting the same exception.
{
"user_action": "requested stream",{"user_action":"requested stream","request":"https://www.youtube.com/watch?v=ted2pAnAnQc","content_language":"en_US","service":"YouTube","package":"org.schabi.newpipe","version":"0.19.5","os":"Linux Android 10 - 29","time":"2020-06-22 06:04","exceptions":["org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.\n\tat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:669)\n\tat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:619)\n\tat org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)\n\tat org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)\n\tat org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)\n\tat org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)\n\tat org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)\n\tat io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)\n\tat io.reactivex.Single.subscribe(Single.java:3666)\n\tat io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)\n\tat io.reactivex.Single.subscribe(Single.java:3666)\n\tat io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)\n\tat io.reactivex.Maybe.subscribe(Maybe.java:4290)\n\tat io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)\n\tat io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)\n\tat io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)\n\tat io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)\n\tat io.reactivex.Flowable.subscribe(Flowable.java:14935)\n\tat io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)\n\tat io.reactivex.Maybe.subscribe(Maybe.java:4290)\n\tat io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)\n\tat io.reactivex.Single.subscribe(Single.java:3666)\n\tat io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)\n\tat io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)\n\tat io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)\n\tat io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)\n\tat java.util.concurrent.FutureTask.run(FutureTask.java:266)\n\tat java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)\n\tat java.lang.Thread.run(Thread.java:919)\nCaused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference\n\tat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:664)\n\t... 30 more\n"],"user_comment":""}
"request": "https://www.youtube.com/watch?v=ted2pAnAnQc",
"content_language": "en_US",
"service": "YouTube",
"package": "org.schabi.newpipe",
"version": "0.19.5",
"os": "Linux Android 10 - 29",
"time": "2020-06-22 06:04",
"exceptions": [
"org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.\n at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:669)\n at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:619)\n at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)\n at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)\n at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)\n at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)\n at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)\n at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)\n at io.reactivex.Single.subscribe(Single.java:3666)\n at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)\n at io.reactivex.Single.subscribe(Single.java:3666)\n at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)\n at io.reactivex.Maybe.subscribe(Maybe.java:4290)\n at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)\n at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)\n at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)\n at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)\n at io.reactivex.Flowable.subscribe(Flowable.java:14935)\n at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)\n at io.reactivex.Maybe.subscribe(Maybe.java:4290)\n at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)\n at io.reactivex.Single.subscribe(Single.java:3666)\n at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)\n at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)\n at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)\n at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)\n at java.util.concurrent.FutureTask.run(FutureTask.java:266)\n at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)\n at java.lang.Thread.run(Thread.java:919)\nCaused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference\n at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:664)\n ... 30 more\n"
],
"user_comment": ""
}
&gl=GB&hl=en-GB
I also tried setting my content to US specific in the settings, but to no avail
?disable_polymer=1
No success.
{
"user_action": "requested stream",
"request": "https://www.youtube.com/watch?v=yhJMoKi_lR0&disable_polymer=1",
"content_language": "en_US",
"service": "YouTube",
"package": "org.schabi.newpipe",
"version": "0.19.5",
"os": "Linux Android 10 - 29",
"time": "2020-06-22 06:15",
"exceptions": [
"org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.\n at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:669)\n at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:619)\n at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)\n at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)\n at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)\n at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)\n at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)\n at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)\n at io.reactivex.Single.subscribe(Single.java:3666)\n at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)\n at io.reactivex.Single.subscribe(Single.java:3666)\n at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)\n at io.reactivex.Maybe.subscribe(Maybe.java:4290)\n at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)\n at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)\n at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)\n at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)\n at io.reactivex.Flowable.subscribe(Flowable.java:14935)\n at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)\n at io.reactivex.Maybe.subscribe(Maybe.java:4290)\n at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)\n at io.reactivex.Single.subscribe(Single.java:3666)\n at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)\n at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)\n at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)\n at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)\n at java.util.concurrent.FutureTask.run(FutureTask.java:266)\n at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)\n at java.lang.Thread.run(Thread.java:919)\nCaused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference\n at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:664)\n ... 30 more\n"
],
"user_comment": ""
}
@roder, just to be clear, in https://github.com/TeamNewPipe/NewPipe/issues/3753#issuecomment-646019588 I've meant those arguments for scraping (which we don't need since we're favouring JSON-parsing instead of HTML). There isn't much sense using those otherwise anyway since they do not effect the actual stream-data just the architecture of the YouTube HTML page.
Could you try this APK? It should (hopefully) fix it.
i get similar issue using newpipe and here're the logs :
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:706)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:656)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(lambda)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:272)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:701)
... 30 more
after installing the apk provided by @wb9688 i imported my old settings and i get same results:
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:714)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:664)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(lambda)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:272)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:709)
... 30 more
@panacist: If you could still reproduce it, could you install a debug version (like my APK above), connect your phone to your PC through USB, open Chrome, go to chrome://inspect, open that debug version of NewPipe on your phone, select that NewPipe instance in Chrome, go to the Network tab, try to reproduce the issue, and once you've successfully reproduced the issue, right-click in Chrome, select "Save as HAR with Content" and send me that HAR? Then I might be able to fix this issue.
@wb9688 i don't have chrome installed on ma pc is it possible to do this using firefox?
@panacist: No, that's not possible. Btw does this always happen for all videos? Or does this only happen for certain videos? Or just not always?
@wb9688 every video i believe also sometimes i get no comments this happen everytime i import my database
i wish i can help further but ughh no android dev skills !
(i'll try to import my database using other phones and see if i can reproduce the issue)
@wb9688 i can reproduce using my other phone (android 6) !
@panacist: If you really don't want to install Chrome (though then I can't guarantee that it contains the information needed), could you open an incognito window in Firefox, go to www.youtube.com, press F12, go to the network tab, look for the video that doesn't work, open it, pause it as soon as possible, right-click in the network thingy, choose to save everything as a HAR and upload that HAR here?
@wb9688 i will provide ya the har file as soon as i can! i am just unsure about it being a network error + it happens to all videos not just a specific one and most importantly everything works fine before importing the database
and most importantly everything works fine before importing the database
@panacist: Hmm… that indeed makes it different and then I don't need a HAR. Does it happen when you import DB without settings (after clearing data of course)?
@wb9688 oh yeah it does happen only when importing both data and settings!!
here is a recording showing the problem (sorry for the quality):
@panacist: In that case, could you please unzip your NewPipeData*.zip and upload just newpipe.settings here?
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:706)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:656)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
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)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:701)
... 30 more
I just want to note that in general, this error can happen anytime if there is too much of a delay in the network in fetching the video details. If you reload the page it's usually fine.
Sometimes this happens, but on the second try the app works
@xibr Could you install a debug apk (for example the latest unified ui one), connect your phone to your PC through USB, open Chrome, go to chrome://inspect, open that debug version of NewPipe on your phone, select that NewPipe instance in Chrome, go to the Network tab, try to reproduce the issue, and once you've successfully reproduced the issue, right-click in Chrome, select "Save as HAR with Content" and send me that HAR?
Sorry for the repeated comment
I will, I installed the latest unified ui one and tried many links so far but never encountered the issue.
I will try again and let you know if any update happens about this.
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:705)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:655)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
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)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:700)
... 30 more
@Stypox do you mean this?
https://user-images.githubusercontent.com/20098154/92298988-ab1da600-ef5f-11ea-833f-2248e46de5cf.png
HAR
file.zip
I think so, though I have never used what I suggested you to use, as I just copied @wb9688's comments. But by looking into the file it seems to be the correct one. Thank you very much, this can really help us :-D
@wb9688 looks like we finally obtained a HAR :-D
And it took 3 months. This HAR is as rare as a Shiny Pokemon.
Well, I really hope this helps to solve the issue.
I think it might be an issue with my settings or Subscriptions. after import the data to the debug version i cannot playback any video. Before it was working fine, so i want to try it again with fresh and clean settings.
Update:
I delete all app data and import my subscriptions but did not load the settings when it ask for. After these steps all videos play fine and working. I set all Application settings again to my defaults and it is working too.
I dont know what cause the issue but all is working now, so maybe for some other users it can be helpful.
It happens to me without importing anything.
@xibr for me its starting the same way, without any update or change any setting at all. So i do not know what happens here.
So I export the subscriptions and settings an reinstall newpipe and import the only the subscriptions after cleaning the appdata within the Android App settings.
give it an try.
playing live stream, turning to background player, turning to main player, switching to another libe stream video (you can use one of the lofi channels for testing it always have live streams).
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:706)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:656)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(lambda)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:701)
... 31 more
here is another one, with v0.20.0RC4
https://github.com/TeamNewPipe/NewPipe/issues/4332
browsing through a channel videos.
nothing in particular important.
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:705)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:655)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(lambda)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:700)
... 31 more
This issue is related to NewPipeExtractor
@xibr,
I'm not sure.
Regardless, if it isn't 'just a hunch', please elaborate with something more useful than pointing out the repository's main project page at https://github.com/TeamNewPipe/NewPipeExtractor, a blob even.
Anyway dup. it into the NPExtractor wouldn't give anything but confusion, but feel free to open a new issue there and reference it into here, or anything similar.
org.schabi.newpipe.extractor.exceptions.ParsingException: Could not load decryption code for the Youtube service.
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:705)
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:655)
at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:56)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:68)
at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)
at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:116)
at org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)
at io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)
at io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)
at io.reactivex.Flowable.subscribe(Flowable.java:14935)
at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
at io.reactivex.Single.subscribe(Single.java:3666)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
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)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.getPlayerUrl(YoutubeStreamExtractor.java:700)
... 30 more
We don't need more and more crash reports. We already have a HAR posted above. It will either help fix the issue, or not, in which case we could try something else.
@eladkarako Not just a hunch, however I have provided a HAR file that might help understand the cause of the issue.
We wait for @wb9688 to look at the HAR file.
I can test the Extractor but i don't know what thing the developers need to solve the issue or what they need to understand the problem.
Please test the apk provided in https://github.com/TeamNewPipe/NewPipeExtractor/pull/406#issuecomment-703729182
It should fix this issue
Most helpful comment
And it took 3 months. This HAR is as rare as a Shiny Pokemon.