[mythtv] Problem with severe video jitter in current MythTv CVS

Terry Barnaby terry1 at beam.ltd.uk
Sun Dec 5 21:02:25 UTC 2004


Terry Barnaby wrote:
> Hi,
> 
> I have just updated my system to use the MythTv from CVS on
> 3/12/04 and am now experiencing severe display jitter. about once
> per second the video display jumps. Previously I was using MythTv
> from CVS 21/11/04 and everything was fine. Going back to this version 
> cures the problem.
> 
> My system is a diskless Via M10K box using the vldXvMC hardware MPEG
> output, although the problems also is apparent with standard Xv
> output as well. The system ends up by using the DRM VSync which is
> running at 50Hz. I have enabled de-interlace although with this switched
> off the problem still exists.
> 
> Has anyone any ideas on what has changed between the CVS dates that
> could cause this and any ideas on where to look in the code to fix it ?
> 
> I have the following output when using the "mythtv" program:
> 
> mythtv /home/terry/tvTest/interlace_test1.mpeg
> mythtv: could not open config file /root/.mythtv/lircrc
> mythtv: No such file or directory
> Failed to read lirc config /root/.mythtv/lircrc for mythtv
> 2004-12-05 15:40:36.078 Joystick disabled.
> 2004-12-05 15:40:36.830 Connecting to backend server: 192.168.2.1:6543 
> (try 1 of 5)
> 2004-12-05 15:40:36.839 Using protocol version 14
> ERROR: couldn't find recorder for in-prog2004-12-05 15:40:36.863 Using 
> protocol version 14
> ress recording
> 2004-12-05 15:40:36.941 AVFD
> 2004-12-05 15:40:36.942 AVFD: Opening Stream #0: codec id 2
> 2004-12-05 15:40:36.943 detectInterlace(Detect Scan, Detect Scan, 25, 
> 576) ->Interlaced Scan
> 2004-12-05 15:40:36.943 Interlaced: Interlaced Scan  video_height: 576 
> fps: 25
> 2004-12-05 15:40:36.950 AVFD: Looking for decoder for 4
> 2004-12-05 15:40:36.951 AVFD
> 2004-12-05 15:40:36.951 AVFD: Opening Stream #1: codec id 86020
> 2004-12-05 15:40:36.952 AVFD: Looking for decoder for 86020
> 2004-12-05 15:40:36.958 Initializing audio parms from stream #0.
> 2004-12-05 15:40:36.961 Estimated bitrate = 128000
> 2004-12-05 15:40:36.968 SyncPositionMap prerecorded, from DB: 0 entries
> 2004-12-05 15:40:36.981 Opening audio device '/dev/dsp'.
> 2004-12-05 15:40:36.982 Opening OSS audio device '/dev/dsp'.
> 2004-12-05 15:40:37.022 Over/underscan. V: 0, H: 0, XOff: 0, YOff: 0
> Using XvMC version: 1.0
> 2004-12-05 15:40:37.036 XvMCSurfaceTypes::find(w 720, h 1, c 0, i 2, m 
> 0,sw 0, sh 56, disp, p<= 56, 5760 <=p, port, surfNum)
> 2004-12-05 15:40:37.037 Trying XvMC port 56
> 2004-12-05 15:40:37.038 Found a suitable XvMC surface 0
> XvMC found and using VLD surface
> 2004-12-05 15:40:37.039 Using XV port 56
> 2004-12-05 15:40:37.072 Image size. dispxoff -120, dispyoff: 18, 
> dispwoff: 960, disphoff: 540
> 2004-12-05 15:40:37.074 Image size. imgx 0, imgy: 0, imgw: 720, imgh: 576
> 2004-12-05 15:40:38.030 Changing from None to WatchingRecording
> 2004-12-05 15:40:38.032 Using realtime priority.
> 2004-12-05 15:40:38.042 XvMC will use bob deinterlacing
> 2004-12-05 15:40:38.043 Using deinterlace method bobdeint
> 2004-12-05 15:40:38.044 nVidiaVideoSync: Could not open device 
> /dev/nvidia0, No such file or directory
> 2004-12-05 15:40:38.057 positionMap[ 0 ] == 2062.
> 2004-12-05 15:40:38.078 Using audio as timebase
> 2004-12-05 15:40:38.078 Video timing method: DRM
> 2004-12-05 15:40:38.078 Refresh rate: 16650, frame interval: 40000
> 2004-12-05 15:40:38.097 waiting for prebuffer...
> 2004-12-05 15:40:38.408 prebuffering pause
> 2004-12-05 15:40:38.408 waiting for prebuffer...
> 2004-12-05 15:40:38.608 A/V diverged by -3.0584 frames, dropping frame 
> to keep audio in sync
> 2004-12-05 15:40:38.610 positionMap[ 1 ] == 55310.
> 2004-12-05 15:40:38.848 prebuffering pause
> 2004-12-05 15:40:38.848 waiting for prebuffer...
> 2004-12-05 15:40:38.968 A/V diverged by -3.06585 frames, dropping frame 
> to keep audio in sync
> 2004-12-05 15:40:39.288 prebuffering pause
> 2004-12-05 15:40:39.288 waiting for prebuffer...
> 2004-12-05 15:40:39.304 HandleGopStart: gopset not set, syncing positionMap
> 2004-12-05 15:40:39.308 SyncPositionMap prerecorded, from DB: 2 entries
> 2004-12-05 15:40:39.308 Stream initial keyframedist: 15.
> 2004-12-05 15:40:39.309 detectInterlace(Ignore Scan, Interlaced Scan, 
> 25, 576) ->Interlaced Scan
> 2004-12-05 15:40:39.309 Interlaced: Interlaced Scan  video_height: 576 
> fps: -1
> 2004-12-05 15:40:39.320 XvMC will use bob deinterlacing
> 2004-12-05 15:40:39.321 Using deinterlace method bobdeint
> 2004-12-05 15:40:39.321 positionMap[ 2 ] == 114702.
> 2004-12-05 15:40:39.428 A/V diverged by -3.03548 frames, dropping frame 
> to keep audio in sync
> 2004-12-05 15:40:39.748 prebuffering pause
> 2004-12-05 15:40:39.748 waiting for prebuffer...
> 2004-12-05 15:40:39.788 positionMap[ 3 ] == 174094.
> 2004-12-05 15:40:39.868 A/V diverged by -3.14925 frames, dropping frame 
> to keep audio in sync
> 2004-12-05 15:40:39.868 A/V diverged by -3.06192 frames, dropping frame 
> to keep audio in sync
> 2004-12-05 15:40:40.208 prebuffering pause
> 2004-12-05 15:40:40.208 waiting for prebuffer...
> 2004-12-05 15:40:40.568 prebuffering pause
> 2004-12-05 15:40:40.568 waiting for prebuffer...
> 2004-12-05 15:40:40.568 positionMap[ 4 ] == 233486.
> 2004-12-05 15:40:40.928 prebuffering pause
> 2004-12-05 15:40:40.928 waiting for prebuffer...
> 2004-12-05 15:40:41.048 positionMap[ 5 ] == 294926.
> 2004-12-05 15:40:41.288 prebuffering pause
> 2004-12-05 15:40:41.288 waiting for prebuffer...
> 2004-12-05 15:40:41.648 prebuffering pause
> 2004-12-05 15:40:41.648 waiting for prebuffer...
> 
> Cheers
> 
> 
> Terry
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev

Some initial results from testing.
1. Sometimes the video is smooth but most of the time it is very
	jittery. It is an intermittant problem.
2. When jittery, CPU usage jumps from the normal 20% to 80%.
3. I note that the VSYNC refresh rate is calculated from the XServer
	mode table lines in "VideoOutputXvMC::GetRefreshRate". This
	calculation is actually incorrect when TVout is being used
	as the primary display on a Via M10K box. In this case, and
	I suspect in the case of other TVOutput chip systems, the
	VGA controllers sync rates are set to TV sync rates irrespective
	of the Modeline settings in the XServer. Maybe MythTv should
	measure the actual VSync rate, if this in in use ? However, even
	hardcoding the refresh rate return to 20000 (50Hz) did not
	affect the problem.

Terry



More information about the mythtv-dev mailing list