[Mplayer-cvslog] CVS: main/loader/qtx/debug README,NONE,1.1

Arpi of Ize arpi at mplayer.dev.hu
Mon Jan 21 01:42:34 CET 2002


Update of /cvsroot/mplayer/main/loader/qtx/debug
In directory mplayer:/var/tmp.root/cvs-serv481

Added Files:
	README 
Log Message:
qtx hacking how-to

--- NEW FILE ---
How to trace/debug QuickTime core/codecs   by A'rpi
========================================

Ok. I'll try to collect steps and info required to set up a working
trace/debug environment for QTX-support development.

The basics:
===========
I'm running QuckTime Player for Windows in a modified WINE.
Modifications are made in GetProcAddress implementation, which
is used by win32 programs to get API entry points.
With the modified GetProcAdderss, they get the address of a wrapper
function. This wrapper will dump in/out parameters and calls the
real one. This way we can follow API calls, and their parameters.

Setting up QT Player in opensource wine:
========================================
Probably there are other ways to get it, i'll describe here my way:
1. Download the Crossover plugin from www.codeweavers.com
   I've used the full version, but the demo should be ok too.
1.b. Install it, start it, allow it to install QT Player.
     Play with it until you get QT Player working, playing files from your HDD.
2. Download the Codeweaver's WINE source:
 ftp://ftp.codeweavers.com/pub/wine/old/20010626/codeweavers-wine-20010626.tar.gz
2.b. Compile it, install it.
   Check if it works, try to run notepad.exe or such simple win32 prg with wine.
3. Copy (link?) directory 'dotwine' to ~/.wine
   You may have to edit wine's config to fix PATH.
   Try to run QT Player in wine! My cmdline:
 wine /root/.wine/fake_windows/Program\ Files/QuickTime/QuickTimePlayer.exe
 
Patching wine, to get QT traced:
================================
Replace loader/module.c in WINE source with module.c file from this directory.
Also drop other files (wrapper.*, qt_*) there.

Add this line to the Makefile, right before the C_SRCS =  line:
ASM_SRCS += wrapper.S

You're done. Start QT Player in wine again, and check its output.
You can change traced function list at qt_comp.h file.

Credits:
========
wrapper.h|S: sent to -dev-eng list by Dylan Perry
crossover plugin full version: donated to us by Codeweavers

Thank you!




More information about the MPlayer-cvslog mailing list