MovieLoader Manual

About

The MovieLoader class is used to load image data from a movie file.

Warning
For MAXON API media input and output see Media Sessions Manual.

Allocation/Deallocation

A MovieLoader can be created with the usual tools:

Functionality

A MovieLoader object simply opens a movie file to read its content:

Note
See also GeGetMovieInfo().
// This example loads the given movie file and displays
// each frame of the movie in the Picture Viewer.
if (movieLoader == nullptr)
return maxon::OutOfMemoryError(MAXON_SOURCE_LOCATION);
// load movie file
const IMAGERESULT res = movieLoader->Open(selectedMovieFile);
if (res != IMAGERESULT::OK)
return maxon::IoError(MAXON_SOURCE_LOCATION, MaxonConvert(selectedMovieFile, MAXONCONVERTMODE::NONE), "Could not open movie file."_s);
// get movie info
Float fps = 0.0;
const Int32 frames = movieLoader->GetInfo(&fps);
// load and display each frame
for (Int32 i = 0; i < frames; ++i)
{
// load frame
Int32 frameResult;
BaseBitmap* const frameContent = movieLoader->Read(i, &frameResult);
// check if frame could been loaded
const Int32 imageOK = Int32(IMAGERESULT::OK);
if (frameResult != imageOK)
return maxon::UnknownError(MAXON_SOURCE_LOCATION);
if (frameContent == nullptr)
return maxon::UnknownError(MAXON_SOURCE_LOCATION);
// show frame
ShowBitmap(frameContent);
}
movieLoader->Close();

Further Reading

IMAGERESULT::OK
@ OK
Image loaded/created.
Float
maxon::Float Float
Definition: ge_sys_math.h:66
MAXONCONVERTMODE::NONE
@ NONE
No check if file exists under case-sensitive drives.
MAXON_SOURCE_LOCATION
#define MAXON_SOURCE_LOCATION
Definition: memoryallocationbase.h:66
MaxonConvert
maxon::Url MaxonConvert(const Filename &fn, MAXONCONVERTMODE convertMode)
MovieLoader::Read
BaseBitmap * Read(Int32 new_frame_idx=-1, Int32 *_result=nullptr)
Int32
maxon::Int32 Int32
Definition: ge_sys_math.h:60
ShowBitmap
Bool ShowBitmap(const Filename &fn)
BaseBitmap
Definition: c4d_basebitmap.h:413
AutoAlloc
Definition: ge_autoptr.h:36
MovieLoader::GetInfo
Int32 GetInfo(Float *_fps)
MovieLoader::Close
void Close(void)
Close the loaded movie file.
IMAGERESULT
IMAGERESULT
Definition: ge_prepass.h:3691
MovieLoader::Open
IMAGERESULT Open(const Filename &fn)