summaryrefslogtreecommitdiffstats
path: root/libvideoeditor/vss/inc/M4VSS3GPP_Extended_API.h
diff options
context:
space:
mode:
Diffstat (limited to 'libvideoeditor/vss/inc/M4VSS3GPP_Extended_API.h')
-rwxr-xr-xlibvideoeditor/vss/inc/M4VSS3GPP_Extended_API.h302
1 files changed, 0 insertions, 302 deletions
diff --git a/libvideoeditor/vss/inc/M4VSS3GPP_Extended_API.h b/libvideoeditor/vss/inc/M4VSS3GPP_Extended_API.h
deleted file mode 100755
index 9668b67..0000000
--- a/libvideoeditor/vss/inc/M4VSS3GPP_Extended_API.h
+++ /dev/null
@@ -1,302 +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 __M4VSS3GPP_EXTENDED_API_H__
-#define __M4VSS3GPP_EXTENDED_API_H__
-
-/**
- ******************************************************************************
- * @file M4VSS3GPP_Extended_API.h
- * @brief API of xVSS
- * @note
- ******************************************************************************
-*/
-
-#ifndef M4VSS_SUPPORT_EXTENDED_FEATURES
-#error "*** the flag M4VSS_SUPPORT_EXTENDED_FEATURES should be activated in CompilerSwitches\
- for VideoStudio ***"
-#endif
-
-/**
- ******************************************************************************
- * prototype M4xVSS_getTextRgbBufferFct
- * @brief External text to RGB buffer functions implemented by the integrator
- * must match this prototype.
- * @note The function is provided with the renderingData, the text buffer and
- * its size. It must build the output RGB image plane containing the text.
- *
- * @param pRenderingData (IN) The data given by the user in M4xVSS_EffectSettings
- * @param pTextBuffer (IN) Text buffer given by the user in M4xVSS_EffectSettings
- * @param textBufferSize (IN) Text buffer size given by the user in M4xVSS_EffectSettings
- * @param pOutputPlane (IN/OUT) Output RGB565 image
- * @return M4NO_ERROR: No error
- * @return M4ERR_PARAMETER: At least one parameter is M4OSA_NULL (debug only)
- ******************************************************************************
-*/
-typedef M4OSA_ERR (*M4xVSS_getTextRgbBufferFct)
-(
- M4OSA_Void *pRenderingData,
- M4OSA_Void *pTextBuffer,
- M4OSA_UInt32 textBufferSize,
- M4VIFI_ImagePlane **pOutputPlane
-);
-
-/**
- ******************************************************************************
- * struct M4xVSS_BGMSettings
- * @brief This structure gathers all the information needed to add Background music to 3gp file
- ******************************************************************************
-*/
-typedef struct
-{
- M4OSA_Void *pFile; /**< Input file path */
- M4VIDEOEDITING_FileType FileType; /**< .3gp, .amr, .mp3 */
- M4OSA_UInt32 uiAddCts; /**< Time, in milliseconds, at which the added
- audio track is inserted */
- M4OSA_UInt32 uiAddVolume; /**< Volume, in percentage, of the added audio track */
- M4OSA_UInt32 uiBeginLoop; /**< Describes in milli-second the start time
- of the loop */
- M4OSA_UInt32 uiEndLoop; /**< Describes in milli-second the end time of the
- loop (0 means no loop) */
- M4OSA_Bool b_DuckingNeedeed;
- M4OSA_Int32 InDucking_threshold; /**< Threshold value at which background
- music shall duck */
- M4OSA_Float lowVolume; /**< lower the background track to this factor
- and increase the primary track to inverse of this factor */
- M4OSA_Bool bLoop;
- M4OSA_UInt32 uiSamplingFrequency;
- M4OSA_UInt32 uiNumChannels;
-} M4xVSS_BGMSettings;
-
-
-/**
- ******************************************************************************
- * enum M4VSS3GPP_VideoEffectType
- * @brief This enumeration defines the video effect types of the VSS3GPP
- ******************************************************************************
-*/
-typedef enum
-{
- M4VSS3GPP_kRGB888 = 0, /**< RGB888 data type */
- M4VSS3GPP_kRGB565 = 1 /**< RGB565 data type */
-
-} M4VSS3GPP_RGBType;
-
-/**
- ******************************************************************************
- * struct M4xVSS_EffectSettings
- * @brief This structure defines an audio/video effect for the edition.
- ******************************************************************************
-*/
-typedef struct
-{
- /**< In percent of the cut clip duration */
- M4OSA_UInt32 uiStartPercent;
- /**< In percent of the ((clip duration) - (effect starttime)) */
- M4OSA_UInt32 uiDurationPercent;
- /**< Framing file path (GIF/PNG file), used only if VideoEffectType == framing */
- M4OSA_Void *pFramingFilePath;
- /**< Framing RGB565 buffer, used only if VideoEffectType == framing */
- M4VIFI_ImagePlane *pFramingBuffer;
- /**<RGB Buffer type,used only if VideoEffectType == framing */
- M4VSS3GPP_RGBType rgbType;
- /**< The top-left X coordinate in the output picture where the added frame will be displayed.
- Used only if VideoEffectType == framing || VideoEffectType == text */
- M4OSA_UInt32 topleft_x;
- /**< The top-left Y coordinate in the output picture where the added frame will be displayed.
- Used only if VideoEffectType == framing || VideoEffectType == text */
- M4OSA_UInt32 topleft_y;
- /**< Does framing image is resized to output video size.
- Used only if VideoEffectType == framing */
- M4OSA_Bool bResize;
- M4VIDEOEDITING_VideoFrameSize framingScaledSize;
-/**< Size to which the the framing file needs to be resized */
- /**< Text buffer. Used only if VideoEffectType == text */
- M4OSA_Void* pTextBuffer;
- /**< Text buffer size. Used only if VideoEffectType == text */
- M4OSA_UInt32 textBufferSize;
- /**< Pointer containing specific data used by the font engine (size, color...) */
- M4OSA_Void* pRenderingData;
- /**< Text plane width. Used only if VideoEffectType == text */
- M4OSA_UInt32 uiTextBufferWidth;
- /**< Text plane height. Used only if VideoEffectType == text */
- M4OSA_UInt32 uiTextBufferHeight;
- /**< Processing rate of the effect added when using the Fifties effect */
- M4OSA_UInt32 uiFiftiesOutFrameRate;
- /**< RGB16 input color of the effect added when using the rgb16 color effect */
- M4OSA_UInt16 uiRgb16InputColor;
-
- M4OSA_UInt8 uialphaBlendingStart; /*Start percentage of Alpha blending*/
- M4OSA_UInt8 uialphaBlendingMiddle; /*Middle percentage of Alpha blending*/
- M4OSA_UInt8 uialphaBlendingEnd; /*End percentage of Alpha blending*/
- M4OSA_UInt8 uialphaBlendingFadeInTime; /*Duration, in percentage of
- effect duration, of the FadeIn phase*/
- M4OSA_UInt8 uialphaBlendingFadeOutTime; /*Duration, in percentage of effect
- duration, of the FadeOut phase*/
- 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_EffectSettings;
-
-/**
- ******************************************************************************
- * struct M4xVSS_AlphaMagicSettings
- * @brief This structure defines the alpha magic transition settings
- ******************************************************************************
-*/
-typedef struct
-{
- M4OSA_Void* pAlphaFilePath; /**< Alpha file path (JPG file) */
- M4OSA_Int32 blendingPercent; /**< Blending Percentage between 0 and 100 */
- M4OSA_Bool isreverse; /**< direct effect or reverse */
- /*To support ARGB8888 : get the width and height */
- M4OSA_UInt32 width;
- M4OSA_UInt32 height;
-} M4xVSS_AlphaMagicSettings;
-
-/**
- ******************************************************************************
- * enum M4xVSS_SlideTransition_Direction
- * @brief Defines directions for the slide transition
- ******************************************************************************
-*/
-
-typedef enum {
- M4xVSS_SlideTransition_RightOutLeftIn,
- M4xVSS_SlideTransition_LeftOutRightIn,
- M4xVSS_SlideTransition_TopOutBottomIn,
- M4xVSS_SlideTransition_BottomOutTopIn
-} M4xVSS_SlideTransition_Direction;
-
-/**
- ******************************************************************************
- * struct M4xVSS_AlphaMagicSettings
- * @brief This structure defines the slide transition settings
- ******************************************************************************
-*/
-
-typedef struct
-{
- M4xVSS_SlideTransition_Direction direction; /* direction of the slide */
-} M4xVSS_SlideTransitionSettings;
-
-/**
- ******************************************************************************
- * struct M4xVSS_TransitionSettings
- * @brief This structure defines additional transition settings specific to
- * xVSS, which are appended to the VSS3GPP transition settings
- * structure.
- ******************************************************************************
-*/
-typedef struct
-{
- /* Anything xVSS-specific, but common to all transitions, would go here,
- before the union. */
- union {
- /**< AlphaMagic settings, used only if VideoTransitionType ==
- M4xVSS_kVideoTransitionType_AlphaMagic */
- M4xVSS_AlphaMagicSettings *pAlphaMagicSettings;
- /* only in case of slide transition. */
- M4xVSS_SlideTransitionSettings *pSlideTransitionSettings;
- } transitionSpecific;
-} M4xVSS_TransitionSettings;
-
-
-/**
- ******************************************************************************
- * enum M4xVSS_MediaRendering
- * @brief This enum defines different media rendering using exif orientation
- ******************************************************************************
-*/
-typedef enum
-{
- M4xVSS_kResizing = 0, /*The picture is resized, the aspect ratio can be different
- from the original one. All of the picture is rendered*/
- M4xVSS_kCropping, /*The picture is cropped, the aspect ratio is the same as
- the original one. The picture is not rendered entirely*/
- M4xVSS_kBlackBorders /*Black borders are rendered in order to keep the original
- aspect ratio. All the picture is rendered*/
-
-} M4xVSS_MediaRendering;
-
-
-/**
- ******************************************************************************
- * struct M4xVSS_ClipSettings
- * @brief This structure defines an input clip for the edition.
- * @note It also contains the settings for the cut and begin/end effects applied to the clip.
- ******************************************************************************
-*/
-typedef struct
-{
- M4OSA_UInt32 uiBeginCutPercent; /**< Begin cut time, in percent of clip
- duration (only for 3GPP clip !) */
- M4OSA_UInt32 uiEndCutPercent; /**< End cut time, in percent of clip
- duration (only for 3GPP clip !) */
- M4OSA_UInt32 uiDuration; /**< Duration of the clip, if different
- from 0, has priority on
- uiEndCutTime or uiEndCutPercent */
- 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 only used with JPEG: to crop,
- resize, or render black borders*/
-
-} M4xVSS_ClipSettings;
-
-/**
- ******************************************************************************
- * struct M4xVSS_EditSettings
- * @brief This structure gathers all the information needed to define a complete
- * edition operation
- ******************************************************************************
-*/
-typedef struct
-{
- /**< Output video size */
- M4VIDEOEDITING_VideoFrameSize outputVideoSize;
- /**< Output video format (MPEG4 / H263) */
- M4VIDEOEDITING_VideoFormat outputVideoFormat;
- /**< Output audio format (AAC, AMRNB ...) */
- M4VIDEOEDITING_AudioFormat outputAudioFormat;
- /**< Output audio sampling freq (8000Hz,...) */
- M4VIDEOEDITING_AudioSamplingFrequency outputAudioSamplFreq;
- /**< Maximum output file size in BYTES (if set to 0, no limit */
- M4OSA_UInt32 outputFileSize;
- /**< Is output audio must be Mono ? Valid only for AAC */
- M4OSA_Bool bAudioMono;
- /**< Output video bitrate*/
- M4OSA_UInt32 outputVideoBitrate;
- /**< Output audio bitrate*/
- M4OSA_UInt32 outputAudioBitrate;
- /**< Background music track settings */
- M4xVSS_BGMSettings *pBGMtrack;
- /**< Function pointer on text rendering engine, if not used, must be set to NULL !! */
- M4xVSS_getTextRgbBufferFct pTextRenderingFct;
- /** output video profile and level*/
- M4OSA_Int32 outputVideoProfile;
- M4OSA_Int32 outputVideoLevel;
-
-} M4xVSS_EditSettings;
-
-#endif /* __M4VSS3GPP_EXTENDED_API_H__ */
-