Specifying fade duration in Game_Music_Emu

Discuss NSF files, FamiTracker, MML tools, or anything else related to NES music.

Moderator: Moderators

Post Reply
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Specifying fade duration in Game_Music_Emu

Post by tepples »

This question is a cross-post of a question about Ubuntu's package of Game_Music_Emu:

I'm writing a C program that wraps Game_Music_Emu to produce wave files that I can later encode with oggenc or LAME, sort of a more fleshed-out version of demo.c from the source distribution. But I want to specify the duration of the fade rather than using the default of 8 seconds.

From gme.h:

Code: Select all

void gme_set_fade( Music_Emu*, int start_msec );
From gme.cpp in the source code:

Code: Select all

BLARGG_EXPORT void      gme_set_fade       ( Music_Emu* me, int start_msec )      { me->set_fade( start_msec ); }
This uses the default value of the second argument of this method in Music_Emu.h:

Code: Select all

// Set start time and length of track fade out. Once fade ends track_ended() returns
// true. Fade time can be changed while track is playing.
void set_fade( long start_msec, long length_msec = 8000 );
Is there a public function similar to gme_set_fade() that allows additionally specifying length_msec? Or does the choice of 8000 milliseconds follow some standard? I expected there to be something along the following lines:

Code: Select all

BLARGG_EXPORT void      gme_set_fade_ex    ( Music_Emu* me, int start_msec, int length_msec )      { me->set_fade( start_msec, length_msec ); }
Otherwise, I'll have to do the fading within the wrapper.
Post Reply