Newpipe: org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor$DecryptException: Could not parse decrypt function

Created on 24 Jan 2020  路  7Comments  路  Source: TeamNewPipe/NewPipe

org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor$DecryptException: Could not parse decrypt function

{
"user_action": "requested stream",
"request": "https://www.youtube.com/watch?v=4C8CptPlllQ",
"content_language": "GB",
"service": "YouTube",
"package": "org.schabi.newpipe.debug",
"version": "0.18.0",
"os": "Linux Android 10 - 29",
"time": "2020-01-24 14:08",
"exceptions": [
"org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor$DecryptException: Could not parse decrypt function ntat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:849)ntat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:716)ntat org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:54)ntat org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:64)ntat org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:60)ntat org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3(ExtractorHelper.java:115)ntat org.schabi.newpipe.util.-$$Lambda$ExtractorHelper$5fJcha6Sq5APJBLdG6osaJby-mc.call(Unknown Source:4)ntat io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)ntat io.reactivex.Single.subscribe(Single.java:3438)ntat io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)ntat io.reactivex.Single.subscribe(Single.java:3438)ntat io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)ntat io.reactivex.Maybe.subscribe(Maybe.java:4154)ntat io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.drain(MaybeConcatArray.java:153)ntat io.reactivex.internal.operators.maybe.MaybeConcatArray$ConcatMaybeObserver.request(MaybeConcatArray.java:78)ntat io.reactivex.internal.operators.flowable.FlowableElementAtMaybe$ElementAtSubscriber.onSubscribe(FlowableElementAtMaybe.java:66)ntat io.reactivex.internal.operators.maybe.MaybeConcatArray.subscribeActual(MaybeConcatArray.java:42)ntat io.reactivex.Flowable.subscribe(Flowable.java:14479)ntat io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)ntat io.reactivex.Maybe.subscribe(Maybe.java:4154)ntat io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)ntat io.reactivex.Single.subscribe(Single.java:3438)ntat io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)ntat io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)ntat io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)ntat io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)ntat java.util.concurrent.FutureTask.run(FutureTask.java:266)ntat java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)ntat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)ntat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)ntat 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 lea=function(a){a=a.split("");var b=[function(c,d){d=(d%c.length+c.length)%c.length;c.splice(-d).reverse().forEach(function(e){return c.unshift(e)};"ntat org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:73)ntat org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:61)ntat org.schabi.newpipe.extractor.utils.Parser.matchGroup1(Parser.java:52)ntat org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:836)nt... 30 moren"
],
"user_comment": ""
}

All 7 comments

Same error here. On the latest version 0.18.1. Thumbnails and comments appear, this error is when trying to play a video.

Same here.

Update to new version. See the Readme's "Update" section for instructions.

duplicate of #2981
You must to update the app

Can confirm. I updated manually by downloading the APK. However, this required me to uninstall the app and reinstall it, losing my configuration in the process. Any idea when fdroid will have the new APK?

Can confirm. I updated manually by downloading the APK. However, this required me to uninstall the app and reinstall it, losing my configuration in the process. Any idea when fdroid will have the new APK?

Go in settings, content, export database
Uninstall your app, download and install v0.18.2 from github, and go in content settings, import database, pick the file you just exported

For your information, 0.18.1 took 4 days to be available in F-Droid

From memory, there were discussions a year or two ago to make it so that the regexes used for extracting stream information are user-modifiable (or provided over the network), since most of the YouTube breakages are related to the regex no longer matching the newest version of YouTube's JavaScript. Have those discussions stalled? To be fair, #1981 appears to be a nicer solution to this problem but it seems like having the regular expressions be user-modifiable (with a "reset to defaults" button) would allow for people to hot-fix their NewPipe installations while we wait for the fixed version to be available in F-Droid.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

hassanseoul123 picture hassanseoul123  路  3Comments

B0pol picture B0pol  路  3Comments

danialbehzadi picture danialbehzadi  路  3Comments

cool-student picture cool-student  路  3Comments

Hunter9888x picture Hunter9888x  路  3Comments