xbmc / inputstream.adaptive

kodi inputstream addon for several manifest types
Other
452 stars 241 forks source link

HLS License Key Issue #758

Closed spacex97 closed 3 years ago

spacex97 commented 3 years ago

Hello Inputstream apadative is taking license key from m3u8 url automatically but since params are also required I always getting http 403 error. When I forcefully update license url it append to m3u8 license url and again gives error Params are dynamic and expires after sometime, is there any way to get this working?

glennguy commented 3 years ago

Again examples and log would be good.

I'm not sure I fully understand what you're saying but if you have url params that change dynamically then you'd need to implement a proxy in your add-on to do the work.

spacex97 commented 3 years ago

m3u8 url = https://jiotv.live.cdn.jio.com/packagerx_mpd3/Colors_HD_HLS/Colors_HD_STB.m3u8?jct=d78InlL9ZCi2tk2eUuLoKw&pxe=1626912696&st=9p-O_v1qIyd6E-rf8_gEOQ kodi takes license key from m3u8 url = https://tv.media.jio.com/streams_live/packagerx_mpd3/Colors_HD_HLS/ddcc1b83-527d-4666-b0fc-b574ce4d150a_1626884102.key correct license key url = https://tv.media.jio.com/streams_live/packagerx_mpd3/Colors_HD_HLS/ddcc1b83-527d-4666-b0fc-b574ce4d150a_1626884102.key?jct=d78InlL9ZCi2tk2eUuLoKw&pxe=1626912696&st=9p-O_v1qIyd6E-rf8_gEOQ

value of jct and pxe changes after sometime

glennguy commented 3 years ago

Can you post debug log and also contents of m3u8?

spacex97 commented 3 years ago

basically what it should do is taking params from m3u8 url and use same with license key too but no params are being used in license key which is why it is throwing error.

matthuisman commented 3 years ago

That behavior was removed here: https://github.com/xbmc/inputstream.adaptive/pull/488

If your provider needs those parameters, it should be including them in the playlist

Does Kodi ffmpeg play your stream? As that doesnt (or didn't used too) add the paramS

Also you say the param values change after some time... That's not going to work either. IA will only know about the initial values. You may need to write a proxy and do the logic yourself

spacex97 commented 3 years ago

I have fixed this using flask webserver in python, thanks for support.