SubmitMediaProducingJob API でタイムライン パラメータを設定することで、画像と動画の編集やミキシングができます。
使用上の注意
インテリジェントプロダクションは、ライブストリーム、VOD ファイル、および Object Storage Service (OSS) の素材ファイルの編集と合成、エフェクトレンダリング、およびテンプレートをサポートしています。 詳細については、「インテリジェントプロダクションの概要」をご参照ください。
タイムラインパラメーター を構成し、SubmitMediaProducingJob 操作を呼び出すことで、1 つ以上のビデオ、オーディオファイル、画像、および字幕素材からビデオを生成できます。
タイムラインは、素材を追加し、エフェクトを構成してビデオを作成するときに作成されます。 タイムラインは、トラック、素材、およびエフェクトで構成されます。 詳細については、「タイムラインの構成」をご参照ください。
IMS SDK を使用してオーディオファイルとビデオファイルを編集する方法の詳細については、「準備」をご参照ください。
出力解像度の設定
SubmitMediaProducingJob API を呼び出して、動画編集ジョブを送信します。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);横向き動画の縦向き変換と黒帯の追加
横向きの動画を縦向きで出力する場合、システムは素材を比率を保ったままスケーリングし、フレームの中央に配置します。
最終的な効果 | タイムラインの例 |
|
横向き動画の縦向き変換とぼかしエリアの追加
Radius (ぼかしの半径) には 0.01 から 1 までの値を指定できます。詳細については、「エフェクトタイプ: 背景設定」をご参照ください。
最終効果 | タイムラインの例 |
|
3 画面分割エフェクトを使った横長動画の縦長変換
AdaptMode=Cover は、アスペクト比を維持したまま素材をスケーリングしてターゲットエリアを埋めます。その他の値については、「VideoTrackClip」をご参照ください。
最終的な効果 | タイムラインの例 |
|
横長動画の縦長への変換と背景色の設定
最終的な効果 | タイムラインの例 |
|
動画のトリミング
In=3 と Out=8 は、3秒から8秒のセグメントをトリミングして抽出します。
効果 | タイムラインの例 |
|
複数ビデオセグメントのトリミングと結合
TimelineIn と TimelineOut を省略すると、システムは素材を順番に連結します。
MaxOut を 5 に設定すると、素材を最大 5 秒まで使用します:
素材が 5 秒より長い場合:先頭の 5 秒を使用します。
素材が 5 秒より短い場合:素材全体を使用します。
出力結果 | タイムラインの例 |
|
動画と画像のミキシング
Type のデフォルト値は Video です。画像素材を使用する場合は、Type を Image に設定します。
最終効果 | タイムラインの例 |
|
ウォーターマーク、ステッカー、またはGIFステッカーの追加
GIF 画像の場合は、DyncFrames を GIF のフレーム数に設定します。
最終効果 | タイムラインの例 |
|
スケールモード
AdaptMode には Contain、Cover、Fill を指定できます。詳細については、「VideoTrackClip」をご参照ください。
最終的な効果 | タイムラインの例 |
|
ピクチャーインピクチャー
VideoTracks では、後にあるトラックほどレイヤーレベルが高く、先にあるトラックの上にオーバーレイします。
最終効果 | タイムラインの例 |
|
水平反転と垂直反転
最終効果 | タイムラインの例 |
|
動画のクロップ
最終エフェクト | タイムラインの例 |
|
オーディオとビデオの速度変更
VideoTrackClips は、再生速度をコントロールするための Speed パラメーターもサポートしています。
最終的な効果 | タイムラインの例 |
|
素材の回転
最終的な効果 | タイムラインの例 |
|
円形、矩形、線形、ミラーマスク
最終効果 | タイムラインの例 |
|
マスク部分ぼかしの最終効果 | タイムラインの例 |
|
パラメーターの説明
円形 (楕円)
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
回転角度です。
blur_intensity
float
[0.0, 1.0]
0.0
マスク内のぼかしの強度です。0.0 を指定すると、ぼかしは無効になります。値が大きいほど、マスク内の領域に適用されるぼかしが強くなります。
outer_alpha
float
[0.0, 1.0]
0.0
マスク外の領域の不透明度です。0.0 を指定すると、その領域は完全に透明になり、1.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
回転角度です。
blur_intensity
float
[0.0, 1.0]
0.0
マスク内のぼかしの強度です。0.0 を指定すると、ぼかしは無効になります。値が大きいほど、マスク内の領域に適用されるぼかしが強くなります。
outer_alpha
float
[0.0, 1.0]
0.0
マスク外の領域の不透明度です。0.0 を指定すると、その領域は完全に透明になり、1.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
回転角度です。
blur_intensity
float
[0.0, 1.0]
0.0
マスク内のぼかしの強度です。0.0 を指定すると、ぼかしは無効になります。値が大きいほど、マスク内の領域に適用されるぼかしが強くなります。
outer_alpha
float
[0.0, 1.0]
0.0
マスク外の領域の不透明度です。0.0 を指定すると、その領域は完全に透明になり、1.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
回転角度です。
blur_intensity
float
[0.0, 1.0]
0.0
マスク内のぼかしの強度です。0.0 を指定すると、ぼかしは無効になります。値が大きいほど、マスク内の領域に適用されるぼかしが強くなります。
outer_alpha
float
[0.0, 1.0]
0.0
マスク外の領域の不透明度です。0.0 を指定すると、その領域は完全に透明になり、1.0 を指定すると元の画像が完全に保持されます。中間値を指定すると、その領域は部分的に透明になります。
ビデオ フリーズフレーム
ビデオを 0~3 秒でトリミングし、2 秒間のフリーズフレームを追加します。
最終効果 | タイムラインの例 |
|