G'day, On 11 January 2015 at 11:44, Andrew Haines <[email protected]> wrote:
> > I played with this for a few minutes and came up with this: > MPlayerControl1.OnPlaying has to be assigned for > MPlayerControl1.Position to work. Oh. Yes, I see... That was by design - it never occurred to me that someone would want to retrieve the .Position without having .OnPlaying hooked up. I put the checks in for FOnPlaying in an attempt to minimise "chatter" with mplayer. In my testing, I observed degraded playback if that chatter was excessive. In truth though - "excessive" was chatter at frequencies approaching frame by frame querying, not at the frequency Position is currently updated (twice a second). Given the current architecture, what I *can't* do is obtain the position when the user requests it. I can either constantly query the position (which is what I currently do when FOnPlaying is assigned) or never ask for position. As I see it, we've got 3 options: 1. Maintain current code 2. Always request Position from mplayer 3. Add an Options Flag. Only request Position if either optRequestPosition or FOnPLaying assigned. Now you've raised the issue, I'm not in favour of 1. 2 will introduce overheads - but as we've seen when FOnPlaying is assigned, those overheads aren't excessive. 3 preserves my original caution, but perhaps that's unwarranted. Now that there's a few items on the TODO list, let me know which you prefer: 2) or 3) and I'll make the changes. I'll get the .FullScreen property in at the same time (but sorry Pierre: I completely lack the knowledge or time to investigate mplayer working with GL) Many thanks for the feedback Mike
-- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
