LiteAVSDK
腾讯云音视频 SDK ,服务于数万家企业客户的高可用组件,致力于最大限度地节省您的研发成本。
TXVideoEditer

详细描述

视频编辑接口类


结构体说明

◆ com::tencent::ugc::TXVideoEditer::TXVideoGenerateListener

interface com::tencent::ugc::TXVideoEditer::TXVideoGenerateListener

Public 成员函数

void onGenerateProgress (float progress)
 
void onGenerateComplete (TXVideoEditConstants.TXGenerateResult result)
 

成员函数说明

◆ onGenerateComplete()

void onGenerateComplete ( TXVideoEditConstants.TXGenerateResult  result)

短视频生成完成

◆ onGenerateProgress()

void onGenerateProgress ( float  progress)

短视频生成进度 progress 生成视频进度百分比

◆ com::tencent::ugc::TXVideoEditer::TXVideoPreviewListener

interface com::tencent::ugc::TXVideoEditer::TXVideoPreviewListener

Public 成员函数

void onPreviewProgress (int time)
 
void onPreviewFinished ()
 

成员函数说明

◆ onPreviewFinished()

void onPreviewFinished ( )

短视频预览结束回调

◆ onPreviewProgress()

void onPreviewProgress ( int  time)

短视频预览进度,单位us

◆ com::tencent::ugc::TXVideoEditer::TXVideoPreviewListenerEx

interface com::tencent::ugc::TXVideoEditer::TXVideoPreviewListenerEx

Public 成员函数

void onPreviewError (TXVideoEditConstants.TXPreviewError error)
 
void onPreviewProgress (int time)
 
void onPreviewFinished ()
 

成员函数说明

◆ onPreviewError()

void onPreviewError ( TXVideoEditConstants.TXPreviewError  error)

短视频预览过程中发生错误

参数
error

◆ onPreviewFinished()

void onPreviewFinished ( )
inherited

短视频预览结束回调

◆ onPreviewProgress()

void onPreviewProgress ( int  time)
inherited

短视频预览进度,单位us

◆ com::tencent::ugc::TXVideoEditer::TXVideoProcessListener

interface com::tencent::ugc::TXVideoEditer::TXVideoProcessListener

Public 成员函数

void onProcessProgress (float progress)
 
void onProcessComplete (TXVideoEditConstants.TXGenerateResult result)
 

成员函数说明

◆ onProcessComplete()

void onProcessComplete ( TXVideoEditConstants.TXGenerateResult  result)

短视频预处理完成

参数
result

◆ onProcessProgress()

void onProcessProgress ( float  progress)

短视频预处理进度

参数
progress

◆ com::tencent::ugc::TXVideoEditer::TXVideoCustomProcessListener

interface com::tencent::ugc::TXVideoEditer::TXVideoCustomProcessListener

Public 成员函数

int onTextureCustomProcess (int textureId, int width, int height, long timestamp)
 
void onTextureDestroyed ()
 

成员函数说明

◆ onTextureCustomProcess()

int onTextureCustomProcess ( int  textureId,
int  width,
int  height,
long  timestamp 
)

在OpenGL线程中回调,在这里可以进行采集图像的二次处理

参数
textureId纹理ID
width纹理的宽度
height纹理的高度
timestamp纹理的时间戳
返回
返回给SDK的纹理ID,如果不做任何处理,返回传入的纹理ID即可

说明:SDK回调出来的纹理类型是GLES20.GL_TEXTURE_2D,接口返回给SDK的纹理类型也必须是GLES20.GL_TEXTURE_2D

◆ onTextureDestroyed()

void onTextureDestroyed ( )

在OpenGL线程中回调,可以在这里释放创建的OpenGL资源

◆ com::tencent::ugc::TXVideoEditer::TXPCMCallbackListener

interface com::tencent::ugc::TXVideoEditer::TXPCMCallbackListener

Public 成员函数

TXAudioFrame onPCMCallback (TXAudioFrame frame)
 

成员函数说明

◆ onPCMCallback()

TXAudioFrame onPCMCallback ( TXAudioFrame  frame)

◆ com::tencent::ugc::TXVideoEditer::TXThumbnailListener

interface com::tencent::ugc::TXVideoEditer::TXThumbnailListener

Public 成员函数

void onThumbnail (int index, long timeMs, Bitmap bitmap)
 

成员函数说明

◆ onThumbnail()

void onThumbnail ( int  index,
long  timeMs,
Bitmap  bitmap 
)

◆ com::tencent::ugc::TXVideoEditer

class com::tencent::ugc::TXVideoEditer

Public 成员函数

 TXVideoEditer (Context context)
 
int setVideoPath (String videoSource)
 
void setCustomVideoProcessListener (TXVideoCustomProcessListener listener)
 
void setProfile (int profile)
 
void setSpecialRatio (float specialRatio)
 
void setFilter (Bitmap bmp)
 
void setFilter (Bitmap leftBitmap, float leftIntensity, Bitmap rightBitmap, float rightIntensity, float leftRatio)
 
void setBeautyFilter (int beautyLevel, int whiteningLevel)
 
int setPictureList (List< Bitmap > bitmapList, int fps)
 
long setPictureTransition (int type)
 
int setBGM (String path)
 
void setBGMLoop (boolean looping)
 
void setBGMAtVideoTime (long videoStartTime)
 
void setBGMStartTime (long startTime, long endTime)
 
void setBGMVolume (float volume)
 
void setBGMFadeInOutDuration (long fadeInDuration, long fadeOutDuration)
 
void setWaterMark (Bitmap watermark, TXVideoEditConstants.TXRect rect)
 
void setTailWaterMark (Bitmap tailwatermark, TXVideoEditConstants.TXRect rect, int duration)
 
void setSubtitleList (List< TXVideoEditConstants.TXSubtitle > subtitleList)
 
void setAnimatedPasterList (List< TXVideoEditConstants.TXAnimatedPaster > animatedPasterList)
 
void setPasterList (List< TXVideoEditConstants.TXPaster > pasterList)
 
void setRenderRotation (int rotation)
 
void setSpeedList (List< TXVideoEditConstants.TXSpeed > speedList)
 
void setRepeatPlay (List< TXVideoEditConstants.TXRepeat > repeatList)
 
void setReverse (boolean isReverse)
 
boolean setTransitionEffect (int type, long videoTotalDurationMs, long startTimeMs)
 
boolean setTransitionEffect (int type, long videoTotalDurationMs, long startTimeMs, long transitionDurationMs)
 
void deleteLastTransitionEffect ()
 
void startEffect (int type, long startTime)
 
void stopEffect (int type, long endTime)
 
void deleteLastEffect ()
 
void deleteAllEffect ()
 
void setVideoProcessListener (TXVideoProcessListener listener)
 
void getThumbnail (List< Long > thumbnailList, int width, int height, boolean fast, TXThumbnailListener listener)
 
void getThumbnail (int count, int width, int height, boolean fast, TXThumbnailListener listener)
 
void setThumbnail (TXVideoEditConstants.TXThumbnail thumbnail)
 
void setThumbnailListener (TXThumbnailListener listener)
 
void processVideo ()
 
void release ()
 
void setTXVideoPreviewListener (TXVideoPreviewListener listener)
 
void initWithPreview (TXVideoEditConstants.TXPreviewParam param)
 
void startPlayFromTime (long startTime, long endTime)
 
void pausePlay ()
 
void resumePlay ()
 
void stopPlay ()
 
void previewAtTime (long timeMs)
 
void setVideoGenerateListener (TXVideoGenerateListener listener)
 
void setCutFromTime (long startTime, long endTime)
 
void setVideoBitrate (int videoBitrate)
 
void setAudioBitrate (int audioBitrate)
 
void generateVideo (int videoCompressed, String videoOutputPath)
 
void cancel ()
 
void refreshOneFrame ()
 
void setVideoVolume (float volume)
 
int getThumbnailCount ()
 
String getVideoSourcePath ()
 
String getVideoProcessPath ()
 

构造及析构函数说明

◆ TXVideoEditer()

TXVideoEditer ( Context  context)
inline

成员函数说明

◆ cancel()

void cancel ( )
inline

取消裁剪

◆ deleteAllEffect()

void deleteAllEffect ( )
inline

删除所有滤镜特效 [精简版不支持]

◆ deleteLastEffect()

void deleteLastEffect ( )
inline

删除上一次添加的滤镜特效操作 [精简版不支持]

◆ deleteLastTransitionEffect()

void deleteLastTransitionEffect ( )
inline

删除上一次添加的转场效果(精简版不支持)

◆ generateVideo()

void generateVideo ( int  videoCompressed,
String  videoOutputPath 
)
inline

根据操作列表生成最终视频文件

参数
videoCompressed视频压缩质量
videoOutputPath视频输出路径

◆ getThumbnail() [1/2]

void getThumbnail ( int  count,
int  width,
int  height,
boolean  fast,
TXThumbnailListener  listener 
)
inline

获取缩略图列表

参数
count缩略图张数
width缩略图宽度
height缩略图高度
fast缩略图是否关键帧的图片
listener缩略图的回调函数,注意:最大返回视频宽高的缩略图

◆ getThumbnail() [2/2]

void getThumbnail ( List< Long >  thumbnailList,
int  width,
int  height,
boolean  fast,
TXThumbnailListener  listener 
)
inline

获取缩略图列表

参数
thumbnailList每个缩略图的时间点(ms)
width缩略图宽度
height缩略图高度
fast缩略图是否关键帧的图片
listener缩略图的回调函数,注意:最大返回视频宽高的缩略图

◆ getThumbnailCount()

int getThumbnailCount ( )
inline

◆ getVideoProcessPath()

String getVideoProcessPath ( )
inline

◆ getVideoSourcePath()

String getVideoSourcePath ( )
inline

◆ initWithPreview()

void initWithPreview ( TXVideoEditConstants.TXPreviewParam  param)
inline

初始化预览View

参数
param

◆ pausePlay()

void pausePlay ( )
inline

暂停播放

◆ previewAtTime()

void previewAtTime ( long  timeMs)
inline

单帧预览

参数
timeMs预览时间(ms)

◆ processVideo()

void processVideo ( )
inline

视频预处理,所有功能均能使用

◆ refreshOneFrame()

void refreshOneFrame ( )
inline

用于编辑字幕界面:刷新一帧,显示不带字幕残影的图像

◆ release()

void release ( )
inline

视频处理完或取消处理的视频,必须释放资源

◆ resumePlay()

void resumePlay ( )
inline

继续播放

◆ setAnimatedPasterList()

void setAnimatedPasterList ( List< TXVideoEditConstants.TXAnimatedPaster >  animatedPasterList)
inline

设置动态贴纸列表 [精简版不支持]

参数
animatedPasterList动态贴纸列表

◆ setAudioBitrate()

void setAudioBitrate ( int  audioBitrate)
inline

设置生成的音频码率

参数
audioBitrate音频码率 单位:kbps

◆ setBeautyFilter()

void setBeautyFilter ( int  beautyLevel,
int  whiteningLevel 
)
inline

设置美颜,美白级别 [精简版不支持]

◆ setBGM()

int setBGM ( String  path)
inline

设置背景音乐路径 [精简版不支持]

参数
path音乐文件路径 path 设为null表示清除背景音乐

◆ setBGMAtVideoTime()

void setBGMAtVideoTime ( long  videoStartTime)
inline

设置背景音乐从视频的某个位置起开始添加 [精简版不支持]

参数
videoStartTime

◆ setBGMFadeInOutDuration()

void setBGMFadeInOutDuration ( long  fadeInDuration,
long  fadeOutDuration 
)
inline

设置背景音乐淡入淡出 [精简版不支持]

参数
fadeInDuration开始的持续时间 毫秒
fadeOutDuration结束的持续时间 毫秒

◆ setBGMLoop()

void setBGMLoop ( boolean  looping)
inline

设置背景音乐是否重复 [精简版不支持]

参数
looping

◆ setBGMStartTime()

void setBGMStartTime ( long  startTime,
long  endTime 
)
inline

可以选取音乐的起始时间和结束时间 [精简版不支持]

参数
startTime音乐起始时间 (ms)
endTime音乐结束时间 (ms)

◆ setBGMVolume()

void setBGMVolume ( float  volume)
inline

设置背景音乐声音大小 [精简版不支持]

参数
volume0 ~ 1.0

◆ setCustomVideoProcessListener()

void setCustomVideoProcessListener ( TXVideoCustomProcessListener  listener)
inline

自定义图像处理 [精简版不支持]

参数
listener图像处理回调

◆ setCutFromTime()

void setCutFromTime ( long  startTime,
long  endTime 
)
inline

设置视频剪切范围

参数
startTime视频剪切的开始时间(ms)
endTime视频剪切的结束时间(ms)

◆ setFilter() [1/2]

void setFilter ( Bitmap  bmp)
inline

设置滤镜 [精简版不支持]

参数
bmp指定素材,即颜色查找表图片。注意:一定要用png格式!!!

◆ setFilter() [2/2]

void setFilter ( Bitmap  leftBitmap,
float  leftIntensity,
Bitmap  rightBitmap,
float  rightIntensity,
float  leftRatio 
)
inline

setFilter 设置组合滤镜特效 [精简版不支持]

参数
leftBitmap左侧滤镜 注意:一定要用png格式!!
leftIntensity左侧滤镜程度
rightBitmap右侧滤镜 注意:一定要用png格式!!
rightIntensity右侧滤镜程度
leftRatio左侧图片占的比例大小

◆ setPasterList()

void setPasterList ( List< TXVideoEditConstants.TXPaster >  pasterList)
inline

设置静态贴纸列表 [精简版不支持]

参数
pasterList静态贴纸列表

◆ setPictureList()

int setPictureList ( List< Bitmap >  bitmapList,
int  fps 
)
inline

设置图片转视频参数 [精简版不支持]

参数
bitmapList图片列表
fps需要的fps,限制在15-30之间

◆ setPictureTransition()

long setPictureTransition ( int  type)
inline

设置图片转场类型 [精简版不支持]

参数
type
返回

◆ setProfile()

void setProfile ( int  profile)
inline

◆ setRenderRotation()

void setRenderRotation ( int  rotation)
inline

设置画面渲染角度 [精简版不支持]

参数
rotation

◆ setRepeatPlay()

void setRepeatPlay ( List< TXVideoEditConstants.TXRepeat >  repeatList)
inline

设置多段重复片段 [精简版不支持]

【注意:目前只支持一次重复,重复三次】

参数
repeatList

◆ setReverse()

void setReverse ( boolean  isReverse)
inline

视频倒放处理 [精简版不支持]

参数
isReverse: true:倒放视频;false:取消倒放

◆ setSpecialRatio()

void setSpecialRatio ( float  specialRatio)
inline

设置滤镜程度值 [精简版不支持]

参数
specialRatio: 从0到1,越大滤镜效果越明显,默认取值0.5

◆ setSpeedList()

void setSpeedList ( List< TXVideoEditConstants.TXSpeed >  speedList)
inline

设置多段倍速播放 [精简版不支持]

参数
speedListTXSpeed中speedLevel设置:
TXVideoEditConstants.SPEED_LEVEL_SLOWEST(极慢速-源视频的0.25倍速)
TXVideoEditConstants.SPEED_LEVEL_SLOW(慢速-源视频的0.5倍速)
TXVideoEditConstants.SPEED_LEVEL_NORMAL(标准-源视频的1倍速)
TXVideoEditConstants.SPEED_LEVEL_FAST(快速-源视频的1.5倍速)
TXVideoEditConstants.SPEED_LEVEL_FASTEST(极快速-源视频的2倍速)

◆ setSubtitleList()

void setSubtitleList ( List< TXVideoEditConstants.TXSubtitle >  subtitleList)
inline

设置字幕列表 [精简版不支持]

参数
subtitleList字幕列表

◆ setTailWaterMark()

void setTailWaterMark ( Bitmap  tailwatermark,
TXVideoEditConstants.TXRect  rect,
int  duration 
)
inline

设置片尾水印 [精简版不支持]

参数
tailwatermark水印图片
rect图片归一化位置
duration显示时长,单位(s)

◆ setThumbnail()

void setThumbnail ( TXVideoEditConstants.TXThumbnail  thumbnail)
inline

设置预处理输出的缩略图

◆ setThumbnailListener()

void setThumbnailListener ( TXThumbnailListener  listener)
inline

设置预处理输出缩略图回调

参数
listener

◆ setTransitionEffect() [1/2]

boolean setTransitionEffect ( int  type,
long  videoTotalDurationMs,
long  startTimeMs 
)
inline

设置转场特效开始时间(精简版不支持),默认持续时间是1秒。 转场效果不能重叠,即:在一段转场效果持续时间内,不能添加另一个转场效果。

参数
type转场特效类型,参考{@linkplain TXEVideoTransitionDef}
videoTotalDurationMs视频总时长(ms)
startTimeMs转场特效开始时间(ms)

◆ setTransitionEffect() [2/2]

boolean setTransitionEffect ( int  type,
long  videoTotalDurationMs,
long  startTimeMs,
long  transitionDurationMs 
)
inline

设置转场特效开始时间(精简版不支持)以及持续时间。 转场效果不能重叠,即:在一段转场效果持续时间内,不能添加另一个转场效果。

参数
type转场特效类型,参考{@linkplain TXEVideoTransitionDef}
videoTotalDurationMs视频总时长(ms)
startTimeMs转场特效开始时间(ms)
transitionDurationMs转场特效持续时间(ms)

◆ setTXVideoPreviewListener()

void setTXVideoPreviewListener ( TXVideoPreviewListener  listener)
inline

设置视频预览监听

参数
listener

◆ setVideoBitrate()

void setVideoBitrate ( int  videoBitrate)
inline

设置生成视频码率

参数
videoBitrate视频码率 单位:kbps 如果设置了码率,SDK生成视频会优先使用这个码率,注意码率不要太大或则太小,码率太小视频会模糊不清,码率太大,生成视频体积会很大 这里建议设置范围为:600~3600,如果没有调用这个接口,SDK内部会根据压缩质量自动计算码率

◆ setVideoGenerateListener()

void setVideoGenerateListener ( TXVideoGenerateListener  listener)
inline

设置编辑器生成视频监听

参数
listener

◆ setVideoPath()

int setVideoPath ( String  videoSource)
inline

设置视频路径 SDK版本:Android 18以上此接口有效。

参数
videoSource视频源 videoSource可以是String视频绝对路径或Content Uri方式。

◆ setVideoProcessListener()

void setVideoProcessListener ( TXVideoProcessListener  listener)
inline

设置视频预处理回调

参数
listener

◆ setVideoVolume()

void setVideoVolume ( float  volume)
inline

设置视频声音大小

参数
volume0 ~ 1.0

◆ setWaterMark()

void setWaterMark ( Bitmap  watermark,
TXVideoEditConstants.TXRect  rect 
)
inline

设置水印

参数
watermark水印图片
rect相对于视频图像的归一化frame,x,y,width 取值范围 0~1

◆ startEffect()

void startEffect ( int  type,
long  startTime 
)
inline

设置滤镜特效开始时间 [精简版不支持]

参数
type滤镜特效类型
startTime滤镜特效开始时间(ms)

◆ startPlayFromTime()

void startPlayFromTime ( long  startTime,
long  endTime 
)
inline

播放某一时间段的视频

参数
startTime播放开始时间(ms)
endTime播放结束时间(ms)

◆ stopEffect()

void stopEffect ( int  type,
long  endTime 
)
inline

设置滤镜特效结束时间 [精简版不支持]

参数
type滤镜特效类型
endTime滤镜特效结束时间(ms)

◆ stopPlay()

void stopPlay ( )
inline

停止播放(释放资源)