Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TV Vlaanderen stopped working. #63

Open
marnux opened this issue Oct 20, 2023 · 21 comments
Open

TV Vlaanderen stopped working. #63

marnux opened this issue Oct 20, 2023 · 21 comments

Comments

@marnux
Copy link

marnux commented Oct 20, 2023

Overnight the plugin stopped working. I also noticed that on all linux systems i have access to, the playback fails with integrity check error. So i'm suspecting this has something to do with a change on TV Vlaanderens side. Probably a DRM integrity check change or something.
I don't have a lot of time to really dig into it, but i'll be sending a request to TV Vlaanderen to see what's up.

As it's failing on all linux based systems i have access to, i'm adding it here so others can be aware. I suspect i will not be the only person affected.

Hopefully i can find some time to dig a bit deeper, if TV VLaanderen does not respond or is not going to fix this.

@norbert-keseru
Copy link

norbert-keseru commented Oct 20, 2023

Hi,
I am using a different plugin and provider but same API/ M7Group
The plugin i am using is a fork of plugin.video.sl.
I use the DirectOne Hungary.
The streaming has stopped for me and also as i have seen it has stopped for SKYLINK SK/CZ guys as well .
Streaming fails on Rpi Libreelec11 and windows kodi20/21
Streaming is ok on android kodi. Tested on phone, and androidTV based chromecast.

I have tried different widevines (4.10.2662.3, 4.10.2710.0) on the windows based kodi but both failed.
On pi(Libreelec11) i have the widevine whatever the inputstream helper plugin installs(do not remember version on top of my head)

Kind regards

@bananenfisch
Copy link
Contributor

bananenfisch commented Oct 20, 2023

Hi, same here with "HD Austria" - 2-3 days ago it stopped working: not only with the addon, also the web-client stopped working on Linux Browsers. Widevine is at the latest version. I don't know, what kind of blocking technique they used. Simple UserAgent switching don't work.

I get in the kodi.log:

2023-10-20 18:27:54.081 T:943      info <general>: AddOnLog: inputstream.adaptive: Successfully parsed manifest file (Periods: 1, Streams in first period: 3, Type: live)
2023-10-20 18:27:55.594 T:943     error <general>: CCurlFile::CReadState::FillBuffer - (0xeaa54eb8) Failed: HTTP returned code 403
2023-10-20 18:27:55.594 T:943     error <general>: CCurlFile::Open - <https://license.solocoo.tv/wv?c=m7be2%3A2...> Failed with code 403:
                                                   
2023-10-20 18:27:55.594 T:943     error <general>: AddOnLog: inputstream.adaptive: License server returned failure
2023-10-20 18:27:56.234 T:943     error <general>: CCurlFile::CReadState::FillBuffer - (0xeaa54eb8) Failed: HTTP returned code 403
2023-10-20 18:27:56.234 T:943     error <general>: CCurlFile::Open - <https://license.solocoo.tv/wv?c=m7be2%3A2...> Failed with code 403:
                                                   
2023-10-20 18:27:56.234 T:943     error <general>: AddOnLog: inputstream.adaptive: License server returned failure

Firefox on Linux with Widevine i get:

This device does not pass device integrity checks. Video playback is prohibited. (W823)

@marnux
Copy link
Author

marnux commented Oct 20, 2023

Managed to quickly look into my logs and i see similar error messages. I guess we can assume, it's a change on the solocoo api level then. I went to a friends house that has a windows machine and there the web client worked as expected. So i'm wondering if they somehow are using checks on a deeper level (hardware) for the drm, which is not supported on linux asa far as i know.

@Roland1947
Copy link

TV-Vlaanderen addon just gets stuck on loading when viewing any stream, on both my Windows Kodi 19 and Kodi 20 (I updated to seee if that fixed this issue)
U had updated widvine on both without result

The log file of my 19 has allot of following errors
2023-10-21 15:45:01.106 T:1648 ERROR : CAESinkDirectSound::GetDefaultDevice: Retrival of audio endpoint enumeration failed. - HRESULT = -2147023728 ErrorMessage = Undefined
2023-10-21 15:45:01.107 T:1648 ERROR : CAESinkDirectSound::Initialize: Failed to create the DirectSound device with error DSERR_NODRIVER, trying the default device.
2023-10-21 15:45:01.107 T:1648 ERROR : CAESinkDirectSound::Initialize: Failed to create the default DirectSound device with error DSERR_NODRIVER.
2023-10-21 15:45:01.107 T:1648 ERROR : CActiveAESink::OpenSink - no sink was returned
2023-10-21 15:45:01.107 T:7120 ERROR : ActiveAE::ActiveAE::CActiveAE::InitSink - returned error

@supmagc
Copy link

supmagc commented Oct 25, 2023

Just adding myself to the list of impacted users. tested on:

  • Linux (ubuntu 22) + Kodi 20.2 + Widevine 4.10.2557.0
  • Windows 10 + Kodi 20.2 + Widevine 4.10.2557.0

Receiving the same error

2023-10-25 22:13:09.142 T:25964   error <general>: CCurlFile::CReadState::XFILE::CCurlFile::CReadState::FillBuffer - (0x1e687f54300) Failed: HTTP returned code 403
2023-10-25 22:13:09.142 T:25964   error <general>: CCurlFile::XFILE::CCurlFile::Open - <https://license.solocoo.tv/wv?c=<SOME-TOKEN>> Failed with code 403:
                                                   
2023-10-25 22:13:09.142 T:25964   error <general>: AddOnLog: inputstream.adaptive: License server returned failure
2023-10-25 22:13:09.450 T:25964   error <general>: CCurlFile::CReadState::XFILE::CCurlFile::CReadState::FillBuffer - (0x1e695348180) Failed: HTTP returned code 403
2023-10-25 22:13:09.450 T:25964   error <general>: CCurlFile::XFILE::CCurlFile::Open - <https://license.solocoo.tv/wv?c=<SOME-TOKEN>> Failed with code 403:
                                                   
2023-10-25 22:13:09.450 T:25964   error <general>: AddOnLog: inputstream.adaptive: License server returned failure

When playing in browser (on windows) it works as expected. A similar call to license.solocoo.tv is made as well (which succeeds).

@bananenfisch
Copy link
Contributor

I've watched the network tab at firefox for linux, the request to license.solocoo.tv responses a 403 with a body:
no vmp

VMP is not supported in widevine under linux (that's why, it works in windows browsers or on kodi for android - don't know, which widevine version is used at kodi for windows).

So it seems, this is killing this addon under libreelec or any other linux based kodi (and all browsers on linux).
Thanks Google!

@michaelarnauts
Copy link
Contributor

I've watched the network tab at firefox for linux, the request to license.solocoo.tv responses a 403 with a body: no vmp

VMP is not supported in widevine under linux (that's why, it works in windows browsers or on kodi for android - don't know, which widevine version is used at kodi for windows).

So it seems, this is killing this addon under libreelec or any other linux based kodi (and all browsers on linux). Thanks Google!

I don't have an active subscription anymore, so I can't really test, but this is something that the M7 Group did to all brands (since not only TV Vlaanderen has this issue). It might be a good idea to complain to the helpdesk that you can't watch on a browser on Ubuntu anymore (I wouldn't mention Kodi).

@marnux
Copy link
Author

marnux commented Oct 26, 2023

That is what i did. Waiting for some reply.

@norbert-keseru
Copy link

Found skylink reply on czech forum:

"below I am sending you the promised statement and information regarding the Live TV service and the current situation where the service has stopped working on devices with the Linux operating system.

In the past few days, we have activated VMP (Verified Media Path), which restricts unauthorized browsers from obtaining the Widevine L3 key. This additional protection was enabled to limit unauthorized browsers from streaming and to prevent the possibility of illegal use of content.

So customers are now getting a player error, or DRM error if they don't have L3 security.

This error can appear especially when the user uses a device, browser or operating system that does not receive the necessary updates for a long time (or irregularly or not at all).

Linux operating systems in their current configuration do not seem to meet security requirements with any web browser, and so streaming is blocked.

In order to continue playing the content, it will be necessary for the software used to be adapted to the current security requirements.

So this is not a restriction aimed at users of any particular software - it's just a matter of getting the necessary updates. The majority of television and video content providers are gradually approaching the same step and will probably continue to do so.

If you have any further questions about security issues on Linux, please contact the Linux developer.

Thank you for your understanding. "

Other important thing:
The Verified Media Path (VMP)
Another important aspect to consider is the Google Widevine DRM Verified Media Path (VMP). The Widevine DRM Desktop Browser Content Decryption Module (CDM) includes support for VMP, which provides a method to verify the validity of the browser framework. All Widevine DRM browser-based integrations (platforms and applications) must support VMP, but VMP support is not available for Linux platforms.

@bananenfisch
Copy link
Contributor

Linux operating systems in their current configuration do not seem to meet security requirements with any web browser, and so streaming is blocked.

Shame on them! GNU/Linux does meet security requirements, it's just Google, who is not willing to give a license to open source systems (oh, wait: they do on their own systems in use with linux: android).

When widevine was discussed to become the standard solution for the w3c, Google claimed not to block open source projects. Later, VMP came in, Google: "sorry but we're not supporting an open source solution like this"...
See: https://blog.samuelmaddock.com/widevine/gmail-thread.html

@JBeyens
Copy link

JBeyens commented Nov 5, 2023

I had the same problem (HTTP returned code 403). This problem is fixed by updating to the kodi in beta version, since it uses the latest version of inputstream.adaptive, which you can see in this issue report: xbmc/inputstream.adaptive#1059.

But after updating, I get the error that there is a stream error in the HTTP/2 framing layer(92):
CCurlFile::CReadState::XFILE::CCurlFile::CReadState::FillBuffer - (0x2aca2387250) Failed: Stream error in the HTTP/2 framing layer(92). I found a StackOverflow article explaining the possible solutions on a conceptual level:
https://stackoverflow.com/questions/44610845/stream-error-in-the-http-2-framing-layer-bigrquery-commands-error-in-r-studio-b

@michaelarnauts : would it be possible to try one of these options? Or I can test these by changing the Python code on my implementation and report the test results back to you.

@marnux
Copy link
Author

marnux commented Nov 22, 2023

I have been trying to get something going on the libreelec nightlies with kodi beta, but it keeps crashing on me. Will see if i can get a regular linux to experiment with kodi beta, so i don't depend on the libreelec integration.

@eboelens
Copy link

The problem is still present ?

@teuget
Copy link

teuget commented Dec 16, 2023

Just adding myself to the list of interested people.
I have a vu+ uno4kse, openPLI 8.3, kodi 1.18.
Got kodi with TVV addon working up to the point where I click on a channel to view and then nothing.
Debug logs shows the exact same problem as mentioned in other posts, license.solocoo.tv comes back with 403. Not a credentials issue, same credentials work on iOS and MacOS. BTW: paid subscription!
Hoping one of the gurus can figure this one out, but it seems an uphill battle against the industry.

@michaelarnauts
Copy link
Contributor

With the current way in how Kodi is using Widevine (except in Android), there is not much we can do.

There could be a way to do the Widevine ourself with a dumped Android CDM (by using pywidevine), but there is no way this will be adopted by Kodi.

@teuget
Copy link

teuget commented Dec 17, 2023

Amazing to see what a bunch of determined hobbyists can do! Assuming the widevine issue can be fixed (big if), is it fundamentally impossible to hook these iptv streams directly into openPli/enigma? No kodi. That would be the ultimate from an openPLi user perspective!

@michaelarnauts
Copy link
Contributor

Amazing to see what a bunch of determined hobbyists can do! Assuming the widevine issue can be fixed (big if), is it fundamentally impossible to hook these iptv streams directly into openPli/enigma? No kodi. That would be the ultimate from an openPLi user perspective!

Widevine L3 is done in software entirely, so with the right tools, knowledge and time, everything is possible. The problem is that you are starting a cat/mouse game, since this is obviously something the content owners don't want and is most likely against their Terms of Use.

@CoderPupil
Copy link

Amazing to see what a bunch of determined hobbyists can do! Assuming the widevine issue can be fixed (big if), is it fundamentally impossible to hook these iptv streams directly into openPli/enigma? No kodi. That would be the ultimate from an openPLi user perspective!

No, it's not impossible. Dump a CDM from an old Android device or a virtual device in Android Studio and make use of a python-script (pywidevine) to retrieve the keys of the desired drm-protected channels. Search for the script "o11-OTT-v2.2b1" on Github and install it on a small homeserver. It will remove drm-protection and will forward the drm-free streams to your Enigma-box.
4097_0_1_9AB_76C9_EC_0_0_0_0_20240901174316

@SanderM2
Copy link

Amazing to see what a bunch of determined hobbyists can do! Assuming the widevine issue can be fixed (big if), is it fundamentally impossible to hook these iptv streams directly into openPli/enigma? No kodi. That would be the ultimate from an openPLi user perspective!

No, it's not impossible. Dump a CDM from an old Android device or a virtual device in Android Studio and make use of a python-script (pywidevine) to retrieve the keys of the desired drm-protected channels. Search for the script "o11-OTT-v2.2b1" on Github and install it on a small homeserver. It will remove drm-protection and will forward the drm-free streams to your Enigma-box. 4097_0_1_9AB_76C9_EC_0_0_0_0_20240901174316

Any chance you can send me a pm and help me getting this running like you described? I have some questions

@jringoot
Copy link

Amazing to see what a bunch of determined hobbyists can do! Assuming the widevine issue can be fixed (big if), is it fundamentally impossible to hook these iptv streams directly into openPli/enigma? No kodi. That would be the ultimate from an openPLi user perspective!

No, it's not impossible. Dump a CDM from an old Android device or a virtual device in Android Studio and make use of a python-script (pywidevine) to retrieve the keys of the desired drm-protected channels. Search for the script "o11-OTT-v2.2b1" on Github and install it on a small homeserver. It will remove drm-protection and will forward the drm-free streams to your Enigma-box. 4097_0_1_9AB_76C9_EC_0_0_0_0_20240901174316

Can you describe in detail what you did to get it working for you? I would like to get it working just in a Linux browser like netflix works in in a Linux browser (chrome or firefox or like)

Thanks

@michaelarnauts
Copy link
Contributor

This repo isn't the place to discuss these things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests