本文為您介紹如何修改SubmitMediaProducingJob的Timeline參數來完成視頻/圖片混剪。
使用說明
智能生產製作支援直播流、點播和OSS素材檔案的剪輯合成、特效渲染、模板生產等功能,更多詳情請參見智能生產製作概述。
將一個或多個視頻、音頻、圖片、字幕素材合成為成品,可以通過不同的Timeline參數配置提交剪輯,然後調用SubmitMediaProducingJob - 提交剪輯合成作業來完成合成。
時間軸是將素材按照視頻創意進行編排和特效設計的產物,時間軸主要包含軌道、素材、效果3種對象,詳情請參見Timeline配置說明。
如果您想通過調用SDK進行音視訊剪輯,請參見安裝IMS服務端SDK的準備工作。
設定成片視頻寬高
調用介面SubmitMediaProducingJob提交剪輯合成任務時,通過設定參數OutputMediaConfig中的Width、Height欄位來定義成片解析度。
String outputMediaUrl = "https://your-bucket.oss-cn-shanghai.aliyuncs.com/target_video.mp4";
String outputMediaConfig = "{\"MediaURL\":\"" + outputMediaUrl + "\",\"Width\":720,\"Height\":1280}";
SubmitMediaProducingJobRequest request = new SubmitMediaProducingJobRequest();
request.setTimeline("<your-timeline>");
request.setOutputMediaConfig(outputMediaConfig);
SubmitMediaProducingJobResponse response = iceClient.submitMediaProducingJob(request);視頻橫轉豎-補充上下黑邊
若Timeline中的素材為橫屏視頻,而提交剪輯合成任務時設定的成片解析度為豎屏,則系統會根據素材和成片的寬高進行等比縮放,並將素材置中顯示。
成片效果 | Timeline樣本 |
|
視頻橫轉豎-補充上下模糊地區
Radius(模糊半徑)取值範圍為[0.01, 1],具體參考Effect Type:Background 背景設定。
成片效果 | Timeline樣本 |
|
視頻橫轉豎-三分屏效果
AdaptMode=Cover參數表示素材按照其長寬比進行縮放,並填充滿整個目的地區域。其他值可參考VideoTrackClip。
成片效果 | Timeline樣本 |
|
視頻橫轉豎-設定背景顏色
成片效果 | Timeline樣本 |
|
視頻截取
In=3、Out=8 表示截取視頻的第3秒到第8秒的區間。
成片效果 | Timeline樣本 |
|
多段視頻截取合并
在Clip中,可以不設定TimelineIn和TimelineOut,系統將預設對素材進行前後拼接。
當MaxOut=5時,表示最多截取到Out為5秒的位置。具體操作為:
如果素材時間長度超過5秒,則截取前5秒;
如果素材時間長度不足5秒,則截取到素材結尾。
成片效果 | Timeline樣本 |
|
視頻圖片混剪
Type的預設值為Video。如果要使用圖片素材,則需要添加Type=Image。
成片效果 | Timeline樣本 |
|
添加浮水印/貼紙/GIF貼紙
GIF格式的圖片剪輯需要傳遞動態幀數(DyncFrames),即為GIF素材的幀數。
成片效果 | Timeline樣本 |
|
縮放配置
AdaptMode的取值包括:Contain、Cover、Fill,更多詳細資料,請參閱VideoTrackClip。
成片效果 | Timeline樣本 |
|
視頻畫中畫
在VideoTracks中,數組後面的軌道層級較高,會覆蓋數組前面的軌道。
成片效果 | Timeline樣本 |
|
水平翻轉、垂直翻轉
成片效果 | Timeline樣本 |
|
視頻裁剪
成片效果 | Timeline樣本 |
|
音視頻變速
在AudioTrackClips中,也可以使用Speed參數實現音視頻變速。
成片效果 | Timeline樣本 |
|
素材旋轉
成片效果 | Timeline樣本 |
|
圓形、矩形、線性、鏡面遮罩
成片效果 | Timeline樣本 |
|
參數說明
圓形(橢圓)
type = mask_circle
參數
類型
取值範圍
預設值
說明
x
float
[0.0, 素材寬]
0.5
遮罩圓心在素材內相比素材左上方的X座標。
[0.0, 1.0]時表示相對素材寬的座標。
大於1.0時,表示絕對像素值。
y
float
[0.0, 素材高]
0.5
遮罩圓心在素材內相比素材左上方的Y座標。
[0.0, 1.0]時表示相對素材高的座標。
大於1.0時,表示絕對像素值。
width
float
[0.0, 素材寬]
0.8
遮罩橢圓的寬度,相比素材的寬度。
[0.0, 1.0]時表示相對素材寬的寬度。
大於1.0時,表示絕對像素值。
height
float
[0.0, 素材高]
0.8
遮罩橢圓的高度,相比素材的高度。
[0.0, 1.0]時表示相對素材高的高度。
大於1.0時,表示絕對像素值。
antialias
float
[0.0, 1.0]
0.1
遮罩橢圓的消除鋸齒參數。值越大,邊緣羽化程度越高。
angle
float
[-9999.0, 9999.0]
0.0
旋轉角度。
矩形
type = mask_rec
參數
類型
取值範圍
預設值
說明
x
float
[0.0, 素材寬]
0.5
遮罩矩形中心在視頻素材內相比素材左上方的X座標。
[0.0, 1.0]時表示相對素材寬的座標。
大於1.0時,表示絕對像素值。
y
float
[0.0, 素材高]
0.5
遮罩矩形中心在視頻素材內相比素材左上方的Y座標。
[0.0, 1.0]時表示相對素材高的座標。
大於1.0時,表示絕對像素值。
width
float
[0.0, 素材寬]
0.8
遮罩矩形的寬度。
[0.0, 1.0]時表示相對素材寬的寬度。
大於1.0時,表示絕對像素值。
height
float
[0.0, 素材高]
0.8
遮罩矩形的高度。
[0.0, 1.0]時表示相對素材高的高度。
大於1.0時,表示絕對像素值。
antialias
float
[0.0, 1.0]
0.1
遮罩矩形的消除鋸齒參數,值越大,邊緣羽化程度越高。
radius
float
[0.0, 素材寬或高的較大值]
0.1
遮罩矩形圓角半徑。
[0.0, 1.0]時表示相對素材寬或高的較大值的半徑大小。
大於1.0時,表示絕對像素值。
angle
float
[-9999.0, 9999.0]
0.0
旋轉角度。
線性
type = mask_linear
參數
類型
取值範圍
預設值
說明
x
float
[0.0, 素材寬]
0.5
線性遮罩中心基準點在素材內相比素材左上方的X座標。
[0.0, 1.0]時表示相對素材寬的座標。
大於1.0時,表示絕對像素值。
y
float
[0.0, 素材高]
0.5
線性遮罩中心基準點在視頻素材內相比視頻左上方的Y座標。
[0.0, 1.0]時表示相對素材高的座標。
大於1.0時,表示絕對像素值。
antialias
float
[0.0, 1.0]
0.1
線性遮罩的消除鋸齒參數,值越大,邊緣羽化程度越高。
angle
float
[-9999.0, 9999.0]
0.0
旋轉角度。
鏡面
type = mask_minor
參數
類型
取值範圍
預設值
說明
x
float
[0.0, 素材寬]
0.5
鏡面遮罩中心基準點在素材內相比素材左上方的X座標。
[0.0, 1.0]時表示相對素材寬的座標。
大於1.0時,表示絕對像素值。
y
float
[0.0, 素材高]
0.5
鏡面遮罩中心基準點在素材內相比素材左上方的Y座標。
[0.0, 1.0]時表示相對素材高的座標。
大於1.0時,表示絕對像素值。
antialias
float
[0.0, 1.0]
0.1
鏡面遮罩的消除鋸齒參數,值越大,邊緣羽化程度越高。
angle
float
[-9999.0, 9999.0]
0.0
旋轉角度。