summaryrefslogtreecommitdiffstats
path: root/libvideoeditor/vss/inc/M4xVSS_Internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'libvideoeditor/vss/inc/M4xVSS_Internal.h')
-rwxr-xr-xlibvideoeditor/vss/inc/M4xVSS_Internal.h587
1 files changed, 0 insertions, 587 deletions
diff --git a/libvideoeditor/vss/inc/M4xVSS_Internal.h b/libvideoeditor/vss/inc/M4xVSS_Internal.h
deleted file mode 100755
index 5296572..0000000
--- a/libvideoeditor/vss/inc/M4xVSS_Internal.h
+++ /dev/null
@@ -1,587 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef __M4XVSS_INTERNAL_H__
-#define __M4XVSS_INTERNAL_H__
-
-/**
- ******************************************************************************
- * @file M4xVSS_Internal.h
- * @brief Internal of Video Authoring.
- * @note
- ******************************************************************************
-*/
-
-#include "NXPSW_CompilerSwitches.h"
-
-#include "M4MCS_API.h"
-#include "M4MCS_ErrorCodes.h"
-
-#include "M4PTO3GPP_API.h"
-#include "M4PTO3GPP_ErrorCodes.h"
-
-#include "M4AIR_API.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define M4_xVSS_MAJOR 1
-#define M4_xVSS_MINOR 5
-#define M4_xVSS_REVISION 5
-
-/* The following defines describe the max dimensions of an input JPG */
-#define M4XVSS_MX_JPG_NB_OF_PIXELS 3926016
-
-/*Size of the UTF temporary conversion buffer keep in the VA internal context and
-allocate at the initialization*/
-#define UTF_CONVERSION_BUFFER_SIZE 2048
-
-/* Max path length size */
-#define M4XVSS_MAX_PATH_LEN 256
-
-/** Determine absolute value of a. */
-#define M4xVSS_ABS(a) ( ( (a) < (0) ) ? (-(a)) : (a) )
-
-/** Y,U,V values in case of black borders rendering */
-#define Y_PLANE_BORDER_VALUE 0x00
-#define U_PLANE_BORDER_VALUE 0x80
-#define V_PLANE_BORDER_VALUE 0x80
-
-/**
- ******************************************************************************
- * struct M4xVSS_EffectsAlphaBlending
- * @brief Internal effects alpha blending parameters
- * @note This structure contains all internal informations to create an alpha
- * blending for the effects text and framing
- ******************************************************************************
-*/
-typedef struct
-{
- M4OSA_UInt8 m_fadeInTime; /*Start percentage of Alpha blending*/
- M4OSA_UInt8 m_fadeOutTime; /*Middle percentage of Alpha blending*/
- M4OSA_UInt8 m_end; /*End percentage of Alpha blending*/
- M4OSA_UInt8 m_middle; /*Duration, in percentage of effect duration,
- of the FadeIn phase*/
- M4OSA_UInt8 m_start; /*Duration, in percentage of effect duration,
- of the FadeOut phase*/
-
-} M4xVSS_internalEffectsAlphaBlending;
-
-/**
- ******************************************************************************
- * THIS STRUCTURE MUST NOT BE MODIFIED
- * struct M4xVSS_FramingStruct
- * @brief It is used internally by xVSS for framing effect, and by VPS for previewing
- ******************************************************************************
-*/
-typedef struct
-{
- M4VIFI_ImagePlane *FramingRgb; /**< decoded BGR565 plane */
- M4VIFI_ImagePlane *FramingYuv; /**< converted YUV420 planar plane */
- M4OSA_Int32 duration; /**< Duration of the frame */
- M4OSA_Int32 previousClipTime; /**< Previous clip time, used by framing
- filter for SAVING */
- M4OSA_Int32 previewOffsetClipTime; /**< Previous clip time, used by framing
- filter for PREVIEW */
- M4OSA_Int32 previewClipTime; /**< Current clip time, used by framing
- filter for PREVIEW */
- M4OSA_Void* pCurrent; /**< Current M4xVSS_FramingStruct used by
- framing filter */
- M4OSA_Void* pNext; /**< Next M4xVSS_FramingStruct, if no more,
- point on current M4xVSS_FramingStruct */
- M4OSA_UInt32 topleft_x; /**< The top-left X coordinate in the output
- picture of the first decoded pixel */
- M4OSA_UInt32 topleft_y; /**< The top-left Y coordinate in the output
- picture of the first decoded pixel */
- M4xVSS_internalEffectsAlphaBlending* alphaBlendingStruct; /* Alpha blending Struct */
-/*To support ARGB8888 : get the width and height in case of file ARGB888 used in framing
- as video effect */
- M4OSA_UInt32 width; /*width of the ARGB8888 clip
- .Used only if video effect is framming */
- M4OSA_UInt32 height; /*height of the ARGB8888 clip .
- Used only if video effect is framming */
-
-} M4xVSS_FramingStruct;
-
-#ifdef DECODE_GIF_ON_SAVING
-/**
- ******************************************************************************
- * THIS STRUCTURE MUST NOT BE MODIFIED
- * struct M4xVSS_FramingContext
- * @brief It is used internally by xVSS for framing effect, when the flag
- DECODE_GIF_ON_SAVING is activated
- ******************************************************************************
-*/
-typedef struct
-{
- M4xVSS_FramingStruct* aFramingCtx; /**<Framing struct for the decoding
- of the current frame of the gif*/
- M4xVSS_FramingStruct* aFramingCtx_last; /**<Framing struct for the decoding of
- the previous frame of the gif*/
- M4OSA_FileReadPointer* pFileReadPtr; /**< Pointer on OSAL file read functions */
- M4OSA_FileWriterPointer* pFileWritePtr; /**< Pointer on OSAL file write functions */
- M4OSA_Void* pSPSContext; /**<SPS context for the GIF decoding*/
- //M4SPS_Stream inputStream; /**<GIF input stream buffer pointer*/
- M4OSA_Void* pEffectFilePath; /**<file path of the gif*/
- M4VIDEOEDITING_VideoFrameSize outputVideoSize; /**< Output video size RC */
- //M4SPS_DisposalMode disposal; /**<previous frame GIF disposal*/
- M4OSA_UInt16 b_animated; /**<Is the GIF animated?*/
- M4OSA_Bool bEffectResize; /**<Is the gif resize*/
- M4OSA_UInt32 topleft_x; /**< The top-left X coordinate in the
- output picture of the first
- decoded pixel */
- M4OSA_UInt32 topleft_y; /**< The top-left Y coordinate in the
- output picture of the first
- decoded pixel */
- M4OSA_UInt32 width; /**<GIF width, fill during the
- initialization with the SPS*/
- M4OSA_UInt32 height; /**<GIF height, fill during the
- initialization with the SPS*/
- M4OSA_UInt32 effectDuration; /**<Effect duration*/
- M4OSA_Int32 effectStartTime; /**<Effect start time*/
- M4OSA_UInt32 clipTime; /**<current output clip time for the
- current frame*/
- M4OSA_UInt32 last_clipTime; /**<previous output clip time for the
- previous frame*/
- M4OSA_UInt32 lastStepDuration; /**<Time interval between the previous
- frame and the current frame*/
- M4OSA_Bool b_IsFileGif; /**<Is the framing using a gif file*/
- M4OSA_UInt32 last_width; /**<Last frame width*/
- M4OSA_UInt32 last_height; /**<Last frame height*/
- M4OSA_UInt32 last_topleft_x; /**<Last frame x topleft*/
- M4OSA_UInt32 last_topleft_y; /**<Last frame y topleft*/
- M4OSA_UInt32 current_gif_time; /**< Current time os the GIF in output
- file time */
- M4OSA_Float frameDurationRatio; /**< Frame duration ratio */
- M4xVSS_internalEffectsAlphaBlending* alphaBlendingStruct;/*Alpha blending structure*/
-#ifdef DEBUG_GIF
- M4OSA_UInt8 uiDebug_fileCounter;/**<for debug purpose,
- count the frame of the gif*/
-#endif /*DEBUG_GIF*/
-}M4xVSS_FramingContext;
-#endif /*DECODE_GIF_ON_SAVING*/
-
-/**
- ******************************************************************************
- * struct M4xVSS_Pto3GPP_params
- * @brief Internal xVSS parameter for Pto3GPP module
- * @note This structure is filled by M4xVSS_sendCommand function,
- * @note and is used during M4xVSS_Step function to initialize Pto3GPP module
- * @note All the JPG files to transform to 3GP are chained
- ******************************************************************************
-*/
-typedef struct {
- M4OSA_Char* pFileIn;
- M4OSA_Char* pFileOut;
- M4OSA_Char* pFileTemp; /**< temporary file used for
- metadata writing, NULL is cstmem
- writer not used */
- M4OSA_UInt32 duration;
- M4VIDEOEDITING_FileType InputFileType;
- M4OSA_Bool isCreated; /**< This boolean is used to know if
- the output file is already
- created or not */
- M4OSA_Bool isPanZoom; /**< RC: Boolean used to know if the
- pan and zoom mode is enabled */
- M4OSA_UInt16 PanZoomXa; /**< RC */
- M4OSA_UInt16 PanZoomTopleftXa; /**< RC */
- M4OSA_UInt16 PanZoomTopleftYa; /**< RC */
- M4OSA_UInt16 PanZoomXb; /**< RC */
- M4OSA_UInt16 PanZoomTopleftXb; /**< RC */
- M4OSA_UInt16 PanZoomTopleftYb; /**< RC */
- M4xVSS_MediaRendering MediaRendering; /**< FB: to render or not picture
- aspect ratio */
- M4VIDEOEDITING_VideoFramerate framerate; /**< RC */
- M4OSA_Void* pNext; /**< Address of next M4xVSS_Pto3GPP_params*
- element */
- /*To support ARGB8888:width and height */
- M4OSA_UInt32 width;
- M4OSA_UInt32 height;
-
-} M4xVSS_Pto3GPP_params;
-
-/**
- ******************************************************************************
- * struct M4xVSS_fiftiesStruct
- * @brief It is used internally by xVSS for fifties effect
- ******************************************************************************
-*/
-typedef struct
-{
- M4OSA_UInt32 fiftiesEffectDuration; /**< Duration of the same effect in a video */
- M4OSA_Int32 previousClipTime; /**< Previous clip time, used by framing filter
- for SAVING */
- M4OSA_UInt32 shiftRandomValue; /**< Vertical shift of the image */
- M4OSA_UInt32 stripeRandomValue; /**< Horizontal position of the stripe */
-
-} M4xVSS_FiftiesStruct;
-
-/**
- ******************************************************************************
- * struct M4xVSS_ColorRGB16
- * @brief It is used internally by xVSS for RGB16 color effect
- ******************************************************************************
-*/
-typedef struct
-{
- M4xVSS_VideoEffectType colorEffectType; /*Color type of effect*/
- M4OSA_UInt16 rgb16ColorData; /*RGB16 color only for the RGB16 color effect*/
-} M4xVSS_ColorStruct;
-
-
-/**
- ******************************************************************************
- * struct M4xVSS_PictureCallbackCtxt
- * @brief The Callback Context parameters for Pto3GPP
- ******************************************************************************
-*/
-typedef struct
-{
- M4OSA_Char* m_FileIn;
- M4OSA_UInt32 m_NbImage;
- M4OSA_UInt32 m_ImageCounter;
- M4OSA_Double m_timeDuration;
- M4OSA_FileReadPointer* m_pFileReadPtr;
- M4VIFI_ImagePlane* m_pDecodedPlane; /* Used for Pan and Zoom only */
- M4xVSS_Pto3GPP_params* m_pPto3GPPparams;
- M4OSA_Context m_air_context;
- M4xVSS_MediaRendering m_mediaRendering;
-
-} M4xVSS_PictureCallbackCtxt;
-
-/**
- ******************************************************************************
- * enum M4xVSS_State
- * @brief Internal State of the xVSS
- ******************************************************************************
-*/
-typedef enum
-{
- M4xVSS_kStateInitialized = 0,
- M4xVSS_kStateAnalyzing,
- M4xVSS_kStateOpened,
- //M4xVSS_kStateGeneratingPreview,
- //M4xVSS_kStatePreview,
- M4xVSS_kStateSaving,
- M4xVSS_kStateSaved
-
-} M4xVSS_State;
-
-/**
- ******************************************************************************
- * enum M4xVSS_editMicroState
- * @brief Internal Micro state of the xVSS for previewing/saving states
- ******************************************************************************
-*/
-typedef enum
-{
- M4xVSS_kMicroStateEditing = 0,
- M4xVSS_kMicroStateAudioMixing
-
-} M4xVSS_editMicroState;
-
-/**
- ******************************************************************************
- * enum M4xVSS_editMicroState
- * @brief Internal Micro state of the xVSS for analyzing states
- ******************************************************************************
-*/
-typedef enum
-{
- M4xVSS_kMicroStateAnalysePto3GPP = 0,
- M4xVSS_kMicroStateConvertPto3GPP,
- M4xVSS_kMicroStateAnalyzeMCS,
- M4xVSS_kMicroStateTranscodeMCS
-
-} M4xVSS_analyseMicroState;
-
-
-/**
- ******************************************************************************
- * struct M4xVSS_MCS_params
- * @brief Internal xVSS parameter for MCS module
- * @note This structure is filled by M4xVSS_sendCommand function,
- * @note and is used during M4xVSS_Step function to initialize MCS module
- * @note All the input files to transcode are chained
- ******************************************************************************
-*/
-typedef struct {
- M4OSA_Void* pFileIn;
- M4OSA_Void* pFileOut;
- /**< temporary file used for metadata writing, NULL is cstmem writer not used */
- M4OSA_Void* pFileTemp;
- M4VIDEOEDITING_FileType InputFileType;
- M4VIDEOEDITING_FileType OutputFileType;
- M4VIDEOEDITING_VideoFormat OutputVideoFormat;
- M4VIDEOEDITING_VideoFrameSize OutputVideoFrameSize;
- M4VIDEOEDITING_VideoFramerate OutputVideoFrameRate;
- M4VIDEOEDITING_AudioFormat OutputAudioFormat;
- M4VIDEOEDITING_AudioSamplingFrequency OutputAudioSamplingFrequency;
- M4OSA_Bool bAudioMono;
- M4VIDEOEDITING_Bitrate OutputVideoBitrate;
- M4VIDEOEDITING_Bitrate OutputAudioBitrate;
- M4OSA_Bool isBGM;
- /**< This boolean is used to know if the output file is already created or not */
- M4OSA_Bool isCreated;
- /**< Address of next M4xVSS_MCS_params* element */
- M4OSA_Void* pNext;
-
- /*FB: transcoding per parts*/
- M4OSA_UInt32 BeginCutTime; /**< Beginning cut time in input file */
- M4OSA_UInt32 EndCutTime; /**< End cut time in input file */
- M4OSA_UInt32 OutputVideoTimescale; /*Output timescale*/
-
- M4MCS_MediaRendering MediaRendering; /**< FB: to crop, resize, or render
- black borders*/
- M4OSA_UInt32 videoclipnumber;
- M4OSA_UInt32 outputVideoProfile;
- M4OSA_UInt32 outputVideoLevel;
-} M4xVSS_MCS_params;
-
-/**
- ******************************************************************************
- * struct M4xVSS_internal_AlphaMagicSettings
- * @brief This structure defines the alpha magic transition settings
- ******************************************************************************
-*/
-typedef struct {
- M4VIFI_ImagePlane *pPlane;
- M4OSA_Int32 blendingthreshold; /**< Blending Range */
- M4OSA_Bool isreverse; /**< direct effect or reverse */
-
-} M4xVSS_internal_AlphaMagicSettings;
-
-
-/**
- ******************************************************************************
- * struct M4xVSS_internal_SlideTransitionSettings
- * @brief This structure defines the internal slide transition settings
- * @note This type happens to match the external transition settings
- * structure (i.e. the one which is given by the application), but are
- * conceptually different types, so that if (or rather when) some day
- * translation needs to occur when loading the settings from the app,
- * this separate type will already be ready.
- ******************************************************************************
-*/
-
-typedef M4xVSS_SlideTransitionSettings M4xVSS_internal_SlideTransitionSettings;
-
-/**
- ******************************************************************************
- * struct M4xVSS_internalJpegChunkMode
- * @brief This structure defines the parameters of the chunk callback to decode
- * a JPEG by chunk mode.
- ******************************************************************************
-*/
-
-/**
- ******************************************************************************
- * struct M4xVSS_UTFConversionContext
- * @brief Internal UTF conversion context
- * @note This structure contains the UTF conversion informations
- * needed by the xVSS to manage the different formats (UTF8/16/ASCII)
- ******************************************************************************
-*/
-typedef struct
-{
- /*Function pointer on an external text conversion function */
- M4xVSS_toUTF8Fct pConvToUTF8Fct;
- /*Function pointer on an external text conversion function */
- M4xVSS_fromUTF8Fct pConvFromUTF8Fct;
- /*Temporary buffer that contains the result of each conversion*/
- M4OSA_Void* pTempOutConversionBuffer;
- /*Size of the previous buffer, the size is prederminated*/
- M4OSA_UInt32 m_TempOutConversionSize;
-} M4xVSS_UTFConversionContext;
-
-
-
-/**
- ******************************************************************************
- * struct M4xVSS_Context
- * @brief Internal context of the xVSS
- * @note This structure contains all internal informations needed by the xVSS
- ******************************************************************************
-*/
-typedef struct {
- /**< Pointer on OSAL file read functions */
- M4OSA_FileReadPointer* pFileReadPtr;
- /**< Pointer on OSAL file write functions */
- M4OSA_FileWriterPointer* pFileWritePtr;
- /**< Local copy of video editor settings */
- M4VSS3GPP_EditSettings* pSettings;
- /**< Current Settings of video editor to use in step functions for preview/save */
- M4VSS3GPP_EditSettings* pCurrentEditSettings;
- /**< Current context of video editor to use in step functions for preview/save */
- M4VSS3GPP_EditContext pCurrentEditContext;
- /**< This is to know if a previous M4xVSS_sendCommand has already been called */
- M4OSA_UInt8 previousClipNumber;
- /**< Audio mixing settings, needed to free it in M4xVSS_internalCloseAudioMixedFile function*/
- M4VSS3GPP_AudioMixingSettings* pAudioMixSettings;
- /**< Audio mixing context */
- M4VSS3GPP_AudioMixingContext pAudioMixContext;
- /**< File path for PCM output file: used for preview, given to user */
- M4OSA_Char* pcmPreviewFile;
- /**< Duplication of output file pointer, to be able to use audio mixing */
- M4OSA_Char* pOutputFile;
- /**< Duplication of temporary file pointer, to be able to use audio mixing */
- M4OSA_Char* pTemporaryFile;
- /**< Micro state for Saving/Previewing state */
- M4xVSS_editMicroState editingStep;
- /**< Micro state for Analyzing state */
- M4xVSS_analyseMicroState analyseStep;
- /**< Nb of step for analysis or save/preview. Used to compute progression
- of analysis or save/preview */
- M4OSA_UInt8 nbStepTotal;
- /**< Current step number for analysis or save/preview */
- M4OSA_UInt8 currentStep;
- /**< To be able to free pEffects during preview close */
- M4xVSS_PreviewSettings* pPreviewSettings;
- /**< Temporary file path: all temporary files are created here */
- M4OSA_Char* pTempPath;
- /**< Current state of xVSS */
- M4xVSS_State m_state;
- /**< List of still pictures input to convert to 3GP with parameters */
- M4xVSS_Pto3GPP_params* pPTo3GPPparamsList;
- /**< Current element of the above chained list beeing processd by the Pto3GPP */
- M4xVSS_Pto3GPP_params* pPTo3GPPcurrentParams;
- /**< Current Pto3GPP context, needed to call Pto3GPP_step function in M4xVSS_step function */
- M4PTO3GPP_Context pM4PTO3GPP_Ctxt;
- /**< Pointer on the callback function of the Pto3GPP module */
- M4xVSS_PictureCallbackCtxt* pCallBackCtxt;
- /**< List of files to transcode with parameters */
- M4xVSS_MCS_params* pMCSparamsList;
- /**< Current element of the above chained list beeing processd by the MCS */
- M4xVSS_MCS_params* pMCScurrentParams;
- /**< Current MCS context, needed to call MCS_step function in M4xVSS_step function*/
- M4MCS_Context pMCS_Ctxt;
- /**< Index to have unique temporary filename */
- M4OSA_UInt32 tempFileIndex;
- /**< In case of MMS use case, targeted bitrate to reach output file size */
- M4OSA_UInt32 targetedBitrate;
- /**< If the sendCommand fct is called twice or more, the first computed timescale
- recorded here must be reused */
- M4OSA_UInt32 targetedTimescale;
-
- /*UTF Conversion support*/
- M4xVSS_UTFConversionContext UTFConversionContext; /*UTF conversion context structure*/
-
-} M4xVSS_Context;
-
-/**
- * Internal function prototypes */
-
-M4OSA_ERR M4xVSS_internalStartTranscoding(M4OSA_Context pContext,
- M4OSA_UInt32 *rotationDegree);
-
-M4OSA_ERR M4xVSS_internalStopTranscoding(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalDecodeJPG(M4OSA_Void* pFileIn, M4OSA_FileReadPointer* pFileReadPtr,
- M4VIFI_ImagePlane** pImagePlanes);
-
-M4OSA_ERR M4xVSS_internalConvertARGB8888toYUV420(M4OSA_Void* pFileIn,
- M4OSA_FileReadPointer* pFileReadPtr,
- M4VIFI_ImagePlane** pImagePlanes,
- M4OSA_UInt32 width,M4OSA_UInt32 height);
-M4OSA_ERR M4xVSS_internalDecodeAndResizeJPG(M4OSA_Void* pFileIn,
- M4OSA_FileReadPointer* pFileReadPtr,
- M4VIFI_ImagePlane* pImagePlanes);
-M4OSA_ERR M4xVSS_internalConvertAndResizeARGB8888toYUV420(M4OSA_Void* pFileIn,
- M4OSA_FileReadPointer* pFileReadPtr,
- M4VIFI_ImagePlane* pImagePlanes,
- M4OSA_UInt32 width,M4OSA_UInt32 height);
-
-M4OSA_ERR M4xVSS_internalStartConvertPictureTo3gp(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalStopConvertPictureTo3gp(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalConvertRGBtoYUV(M4xVSS_FramingStruct* framingCtx);
-
-#ifdef DECODE_GIF_ON_SAVING
-M4OSA_ERR M4xVSS_internalDecodeGIF(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalDecodeGIF_Initialization(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalDecodeGIF_Cleaning(M4OSA_Context pContext);
-
-#else
-M4OSA_ERR M4xVSS_internalDecodeGIF(M4OSA_Context pContext, M4VSS3GPP_EffectSettings* pEffect,
- M4xVSS_FramingStruct* framingCtx);
-#endif /*DECODE_GIF_ON_SAVING*/
-
-M4OSA_ERR M4xVSS_internalConvertARGB888toYUV420_FrammingEffect(M4OSA_Context pContext,
- M4VSS3GPP_EffectSettings* pEffect,
- M4xVSS_FramingStruct* framingCtx,
- M4VIDEOEDITING_VideoFrameSize \
- OutputVideoResolution);
-
-M4OSA_ERR M4xVSS_internalGenerateEditedFile(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalCloseEditedFile(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalGenerateAudioMixFile(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalCloseAudioMixedFile(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalFreePreview(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalFreeSaving(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_freeSettings(M4VSS3GPP_EditSettings* pSettings);
-
-M4OSA_ERR M4xVSS_freeCommand(M4OSA_Context pContext);
-
-M4OSA_ERR M4xVSS_internalGetProperties(M4OSA_Context pContext, M4OSA_Char* pFile,
- M4VIDEOEDITING_ClipProperties *pFileProperties);
-
-M4OSA_ERR M4xVSS_AlphaMagic( M4OSA_Void *userData, M4VIFI_ImagePlane PlaneIn1[3],
- M4VIFI_ImagePlane PlaneIn2[3], M4VIFI_ImagePlane *PlaneOut,
- M4VSS3GPP_ExternalProgress *pProgress,
- M4OSA_UInt32 uiTransitionKind);
-
-M4OSA_ERR M4xVSS_AlphaMagicBlending( M4OSA_Void *userData, M4VIFI_ImagePlane PlaneIn1[3],
- M4VIFI_ImagePlane PlaneIn2[3], M4VIFI_ImagePlane *PlaneOut,
- M4VSS3GPP_ExternalProgress *pProgress,
- M4OSA_UInt32 uiTransitionKind);
-
-M4OSA_ERR M4xVSS_SlideTransition( M4OSA_Void *userData, M4VIFI_ImagePlane PlaneIn1[3],
- M4VIFI_ImagePlane PlaneIn2[3], M4VIFI_ImagePlane *PlaneOut,
- M4VSS3GPP_ExternalProgress *pProgress,
- M4OSA_UInt32 uiTransitionKind);
-
-M4OSA_ERR M4xVSS_FadeBlackTransition(M4OSA_Void *userData, M4VIFI_ImagePlane PlaneIn1[3],
- M4VIFI_ImagePlane PlaneIn2[3],M4VIFI_ImagePlane *PlaneOut,
- M4VSS3GPP_ExternalProgress *pProgress,
- M4OSA_UInt32 uiTransitionKind);
-
-M4OSA_ERR M4xVSS_internalGetTargetedTimeScale(M4OSA_Context pContext,
- M4VSS3GPP_EditSettings* pSettings,
- M4OSA_UInt32* pTargetedTimeScale);
-
-M4OSA_ERR M4xVSS_internalConvertToUTF8(M4OSA_Context pContext, M4OSA_Void* pBufferIn,
- M4OSA_Void* pBufferOut, M4OSA_UInt32* convertedSize);
-
-
-M4OSA_ERR M4xVSS_internalConvertFromUTF8(M4OSA_Context pContext, M4OSA_Void* pBufferIn,
- M4OSA_Void* pBufferOut, M4OSA_UInt32* convertedSize);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-
-#endif /* __M4XVSS_INTERNAL_H__ */
-