[i.MX6] XBMC running on Freescale SoC's - Printable Version +- Kodi Community Forum (https://forum.kodi.tv) +-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32) +--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93) +--- Thread: [i.MX6] XBMC running on Freescale SoC's (/showthread.php?tid=161793) |
RE: [i.MX6] XBMC running on Freescale SoC's - mk01 - 2014-02-15 LeoKesler, wolfgar, "__dma_free_remap: trying to free invalid coherent area: " errors are not related specifically to (only) the VPU DMA commit. I removed it a while ago and since then hit the dmesg message few times. the commit makes the error to appear a bit more often though. Code: [12147.428407] __dma_free_remap: trying to free invalid coherent area: (null) currently got this after watching live TV (tvheadend), SD resolution. this is what is in XBMC.log at least x1000 times Code: 19:37:03 T:1429124096 NOTICE: VpuDeQueueFrame - Release expired buffer - idx : 3 it started a bit like low FPS (~2), but after few seconds it normalised and worked until I stopped it (~30min). and as the player stopped, the message was thrown into dmesg. dmesg was during playing constantly filled with Code: [12129.620860] mxc_v4l2_output mxc_v4l2_output.0: Enable deinterlace TB. for each and every frame number (I have loglevel 7). I have the feeling that "deinterlacing" was there part of a discussion. Also I can confirm that HDMI_CEC connection is broken with (almost) each fatal video error. Looks like it can't survive "resets", "reconnects" or even this errors sometimes: ERROR: GetPicture - player is ahead of time (114939.105933) RE: [i.MX6] XBMC running on Freescale SoC's - wolfgar - 2014-02-16 Hi mk01 You can disable deinterlacing that way : export IMX_DEINT_MOTION=-1 before launching xbmc if you think there is something bad with it For your DMA issue I don't know : I have run my utilite all the day on SD channels (to perform endurance testing) and it is still playing perfectly after 12hours (source being SD channels) To be clear : My current kernel has no longer the VPU wandboard patch in it (with this patch I also have issues very quickly) Regards Stephan RE: [i.MX6] XBMC running on Freescale SoC's - hste - 2014-02-16 @stephan Is this the kernel you use ? https://github.com/wolfgar/linux/commits/wandboard_imx_3.0.35_4.1.0 Or do have you some other patches also? hste RE: [i.MX6] XBMC running on Freescale SoC's - Koying - 2014-02-16 (2014-02-10, 14:14)Koying Wrote: In https://github.com/koying/xbmc/commits/imx , I've squashed your commits up to now (not the 1080i fixes) and I've baselined pure software rendering.Hey wolfgar, Got rendering via VIVANTE direct egl texture working RE: [i.MX6] XBMC running on Freescale SoC's - wolfgar - 2014-02-16 (2014-02-16, 13:48)hste Wrote: @stephanHi hste, I use this one : https://github.com/wolfgar/utilite/commit/f7cf6912d8be60c2b2ce1427df242eaf40ac9054 Stéphan (2014-02-16, 16:30)Koying Wrote:(2014-02-10, 14:14)Koying Wrote: In https://github.com/koying/xbmc/commits/imx , I've squashed your commits up to now (not the 1080i fixes) and I've baselined pure software rendering.Hey wolfgar, Hi Koying, Congratulations ! I look forward to giving it a try... Has the switch to vivante direct texture brought the expected benefits ? I come back to you as soon as I have been able to give it a try Best regards Stephan RE: [i.MX6] XBMC running on Freescale SoC's - Koying - 2014-02-16 (2014-02-16, 17:12)wolfgar Wrote: Has the switch to vivante direct texture brought the expected benefits ?Main benefit, as far as I'm concerned, is to stay inside XBMC way of working as much as possible and to not be dependent on the kernel's V4L and/or fb support. On the pro side, I don't see performance penalty (on cubox-i quad), XBMC's 3D support is working, as is VSYNC (with FB_MULTI_BUFFER=2). On the con side, deinterlacing is not implemented, yet, and there is a corner-case issue with top-bottom 3D if the height is not mod-16, because cropping is a bit hacky. On an other note, this DMA issue is a bitch. I compile on the device and ld is fragmenting it like hell RE: [i.MX6] XBMC running on Freescale SoC's - emveepee - 2014-02-16 (2014-02-16, 16:30)Koying Wrote:(2014-02-10, 14:14)Koying Wrote: In https://github.com/koying/xbmc/commits/imx , I've squashed your commits up to now (not the 1080i fixes) and I've baselined pure software rendering.Hey wolfgar, Where are these functions found? LinuxRendererGLES.cpp:2692:66: error: 'glTexDirectVIVMap' was not declared in this scope LinuxRendererGLES.cpp:2693:45: error: 'glTexDirectInvalidateVIV' was not declared in this scope Martin RE: [i.MX6] XBMC running on Freescale SoC's - Koying - 2014-02-16 (2014-02-16, 21:06)emveepee Wrote: LinuxRendererGLES.cpp:2692:66: error: 'glTexDirectVIVMap' was not declared in this scopeBy me, they come from Code: #ifdef HAS_IMXVPU RE: [i.MX6] XBMC running on Freescale SoC's - LeoKesler - 2014-02-16 (2014-02-16, 21:38)Koying Wrote:(2014-02-16, 21:06)emveepee Wrote: LinuxRendererGLES.cpp:2692:66: error: 'glTexDirectVIVMap' was not declared in this scopeBy me, they come from Can you tell what is the parameters you use in .configure command line ? RE: [i.MX6] XBMC running on Freescale SoC's - Koying - 2014-02-16 Code: ./configure --enable-neon --enable-codec=imxvpu \ RE: [i.MX6] XBMC running on Freescale SoC's - LeoKesler - 2014-02-16 (2014-02-16, 21:46)Koying Wrote: I am getting this error: LinuxRendererGLES.cpp: In member function ‘void CLinuxRendererGLES::UploadIMXMAPTexture(int)’: LinuxRendererGLES.cpp:2692:66: error: ‘glTexDirectVIVMap’ was not declared in this scope (GLvoid **)(&codecinfo->data[0]), &physical); ^ LinuxRendererGLES.cpp:2693:45: error: ‘glTexDirectInvalidateVIV’ was not declared in this scope glTexDirectInvalidateVIV(m_textureTarget); ^ /xbmc/Makefile.include:95: recipe for target 'LinuxRendererGLES.o' failed http://pastebin.com/40CipFas Any idea ? I am using a version of this PKGBUIILD: https://github.com/CrawX/PKGBUILDs/blob/master/alarm/xbmc-imx/PKGBUILD , with your git and .configure options. If I try to compile a clean, without any modification (from PKGBUILD), I get this error: checking for main in -lEGL... no configure: error: Could not find a required library. Please see the README for your platform. Update: export LDFLAGS="$LDFLAGS -L/opt/fsl/lib" for avoid this error: checking for main in -lEGL... no Thank you. RE: [i.MX6] XBMC running on Freescale SoC's - wolfgar - 2014-02-17 (2014-02-16, 17:56)Koying Wrote:(2014-02-16, 17:12)wolfgar Wrote: Has the switch to vivante direct texture brought the expected benefits ?Main benefit, as far as I'm concerned, is to stay inside XBMC way of working as much as possible and to not be dependent on the kernel's V4L and/or fb support. Hi Koying, My question was simply about the use of direct texture and the associated performance improvement. But OK I have just been able to try your version and obviously your cpu load issue is gone (it seems to be very similar to the V4L version) Have you also been able to give it a try for android ? Apart from the deinterlacing issue you mentioned, I can't have a good VSYNC in spite of defining the environment variable export FB_MULTI_BUFFER=2 before launching xbmc. Have you configured something else ? Obviously you are totally right regarding the advantage of using this way of rendering : it is more aligned with xbmc way of working. (Regarding 3D I trust you as I am perfectly unable to test this feature ) I have just grabbed your version on a new branch https://github.com/wolfgar/xbmc/commits/nov4l and will at least merge my latest changes. I will also try to "isolate" better my v4l version so that we can have a very similar DVDVideoCodecIMX.cpp file and can have the 2 versions coexist by the time it makes sense... Also, as you are a xbmc team member, maybe you can help with upstream this imx6 port ? At last for the DMA issue, I have lots of reports but on my side, I have really very rare issue with my main configuration (utilite pro). A user reported that he thinks USB activity may increase the occurrence because issues became very sparse when he stopped using a USB driver to stream over network Kind regards Stephan RE: [i.MX6] XBMC running on Freescale SoC's - mk01 - 2014-02-17 (2014-02-16, 21:06)emveepee Wrote: Where are these functions found? closed binaries: gpu-viv-bin-mx6q RE: [i.MX6] XBMC running on Freescale SoC's - mk01 - 2014-02-17 (2014-02-16, 00:13)wolfgar Wrote: For your DMA issue I don't know : I have run my utilite all the day on SD channels (to perform endurance testing) and it is still playing perfectly after 12hours (source being SD channels) Stefan, me too without it, few days. I still can't find a "rule" with the TV slowing down. yesterday I watched olympic games for 10s, then under run buffers, skipped frames and done. Opened right again and watched for next 4h without issues. So I really believe you you can't hit this problem. btw: as you started discussion with integration to XBMC, could we implement resolutions & freq changes etc ? RE: [i.MX6] XBMC running on Freescale SoC's - emveepee - 2014-02-17 (2014-02-17, 06:32)mk01 Wrote: closed binaries: gpu-viv-bin-mx6q I was trying to merge these new build's with GeexBox but I can't takes koyring's repo beyond that error. Stéphan's non-44l repo does build xbmc.bin so the binaries are there. It must be a nuance of the Geexbox build process. Martin |