Version: 0.19.7(Latest version)
Steps to reproduce the bug:
1) Enter NewPipe.
2) Tap on any video.
Expected Behaviour: Video loads up and plays well.
Actual behaviour: Leads to a Guru Meditation error
Screenshots:

Logs:
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:764)
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 notice this same kind of bug always crops up every few months, what causes it? Seeing the same problem too.
Same issue for me too.
Duplicate of #3951
Happen again within 2 hours
Same issue for me too now
Someone has already made an issue about this 2 hours ago, to which a dev responded that they're working on it. I'd suggest thoroughly looking through recent issues before posting.
You should really follow the Reddit sub for NewPipe, where the developers state that they are aware of this and are working on a fix. Every now and then YouTube changes the way it does things, with the express intent of deterring developers of third-party apps like NewPipe. And then the NewPipe people issue a new release to adapt to the encryption and new headers, if they changed too. If you know how NewPipe works, you will understand why these alterations are necessary.
Most helpful comment
You should really follow the Reddit sub for NewPipe, where the developers state that they are aware of this and are working on a fix. Every now and then YouTube changes the way it does things, with the express intent of deterring developers of third-party apps like NewPipe. And then the NewPipe people issue a new release to adapt to the encryption and new headers, if they changed too. If you know how NewPipe works, you will understand why these alterations are necessary.