On Fri, 26 Oct 2001, Greg Wright wrote: > "Sottek, Matthew J" wrote: > > > > XV_FRAME_TYPE = XV_HOLD > > XvShmPutImage() > > ... > > XvShmPutImage() > > ... > > XvShmPutImage() > > XV_FRAME_TYPE = XV_FRAME > > > > The target of the XvShmPutImage will only change when XV_HOLD is > > set. (Or if XvShmPutImage is called without XV_HOLD) So however > > many XvShmPutImage()'s get called while in XV_HOLD get put in the > > same place overwriting each other. Once I get an implementation done > > I'll write up some clear documentation. > > > > -Matt > > > You and Mark were right, I was still thinking they were bit fields. > > But, I still have a question on the above example. In a follow up > post Mark points out that the XV_FRAME_TYPE (or whatever it ends > up being called) is a write only atom that takes effect on the > next put. Is that the case? If so, The above won't work right? > Just setting XV_FRAME_TYPE to XV_FRAME will not display the last > held frame, instead, it won't do anything until the next put which > will have new data. >
I wasn't expecting clients to call XV_HOLD then Put and not display it afterwards. There seem to be two feasible implemenations: 1) XV_HOLD stays into effect until it is displayed. If a second Put comes along before the display the new Put overrides the first. 2) XV_HOLD gets canceled after a second put. I expect 1) is easier to implement. Mark. _______________________________________________ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert