devel/2019-render branch on Pi

For discussion of topics specific to MythTV on Raspberry Pi devices
Post Reply
Posts: 69
Joined: Thu Feb 13, 2014 7:53 pm
Great Britain

devel/2019-render branch on Pi

Post by jksj » Sat Dec 07, 2019 4:49 pm

I am getting good with results with a Pi 4 using the devel/2019-render branch which has just been merged into master. Performance on a Pi3 was poor and its best to stick with fixes/30 for now.
On the Pi4 playback was better than fixes/30 for me, there is less judder when panning 1080i content but unfortunately still some.
I am selecting the v4l2 profile for playback.
AFD: Using v4l2-dec for video decoding
VideoOutput: Allowed renderers (filt: v4l2-dec): opengl,opengl-yv12

A couple of points to note:-
Has any one got a video timing method other than USleep with busy wait to work?

VSYNC: DRMVideoSync: VBlank ioctl did not work, unimplemented in this driver?
2019-12-06 23:20:41.714681 E VSYNC: RTCVideoSync: Could not open /dev/rtc:
eno: No such file or directory (2)
2019-12-06 23:20:41.714735 I VideoOutput: SetDeinterlacing (Doublerate 1): Single Medium|CPU|GLSL|DRIVER Double Medium|CPU|GLSL|DRIVER
2019-12-06 23:20:41.767099 I Player(0): Video timing method: USleep with busy wait
2019-12-06 23:20:41.767134 I Player(0): Display Refresh Rate: 59.999 Video Frame Rate: 25.000

On my system the display refresh detected by the frontend is the monitor default not the actual currently selected rate. Monitors tend to default to 60Hz but in the UK most TV is 50Hz.
Has anybody using 50Hz got it to work properly?
xrandr shows

Code: Select all

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 7680 x 7680
HDMI-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 160mm x 90mm
   1920x1080     60.00 +  60.00    50.00*   59.94    30.00    25.00    24.00    29.97    23.98  
   1600x1200     60.00  
Frontend sees
Display: Desktop video mode: 1920x1080 60.000 Hz

Posts: 69
Joined: Thu Feb 13, 2014 7:53 pm
Great Britain

Re: devel/2019-render branch on Pi

Post by jksj » Wed Jan 08, 2020 9:19 am

Status update for Pi4 & current master. mythfrontend version: master [v31-Pre-1669-gbdfb7690ba] UK TV ---1080i 25Hz freeview & freesat
The frontend now correctly detects the display to be 50Hz.
Picture quality is good but there is still tearing during panning.
I get the best results by selecting MMAL as the render method even though this is not available with Pi4 default graphics stack.
The frontend falls back to ffmpeg for decoding.
2020-01-06 19:20:48.507383 I VDP: LoadBestPreferences(1920x1080, 0.000, h264)
2020-01-06 19:20:48.507441 I VDP: LoadBestPreferences Result prio:1, w:, h:, fps:, codecs:, decoder:ffmpeg, renderer:opengl-yv12, deint:none
Hardware rendering using V4L2 produces a slightly better picture but skipping add breaks doesn't work very well. The sync mechanism struggles.

User avatar
Posts: 329
Joined: Mon Apr 27, 2015 5:41 pm
United States of America

Re: devel/2019-render branch on Pi

Post by pgbennett » Wed Jan 08, 2020 7:48 pm

The latest v31 uses AVSYNC2. The old AVSYNC has been removed. AVSYNC2 uses its own timing method base on the real time clock, so the selection of timing method will have no effect. The code to select a video sync method still exists but the selected sync method is not used.

Post Reply