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] : <Issue_Title>Spotiflyer Fetching Fail #3505

Open Cr7-byte opened 2 months ago

Cr7-byte commented 2 months ago

DownloadLinkFetchFailed(errorTrace=Find Link for FRIENDS

Fetching From Saavn Failed:DownloadLinkFetchFailed(errorTrace=No SAAVN Match Found for FRIENDS) at com.shabinder.common.providers.saavn.requests.JioSaavnRequests$DefaultImpls.findBestSongDownloadURL(Unknown Source:299) at com.shabinder.common.providers.saavn.requests.JioSaavnRequests$findBestSongDownloadURL$1.invokeSuspend(Unknown Source:10) at h7.a.resumeWith(Unknown Source:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at kotlinx.coroutines.DispatchedTask.run(Unknown Source:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(Unknown Source:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Unknown Source:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(Unknown Source:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(Unknown Source:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(Unknown Source:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(Unknown Source:0)

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

301 Moved Permanently

301 Moved Permanently


cloudflare

" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(Unknown Source:205) at h7.a.resumeWith(Unknown Source:10) at kotlinx.coroutines.DispatchedTask.run(Unknown Source:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(Unknown Source:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Unknown Source:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(Unknown Source:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(Unknown Source:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(Unknown Source:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(Unknown Source:0)

Extracting Manually...

YT Manual Extraction Failed!io.ktor.client.features.ClientRequestException: Client request(https://rr2---sn-8vq54vox2ob-2vhl.googlevideo.com/videoplayback?expire=1718967002&ei=egZ1ZoHhIKH12roPwOO6kA0&ip=103.25.143.156&id=o-AE-ViwvkDVjVWzest-7enMPfspEKgXcCoUeA-JwhmGBy&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=hg&mm=31%2C29&mn=sn-8vq54vox2ob-2vhl%2Csn-ntqe6nez&ms=au%2Crdu&mv=m&mvi=2&pcm2cms=yes&pl=24&initcwndbps=138750&bui=AbKP-1ObUxuwlFVBm_MjZTEMTgkSPSBQLJ3nWGevSuT16C9TFuoktX08OpXBjpOuQXvSjFeYD4i1xou6&spc=UWF9f-DX-m0Bu09a3qBbDrEmowz46YZKvSMHat5dMu_ddoWehjXyKxjJzufR&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=uskPPLMyvpq3YlIhqcizu-YQ&rqh=1&gir=yes&clen=3337802&dur=206.193&lmt=1716109051200780&mt=1718944862&fvip=1&keepalive=yes&c=WEB&sefc=1&txp=8218224&n=RxNjhlo-S8MjwhAyLm&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%2Cpcm2cms%2Cpl%2Cinitcwndbps&lsig=AHlkHjAwRQIhAPHpiE8zOHfn6I-67lhZx30o2TJQzP6e9fYUnH-pSUDQAiB5_41PnC8NqjGGnwFNcgOUmVW6Gb1PQDQEZTKk7oLQ_g%3D%3D&sig=AJfQdSswRQIgbE7FS3CL6mVhAUg8cgj4-OBN-mGQs5gxrPNEPHBqlhECIQDFHBcYVOlrMAqtML6Hpbe7QVlAttDOwYniiLVfA26MYQ%3D%3D) invalid: 403 Forbidden. Text: "" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(Unknown Source:199) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:8) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:4) at io.ktor.client.features.HttpCallValidator.validateResponse(Unknown Source:86) at io.ktor.client.features.HttpCallValidator.access$validateResponse(Unknown Source:0) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(Unknown Source:42) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:11) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:8) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(Unknown Source:178) at h7.a.resumeWith(Unknown Source:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at kotlinx.coroutines.DispatchedTask.run(Unknown Source:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(Unknown Source:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Unknown Source:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(Unknown Source:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(Unknown Source:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(Unknown Source:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(Unknown Source:0)

Fetching From YT Failed:io.ktor.client.features.ClientRequestException: Client request(https://rr2---sn-8vq54vox2ob-2vhl.googlevideo.com/videoplayback?expire=1718967002&ei=egZ1ZoHhIKH12roPwOO6kA0&ip=103.25.143.156&id=o-AE-ViwvkDVjVWzest-7enMPfspEKgXcCoUeA-JwhmGBy&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=hg&mm=31%2C29&mn=sn-8vq54vox2ob-2vhl%2Csn-ntqe6nez&ms=au%2Crdu&mv=m&mvi=2&pcm2cms=yes&pl=24&initcwndbps=138750&bui=AbKP-1ObUxuwlFVBm_MjZTEMTgkSPSBQLJ3nWGevSuT16C9TFuoktX08OpXBjpOuQXvSjFeYD4i1xou6&spc=UWF9f-DX-m0Bu09a3qBbDrEmowz46YZKvSMHat5dMu_ddoWehjXyKxjJzufR&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=uskPPLMyvpq3YlIhqcizu-YQ&rqh=1&gir=yes&clen=3337802&dur=206.193&lmt=1716109051200780&mt=1718944862&fvip=1&keepalive=yes&c=WEB&sefc=1&txp=8218224&n=RxNjhlo-S8MjwhAyLm&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%2Cpcm2cms%2Cpl%2Cinitcwndbps&lsig=AHlkHjAwRQIhAPHpiE8zOHfn6I-67lhZx30o2TJQzP6e9fYUnH-pSUDQAiB5_41PnC8NqjGGnwFNcgOUmVW6Gb1PQDQEZTKk7oLQ_g%3D%3D&sig=AJfQdSswRQIgbE7FS3CL6mVhAUg8cgj4-OBN-mGQs5gxrPNEPHBqlhECIQDFHBcYVOlrMAqtML6Hpbe7QVlAttDOwYniiLVfA26MYQ%3D%3D) invalid: 403 Forbidden. Text: "" at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(Unknown Source:199) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:8) at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(Unknown Source:4) at io.ktor.client.features.HttpCallValidator.validateResponse(Unknown Source:86) at io.ktor.client.features.HttpCallValidator.access$validateResponse(Unknown Source:0) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(Unknown Source:42) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:11) at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(Unknown Source:8) at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(Unknown Source:178) at h7.a.resumeWith(Unknown Source:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at kotlinx.coroutines.DispatchedTask.run(Unknown Source:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(Unknown Source:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Unknown Source:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(Unknown Source:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(Unknown Source:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(Unknown Source:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(Unknown Source:0)

) at com.shabinder.common.providers.FetchPlatformQueryResult.findBestDownloadLink(Unknown Source:1873) at com.shabinder.common.providers.FetchPlatformQueryResult$findBestDownloadLink$1.invokeSuspend(Unknown Source:12) at h7.a.resumeWith(Unknown Source:10) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:74) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:17) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:74) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:17) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:74) at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:17) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(Unknown Source:55) at io.ktor.util.pipeline.SuspendFunctionGun.loop(Unknown Source:17) at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(Unknown Source:0) at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(Unknown Source:24) at h7.a.resumeWith(Unknown Source:33) at kotlinx.coroutines.DispatchedTask.run(Unknown Source:100) at kotlinx.coroutines.internal.LimitedDispatcher.run(Unknown Source:12) at kotlinx.coroutines.scheduling.TaskImpl.run(Unknown Source:2) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(Unknown Source:0) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(Unknown Source:14) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(Unknown Source:28) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(Unknown Source:0)