@@ -6,6 +6,7 @@ import android.util.Log
66import org.schabi.newpipe.App
77import org.schabi.newpipe.BuildConfig
88import org.schabi.newpipe.extractor.NewPipe
9+ import org.schabi.newpipe.extractor.services.youtube.InnertubeClientRequestInfo
910import org.schabi.newpipe.extractor.services.youtube.PoTokenProvider
1011import org.schabi.newpipe.extractor.services.youtube.PoTokenResult
1112import org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper
@@ -49,8 +50,20 @@ object PoTokenProviderImpl : PoTokenProvider {
4950 // create a new webPoTokenGenerator
5051 webPoTokenGenerator = PoTokenWebView
5152 .newPoTokenGenerator(App .getApp()).blockingGet()
52- webPoTokenVisitorData = YoutubeParsingHelper
53- .randomVisitorData(NewPipe .getPreferredContentCountry())
53+
54+ val innertubeClientRequestInfo = InnertubeClientRequestInfo .ofWebClient()
55+ innertubeClientRequestInfo.clientInfo.clientVersion =
56+ YoutubeParsingHelper .getClientVersion()
57+
58+ webPoTokenVisitorData = YoutubeParsingHelper .getVisitorDataFromInnertube(
59+ innertubeClientRequestInfo,
60+ NewPipe .getPreferredLocalization(),
61+ NewPipe .getPreferredContentCountry(),
62+ YoutubeParsingHelper .getYouTubeHeaders(),
63+ YoutubeParsingHelper .YOUTUBEI_V1_URL ,
64+ null ,
65+ false
66+ )
5467
5568 // The streaming poToken needs to be generated exactly once before generating
5669 // any other (player) tokens.
0 commit comments