Kodi Netflix Raspberry Pi 3

This forum is for topics dealing with problems with software specifically in the ARMv7h repo.

Kodi Netflix Raspberry Pi 3

Postby bl0ndynek » Tue Oct 16, 2018 8:33 am

Hi
I have Raspberry Pi 3 with ARMv7 Installation.
Was anyone able to use Netflix plugin on Kodi?

I have kodi: kodi-rbp-git
Netflix plugin: https://github.com/asciidisco/plugin.video.netflix

I can login and browse content but can't play videos.
I have some problems with adaptive inputstream. Anyone made it work?

Thanks
bl0ndynek
 
Posts: 19
Joined: Sat Jan 10, 2015 1:58 pm

Re: Kodi Netflix Raspberry Pi 3

Postby graysky » Tue Oct 16, 2018 6:58 pm

Kodi debug log would be helpful. Probably better for you to post over on their board anyway.
graysky
Developer
 
Posts: 1727
Joined: Sun Jun 26, 2011 6:56 am
Location: /run/user/1000

Re: Kodi Netflix Raspberry Pi 3

Postby ILMostro » Fri Nov 09, 2018 2:51 am

I've been having problems with that for quite some time; even while using youtube on my raspberry pi2 (armv7h).
I've posted to the plugin thread at kodi forums, but they seem to be focused on debian and other distros, as far as I can tell. I'll try reposting it here, since it's partly the same problem. Worth noting is that the same issue is present with current stable version of the plugin (6.2.0) as well as the 6.2.1~beta2 version.


I don't see a way to install the inputstream.adaptive addon on archlinuxarm. I keep getting incessant popups every time I try to play something using the youtube plugin or with something that depends on the youtube plugin. However, every time I select to enable it, it doesn't seem to work. I've tried replacing the plugins directory with the latest beta2 version, as linked to in the initial post within this thread to no avail. The following messages can be seen in the log at the time when the addon is attempted to be loaded. It's worth noting that this is on a raspberrypi2 running ArchLinuxArm.

$this->bbcode_second_pass_code('', '15:26:27.208 T:1641492832 NOTICE: [plugin.video.youtube] Running: YouTube (6.2.1~beta2) on Krypton (Kodi-17.6) with Python 2.7.15
Path: /
Params: {}
15:27:48.005 T:1591136608 NOTICE: [plugin.video.youtube] Running: YouTube (6.2.1~beta2) on Krypton (Kodi-17.6) with Python 2.7.15
Path: /config/mpd/
Params: {}
15:27:48.091 T:1591136608 ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
- NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
Error Type: <type 'exceptions.AttributeError'>
Error Contents: 'NoneType' object has no attribute 'on_yes_no_input'
Traceback (most recent call last):
File "/var/lib/kodi/.kodi/addons/plugin.video.youtube/resources/lib/default.py", line 7, in <module>
runner.run(__provider__)
File "/var/lib/kodi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/runner.py", line 52, in run
__RUNNER__.run(provider, context)
File "/var/lib/kodi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/impl/xbmc/xbmc_runner.py", line 23, in run
results = provider.navigate(context)
File "/var/lib/kodi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/abstract_provider.py", line 87, in navigate
result = method(context, re_match)
File "/var/lib/kodi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/register_provider_path.py", line 11, in wrapper
return func(*args, **kwargs)
File "/var/lib/kodi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/youtube/provider.py", line 986, in configure_addon
use_dash = context.use_inputstream_adaptive()
File "/var/lib/kodi/.kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/impl/xbmc/xbmc_context.py", line 252, in use_inputstream_adaptive
if self._ui.on_yes_no_input(self.get_name(), self.localize(30579)):
AttributeError: 'NoneType' object has no attribute 'on_yes_no_input'
-->End of Python script error report<--
15:36:12.048 T:1633100128 ERROR: ADDON: extension '' is not currently supported for service addon
15:52:39.893 T:1396658528 ERROR: Previous line repeats 1 times.')
ILMostro
 
Posts: 29
Joined: Tue Apr 22, 2014 8:07 am

Re: Kodi Netflix Raspberry Pi 3

Postby fooxl » Fri Feb 01, 2019 8:55 pm

I got it working now. Took me two evenings and a lot of try and error.
I will see if I can get it all together again:

1) Installed kodi-addon-inputstream-adaptive-18 with this PKGBUILD:

$this->bbcode_second_pass_code('', '
# Maintaienr: Niklas <dev@n1klas.net>
# Contributor: kevku <kevku@gmx.com>

pkgname=kodi-addon-inputstream-adaptive-18
pkgver=2.3.13
pkgrel=1
pkgdesc="InputStream client for adaptive streams for Kodi 18"
arch=('x86_64' 'i686' 'armv6h' 'armv7h' 'aarch64')
url="https://github.com/peak3d/inputstream.adaptive"
license=('GPL2')
depends=('kodi-rbp>=18')
makedepends=('kodi-rbp-dev>=18' 'cmake' 'git')
#provides=("${pkgname%-git}")
#conflicts=("${pkgname%-git}")
#source=("${pkgname}::git+https://github.com/peak3d/inputstream.adaptive.git")
_ghuser="peak3d"
_ghproj="inputstream.adaptive"
#source=("https://github.com/${_ghuser}/${_ghproj}/releases/download/v$pkgver/${_ghproj}-${pkgver}.tar.gz")
source=("https://github.com/${_ghuser}/${_ghproj}/archive/${pkgver}.tar.gz")
#source=("${pkgname}::https://github.com/peak3d/inputstream.adaptive/archive/2.3.13.tar.gz")
md5sums=('SKIP')

#pkgver() {
# cd "${srcdir}/${pkgname}"
# printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
#}

build() {
cd "${srcdir}/${_ghproj}-${pkgver}"
cmake -DCMAKE_INSTALL_PREFIX=/usr .
make
}

package() {
cd "${srcdir}/${_ghproj}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
')

2) I installed widevine with this PKGBUILD (needs a lot of space!):

$this->bbcode_second_pass_code('', '
# Maintainer: Doug Newgard <scimmia at archlinux dot org>

pkgname=chromium-widevine
pkgdesc='A browser plugin designed for the viewing of premium video content'
pkgver=4.10.1224.7
#list od current images https://dl.google.com/dl/edgedl/chromeos/recovery/recovery.conf
_chromeos_ver=11151.113.0
_chromeos_file="chromeos_${_chromeos_ver}_daisy-spring_recovery_stable-channel_spring-mp-v3.bin"
_rootfs_img="ROOT-A.img"
_libwidevine="libwidevinecdm.so"
_license_date=$(curl -sI https://www.google.com/intl/en/chrome/privacy/eula_text.html | sed -n '/^last-modified/ s/.*: //p' | date +"%Y%m%d" -f -)
_license_last=20190124
pkgrel=1
#epoch=1
arch=('armv7h')
url='https://www.widevine.com/'
license=('custom')
depends=('gcc-libs' 'glib2' 'glibc' 'nspr' 'nss')
makedepend=('p7zip')
options=('!strip')
sources=("chrome-eula_text-$_license_date.html::https://www.google.com/intl/en/chrome/privacy/eula_text.html"
"https://dl.google.com/dl/edgedl/chromeos/recovery/${_chromeos_file}.zip"
"get_cdm_version.c")

ha256sums=('18415ed1eeb7dc54596cda2a22be05866e2017d4c5b22f434bd980788995d870'
'a6ed5fa3a2502cfd2e3b4c4aafe31cc218bdb1ddf9ba2fa65de661ed54834384'
'3fda44a5b8b222434530f27923568de1fda1eb0caa8621b56a8b2a6a2a2e3d5d')

prepare() {
gcc ../get_cdm_version.c -o get_cdm_version -ldl
7z e ../${_chromeos_file}.zip -y
7z e ${_chromeos_file} ${_rootfs_img} -y
7z e ${_rootfs_img} ${_libwidevine} -r -y
}

pkgver() {
./get_cdm_version
}

package() {
install -Dm755 libwidevinecdm.so -t "$pkgdir/usr/lib/chromium/"
install -Dm644 ../chrome-eula_text-$_license_date.html "$pkgdir/usr/share/licenses/$pkgname/eula_text.html"
}
')

get_cdm_version:

$this->bbcode_second_pass_code('', '
#include <stdio.h>
#include <stdlib.h>
#include <dlfcn.h>

int main(int argc, char *argv[]) {
void *handle;
const char *(*get_cdm_version)();

handle = dlopen("./libwidevinecdm.so", RTLD_LAZY);
if (!handle) {
fprintf(stderr, "%s\n", dlerror());
exit(EXIT_FAILURE);
}

get_cdm_version = dlsym(handle, "GetCdmVersion");
if (!get_cdm_version) {
fprintf(stderr, "%s\n", dlerror());
exit(EXIT_FAILURE);
}

printf("%s\n", get_cdm_version());
dlclose(handle);
exit(EXIT_SUCCESS);
}

')

3) link widevine to kodi dir

$this->bbcode_second_pass_code('', '
$ cd /var/lib/kodi/.kodi/cdm
$ ln -sf /usr/lib/chromium/libwidevinecdm.so
')

4) edit /var/lib/kodi/.kodi/addons/script.module.inputstreamhelper/lib/inputstreamhelper.py

In the function _check_widevine insert "return true" so it skips the check for widevine so it looks like this:

$this->bbcode_second_pass_code('', '
def _check_widevine(self):
return True
"""Checks that all Widevine components are installed and available."""
')

and restart kodi.

PS: The Netflix addon sometimes displays an error on first start. Just start it again and it should show your netflix profiles.
fooxl
 
Posts: 8
Joined: Fri Sep 29, 2017 11:51 am

Re: Kodi Netflix Raspberry Pi 3

Postby bl0ndynek » Thu Feb 14, 2019 8:01 pm

Thank you very much!! It is working!!

You should add it to aur so it won't get lost.

One more time - Thank you !! :)
bl0ndynek
 
Posts: 19
Joined: Sat Jan 10, 2015 1:58 pm

Re: Kodi Netflix Raspberry Pi 3

Postby rafal » Wed Mar 06, 2019 10:29 pm

Therefore we have new version of Kodi 18.1.2 Leia, I can add if you want to use Netflix addon there is missing in arch repository:
kodi-addon-inputstream-adaptive.
Missing dependency necessary for Netflix addon -> inputstream.adaptive: https://github.com/peak3d/inputstream.adaptive
rafal
 
Posts: 3
Joined: Sun Mar 04, 2018 7:24 pm

Re: Kodi Netflix Raspberry Pi 3

Postby bl0ndynek » Fri May 10, 2019 9:30 am

$this->bbcode_second_pass_quote('tamar52', 'I') use Netflix update version

What you meant by that? Update version of plugin or there is some other app?
bl0ndynek
 
Posts: 19
Joined: Sat Jan 10, 2015 1:58 pm


Return to ARMv7h

Who is online

Users browsing this forum: No registered users and 14 guests