Eksportuj każdą klatkę jako obraz z pliku filmu (QuickTime-API)

Chcę otworzyć istniejący plik filmowy i wyeksportować każdą klatkę tego pliku do obrazu takiego jak JPEG lub TIFF. Dotarłem tak daleko do teraz:

int main(int argc, char* argv[]) {
    char filename[255]; // Filename to ping.
    OSErr e;            // Error return.
    FSSpec filespec;    // QT file specification
    short filemovie;    // QT movie handle.
    Movie movie;        // QT movie "object".

    InitializeQTML(0);
    EnterMovies();
    // Because of QT's Mac origin, must convert C-string filename 
    // to Pascal counted string, then use that to make a filespec.
    c2pstr(filename); 
    FSMakeFSSpec(0, 0L, (ConstStr255Param)filename, &filespec);

    OpenMovieFile(&filespec, &filemovie, fsRdPerm);
    NewMovieFromFile(&movie, filemovie, nil, nil, newMovieActive, nil);
    ...

Do tej pory działa dobrze (testowałem zTimeValue movietime = GetMovieDuration(movie); i wydrukuj go), ale teraz chcę uzyskać każdą klatkę filmu i wyeksportować ją do pliku (po pierwsze, chcę po prostu zachować dane w pamięci do pracy z tym, ale muszę wiedzieć, czy to naprawdę działa , więc eksport do pliku obrazu jest na razie lepszy).
Jak mogę to zrobić? Czy potrzebuję GWorld lub PixMap? Jak uzyskać GWorld / PixMap z pliku filmowego, zwłaszcza każdej klatki?

edytować: Moja platforma to WinXP

questionAnswers(4)

yourAnswerToTheQuestion