diff options
Diffstat (limited to 'libvideoeditor/vss/inc/M4xVSS_Internal.h')
-rwxr-xr-x | libvideoeditor/vss/inc/M4xVSS_Internal.h | 587 |
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__ */ - |