You are on page 1of 1

------------------------

Interface
------------------------
The UberNES movie encoder scans for DLLs that implement functions with the
following C-style signatures:

void* OnCreate(HINSTANCE dllInstance, HWND owner)


void OnDestroy(void* context)
char* GetName()
int GetUberNESMovieEncoderPluginVersion()
void ShowOptions(void* context)
bool OnStartEncoding(void* context, const char* movieFile)
bool OnStopEncoding(void * context)
void OnFrame(void* context, const unsigned char* videoFrame, const unsigned char*
audioFrame)

------------------------
Sample plugins
------------------------
This archive should contain 4 different sample plugins for Microsoft VisualStudio
2003:

DoNothing - Implements the bare minimum required to register as a plugin


BMPEncoder - Writes each video frame to a separate .BMP file. Useful for seeing
how the NES display data is passed to plugins
WAVEncoder - Logs all audio frames to a single .WAV file. Useful for seeing how
the NES audio data is passed to plugins
XvidEncoder - Encodes video data into Xvid movie file. A full-featured plugin that
includes a settings dialog window.

------------------------
Notes
------------------------

The OnCreate function returns a void pointer to the application. This void pointer
is passed to all subsequent plugin function calls (except for GetName and
GetUberNESMovieEncoderPluginVersion.) As shown in 3 of the sample plugins, this
enables plugins to pass classes across the DLL boundary without worrying about
compiler incompatibilities.

The GetUberNESMovieEncoderPluginVersion function should return 0x10.

The visual and audio frame data are passed to the plugin as simple pointers. The
visual format is 24-bit color, RGB format. Each image is 256x224, so the video
buffer size is 256 * 224 * 3 = 172032 bytes. The audio format is 44.64 KhZ, 16-bit
samples, so the audio buffer contains 744 samples per frame (1488 bytes.)

------------------------
Contact
------------------------
WWW: http://www.ubernes.com
email: mkprodsemail@yahoo.com

You might also like