[mythtv] Odp: Re: Developing RPI2 MythTV package for ArchLinux ARM

warpme warpme at o2.pl
Mon Jan 18 11:41:39 UTC 2016


Ok - it looks like my issue was caused by bellagio lib silently pulled by mesa install - and I wasn't aware bout this. I finally managed get working current master on RPI2 with OpenMAX working on ArchLinux.   Now I want to check are some minor issues an result of my environment or rather it is known MythTV/OpenMAX issue.  XCB QPA:  1. In FE logs I see: .... QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled .... I think this quite expected as AFIK RPI2 EGL windowing isn't compatible with X11 windowing and by this VC4 EGLFS will not work with X11.  Q: I'm wonder are other ppl see such line i.e. Jessie Raspbian?  2. Playback of interlaced 1080HD material gives not small CPU load. Also FPS looks strange: 2016-01-16 21:14:10.281725 I  AOBase: Opening audio device 'default:CARD=ALSA' ch 2(2) sr 48000 sf signed 16 bit reenc 0
2016-01-16 21:14:10.289058 W  ALSA: Requested 500000us got 341333 buffer time
2016-01-16 21:14:10.293969 E  ALSA: failed to register mixer device OpenMAX:: No such file or directory
2016-01-16 21:14:10.294098 E  ALSA: Unable to open audio mixer. Volume control disabled
2016-01-16 21:14:10.470548 N  Player(0): Waited 100ms for video buffers AAAAAAAAAPPP
2016-01-16 21:14:10.575283 N  Player(0): Waited 205ms for video buffers AAAAAAAAAPPP
2016-01-16 21:14:10.679629 N  Player(0): Waited 310ms for video buffers LLLAAAAAAPPP
2016-01-16 21:14:11.432388 I  VideoOutput: Created YV12 OSD.
2016-01-16 21:14:43.461510 I  OSD: Base theme size: 800x600
2016-01-16 21:14:43.461632 I  OSD: Scaling factors: 2.4x1.8
2016-01-16 21:14:55.596332 I  Player(0): FPS:   20.60 Mean: 48555 Std.Dev: 15625 CPUs: 5% 5% 6% 5% 
2016-01-16 21:14:56.738590 I  Player(0): FPS:   21.93 Mean: 45604 Std.Dev: 12372 CPUs: 79% 21% 10% 5% 
2016-01-16 21:14:57.896337 I  Player(0): FPS:   21.63 Mean: 46225 Std.Dev: 13930 CPUs: 14% 67% 14% 24% 
2016-01-16 21:14:59.084452 I  Player(0): FPS:   21.09 Mean: 47425 Std.Dev: 14083 CPUs: 15% 38% 45% 24% 
2016-01-16 21:15:00.223754 I  Player(0): FPS:   22.00 Mean: 45460 Std.Dev: 13068 CPUs: 23% 39% 46% 22% 
2016-01-16 21:15:01.400563 I  Player(0): FPS:   21.28 Mean: 46984 Std.Dev: 14457 CPUs: 48% 9% 7% 49% 
2016-01-16 21:15:02.652863 I  Player(0): FPS:   20.00 Mean: 50008 Std.Dev: 16160 CPUs: 15% 31% 59% 20% 
2016-01-16 21:15:03.915382 I  Player(0): FPS:   19.84 Mean: 50408 Std.Dev: 16677 CPUs: 33% 40% 20% 27% 
2016-01-16 21:15:05.099167 I  Player(0): FPS:   21.16 Mean: 47264 Std.Dev: 13397 CPUs: 20% 16% 11% 70% 
2016-01-16 21:15:06.316702 I  Player(0): FPS:   20.58 Mean: 48583 Std.Dev: 15263 CPUs: 36% 24% 27% 31% 
2016-01-16 21:15:07.551692 I  Player(0): FPS:   20.28 Mean: 49310 Std.Dev: 13157 CPUs: 51% 61% 33% 70% 
2016-01-16 21:15:08.885468 I  TV::HandleStateChange(): Attempting to change from WatchingLiveTV to None  EGLFS: 1. Any action triggering OSD gives 1sec blank screen at first time displaying OSD.  Second and consecutive diplays of OSD are OK. Here is FE log when user asks for OSD .............. 2016-01-18 08:13:25.800276 I  TV::StartTV(): Entering main playback loop.
2016-01-18 08:13:25.931955 I  DOMX:0 SettingsChanged - begin
2016-01-18 08:13:25.935118 I  OMX:0 Port 131: output, bufs=2(1) bufsize=3133440 at 16 discontiguous, disabled, unpopulated
2016-01-18 08:13:25.935543 I  OMX:0 Port 131: video, w=1920 h=1080 stride=1920 sliceH=1088 bps=0 fps=25 compress=OMX_VIDEO_CodingUnused enc=OMX_COLOR_FormatYUV420PackedPlanar
2016-01-18 08:13:25.937127 I  DOMX:0 OMX_InterlaceFieldsInterleavedUpperFirst
2016-01-18 08:13:25.937669 I  DOMX:0 Pixel aspect x/y = 1/1
2016-01-18 08:13:25.962038 I  DOMX:0 SettingsChanged - end
2016-01-18 08:13:26.041342 I  Player(0): Waiting for video buffers...
2016-01-18 08:13:26.090937 I  VDP: GetFilteredDeint() : openmax -> 'openmaxadvanced'
2016-01-18 08:13:26.091085 I  Player(0): Enabled deinterlacing
2016-01-18 08:13:30.105740 I  Player(0): FPS:   25.16 Mean: 39747 Std.Dev: 15370 CPUs: 14% 16% 20% 12% 
2016-01-18 08:13:34.117056 I  Player(0): FPS:   24.96 Mean: 40067 Std.Dev: 12090 CPUs: 13% 10% 13% 10% 
2016-01-18 08:13:36.585048 I  TV::LoadFileHelper(): Loading menu /home/mythtv/.mythtv/menu_playback.xml
2016-01-18 08:13:36.585476 I  TV::LoadFileHelper(): Loading menu /usr/share/mythtv/themes/MythCenter/menu_playback.xml
2016-01-18 08:13:36.585701 I  TV::LoadFileHelper(): Loading menu /usr/share/mythtv/themes/default/menu_playback.xml
2016-01-18 08:13:36.597396 I  TV::LoadFileHelper(): Loading menu /home/mythtv/.mythtv/menu_playback_compact.xml
2016-01-18 08:13:36.597644 I  TV::LoadFileHelper(): Loading menu /usr/share/mythtv/themes/MythCenter/menu_playback_compact.xml
2016-01-18 08:13:36.597789 I  TV::LoadFileHelper(): Loading menu /usr/share/mythtv/themes/default/menu_playback_compact.xml
2016-01-18 08:13:36.598567 I  TV::LoadFileHelper(): Loading menu /home/mythtv/.mythtv/menu_playback.xml
2016-01-18 08:13:36.598716 I  TV::LoadFileHelper(): Loading menu /usr/share/mythtv/themes/MythCenter/menu_playback.xml
2016-01-18 08:13:36.598838 I  TV::LoadFileHelper(): Loading menu /usr/share/mythtv/themes/default/menu_playback.xml
2016-01-18 08:13:36.978138 I  ALSA: WriteAudio: buffer underrun
2016-01-18 08:13:37.103527 I  Player(0): Video is 3.78697 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:37.103807 I  AOBase: Pause 1
2016-01-18 08:13:37.105086 I  Player(0): Video is 4.41523 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:37.105229 I  AOBase: Pause 1
2016-01-18 08:13:37.106245 I  Player(0): Video is 4.6364 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:37.106340 I  AOBase: Pause 1
2016-01-18 08:13:37.107622 I  Player(0): Video is 4.5523 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:37.107726 I  AOBase: Pause 1
2016-01-18 08:13:37.108626 I  Player(0): Video is 4.23922 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:37.108759 I  AOBase: Pause 1
2016-01-18 08:13:37.109701 I  Player(0): Video is 3.7544 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:37.109800 I  AOBase: Pause 1
2016-01-18 08:13:37.110177 I  Player(0): Waiting for video buffers...
2016-01-18 08:13:37.110557 I  AOBase: OutputAudioLoop: audio paused
2016-01-18 08:13:37.150212 I  Player(0): Video is 3.1408 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:37.150679 I  Player(0): Waiting for video buffers...
2016-01-18 08:13:37.241524 I  AOBase: Pause 0
2016-01-18 08:13:37.242303 I  AOBase: OutputAudioLoop: Play Event
2016-01-18 08:13:37.412874 I  Player(0): Video is 3.63873 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:37.488240 I  Player(0): Video is 4.47277 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:37.580968 I  Player(0): Video is 4.87957 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:37.647032 I  Player(0): Video is 4.83467 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:37.727283 I  Player(0): Video is 4.59475 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:37.807481 I  Player(0): Video is 4.13355 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:37.919037 I  Player(0): Video is 3.7064 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:38.729949 I  Player(0): FPS:   21.70 Mean: 46083 Std.Dev: 42080 CPUs: 13% 14% 9% 11% 
2016-01-18 08:13:39.548351 I  Player(0): Video is 3.31908 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:39.548503 I  AOBase: Pause 1
2016-01-18 08:13:39.549769 I  AOBase: OutputAudioLoop: audio paused
2016-01-18 08:13:39.549792 I  Player(0): Video is 3.4268 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:39.549936 I  AOBase: Pause 1
2016-01-18 08:13:39.550201 I  AOBase: OutputAudioLoop: audio paused
2016-01-18 08:13:39.551403 I  Player(0): Video is 3.2076 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:39.552727 I  AOBase: Pause 0
2016-01-18 08:13:39.552894 I  AOBase: OutputAudioLoop: Play Event
2016-01-18 08:13:40.872221 I  Player(0): Video is 3.04778 frames ahead of audio,
			doubling video frame interval to slow down.
2016-01-18 08:13:43.041186 I  Player(0): 400 interlaced frames seen.
2016-01-18 08:13:43.077275 I  Player(0): Video is 3.59348 frames behind audio (too slow), dropping frame to catch up.
2016-01-18 08:13:43.077397 I  AOBase: Pause 1 .................  Q: is this OSD and known issue? How smooth OSD works for other ppl on EGLFS?     2. CPU load on EGLFS is much better: 2016-01-18 08:13:47.296824 I  Player(0): FPS:   23.74 Mean: 42116 Std.Dev: 23044 CPUs: 21% 17% 15% 13% 
2016-01-18 08:13:51.282826 I  Player(0): FPS:   25.12 Mean: 39813 Std.Dev: 17460 CPUs: 17% 10% 15% 10% 
2016-01-18 08:13:55.315114 I  Player(0): FPS:   24.83 Mean: 40271 Std.Dev: 18349 CPUs: 20% 15% 17% 13%  Q: Is such huge difference between XCB and EGFLS expected?  
 

  
    Dnia 16 stycznia 2016 13:51 Piotr Oniszczuk <piotr.oniszczuk at gmail.com> napisał(a):
  
  
     

Wiadomość napisana przez Lawrence Rust <lvr at softsystem.co.uk> w dniu 07.01.2016, o godz. 11:04:
 
On Tue, 2016-01-05 at 22:12 +0100, warpme wrote:


Wiadomość napisana przez Lawrence Rust <lvr at softsystem.co.uk> w dniu

04.01.2016, o godz. 16:45:

 
Apologies if I was unclear, but I meant that you should remove the
setuid() call on line 1799, not disable line 1789. i.e.
 
-if (setuid(getuid()) != 0)
+if (0 && setuid(getuid()) != 0)

 
Lawrence,
With this mod I finally was able to start FE - bun only under GDB and
X11 SSH forwarding.
Starting FE without GDB always gives me segfault.
 
I believe GDB allows me to overcome qFatal and move forward. 
Pls look on fe-under-remote-x11.log.zip
I think this issue is probably related to Qt5.5.1 setuid thing and
I’ll be happy if You can look on this issue.
 
Running only under X11forwarding is probably related to EGL issues in
my enviroment. 
Pls look on fe-under-direct-x11.txt.zip
I’m wonder Your opinion here.
(Probably I have to rebuild Qt5 for OpenMAX….)

 
Hi,
 
The fe-under-direct-x11.txt log shows the SEGV to be occurring from Qt
code in qt/plugins/xcbglintegrations/libqxcb-egl-integration.so.  I'm
guessing but it looks like Qt 5.5.1 and the RPi EGL libraries are not
happy neighbours.  I believe, from similar experience with Qt 5.4, that
the EGL initialisation has a race condition.  I added this patch:
 
8ffdd74 UI: Avoid a race condition and SEGV in EGLFS during
MythMainWindow creation
 
to workaround a SEGV during startup.  I believe you are suffering
similar problems.  The remote ssh version gets much further probably
because of a difference in timing during startup
 
It's difficult to be more explicit because the backtrace is lacking
detail due to missing debug symbols.  I would recommend installing the
Qt debug symbols together with those for libc and glib.
 
Once you have a filename & line number in Qt then it's a matter of
trawling the Qt code for the problem.  This is likely to need a patch to
Qt to fix.  It may be easier to revert to Qt5.4 if that's possible?
 
-- 
Lawrence Rust
 
_______________________________________________
mythtv-dev mailing list
mythtv-dev at mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org

 
Well, I finally managed to get working current master FE on Archlinux =
ARM and Qt5.5.1
FE starts but playback uses x-blit instead of OMX.
Looking on LOG I see:
 
=E2=80=A6=E2=80=A6=E2=80=A6=E2=80=A6.
2016-01-16 12:16:38.501758 I  TV::TV(): Creating TV object
2016-01-16 12:16:38.704376 N  Suspending idle timer
2016-01-16 12:16:38.719521 I  TV::Init(): Created TvPlayWindow.
2016-01-16 12:16:38.934012 I  TV::HandleStateChange(): Attempting to =
change from None to WatchingRecording
2016-01-16 12:16:39.086499 E  TV::HandleStateChange(): Couldn't find =
recorder for in-progress recording
2016-01-16 12:16:39.255352 N  AudioPlayer: Enabling Audio
2016-01-16 12:16:42.843705 I  AFD: codec MP2 has 2 channels
2016-01-16 12:16:42.
844372 I  AFD: Opened codec 0x3a9e3b0, id(MP2) type(Audio)
2016-01-16 12:16:42.846281 I  AFD: codec MP2 has 2 channels
2016-01-16 12:16:42.846830 I  AFD: Opened codec 0x3aa7020, id(MP2) =
type(Audio)
2016-01-16 12:16:42.847290 I  AFD: Opened codec 0x3aa79a0, =
id(DVB_SUBTITLE) type(Subtitle)
OMX-Cannot open OpenMAX registry file /home/mythtv/.omxregister
OMX-A Component loader constructor fails. Exiting
2016-01-16 12:16:43.857188 E  OMX: OMX_Init error =
OMX_ErrorInsufficientResources
2016-01-16 12:16:43.857269 E  OMX:0 Invalid OpenMAX context
2016-01-16 12:16:43.857431 E  DOMX:0 No video decoder
=E2=80=A6.=20
 
Issue is probably here:
 
OMX-Cannot open OpenMAX registry file /home/mythtv/.omxregister
 
How should I get(or create) this file?
 
_______________________________________________
mythtv-dev mailing list
mythtv-dev at mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mythtv.org/pipermail/mythtv-dev/attachments/20160118/049efb9e/attachment-0001.html>


More information about the mythtv-dev mailing list