Newpipe: [STOP CREATING DUPLICATES] Cannot decrypt video URL error on every video

Created on 27 Jul 2020  路  46Comments  路  Source: TeamNewPipe/NewPipe

https://github.com/ytdl-org/youtube-dl/issues/26135

Only comment new info in this thread

Exception

Crash log

org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor$DecryptException: Could not parse decrypt function 
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:786)
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:670)
    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: org.schabi.newpipe.extractor.utils.Parser$RegexException: failed to find pattern ";([A-Za-z0-9_\$]{2})\...\( inside of var iea=function(a){a=a.split("");var b=[-1215677809,null,-1744521562,833462946,694270393,function(c,d){d=(d%c.length+c.length)%c.length;c.splice(d,1)};"
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:74)
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:61)
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup1(Parser.java:52)
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:773)
    ... 30 more



ASAP youtube

Most helpful comment

A new version will be released in the morning

All 46 comments

Can confirm

I can confirm, I was using it about 3.5 hours ago and I could watch videos fine. Now every video is throwing an error similar to the one described above, even when I try to load the same videos I was watching earlier.

Long-tapping a video in one of the home pages or in a search to play the video was a popup or in the background does not go to a crash screen but it will still fail to play.

@jdramirez165 Can you confirm this on v0.19.7?

Long-tapping a video in one of the home pages or in a search to play the video was a popup or in the background does not go to a crash screen but it will still fail to play.

@floral-qua-floral: Could you create a separate issue for that? It should imho show a crash (or a toast to open the crash).

@snappyapple632: Nothing has changed regarding this in v0.19.7.

I'm using 0.19.7 myself and experiencing the issue as well. It was occurring both before & after I updated

Same as @floral-qua-floral here.

Yet i have no clue on what is causing this huge problem.

YouTube borked Newpipe again. All users are affected @jdramirez165

Can confirm this too. Maybe YouTube has changed something to disable apps like Newpipe?

@floral-qua-floral: Could you create a separate issue for that? It should imho show a crash (or a toast to open the crash).

@wb9688 yes, it does toast 'could not play stream'

YouTube 馃槇

馃槀

Could you guys please not comment anything (unless it's related to solving it, e.g. linking a PR that fixes it for youtube-dl)?

@PeaceRebel: Yes, but not with a button to go to the crash report.

Can confirm, youtube has definitely changed something as Invidious no longer works too.

Invidious working here

I feel really sorry for newPipe members... they will have so much people reporting this problem... all at the same time 馃槰馃榿

youtube-dl working also (tested on https://www.youtube.com/watch?v=gufK2-FUuF4)

Youtube crashes Newpipe to me again

Invidious working here

You're right, my browser was causing issues

Exception

  • __User Action:__ requested stream
  • __Request:__ https://www.youtube.com/watch?v=4SnYPBAGaiM
  • __Content Country:__ GB
  • __Content Language:__ en
  • __App Language:__ en_GB
  • __Service:__ YouTube
  • __Version:__ 0.19.7
  • __OS:__ Linux Android 10 - 29
    Crash log

org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor$DecryptException: Could not parse decrypt function 
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:786)
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:670)
    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: org.schabi.newpipe.extractor.utils.Parser$RegexException: failed to find pattern ";([A-Za-z0-9_\$]{2})\...\( inside of var iea=function(a){a=a.split("");var b=[-1215677809,null,-1744521562,833462946,694270393,function(c,d){d=(d%c.length+c.length)%c.length;c.splice(d,1)};"
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:74)
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:61)
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup1(Parser.java:52)
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:773)
    ... 30 more



I don't know what's happened here.

fight the power, viv la revolution, fuk google. Take your time, we're here, we'll wait. newpipeftw

Related YouTube-dl issue: ytdl-org/youtube-dl#26135

I'm having exactly the same issue with identical error logs. My PC video downloading extensions also usually encounter problems after YT updates, but rn they are still working fine.

yt errors.zip
The japanese video was tested by yt-dl issue author as not working, the other one was tested by me as working, when attempting to download through youtube-dl. NewPipe is still f-d for every video. Added some screenshots from HTML code that I did not remember seeing before.

So this issue is partially affecting yt-dl, fully newpipe and afaik not invidious at all (the beforementioned video is working fine on official invidious instance)

https://github.com/ytdl-org/youtube-dl/issues/4434 seems something similar happened on 11/13/2014 after some youtube player changes

Not relevant with current issue:

A little idea for when this issue happens randomly: can we somehow dump the relevant page/request as a HAR without using a debug apk? This can make it easier to investigate when it doesn't happen all the time. (I've had this issue multiple times before the youtube update)

Can confirm.

Device: Galaxy S10
Version: 0.19.7

Referencing my own log (which is identical to the logs above) and ytdl-org/youtube-dl#26135 it seems the issue is related to a change made by the YouTube team to the decryption function of the YouTube JavaScript player.

same here 0.19.7

Welp this line needs to be replaced in our extractor as well.

Here in germany its middle of the night, and most contributors are from europe, so one of our american friends would need to take this PR into his hands :) We can push a release tomorrow morning. ~7h

@theScrabi Fixed locally. Give me 5 minutes

Same issue, updated thinking i wad in a deprecatrd version, but nope, just youtube being trash

A new version will be released in the morning

Issue confirmed on a Xiaomi 8 (MIUI 11) working fine until ~4 hours ago.
Same crash report, tested on 0.19.5, 0.19.6 and 0.19.7

Video from issue, trending "NBA YOungBoy - ALLIN

New to project, if [quote] or [code] needed for crash report, let me know, please.

{"user_action":"requested stream","request":"https://www.youtube.com/watch?v=6MCSr65d9Xc","content_language":"en-US","content_country":"US","app_language":"en_US","service":"YouTube","package":"org.schabi.newpipe","version":"0.19.7","os":"Linux Xiaomi/dipper/dipper:10/QKQ1.190828.002/V11.0.4.0.QEAMIXM:user/release-keys 10 - 29","time":"2020-07-28 02:50","exceptions":["org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor$DecryptException: Could not parse decrypt function \n\tat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:786)\n\tat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:670)\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: org.schabi.newpipe.extractor.utils.Parser$RegexException: failed to find pattern \";([A-Za-z0-9_\$]{2})\...\( inside of var iea=function(a){a=a.split(\"\");var b=[-1215677809,null,-1744521562,833462946,694270393,function(c,d){d=(d%c.length+c.length)%c.length;c.splice(d,1)};\"\n\tat org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:74)\n\tat org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:61)\n\tat org.schabi.newpipe.extractor.utils.Parser.matchGroup1(Parser.java:52)\n\tat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:773)\n\t... 30 more\n"],"user_comment":""}

Same as the others users... i'm on galaxy s9+. It crash till the update (6.00 am the 28.07.20)

Exception

  • __User Action:__ requested stream
  • __Request:__ https://www.youtube.com/watch?v=oEutbPu2YwI
  • __Content Country:__ FR
  • __Content Language:__ fr
  • __App Language:__ fr_FR
  • __Service:__ YouTube
  • __Version:__ 0.19.7
  • __OS:__ Linux Android 10 - 29
    Crash log

org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor$DecryptException: Could not parse decrypt function 
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:786)
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:670)
    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: org.schabi.newpipe.extractor.utils.Parser$RegexException: failed to find pattern ";([A-Za-z0-9_\$]{2})\...\( inside of var iea=function(a){a=a.split("");var b=[-1215677809,null,-1744521562,833462946,694270393,function(c,d){d=(d%c.length+c.length)%c.length;c.splice(d,1)};"
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:74)
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:61)
    at org.schabi.newpipe.extractor.utils.Parser.matchGroup1(Parser.java:52)
    at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:773)
    ... 30 more



Thanks for your help

The issue has been fixed and a release is underway, we don't need anymore crash logs.

why not add an option to use the invidious API? like straw-viewer (https://github.com/trizen/straw-viewer)

The issue has been fixed and a release is underway, we don't need anymore crash logs.

When is the fixes release coming up
Also will it be pushed to FDroid

@qorg11: We're working on that, see TeamNewPipe/NewPipeExtractor#352

Do we have any stable version released?

Started few days ago for some random video,
it's not just 10 hrs ago.

Issues still persist

A new version will be released soon. STOP CREATING NEW ISSUES. Please be patient

For now people could use the following debug APK: https://wb9688.stackstorage.com/s/eBfTmrxPUsGTNGAx.

Proper v0.19.8 should (hopefully) be released later today.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Aevann picture Aevann  路  3Comments

mouarfff picture mouarfff  路  3Comments

PanderMusubi picture PanderMusubi  路  3Comments

B0pol picture B0pol  路  3Comments

Wang-GY picture Wang-GY  路  3Comments