[MPlayer-dev-eng] state of realvideo?
Kees Cook
mplayer at outflux.net
Mon May 20 17:23:58 CEST 2002
On Fri, May 17, 2002 at 10:37:19PM +0200, Arpi wrote:
> I would try to implement a dummy wrapper function set, and preload it.
> So, it could print in/out parameters of the library functions.
> Of course, first you have to assume it has many (10?) parameters, and then
> you'll see with multiple runs which parameters are not parameters...
> at leats i used this trick when tracing qtx codecs in qtplayer running in wine
How do you see which are or are not parameters? Also, digging through the
disassembly, it looks like it uses a _huge_ number of parameters. It
references things in more than 100 bytes back on the stack: push
esp, pop ebp, *use* [ebp-180].
> codec_init(width,height,depth, other codec options, mayeb all this in a
> struct)
If it's doing this, it's passing it _as_ a struct, rather than a pointer
to a struct. Really weird.
> and the sdk headers can give some hints on the API structure and data formats.
Yeah, I think I'm going to look their next to see if I can find anything
that looks familiar.
> > Codecs/rv20.so.6.0 => Codecs/drv2.so.6.0 `RV20toYUV420HiveMessage'
> ???
It calls this right after the init. (and then segfaults...)
Also, is there an easy way to figure out what the return variables are?
And if I do get this working, there are some problems I'm not sure how to
solve with a regular .o file. For example, this code appears to be C++
compiled, and looks for a reference "__pure_virtual". I had to make a
separate .so that defined this before dlopen would quit complaining about
it being missing. Putting it in my .c file didn't seem to solve it, and
I'm not sure why.
--
Kees Cook @outflux.net
More information about the MPlayer-dev-eng
mailing list