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

Could not decrypt video URL signature #1803

Closed
duergrim opened this issue Oct 10, 2018 · 23 comments
Closed

Could not decrypt video URL signature #1803

duergrim opened this issue Oct 10, 2018 · 23 comments
Labels
ASAP Issue needs to be fixed as soon as possible bug Issue is related to a bug

Comments

@duergrim
Copy link

Happened on Oneplus 6, android 9.

@TobiGr
Copy link
Member

TobiGr commented Oct 10, 2018

Which NewPipe version is installed on your device?

@duergrim
Copy link
Author

The latest version

@TobiGr
Copy link
Member

TobiGr commented Oct 10, 2018

In this case, we need some more information. Does this happen on every video? And also please convert your error report and post it below.

@duergrim
Copy link
Author

duergrim commented Oct 10, 2018

Yes, it happens on every video. This is what it says:

Exception

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:725)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.onFetchPage(YoutubeStreamExtractor.java:598)
	at org.schabi.newpipe.extractor.Extractor.fetchPage(Extractor.java:48)
	at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:59)
	at org.schabi.newpipe.extractor.stream.StreamInfo.getInfo(StreamInfo.java:55)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getStreamInfo$3$ExtractorHelper(ExtractorHelper.java:113)
	at org.schabi.newpipe.util.ExtractorHelper$$Lambda$3.call(Unknown Source:4)
	at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
	at io.reactivex.Single.subscribe(Single.java:3310)
	at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.Single.subscribe(Single.java:3310)
	at io.reactivex.internal.operators.maybe.MaybeFromSingle.subscribeActual(MaybeFromSingle.java:41)
	at io.reactivex.Maybe.subscribe(Maybe.java:4073)
	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:14349)
	at io.reactivex.internal.operators.flowable.FlowableElementAtMaybe.subscribeActual(FlowableElementAtMaybe.java:36)
	at io.reactivex.Maybe.subscribe(Maybe.java:4073)
	at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46)
	at io.reactivex.Single.subscribe(Single.java:3310)
	at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
	at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:579)
	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 K=function(a){if(a.data.getUint8(a.dataOffset)){var b=a.data;a=a.dataOffset+4;return 4294967296*b.getUint32(a)+b.getUint32(a+4)};"
	at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:65)
	at org.schabi.newpipe.extractor.utils.Parser.matchGroup1(Parser.java:52)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.loadDecryptionCode(YoutubeStreamExtractor.java:713)
	... 30 more

-------------------

@xim
Copy link

xim commented Oct 10, 2018

Same stack trace, same error conditions, same OS/app version, happening as of recently. Using content language GB.

@zsoltherpai
Copy link

It's the second time in the past month a youtube change - I assume - breaks this..

Have you considered making parsing not hardcoded in the application? Then it could be fixed without an app release.

@Dlnvtl
Copy link

Dlnvtl commented Oct 11, 2018

Exact same here. Most recent version. Some videos do play but most don't. Have reported via email.

Edit: I'm also Danish but phone and app is set to GB

@TobiGr TobiGr added bug Issue is related to a bug ASAP Issue needs to be fixed as soon as possible labels Oct 11, 2018
@theScrabi
Copy link
Member

Maybe something special in denmark?

@infinitytec
Copy link

Same here.
US.

@duergrim
Copy link
Author

Nope, it's not something special in Denmark. As you can see, a lot of people from different countries have this issue

@duergrim
Copy link
Author

When do you think the bug will be fixed?

@fhchl
Copy link

fhchl commented Oct 13, 2018

Same problem here. DK but language set to GB.

@bobdenardd
Copy link

same here, french settings. got the same error with axet/vget, looks like youtube changed the html5 js code, so you'll have to change the guessing of the name of the signature function....

@TomasEkeli
Copy link

Same here, Norwegian. Seems to be all videos for a few days now, I've had to go back to the (horrible) default player.

@duergrim
Copy link
Author

Seems like it's fixed now

@duergrim
Copy link
Author

Thanks for the fix, I'll close the issue now

@stonerl
Copy link

stonerl commented Oct 17, 2018

@duergrim Why did you close this one? Nothing has been fixed, yet.

@duergrim
Copy link
Author

Are you sure? It works for me now, but I'll reopen it

@duergrim duergrim reopened this Oct 18, 2018
@stonerl
Copy link

stonerl commented Oct 19, 2018

The problem is that these errors can't be pinpointed to a specific video or location. Some videos crash the app and hours later can be played without any problems. Maybe I have a different error...

{
   "user_action": "ui error",
   "request": "App crash, UI failure",
   "content_language": "US",
   "service": "none",
   "package": "org.schabi.newpipe",
   "version": "0.14.1",
   "os": "Linux Android 8.1.0 - 27",
   "time": "2018-10-19 11:27",
   "exceptions": [
      "java.lang.NumberFormatException: For input string: \"\"\n\tat java.lang.Integer.parseInt(Integer.java:620)\n\tat java.lang.Integer.parseInt(Integer.java:643)\n\tat org.schabi.newpipe.util.ListHelper.compareVideoStreamResolution(ListHelper.java:396)\n\tat org.schabi.newpipe.util.ListHelper.computeDefaultResolution(ListHelper.java:113)\n\tat org.schabi.newpipe.util.ListHelper.getDefaultResolutionIndex(ListHelper.java:40)\n\tat org.schabi.newpipe.fragments.detail.VideoDetailFragment.setupActionBar(VideoDetailFragment.java:738)\n\tat org.schabi.newpipe.fragments.detail.VideoDetailFragment.handleResult(VideoDetailFragment.java:1204)\n\tat org.schabi.newpipe.fragments.detail.VideoDetailFragment.lambda$startLoading$6$VideoDetailFragment(VideoDetailFragment.java:866)\n\tat org.schabi.newpipe.fragments.detail.VideoDetailFragment$$Lambda$5.accept(Unknown Source:4)\n\tat io.reactivex.internal.observers.ConsumerSingleObserver.onSuccess(ConsumerSingleObserver.java:63)\n\tat io.reactivex.internal.operators.single.SingleObserveOn$ObserveOnSingleObserver.run(SingleObserveOn.java:81)\n\tat io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:109)\n\tat android.os.Handler.handleCallback(Handler.java:790)\n\tat android.os.Handler.dispatchMessage(Handler.java:99)\n\tat android.os.Looper.loop(Looper.java:164)\n\tat android.app.ActivityThread.main(ActivityThread.java:6494)\n\tat java.lang.reflect.Method.invoke(Native Method)\n\tat com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:440)\n\tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)\n"
   ],
   "user_comment": ""
}

@theScrabi
Copy link
Member

Yra thats not the decrypt error

@stonerl
Copy link

stonerl commented Oct 21, 2018

The I'm sincerely sorry.

@TomasEkeli
Copy link

This intermittency is probably because youtube are doing A/B -testing. This may be very hard to reproduce. The error has gone away for me as well.

@infinitytec
Copy link

Gone away for me also.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ASAP Issue needs to be fixed as soon as possible bug Issue is related to a bug
Projects
None yet
Development

No branches or pull requests