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

WIP: alarm/kodi-odroid to 18.1-1 #1673

Closed
wants to merge 1 commit into from

Conversation

@heikojansen
Copy link

Preliminary test result: Kodi itself works fine. I just needed to install two missing dependencies (lirc, libnfs).
Everything I tested worked; however, when testing video playback (using an app for https://www.ardmediathek.de/) it was unbearably slow, often stopping the video while audio playback continued for a few seconds. This was much better in 17.6 (though not perfect).
I got a kodi debug log, but did not have time to have a closer look at it. I hope to do that during the weekend.

@frol
Copy link
Contributor Author

frol commented Feb 22, 2019

I don't have a display at the moment, so I cannot test the performance on my U3, so it is really helpful to get your feedback!

I just needed to install two missing dependencies (lirc, libnfs).

What are the simptoms of the missing libraries? Did Kodi crash on start without them?

@heikojansen
Copy link

What are the simptoms of the missing libraries? Did Kodi crash on start without them?

At first I was unable to start kodi via the systemd service. I saw no helpful info in the systemd journal so I tried to start kodi in the shell and it crashed, complaining about missing symbols.
I had a look with "ldd" and saw that the kodi binary is linked to liblirc_client.so.0 and libnfs.so.12 which were unavailable. After installing the packages "lirc" and "libnfs" I could successfully start kodi.

Concerning the performance issue: There's a high number of entries like these:

  DEBUG: CVideoPlayerVideo::CalcDropRequirement - hurry: 1
WARNING: CRenderManager::WaitForBuffer - timeout waiting for buffer
WARNING: Previous line repeats 2 times.

The only errors I saw were some repeated occurrences of these:

2019-02-21 23:25:18.616 T:2295501152   ERROR: ffmpeg[88D29160]: [NULL] SPS unavailable in decode_picture_timing
2019-02-21 23:25:18.617 T:2295501152   ERROR: ffmpeg[88D29160]: [NULL] non-existing PPS 0 referenced
2019-02-21 23:25:18.633 T:2295501152   ERROR: ffmpeg[88D29160]: [NULL] SPS unavailable in decode_picture_timing
2019-02-21 23:25:18.633 T:2295501152   ERROR: ffmpeg[88D29160]: [NULL] non-existing PPS 0 referenced
2019-02-21 23:25:18.649 T:2295501152   ERROR: ffmpeg[88D29160]: [NULL] non-existing SPS 0 referenced in buffering period
2019-02-21 23:25:18.649 T:2295501152   ERROR: ffmpeg[88D29160]: [NULL] SPS unavailable in decode_picture_timing

Nothing else I would consider significant, but I'll try to compare logs for 17.6 and 18.1 trying to play the same video. But I'll probably need to report this directly to kodi developers?!

@frol
Copy link
Contributor Author

frol commented Feb 23, 2019

But I'll probably need to report this directly to kodi developers?!

Given, it is a fork which maintains the graphics driver support into Kodi, I would try to communicate with Owersun first.

@frol
Copy link
Contributor Author

frol commented Feb 27, 2019

@heikojansen BTW, which kernel do you use? I have experimented with a patched mainline kernel (the kernel sources, wiki, forum, arch packaging) and I cannot boot into linux-odroid-u2 anymore.

@heikojansen
Copy link

@heikojansen BTW, which kernel do you use? I have experimented with a patched mainline kernel (the kernel sources, wiki, forum, arch packaging) and I cannot boot into linux-odroid-u2 anymore.

I originally installed from http://os.archlinuxarm.org/os/ArchLinuxARM-odroid-latest.tar.gz (don't know exact version) following the instructions at https://archlinuxarm.org/platforms/armv7/samsung/odroid-u2 Since then I have updated a few times via pacman -Syu. Currently uname -a says it's
Linux alarm 4.20.11-1-ARCH #1 SMP PREEMPT Fri Feb 22 01:49:40 UTC 2019 armv7l GNU/Linux

Concerning the debug log comparison for kodi 17.6 vs. 18.1 I'm sorry to report that I haven't found the time for it yet. Should be doable by Monday at the latest, though.

@frol
Copy link
Contributor Author

frol commented Feb 27, 2019

@heikojansen Well that is odd that you have X11 running on this kernel in the first place. It should not have the appropriate drivers for the video chip. Do you have /dev/mali device?

@heikojansen
Copy link

Hmm, no I don't have /dev/mali. Before switching to ArchLinux I only ever used the device as headless server, so I didn't have any prior knowledge about possible problems when running X.

While trying to get Kodi 17.3 running I remember somewhat randomly (de-) installing video related packages until eventually trying - and succeeding - to run LXDE.

Possibly related installed packages are odroid-libgl (described as "ODROID-X/X2/U2/U3 Mali GL Driver") and xf86-video-armsoc-odroid ("X.org graphics driver for ARM graphics - Exynos ODROID").

As far as I remember, glxgears under LXDE showed a frame rate that looked good to me (though that does not mean much), but of course a missing hardware support might explain the performance issue. But if that was the case the performance should have already been as bad with Kodi 17.6?!

Oh, and as far as I understand the contents of /var/log/Xorg.0.log it's currently using the fbdev driver.

@itcs23
Copy link

itcs23 commented Mar 26, 2019

The packages of frol have to be recompiled ... they reference an out-of-date version of libnfs.
There are also additonal dependencies to:

  • libbluray
  • libcec
  • lirc
  • libass

@heikojansen
Copy link

As I promised some further feedback in one of my previous comments I have to apologize: I was unable to install a working system with mali kernel drivers and without them Kodi 18.1 video playback was to slow to use.
The logfile comparison with 17.6 provided no other starting points for experimentation (at least none that I could identify), so I decided to re-purpose my Odroid U2 and run Kodi on a Raspi instead.

Apart from video performance the Kodi 18.1 test package itself worked just fine at the time of my tests. Once the package is rebuild taking current dependencies into account I see no reason why the official package should no be updated accordingly.
People who have a working Mali video acceleration will probably enjoy it.

@frol - Thanks again to for your support...

@frol
Copy link
Contributor Author

frol commented Mar 26, 2019

I could not get mali driver working on my Odroid U3 (I could not make the legacy linux-odroid-u2 kernel boot, the mainline kernel doesn’t have mali support, and the patched mainline kernel (mentioned above) fails to boot as well), so I cannot confirm whether this package is in a good state at the moment :-(

@bubuntux
Copy link

bubuntux commented May 3, 2019

Hi here, i'm joining the party since version 17.6 is not working due libcdio latest update
The prebuild links don't work, so i'm building it myself but i had to manually install these other 2 dependencies to successfully complete the build

  • flatbuffers
  • rapidjson

kodi is running very slow, perhaps i miss something to use the mali driver any advice?

@frol
Copy link
Contributor Author

frol commented May 8, 2019

@bubuntux I have had no luck booting the old legacy kernel with mali driver, and the patched mainline kernel (see #1673 (comment)) just hanged on boot or soon after boot. The vanilla kernel does not have mali driver, which is why Kodi runs extremely slow (there is no hardware acceleration and the CPU is not powerful enough). I won't be able to fix this myself as I have no use of my U3 at the moment, sorry.

Feel free to pick this PR up. I am going to close it as I don't believe I will devote any time to this soon.

@frol frol closed this May 8, 2019
@heikojansen
Copy link

Kernel 5.2 introduced the Lima DRM driver and we have Lima OpenGL driver supporting "Utgard" GPUs (Mali-400 series): doesn't that mean that hardware acceleration should now be available on Odroid U2?
Would it make sense to test these Kodi packages (probably after a rebuild for updated dependencies) again on the vanilla Arch ARM kernel?

@frol
Copy link
Contributor Author

frol commented Aug 8, 2019

@heikojansen that is interesting! I won’t be able to reach my Odroid till September. Can you give it a try? I can assist with PKGBUILD (I believe it should mostly work as is)

@heikojansen
Copy link

I have repurposed my Odroid so this needs some preparation. It still runs Arch, though, so re-installing Kodi should be a relatively simple task.
But I've never built an Arch package myself so I need to read a bit about that. I believe one uses some kind of build recipes - are those which you used for the kodi packages in this ticket still available?

@frol
Copy link
Contributor Author

frol commented Aug 12, 2019

@heikojansen Yes, those build files are available in this PR, so you clone or download my branch and do:

$ cd ./alarm/kodi-odroid/
$ makepkg -s -i

That should install all the dependencies, build, and install the package.

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