Kodi Community Forum
Linux VAAPI: Nuc, Chromebox, HSW, IVB, Baytrail with Ubuntu 14.04 - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: General Support (https://forum.kodi.tv/forumdisplay.php?fid=111)
+---- Forum: Linux (https://forum.kodi.tv/forumdisplay.php?fid=52)
+---- Thread: Linux VAAPI: Nuc, Chromebox, HSW, IVB, Baytrail with Ubuntu 14.04 (/showthread.php?tid=165707)



RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

Yeah - early adaptors :-)


RE: vaapi-sse4: Deinterlacing Testing - laric - 2014-10-27

(2014-10-26, 17:53)fritsch Wrote: Read some pages back - I described howto do it.

Kernel you can use 3.17.1 from ubuntu mainline. This is the version I am currently running.

In your post you describe it as something needed for Broadwell. Is there an upside to use the new mesa for Haswell and Ivy Bridge as well?


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

Nope. That mesa / kernel will work fine on IVB, too - I am running it at home on such hardware.


RE: vaapi-sse4: Deinterlacing Testing - methcat - 2014-10-27

(2014-10-26, 22:56)fritsch Wrote: If the CPU is fast enough, you can use Yadif deinterlacing (Deinterlace) on the CPU while still decoding on the GPU with VAAPI. Only the "gpu internal" deinterlacers won't work, cause of non working implementation on the intel driver side. Here HSW or newer is needed.

I realize there is no crystal ball here, but in your opinion, do these ever "get implemented " this long after the fact? Just curious if there's any real hope for improvement on the bay trail units...

Thanks


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

Yes - you can also file a bug with the intel guys. They promissed us to implement it (as they have done with HSW).

Please open a bug and tell them this functionality is broken and SNB/IVB needs additional work like: http://cgit.freedesktop.org/vaapi/intel-driver/commit/?h=staging&id=5c8fcb59919a866782cdc7d9e1f9f19128dc32af

You can file the bug on bugs.freedesktop.org - you might add haihao xiang or gwenole himself.

Thanks much.


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

Edit: https://bugs.freedesktop.org/show_bug.cgi?id=79765 <- I found my very own bugreport and pinged it.


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

That was fast: https://bugs.freedesktop.org/show_bug.cgi?id=79765

Now it's time for all Baytrail / IVB people to help testing.

Furthermore MCDI was implemented for IVB platform! https://github.com/gbeauchesne/libva-intel-driver/commit/d7d5e99bf7208475310fa71992cbed22842bb05a

Edit: Unstoppable wsnipex will build new libva-driver-intel packages based on: https://github.com/fritsch/libva-intel-driver/commits/ppamaster - they should be ready soon.

I am really curious :-)


RE: vaapi-sse4: Deinterlacing Testing - alex.ba - 2014-10-27

Hi ,

cool :-) Sounds good.

One question as I'm a little bit confused of all these different releases. Maybe you can help fritsch. Where do I see which Intel driver version I have installed?
I assumed that after adding: sudo apt-add-repository ppa:wsnipex/vaapi

and doing an update: It should be the latest one right? Or do I have to change something? I just aske because I added this repository sucessfully and then installed the driver with:

apt-get install libva-intel-vaapi-driver and saw that something with 1.3.0 was installed. When I have a look at the repo there is somethinmg with 1.4.1

Thanks for your help

Alex


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

If you follow the howto you will get the the mentioned libva-driver with version 1.4.x


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

Concerning then new driver: Please follow the above bugreport for now (better don't install it) - I run into constant segfaults :-)
Edit: HSW is still fine - progressive also works on IVB.


RE: vaapi-sse4: Deinterlacing Testing - wo0zy - 2014-10-27

Hi Folks,

Sorry for another Linux noon question. Hopefully simple enough that someone won't mind answering Smile

If I try this on my setup in the living room I actually don't want XBMC to autostart. Can I safely remove the upstart script from the instructions in the OP (or a least the bit that actually starts xbmc) without breaking something else?

Also, I want to use a different username. Seems easy enough to do but again I'm worried I've missed something fundamental.

Appreciate this is chicken feed compared to the usual posts here but I'm trying to run before I can walk with a new OS while being aware of what I want to achieve (and have with "that other OS").

Thanks in advance!


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

The howto is provided _as_is_

but you can easily just install Ubuntu Desktop (14.04 LTS 64 bit) - if you prefer that and do the following two things:

Code:
sudo apt-add-repository ppa:wsnipex/vaapi
sudo apt-add-repository ppa:wsnipex/xbmc-fernetmenta-master

Code:
sudo apt-get update
sudo apt-get dist-upgrade

Code:
sudo apt-get install kodi kodi-bin libva-intel-vaapi-driver i965-va-driver i965-va-driver

Next do the xbmc settings written in the first post - done.


RE: vaapi-sse4: Deinterlacing Testing - wo0zy - 2014-10-27

(2014-10-27, 21:17)fritsch Wrote: The howto is provided _as_is_

but you can easily just install Ubuntu Desktop (14.04 LTS 64 bit) - if you prefer that and do the following two things:

Code:
sudo apt-add-repository ppa:wsnipex/vaapi
sudo apt-add-repository ppa:wsnipex/xbmc-fernetmenta-master

Code:
sudo apt-get update
sudo apt-get dist-upgrade

Code:
sudo apt-get install kodi kodi-bin libva-intel-vaapi-driver i965-va-driver i965-va-driver

Next do the xbmc settings written in the first post - done.

Brilliant!

Thanks so much for your patience and time fritsch! You sir are a real Gent.

All the best,

Wo0zy.


RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-27

After hacking arround in the vaapi driver I got it "kind of working". Just see yourself: https://bugs.freedesktop.org/attachment.cgi?id=108531

Just watch the ticker:

Deinterlace (yadif): Great quality
BOB and VAAPI-BOB: Fine
MCDI and MADI: Looks like something is really wrong :-)

For the adventurous, gentoo, arch folks... I just workarounded the segfault, no idea what this breaks:
Code:
From 21d7b338e2d4be914896d698354fe4785b880ea0 Mon Sep 17 00:00:00 2001
From: fritsch <[email protected]>
Date: Mon, 27 Oct 2014 21:54:19 +0100
Subject: [PATCH] i965pp: Don't assert

---
src/i965_post_processing.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/src/i965_post_processing.c b/src/i965_post_processing.c
index ddb553e..480dbaf 100755
--- a/src/i965_post_processing.c
+++ b/src/i965_post_processing.c
@@ -3813,11 +3813,16 @@ gen7_pp_nv12_dndi_initialize(VADriverContextP ctx, struct i965_post_processing_c
     /* Copy previously generated field */
     if (dndi_ctx->copy_out_previous) {
         obj_surface = dndi_ctx->frame_store[DNDI_FRAME_OUT_PREVIOUS].obj_surface;
-        assert(obj_surface && obj_surface != dst_obj_surface);
-        assert(obj_surface->base.id != dst_obj_surface->base.id);
-        status = vpp_surface_convert(ctx, obj_surface, dst_obj_surface);
-        if (status == VA_STATUS_SUCCESS)
+        if ((obj_surface && obj_surface != dst_obj_surface) &&
+           (obj_surface->base.id != dst_obj_surface->base.id))
+        {
+          status = vpp_surface_convert(ctx, obj_surface, dst_obj_surface);
+          if (status == VA_STATUS_SUCCESS)
             status = VA_STATUS_SUCCESS_1;
+        }
+        else
+          status = VA_STATUS_ERROR_INVALID_SURFACE;
+
         return status;
     }

--
1.9.1



RE: vaapi-sse4: Deinterlacing Testing - fritsch - 2014-10-28

So another update: In the meantime Gwenole pushed another version which fixes the segfault and does deinterlacing successfully.

So - now all the Baytrail and IVB users give the latest va-driver from the wsnipex ppa a try, please!


You can directly give your visual feedback to: https://bugs.freedesktop.org/show_bug.cgi?id=79765