Go back to using the RageSound_QT1 class since RageSound_QT is broken.

This commit is contained in:
Steve Checkoway
2003-08-11 08:55:34 +00:00
parent 99c5923839
commit 5ba3bb1e30
4 changed files with 22 additions and 6 deletions
@@ -46,7 +46,6 @@ typedef struct soundInfo
static short dataRefIndices[4];
static SoundDescriptionHandle sndDescHdl;
//void soundInfo::DisposeSampleReferences(Media media, short index)
void DisposeSampleReferences(Media media, short index)
{
LockMutex L(SOUNDMAN->lock);
@@ -133,11 +132,10 @@ static void CallBack(QTCallBack cb, long refCon)
EndMediaEdits(media);
err = GetMoviesError();
TEST_ERR(err, AddMediaSample);
CHECKPOINT;
InsertMediaIntoTrack(track, -1, tv, samples, 0x00010000);
CHECKPOINT;
err = InsertMediaIntoTrack(track, -1, tv, samples, 1L<<16);
TEST_ERR(err, InsertMediaIntoTrack);
if (++dataRefIndices[3] > 3)
if (++dataRefIndices[3] >= 3)
{
SetMovieActiveSegment(movie, (dataRefIndices[3] - 2) * samples, twicesamples);
DisposeSampleReferences(media, dataRefIndices[3] % 3);
@@ -162,6 +160,9 @@ static void CallBack(QTCallBack cb, long refCon)
RageSound_QT::RageSound_QT()
{
#if 1
RageException::ThrowNonfatal("Class not finished.");
#endif
lastPos = 0;
bzero(dataRefIndices, 8);
@@ -204,6 +205,17 @@ RageSound_QT::~RageSound_QT()
s->snd->StopPlaying();
sounds.pop_back();
}
StopMovie(movie);
Media media = GetTrackMedia(track);
if (media)
{
DisposeSampleReferences(media, 0);
DisposeSampleReferences(media, 1);
DisposeSampleReferences(media, 2);
}
DisposeMovieTrack(track);
DisposeMovie(movie);
DisposeHandle(Handle(sndDescHdl));
}
void RageSound_QT::StartMixing(RageSound *snd)