Use Memory Targets

The ltmmCapture and ltmmConvert objects allow the user to write media data to memory instead of a file.

  1. Define the memory target you should allocate an empty SAFEARRAY and assign it to the ltmmCapture or ltmmConvert object. The assignment is performed as follows:

    C API
    IltmmConvert* pConvert;   // ltmmConvert object interface (initialized elsewhere)    
    SAFEARRAY* psa;    
    // allocate an empty byte array   
    psa = SafeArrayCreateVector(VT_UI1, 0, 0);    
    // the array must be passed in a VARIANT   
    VariantInit(&var);    
    V_VT(&var) = (VT_ARRAY | VT_UI1);    
    V_ARRAY(&var) = psa;    
    // assign the array   
    IltmmConvert_put_TargetArray (pConvert, var); 
    C++
    IltmmConvert* pConvert;   // ltmmConvert object interface (initialized elsewhere)    
    SAFEARRAY* psa;    
    // allocate an empty byte array   
    psa = SafeArrayCreateVector(VT_UI1, 0, 0);    
    // the array must be passed in a VARIANT   
    VariantInit(&var);    
    V_VT(&var) = (VT_ARRAY | VT_UI1);    
    V_ARRAY(&var) = psa;    
    // assign the array   
    pConvert->put_TargetArray (var); 

  2. The array will be resized and filled with the objects output data. As long as the array is assigned to object, the array data and descriptor should not be accessed. The user can reset the target by calling the ResetTarget function:

    C API
    IltmmConvert_ResetTarget (pConvert); 
    C++
    pConvert->ResetTarget (); 

  3. Once the target has been reset, the user may access or free the memory.

Help Version 22.0.2023.1.26
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Multimedia C API Help
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.