add-ons / plugin.video.goplay

GNU General Public License v3.0
4 stars 1 forks source link

PLayback fails (inputstream.adaptive: License server returned failure) #8

Open theov10 opened 3 weeks ago

theov10 commented 3 weeks ago

Describe the bug

Tried to watch "celebrity klopjacht" (Episode 1/2/3/4) Playback does not start

Logs

2024-09-23 22:22:33.392 T:17786 critical <general>: [script.module.inputstreamhelper] ['ldd', '/storage/.kodi/cdm/libwidevinecdm.so'] cmd failed.
2024-09-23 22:22:33.392 T:17786 critical <general>: [script.module.inputstreamhelper] Failed to check for missing Widevine libraries.
2024-09-23 22:22:33.394 T:17786 warning <general>: [script.module.inputstreamhelper] Widevine update check was made on 2024-09-09 19:34
2024-09-23 22:22:33.421 T:808      info <general>: VideoPlayer::OpenFile: plugin://plugin.video.goplay/play/catalog/007ac2b7-fc33-409e-b979-0f647d076b05/long_form
2024-09-23 22:22:33.422 T:21479    info <general>: Creating InputStream
2024-09-23 22:22:33.425 T:21479    info <general>: AddOnLog: inputstream.adaptive: [Repr. chooser] Resolution set: 1920x1080, max allowed: 1920x1080, Adjust refresh rate: 0
2024-09-23 22:22:33.425 T:21479   error <general>: GetDirectory - Error getting /usr/lib/kodi/addons/inputstream.adaptive/
2024-09-23 22:22:33.517 T:21479    info <general>: AddOnLog: inputstream.adaptive: Successfully parsed manifest file (Periods: 3, Streams in first period: 2, Type: VOD)
2024-09-23 22:22:34.229 T:21479   error <general>: CCurlFile::CReadState::FillBuffer - (0xc5fbf3b8) Failed: HTTP returned code 403
2024-09-23 22:22:34.229 T:21479   error <general>: CCurlFile::Open - <https://wv-keyos.licensekeyserver.com/> Failed with code 403:

2024-09-23 22:22:34.229 T:21479   error <general>: AddOnLog: inputstream.adaptive: License server returned failure
2024-09-23 22:22:34.885 T:21479   error <general>: CCurlFile::CReadState::FillBuffer - (0xc5fbf3b8) Failed: HTTP returned code 403
2024-09-23 22:22:34.885 T:21479   error <general>: CCurlFile::Open - <https://wv-keyos.licensekeyserver.com/> Failed with code 403:

2024-09-23 22:22:34.886 T:21479   error <general>: AddOnLog: inputstream.adaptive: License server returned failure
2024-09-23 22:22:34.886 T:21479    info <general>: Creating Demuxer
2024-09-23 22:22:34.886 T:21479    info <general>: Opening stream: 1001 source: 256
2024-09-23 22:22:35.009 T:21479    info <general>: Creating video codec with codec id: 27
2024-09-23 22:22:35.009 T:21479    info <general>: CDVDVideoCodecDRMPRIME::Open - using decoder V4L2 mem2mem H.264 decoder wrapper
2024-09-23 22:22:35.031 T:21479    info <general>: Creating video thread
2024-09-23 22:22:35.031 T:21486    info <general>: running thread: video_thread
2024-09-23 22:22:35.031 T:21479    info <general>: Opening stream: 1002 source: 256
2024-09-23 22:22:35.045 T:21479    info <general>: Finding audio codec for: 86018
2024-09-23 22:22:35.046 T:21479    info <general>: CDVDAudioCodecFFmpeg::Open() Successful opened audio decoder aac
2024-09-23 22:22:35.046 T:21479    info <general>: OpenStream: Allowing max Out-Of-Sync Value of 10 ms
2024-09-23 22:22:35.046 T:21479    info <general>: Creating audio thread
2024-09-23 22:22:35.046 T:21488    info <general>: running thread: CVideoPlayerAudio::Process()
2024-09-23 22:22:35.086 T:21479   error <general>: AddOnLog: inputstream.adaptive: Decrypt Sample returns failure!
2024-09-23 22:22:35.154 T:21479    info <general>: Skipped 101 duplicate messages..
2024-09-23 22:22:35.154 T:21479    info <general>: Opening stream: 2001 source: 256
2024-09-23 22:22:35.298 T:21479    info <general>: Creating video codec with codec id: 27
2024-09-23 22:22:35.298 T:21479    info <general>: CDVDVideoCodecDRMPRIME::Open - using decoder V4L2 mem2mem H.264 decoder wrapper
2024-09-23 22:22:35.322 T:21479    info <general>: Opening stream: 2002 source: 256
2024-09-23 22:22:35.336 T:21479    info <general>: Finding audio codec for: 86018
2024-09-23 22:22:35.336 T:21479    info <general>: CDVDAudioCodecFFmpeg::Open() Successful opened audio decoder aac
2024-09-23 22:22:35.339 T:21488    info <general>: OpenStream: Allowing max Out-Of-Sync Value of 10 ms
2024-09-23 22:22:35.373 T:21479   error <general>: AddOnLog: inputstream.adaptive: Decrypt Sample returns failure!
2024-09-23 22:22:35.494 T:21479    info <general>: Skipped 101 duplicate messages..
2024-09-23 22:22:35.494 T:21479    info <general>: Opening stream: 3001 source: 256
2024-09-23 22:22:35.643 T:21479    info <general>: Creating video codec with codec id: 27
2024-09-23 22:22:35.643 T:21479    info <general>: CDVDVideoCodecDRMPRIME::Open - using decoder V4L2 mem2mem H.264 decoder wrapper
2024-09-23 22:22:35.665 T:21479    info <general>: Opening stream: 3002 source: 256
2024-09-23 22:22:35.679 T:21479    info <general>: Finding audio codec for: 86018
2024-09-23 22:22:35.679 T:21479    info <general>: CDVDAudioCodecFFmpeg::Open() Successful opened audio decoder aac
2024-09-23 22:22:35.682 T:21488    info <general>: OpenStream: Allowing max Out-Of-Sync Value of 10 ms
2024-09-23 22:22:35.720 T:21479   error <general>: AddOnLog: inputstream.adaptive: Decrypt Sample returns failure!
2024-09-23 22:22:35.830 T:21479    info <general>: Skipped 101 duplicate messages..
2024-09-23 22:22:35.830 T:21479    info <general>: Process - eof reading from demuxer
2024-09-23 22:22:35.830 T:21479    info <general>: CVideoPlayer::OnExit()
2024-09-23 22:22:35.830 T:21479    info <general>: VideoPlayer: eof, waiting for queues to empty
2024-09-23 22:22:35.830 T:21479    info <general>: Closing stream player 1
2024-09-23 22:22:35.830 T:21479    info <general>: Waiting for audio thread to exit
2024-09-23 22:22:35.834 T:21488    info <general>: thread end: CVideoPlayerAudio::OnExit()
2024-09-23 22:22:35.835 T:21479    info <general>: Closing audio device
2024-09-23 22:22:35.835 T:21479    info <general>: Deleting audio codec
2024-09-23 22:22:35.835 T:21479    info <general>: Closing stream player 2
2024-09-23 22:22:35.839 T:21479    info <general>: waiting for video thread to exit
2024-09-23 22:22:35.839 T:21486    info <general>: thread end: video_thread
2024-09-23 22:22:35.840 T:21479    info <general>: deleting video codec
2024-09-23 22:22:35.846 T:21479    info <general>: ADDON: Dll Destroyed - InputStream Adaptive
2024-09-23 22:22:35.847 T:17437    info <general>: Deleting settings information for files plugin://plugin.video.goplay/play/catalog/007ac2b7-fc33-409e-b979-0f647d076b05/long_form
2024-09-23 22:22:35.880 T:808      info <general>: CVideoPlayer::CloseFile()
2024-09-23 22:22:35.881 T:808      info <general>: VideoPlayer: waiting for threads to exit
2024-09-23 22:22:35.881 T:808      info <general>: VideoPlayer: finished waiting
2024-09-23 22:22:35.881 T:808      info <general>: CVideoPlayer::CloseFile()
2024-09-23 22:22:35.881 T:808      info <general>: VideoPlayer: waiting for threads to exit
2024-09-23 22:22:35.881 T:808      info <general>: VideoPlayer: finished waiting

System

PeterCloet commented 3 weeks ago

I have the same issue here on my RPi5, LibreElec. I think it maybe related to the VMP requirement #69 if I look at the logs. There was a similar issue with De Slimste Mens #131 last year. Keiem sent an e-mail to GoPlay to ask why we couldn't watch 'De Slimste Mens' on a PC with an ARM processor. They answered that this wasn't the intention and they would check what was wrong. Possibly the same is going on here?

trick72 commented 3 weeks ago

Yes, I can confirm, I have the same. Also "Wat Goééééd!! Het Beste van Chateau Meiland" and "seizoen 3" van "Achter de schermen" gives this error. Surprisingly "Seizoen 4" van "Achter de schermen" which is currently broadcasting, DOES work again. So it seems to be a come-and-go issue (luckily)

PeterCloet commented 3 weeks ago

I asked the question to GoPlay and got the following (cryptic) reply: We merken dat ARM toestellen de DRM beveiliging van GoPlay triggeren als er meerdere toestellen gebruikt worden om te kijken. We zien dit bijvoorbeeld bij kijkers die via Raspberry Pi en een beamer kijken. Is dit bij jou het geval? Groetjes Joyce van GoPlay I will follow up with them but I'm not really sure this will help.

PeterCloet commented 3 weeks ago

I got the following additional feedback from GoPlay: Het zou kunnen dat je dit ervaart omdat je GoPlay gebruikt op de Raspberry Pi, die vervolgens verbonden is via HDMI met je Tv toestel. Mogelijks ziet GoPlay die connectie, ondanks dat het maar om 1 stream gaat, als een extra toestel wat de DRM beveiliging triggert. Welk Tv toestel heb je precies? Misschien kan je de GoPlay app rechtstreeks downloaden op je Tv? Onze app is alleen nog niet beschikbaar op Samsung TV en LG TV, al hopen we daar verandering in te brengen in de toekomst. Sorry voor het ongemak en heel erg bedankt voor je begrip! This still doesn't explain why this only happens for specific programs...

trick72 commented 2 weeks ago

Thanks for contacting them about this. They should compare certain episodes that do work with some that don't and see if other coding/drm/codecs were used, because you are right, why only for specific programs... For example all episodes of "Achter de schermen" of season 3 have the issue, while the more recent season 4 works fine (as was the first 2 seasons). So why only season 3? I don't think they do it "on purpose" with "stricter" DRM... Also, I believe vrt max and vtm go apps on raspberry PI also use DRM (not sure) and we don't see the issue there as far as I know. It's a bit sad that we always "have to be lucky" if we want to view certain programs...

PeterCloet commented 2 weeks ago

I did some more research and apparantly the streamer (GoPlay) can implement exceptions in the licence keyserver whether or not to enforce the use of VMP (Verified Media Path which is not supported by (some) Linux systems). This generally happens for Linux x86_64 to allow streaming in Chrome/Firefox on Linux. The exception for Linux ARM sometimes gets forgotten. This might be the case here as well.

I pointed this out to Joyce (from GoPlay) this morning. I'm not sure whether this will have any effect...

trick72 commented 2 weeks ago

I see that the "TV Vlaanderen" Kodi app (in this branch) has become completely unusable because they implemented VMP by default on all their programs. So yes, this is probably the same. I guess we are lucky that none of the others did... and maybe for some reason GoPlay enabled it indeed by accident on some programs. Fact is (of what I can see) that the cause is that Google does NOT want to support VMP on linux. VMP is part of Google Widevine which we also need on our Kodi device, but they don't want to add VMP support into Widevine for linux, they only do it for "their" android OS. So I guess we are lucky that none of the other streamers decided to implement it too are we were completely out of luck on kodi.... lets pray for the future ;)

PeterCloet commented 2 weeks ago

Some feedback from GoPlay but don't get your hopes up. ;-)

I gave them the following additional info on the issue: Misschien nog wat interessante informatie over de mogelijke oorzaak van het probleem. Het probleem heeft waarschijnlijk te maken met het gebruik van VMP (Verified Media Path) door de “wv-keyos.licensekeyserver.com” die niet ondersteund wordt door (alle) Linux systemen. Blijkbaar kunnen er uitzonderingen ingesteld worden. Meestal gebeurt dit voor Linux x86_64 zodat er kan gekeken worden via Chrome/Firefox op een Linux systeem. De uitzondering voor Linux ARM (zoals de RPi) systemen wordt soms wel eens vergeten. Misschien is dit de oorzaak van het probleem?

Joyce gave me the following feedback (and effectively closed the discussion): Heel erg bedankt voor de extra info! Ik vrees dat hier momenteel geen prioriteit naartoe gaat, maar ik geef je feedback graag door aan mijn collega's. Moest er in de tussentijd nog iets zijn, weet je ons hier te vinden! Nog een hele fijne dag gewenst! Groetjes Joyce van GoPlay