ideas icon indicating copy to clipboard operation
ideas copied to clipboard

Netflix.com Kodi plugin using Electron

Open Thrilleratplay opened this issue 8 years ago • 13 comments

Project description

Using Electron, which has Widevine support, create a Kodi plugin that cleanly integrates Netflix. Other plugins like Flix2Kodi scrape Netflix and show individual show episodes that aren't guaranteed to be in order. This does not make for easy binge watching.

The plugin should handle login credentials through Kodi settings. When a user opens the plugin, it should display the Netflix.com website already logged in. I use a keyboard to navigate Kodi, when playing a movie/TV show, I would expect escape to return to the previous screen or if a video is not playing, exit the plugin.

It would be nice if JavaScript files could be injected from a specified directory into the page like GreaseMonkey or TamperMonkey. It would allow users to theme Netflix.com to their personal liking and autoplay next episodes.

Relevant Technology

Kodi plugins are written in Python and Electron is JavaScript. Releases should be packaged with the necessary WideVine browser plugins for Windows, OSX and Linux. This plugin should work on all three operating systems.

Who is this for

Intermediate - Advanced experience.

Thrilleratplay avatar Oct 20 '16 00:10 Thrilleratplay

What is the state of this? Have there been any apps since this post?

hyalkaf avatar Nov 16 '17 23:11 hyalkaf

@hyalkaf As far as I know, there have been no progress on this.

Thrilleratplay avatar Nov 16 '17 23:11 Thrilleratplay

I would like to take a shot at this. In your estimate, how long would this take given that I can put from 5 to 10 hours a week? Do you have an outline of core features? I'm not a Netflix guy so maybe it's hard for me to relate and understand the problem

hyalkaf avatar Nov 17 '17 20:11 hyalkaf

As every project manager I have ever worked for can attest to, I am terrible at estimating the time needed for software development.

Although I say Netflix, the heart of this could be applied to a number of different DRM encrypted video streaming services like Amazon Prime Video or Hulu; provided the service uses Widevine. When I posted this, I thought I added the link to webcatalog/electron-widevinecdm. Good news is it looks like it has been updated recently simplifying the cross platform Widevine library requirements. The other half is creating the Kodi plugin part that should probably handle stuff like authentication into Netflix or whatever and making sure that the Kodi controls are passed into the website to allow the user to easily control it. It may be worth investigating trying to use a different user-agent to try and coax the mobile site to display because the interface will layout for touch devices.

As for testing, I will not be of much help, I just switched to Kodi for Android a week ago.

Thrilleratplay avatar Nov 17 '17 21:11 Thrilleratplay

I'd be happy to test, I'm fairly sure you can spoof the mobile site with ease.

On Fri, Nov 17, 2017, 1:01 PM Tom Hiller [email protected] wrote:

As every project manager I have ever worked for can attest to, I am terrible at estimating the time needed for software development.

Although I say Netflix, the heart of this could be applied to a number of different DRM encrypted video streaming services like Amazon Prime Video or Hulu; provided the service uses Widevine. When I posted this, I thought I added the link to webcatalog/electron-widevinecdm https://github.com/webcatalog/electron-widevinecdm. Good news is it looks like it has been updated recently simplifying the cross platform Widevine library requirements. The other half is creating the Kodi plugin part that should probably handle stuff like authentication into Netflix or whatever and making sure that the Kodi controls are passed into the website to allow the user to easily control it. It may be worth investigating trying to use a different user-agent to try and coax the mobile site to display because the interface will layout for touch devices.

As for testing, I will not be of much help, I just switched to Kodi for Android a week ago.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/mikaelbr/open-source-ideas/issues/21#issuecomment-345364132, or mute the thread https://github.com/notifications/unsubscribe-auth/AA1QudVd6e27R7K9oVIsNsA3QB71iBLeks5s3fQVgaJpZM4KblcY .

sygint avatar Nov 17 '17 23:11 sygint

Why do we need to test the app on mobile? Could you guys provide links to what you are talking about? I will check Kodi for Android tonight.

hyalkaf avatar Nov 21 '17 01:11 hyalkaf

Electron is only for desktop OS' (Windows, Linux, OSX). It was a suggestion to try to load the mobile version of the services' site in Electron. For those who use Kodi on televisions, it would probably be easier for them to navigate.

Thrilleratplay avatar Nov 21 '17 01:11 Thrilleratplay

Why electron?

Can it be a plugin for kodi? Like this: https://github.com/asciidisco/plugin.video.netflix/

rguedes avatar Aug 14 '18 14:08 rguedes

@rguedes I have not used that specific plugin but the ones that I have tried break on a semi regular basis, occasional screen resolution issues and scrape the data from netflix which results in TV shows being listed as individual episodes.

I suggested Electron because I know there widevine integration and would not be necessary for android devices as they are official apps.

Generally speaking, instead of a cat and mouse data scraping, why not use the official website and add additional hooks to better integrate with Kodi? This would also make a good base add additional widevine dependent services like Amazon Prime or Hulu (I am American so these are the ones that come to mind). If someone wants to get crazy, they can create a mashup app that pull the information from each of the services so simply clicks the "Yes I am still watching" button when it appears.

Thrilleratplay avatar Aug 14 '18 17:08 Thrilleratplay

@Thrilleratplay that plugin is "native". Is not a netflix site wrapper.

Most of kodi plugins are wrapper, because no one know how to "use" netflix API. This guy knows.

rguedes avatar Aug 14 '18 20:08 rguedes

there isn't any way to "Bind" electron to Kodi. and electron is essentially a browser. so the only option would be to launch it as a separate process in Kiosk mode and then place it on top of everything else. just like Sandmann79/xbmc.

I did tried this approach before, only to find out that Kodi's build for raspberry Pi isn't compiled with X11 support. meaning that it is always on top with no option for minimizing. so you are tied to a desktop environment.

itshaadi avatar Aug 15 '18 22:08 itshaadi

Hi, is there any update on this? Or any idea how to run Electron "app" in Kodi? I've been trying to find something on this topic but without any luck 😢

MartinPavlik avatar Nov 16 '21 21:11 MartinPavlik

@MartinPavlik I do not thinks so. And an Electron application, after being packages, is like any other native application for Windows/Linux/MacOS.

Thrilleratplay avatar Nov 21 '21 20:11 Thrilleratplay