Shabinder / SpotiFlyer

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

[BUG] : <Song Download Bug> #3071

Closed aZeBy closed 1 year ago

aZeBy commented 1 year ago

Describe the bug:

Repeated download failure **Media Links Used:** https://music.youtube.com/watch?v=U8y1f_e7BVU **Expected behavior**

Screenshots:

StackTrace:

java.lang.Exception: Client request(https://rr1---sn-2aqu-hoalk.googlevideo.com/videoplayback?expire=1686312299&ei=C8GCZJOqG7zd4-EP-7qW-A8&ip=49.150.216.195&id=o-AJnqZ14jlQEbilgcvPmSHgllCVqquW1t3zMNrZlWmeuN&itag=140&source=youtube&requiressl=yes&mh=WJ&mm=31%2C29&mn=sn-2aqu-hoalk%2Csn-npoeenll&ms=au%2Crdu&mv=m&mvi=1&pl=21&gcr=ph&initcwndbps=1057500&spc=qEK7B_EqQGKifWF6zjtTvsIkYBEyEnUUPk3nd5YwXQ&vprv=1&svpuc=1&mime=audio%2Fmp4&ns=8ovfp6zv-9q0zFfnSYOQ8CcN&gir=yes&clen=2581392&dur=159.316&lmt=1684518594087087&mt=1686290220&fvip=4&keepalive=yes&fexp=24007246%2C24362688%2C51000011&c=MWEB&txp=2318224&n=onav4_1iE_21CQ&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cgcr%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRgIhAJ8gpEKStxc7OGZ0gbu1tza9f0E3wdUt1xAtorpt7Nw-AiEA-yMXgkTE3uvZQgwhujnUOAjQztk5UTntFcX2mejJNJ4%3D&sig=AOq0QJ8wRgIhANrWmMhs76y4Toghl3ATHKg-hS6tSnD7IpWXBJstaMadAiEA8LBJPk87ExcUvs7uBopnPz_BlBsX1OwZ2VsuD-IsrCM%3D&title=0800+HEAVEN) invalid: 403 Forbidden. Text: ""
    at com.shabinder.spotiflyer.service.ForegroundService$enqueueDownload$2.emit(ForegroundService.kt:6)
    at com.shabinder.spotiflyer.service.ForegroundService$enqueueDownload$2.emit(ForegroundService.kt:1)
    at com.shabinder.common.core_components.file_manager.FileManagerKt$downloadFile$4.invokeSuspend(FileManager.kt:54)
    at com.shabinder.common.core_components.file_manager.FileManagerKt$downloadFile$4.invoke(Unknown Source:11)
    at com.shabinder.common.core_components.file_manager.FileManagerKt$downloadFile$4.invoke(Unknown Source:6)
    at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catch$$inlined$unsafeFlow$1.collect(SafeCollector.common.kt:94)
    at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catch$$inlined$unsafeFlow$1$1.invokeSuspend(Unknown Source:12)
    at h7.a.resumeWith(ContinuationImpl.kt:10)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:74)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:17)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:74)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:17)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:74)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$resumeRootWith(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:17)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55)
    at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:55)
    at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:17)
    at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:0)
    at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:24)
    at h7.a.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
    at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:12)
    at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:2)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:0)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:14)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:28)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:0)

Device Info (please complete the following information):

Additional context:

Shabinder commented 1 year ago

3013