Shabinder / SpotiFlyer

Kotlin Multiplatform Music Downloader, Supports Spotify / Gaana / Youtube Music / Jio Saavn / SoundCloud.
https://soundbound.app
GNU General Public License v3.0
10.26k stars 766 forks source link

[BUG] : <not downloading> #3500

Open pooversenflowmetrix opened 2 months ago

pooversenflowmetrix commented 2 months ago

DownloadLinkFetchFailed(errorTrace=Find Link for Tell Ur Girlfriend

Fetching From Saavn Failed:DownloadLinkFetchFailed(errorTrace=No SAAVN Match Found for Tell Ur Girlfriend) at com.shabinder.common.providers.saavn.requests.JioSaavnRequests$DefaultImpls.findBestSongDownloadURL(JioSaavnRequests.kt:44) at com.shabinder.common.providers.saavn.requests.JioSaavnRequests$findBestSongDownloadURL$1.invokeSuspend(JioSaavnRequests.kt) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:39) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

Yt1sMp3 Failed for zKmKBeMwV78:io.ktor.client.features.RedirectResponseException: Unhandled redirect: https://yt1s.com/api/ajaxSearch/index. Status: 301 Moved Permanently. Text: "

301 Moved Permanently

301 Moved Permanently


cloudflare

" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:46) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt) at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:54) at io.ktor.client.features.HttpCallValidator.access$validateResponse(HttpCallValidator.kt:33) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:133) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:96) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:39) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

Extracting Manually...

YT Manual Extraction Failed!io.ktor.client.features.ClientRequestException: Client request(https://rr4---sn-woc7kn7r.googlevideo.com/videoplayback?expire=1718808999&ei=R51yZpjpGLmKp-oPifWy-Ac&ip=41.193.19.16&id=o-ALJu0tH7wTtoglnuc50HuREQdGT1jEY-p8UoM-4Vk3Ua&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=J3&mm=31%2C29&mn=sn-woc7kn7r%2Csn-woc7snes&ms=au%2Crdu&mv=m&mvi=4&pl=20&initcwndbps=883750&bui=AbKP-1Pf0ROEUosSDlvdlP_YUlUomOl_CJJlUdDWtTrhac_naVW6Z4EbF2RZP21bxc1A6mirVDP8Bipb&spc=UWF9fxXZRmKYgrYVlZX60fJEGWhDP_Rilcn5RNVQrGMVczKPRiyaRv3a_SYx&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=-ivwJMStu678hTW5s3gLaUIQ&rqh=1&gir=yes&clen=2018425&dur=124.667&lmt=1713634952942164&mt=1718786706&fvip=5&keepalive=yes&c=WEB&sefc=1&txp=5532434&n=ibvcUcZN31nK8U3D75&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AHlkHjAwRgIhANT_FQOxh2JCpf0pen4w8AxZ95m3nuP1DIkpNOQTXYR2AiEA9e8LRwOOIb0JiHxoN08JY-lKnyVR_3EZjnIZgSbxKG4%3D&sig=AJfQdSswRgIhAP7wu5tvEgpknb7symGXII7wsbMpUPwMHFxEzhUmleUNAiEAuFbhc7CrrynzcDSpE88Ez6-OMsCL-QDbQ5nkQwmIvyQ%3D) invalid: 403 Forbidden. Text: "" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:47) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt) at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:54) at io.ktor.client.features.HttpCallValidator.access$validateResponse(HttpCallValidator.kt:33) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:133) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:96) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:39) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

Fetching From YT Failed:io.ktor.client.features.ClientRequestException: Client request(https://rr4---sn-woc7kn7r.googlevideo.com/videoplayback?expire=1718808999&ei=R51yZpjpGLmKp-oPifWy-Ac&ip=41.193.19.16&id=o-ALJu0tH7wTtoglnuc50HuREQdGT1jEY-p8UoM-4Vk3Ua&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=J3&mm=31%2C29&mn=sn-woc7kn7r%2Csn-woc7snes&ms=au%2Crdu&mv=m&mvi=4&pl=20&initcwndbps=883750&bui=AbKP-1Pf0ROEUosSDlvdlP_YUlUomOl_CJJlUdDWtTrhac_naVW6Z4EbF2RZP21bxc1A6mirVDP8Bipb&spc=UWF9fxXZRmKYgrYVlZX60fJEGWhDP_Rilcn5RNVQrGMVczKPRiyaRv3a_SYx&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=-ivwJMStu678hTW5s3gLaUIQ&rqh=1&gir=yes&clen=2018425&dur=124.667&lmt=1713634952942164&mt=1718786706&fvip=5&keepalive=yes&c=WEB&sefc=1&txp=5532434&n=ibvcUcZN31nK8U3D75&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AHlkHjAwRgIhANT_FQOxh2JCpf0pen4w8AxZ95m3nuP1DIkpNOQTXYR2AiEA9e8LRwOOIb0JiHxoN08JY-lKnyVR_3EZjnIZgSbxKG4%3D&sig=AJfQdSswRgIhAP7wu5tvEgpknb7symGXII7wsbMpUPwMHFxEzhUmleUNAiEAuFbhc7CrrynzcDSpE88Ez6-OMsCL-QDbQ5nkQwmIvyQ%3D) invalid: 403 Forbidden. Text: "" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:47) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt) at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:54) at io.ktor.client.features.HttpCallValidator.access$validateResponse(HttpCallValidator.kt:33) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:133) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:96) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:39) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

) at com.shabinder.common.providers.FetchPlatformQueryResult.findBestDownloadLink(FetchPlatformQueryResult.kt:204) at com.shabinder.common.providers.FetchPlatformQueryResult$findBestDownloadLink$1.invokeSuspend(FetchPlatformQueryResult.kt) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:194) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:89) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:194) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:89) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:194) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:89) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:191) at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:147) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:93) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:39) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)