[MPlayer-users] How to determine when a seek is complete?

Chris Crochet chris at weldtest.com
Wed May 21 09:30:19 CEST 2014


On Tue, May 20, 2014 at 1:48 PM, Reimar Döffinger <Reimar.Doeffinger at gmx.de>
wrote:
> This should never happen.
> Since there aren't proper FIFOs on Windows, how do you control MPlayer?
> Are you making sure there is sufficient space in the buffers before
> writing?
> Are you checking the return values of any writes you do?
...
> The seek should have happened before the first position updated after
> MPlayer received the command. You should be able to use c) to make
> sure it received the command and then use a).
> It's still going to be brittle.

I'm currently using the .NET Framework wrapper for opening an external
process with redirected stdin/stdout/stderr.  AFAIK only a few essential
stream methods are implemented, and some of those only partially; so
checking FIFO size, space, and return values isn't possible.  Given your
statements, I now wonder if this wrapper is responsible for both the
dropped commands and out-of-order events.  It wouldn't be the first time
.NET has caused me headaches.  I'll look into accessing these streams at a
lower level.

> Which message does it print now? I am not aware of any changes.

In response to:

   set_property tv_brightness 50

The Windows binary release prints:

   Failed to set property 'tv_brightness' to '50'.

And r37205 prints:

   Unknown property: 'tv_brightness'
   ANS_ERROR=PROPERTY_UNKNOWN

I logged these from my program, which doesn't distinguish between
stdout/stderr, so I'm not sure which stream these lines came in on.  Or
whether these are in the correct order, if the .NET wrapper is broken.

> If you do not need the OSD, there is the osd_show_text function that
> should also be printed onto the terminal.

Unfortunately, I'm using the OSD.

> There might also be a good argument for a "user data" property, that
> just allows a slave client to store and retrieve arbitrary data in the
> MPlayer process. Which should be possible to use for this purpose
> as well as other things, and is more generic than a ping/echo command...

I like this. ;)


More information about the MPlayer-users mailing list