[mythtv] [PATCH] XVideo XvMC VLD broken: crash on channel change
Neale Swinnerton
mythtv-dev.spam at isismanor.com
Wed May 4 11:14:05 UTC 2005
Hi Terry,
your xvmc_vld_4.patch fixes the crash, but I still 'hang' when I change
channel. I get this in the log, any clues? I'm running
CVS from 00:00GMT 2005-05-04
+ xtraview.v2.patch
+ xvmc_vld_3.patch
+ xvmc_vld_4.patch
Neale.
2005-05-04 12:11:04.678 Woo Hoo! We have more XvMC Surfaces than we need
2005-05-04 12:11:04.680 Snapping height to avoid scaling: disphoff 576,
dispyoff: 0
2005-05-04 12:11:04.681 Image size. dispxoff -150, dispyoff: 0,
dispwoff: 1021, disphoff: 576
2005-05-04 12:11:04.682 Image size. imgx 0, imgy: 0, imgw: 720, imgh: 576
2005-05-04 12:11:04.787 waiting for prebuffer... 6
2005-05-04 12:11:04.968 waiting for prebuffer... 7
2005-05-04 12:11:05.147 waiting for prebuffer... 8
2005-05-04 12:11:05.327 waiting for prebuffer... 9
2005-05-04 12:11:05.515 waiting for prebuffer... 10
2005-05-04 12:11:05.677 Prebuffer wait timed out 10 times.
2005-05-04 12:11:05.688 waiting for prebuffer... 0
2005-05-04 12:11:05.868 waiting for prebuffer... 1
2005-05-04 12:11:06.047 waiting for prebuffer... 2
2005-05-04 12:11:06.227 waiting for prebuffer... 3
2005-05-04 12:11:06.407 waiting for prebuffer... 4
2005-05-04 12:11:06.587 waiting for prebuffer... 5
2005-05-04 12:11:06.767 waiting for prebuffer... 6
2005-05-04 12:11:06.947 waiting for prebuffer... 7
2005-05-04 12:11:07.127 waiting for prebuffer... 8
2005-05-04 12:11:07.309 waiting for prebuffer... 9
2005-05-04 12:11:07.379 detectInterlace(Detect Scan, Interlaced Scan,
25, 576) ->Interlaced Scan
2005-05-04 12:11:07.380 Interlaced: Interlaced Scan video_height: 576
fps: 25
2005-05-04 12:11:07.381 positionMap[ 8 ] == 283504.
2005-05-04 12:11:07.487 waiting for prebuffer... 10
2005-05-04 12:11:07.574 Prebuffer wait timed out 10 times.
2005-05-04 12:11:07.575 Prebuffer wait timed out, and not enough free
frames. Discardingbuffers.
2005-05-04 12:11:07.576 VideoOutputXv::DiscardFrames() 1: UUUAAULU
2005-05-04 12:11:07.576 VideoOutputXv::DiscardFrames() 2: UUUAAULU
2005-05-04 12:11:07.577 VideoOutputXv::DiscardFrames() 3: UUUAAULU
2005-05-04 12:11:07.578 VideoOutputXv::DiscardFrames() 4: AdAAAAAd -- done()
2005-05-04 12:11:07.582 AddInheritence future G NOT in used or in
limbo. AdALAAAd
2005-05-04 12:11:07.587 prebuffering pause
2005-05-04 12:11:07.588 waiting for prebuffer... 0
2005-05-04 12:11:07.606 AddInheritence past G NOT in used or in
done. AdAULAAd
2005-05-04 12:11:09.875 Timed out waiting for free video buffers.
2005-05-04 12:11:12.075 Timed out waiting for free video buffers.
2005-05-04 12:11:14.274 Timed out waiting for free video buffers.
2005-05-04 12:11:16.474 Timed out waiting for free video buffers.
2005-05-04 12:11:18.673 Timed out waiting for free video buffers.
2005-05-04 12:11:20.873 Timed out waiting for free video buffers.
2005-05-04 12:11:23.073 Timed out waiting for free video buffers.
2005-05-04 12:11:25.272 Timed out waiting for free video buffers.
2005-05-04 12:11:27.472 Timed out waiting for free video buffers.
2005-05-04 12:11:29.672 Timed out waiting for free video buffers.
2005-05-04 12:11:31.871 Timed out waiting for free video buffers.
2005-05-04 12:11:34.071 Timed out waiting for free video buffers.
2005-05-04 12:11:36.270 Timed out waiting for free video buffers.
Terry Barnaby wrote:
> The current MythTV CVS with XvMC VLD decoding crashes when changing
> a channel.
> This is due to to the test to see if a valid XvMC port is available
> in the static function VideoOutputXv::GetBestSupportedCodec() on lines
> 820->838. This fails on a channel change as the latest XvMC code
> does not close down the XvMC port and so no ports are available for the
> test.
> I'm not sure where is functionality should be put
> (VideoOutputXv::InitXvMc() ?) so I have put a "#ifdef" around this
> code.
> A patch to fix this is enclosed, but as stated, the code really
> needs a better change.
>
> I think I may nearly be there with XvMC VLD decoding ...
>
>
> Terry
>
>
> ------------------------------------------------------------------------
>
> Index: libs/libmythtv/videoout_xv.cpp
> ===================================================================
> RCS file: /var/lib/mythcvs/mythtv/libs/libmythtv/videoout_xv.cpp,v
> retrieving revision 1.137
> diff -u -r1.137 videoout_xv.cpp
> --- libs/libmythtv/videoout_xv.cpp 4 May 2005 06:15:55 -0000 1.137
> +++ libs/libmythtv/videoout_xv.cpp 4 May 2005 08:12:51 -0000
> @@ -817,6 +817,7 @@
> }
>
> bool ok = true;
> +#ifdef ZAP
> if (ret>kCodec_NORMAL_END)
> {
> Window root;
> @@ -836,6 +837,7 @@
> X11S(XvUngrabPort(disp, port, CurrentTime));
> }
> }
> +#endif
> X11S(XCloseDisplay(disp));
>
> if (!ok)
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
More information about the mythtv-dev
mailing list