ComfyUI Video Stabilizer
ComfyUI Video Stabilizer は、ComfyUI 上で動画の手ブレ補正を行うための custom node です。
主に以下の3つの機能があります。
- 動画の手ブレを補正する
- 手ブレ補正した動画から、元の手ブレを復元する
- 人工的な手ブレを加える
インストール
nomadoor/ComfyUI-Video-Stabilizer
ComfyUI Managerからインストールしてください。
手ブレ補正
手ブレ補正には、Video Stabilizer Classic または Video Stabilizer Flow を使います。
機能としては全く同じで、処理方法が違います。
Flow の方が少し重いですが、性能は大分良いので、基本的には Flow をオススメします。

{
"id": "6b3d4697-4625-4ceb-b24e-042ff08d20a7",
"revision": 0,
"last_node_id": 16,
"last_link_id": 29,
"nodes": [
{
"id": 6,
"type": "VHS_VideoInfoLoaded",
"pos": [
1031.5880268082033,
5126.700023489094
],
"size": [
256.2392578125,
106
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"link": 6
}
],
"outputs": [
{
"name": "fps🟦",
"type": "FLOAT",
"links": [
13,
21
]
},
{
"name": "frame_count🟦",
"type": "INT",
"links": null
},
{
"name": "duration🟦",
"type": "FLOAT",
"links": null
},
{
"name": "width🟦",
"type": "INT",
"links": null
},
{
"name": "height🟦",
"type": "INT",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_VideoInfoLoaded"
},
"widgets_values": {}
},
{
"id": 3,
"type": "VHS_LoadVideo",
"pos": [
588.6581159062798,
4966.700023489094
],
"size": [
403.1241508847537,
1005.2207487010894
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
12
]
},
{
"name": "frame_count",
"type": "INT",
"links": null
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": [
6
]
}
],
"properties": {
"Node name for S&R": "VHS_LoadVideo"
},
"widgets_values": {
"video": "12701975_1080_1920_120fps.mp4",
"force_rate": 24,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 121,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "AnimateDiff",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "12701975_1080_1920_120fps.mp4",
"type": "input",
"format": "video/mp4",
"force_rate": 24,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 121,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 13,
"type": "VHS_VideoCombine",
"pos": [
1637.438804655043,
4966.700023489094
],
"size": [
403.1241508847537,
1029.1096015728954
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 22
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 21
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 8,
"loop_count": 0,
"filename_prefix": "Video Stabilize",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": false,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Video Stabilize_00025.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 24,
"workflow": "Video Stabilize_00025.png",
"fullpath": "/home/nomax/working-linux/ComfyUI-dev/output/Video Stabilize_00025.mp4"
}
}
}
},
{
"id": 10,
"type": "video_stabilizer_flow",
"pos": [
1329.002524203471,
4966.700023489094
],
"size": [
270,
266
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [
{
"label": "Frames",
"name": "frames",
"type": "IMAGE",
"link": 12
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 13
}
],
"outputs": [
{
"name": "Stabilized Frames",
"type": "IMAGE",
"links": [
22
]
},
{
"name": "Padding Mask",
"type": "MASK",
"links": null
},
{
"name": "Motion Meta",
"type": "JSON",
"links": []
}
],
"properties": {
"Node name for S&R": "video_stabilizer_flow"
},
"widgets_values": [
16,
"crop_and_pad",
"similarity",
false,
0.7,
0.5,
0.6,
"#7F7F7F"
],
"color": "#232",
"bgcolor": "#353"
}
],
"links": [
[
6,
3,
3,
6,
0,
"VHS_VIDEOINFO"
],
[
12,
3,
0,
10,
0,
"IMAGE"
],
[
13,
6,
0,
10,
1,
"FLOAT"
],
[
21,
6,
0,
13,
4,
"FLOAT"
],
[
22,
10,
0,
13,
0,
"IMAGE"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.6034931246089132,
"offset": [
37.04022585422607,
-4648.410084612637
]
},
"frontendVersion": "1.45.19",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
パラメータ
Video Stabilizer Classic と Video Stabilizer Flow のパラメータは共通です。
| Parameter | 説明 |
|---|---|
frame_rate |
入力動画の FPS。時間方向の smoothing の基準になります。 |
🎞️ framing_mode |
手ブレ補正で生じる画面端の欠けをどう扱うか。動画で差が分かりやすい重要パラメータです。 |
transform_mode |
カメラの動きをどの変換として推定するか。 |
🔒 camera_lock |
三脚で撮ったような、かなり固定された映像に寄せます。 |
strength |
推定したカメラの動きをどれくらい取り除くか。0.0 はほぼ元の動きのまま、1.0 は強く補正します。 |
smooth |
カメラの動きをどれくらいなめらかにするか。値を上げるほど急な揺れが抑えられます。 |
keep_fov |
framing_mode が crop のときだけ有効。画角をどれくらい維持するかを指定します。1.0 はズーム少なめ、0.0 は画角を犠牲にして余白を消します。 |
padding_color |
padding が出る部分の色。後段で inpaint / outpaint する場合は padding_mask を使うので、色そのものはあまり重要ではありません。 |
🎞️ framing_mode
crop- 余白が見えないように、映像を少しズーム / クロップします。
- 揺れが大きいほど画角が狭くなります。
crop_and_pad- なるべく元の画角を保持し、足りない部分を padding で埋めます。
- padding 部分は
padding_maskとして出力されます。
expand- 全くクロップせず、必要な分だけキャンバスを広げます。
一般的な編集ソフトでは crop に近い処理しか使いませんが、動画生成モデルを使うと padding 部分をマスクとして outpainting する、といった面白い使い方ができます。
🔒 camera_lock
camera_lock を有効にすると、完璧ではありませんが、三脚で撮ったような固定カメラ寄りの動画に調整します。
通常の手ブレ補正は、カメラの動きを「なめらかにする」だけですが、camera_lock は、カメラの動きをできるだけ止めにいきます。
手ブレを復元する
動画編集では、手ブレを消してから処理したほうが安定することがありますが、そのままだと最初の臨場感が消えます。
Video Stabilizer Motion Apply を使うと、一度 Video Stabilizer で消した手ブレを、逆に適用して復元することができます。

{
"id": "6b3d4697-4625-4ceb-b24e-042ff08d20a7",
"revision": 0,
"last_node_id": 18,
"last_link_id": 34,
"nodes": [
{
"id": 3,
"type": "VHS_LoadVideo",
"pos": [
588.6581159062798,
4964.549677016036
],
"size": [
403.1241508847537,
1005.2207487010894
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
12
]
},
{
"name": "frame_count",
"type": "INT",
"links": null
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": [
6
]
}
],
"properties": {
"Node name for S&R": "VHS_LoadVideo"
},
"widgets_values": {
"video": "12224610-uhd_2160_3840_60fps.mp4",
"force_rate": 24,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 121,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "AnimateDiff",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "12224610-uhd_2160_3840_60fps.mp4",
"type": "input",
"format": "video/mp4",
"force_rate": 24,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 121,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 13,
"type": "VHS_VideoCombine",
"pos": [
1990.6632365534408,
4964.549677016036
],
"size": [
403.1241508847537,
1029.1096015728954
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 32
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 21
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 8,
"loop_count": 0,
"filename_prefix": "Video Stabilize",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": false,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Video Stabilize_00028.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 24,
"workflow": "Video Stabilize_00028.png",
"fullpath": "/home/nomax/working-linux/ComfyUI-dev/output/Video Stabilize_00028.mp4"
}
}
}
},
{
"id": 17,
"type": "video_stabilizer_motion_apply",
"pos": [
1651.331470675339,
4964.549677016036
],
"size": [
294.8951171875,
194
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"label": "Frames",
"name": "frames",
"type": "IMAGE",
"link": 30
},
{
"label": "Motion Meta",
"name": "motion_meta",
"type": "JSON",
"link": 31
}
],
"outputs": [
{
"name": "Frames",
"type": "IMAGE",
"links": [
32
]
},
{
"name": "Padding Mask",
"type": "MASK",
"links": null
},
{
"name": "Meta",
"type": "JSON",
"links": null
}
],
"properties": {
"Node name for S&R": "video_stabilizer_motion_apply"
},
"widgets_values": [
"crop",
"bilinear",
"#7F7F7F",
0,
"Standard"
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 18,
"type": "VHS_VideoCombine",
"pos": [
1651.331470675339,
5229.276168427855
],
"size": [
261.8253251055752,
766.8181233731946
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 33
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 34
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 8,
"loop_count": 0,
"filename_prefix": "Video Stabilize",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": false,
"trim_to_audio": false,
"pingpong": false,
"save_output": false,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Video Stabilize_00001.mp4",
"subfolder": "",
"type": "temp",
"format": "video/h264-mp4",
"frame_rate": 24,
"workflow": "Video Stabilize_00001.png",
"fullpath": "/home/nomax/working-linux/ComfyUI-dev/temp/Video Stabilize_00001.mp4"
}
}
}
},
{
"id": 6,
"type": "VHS_VideoInfoLoaded",
"pos": [
1037.350640790201,
5124.549677016036
],
"size": [
256.2392578125,
106
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"link": 6
}
],
"outputs": [
{
"name": "fps🟦",
"type": "FLOAT",
"links": [
13,
21,
34
]
},
{
"name": "frame_count🟦",
"type": "INT",
"links": null
},
{
"name": "duration🟦",
"type": "FLOAT",
"links": null
},
{
"name": "width🟦",
"type": "INT",
"links": null
},
{
"name": "height🟦",
"type": "INT",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_VideoInfoLoaded"
},
"widgets_values": {}
},
{
"id": 10,
"type": "video_stabilizer_flow",
"pos": [
1336.894821984737,
4964.549677016036
],
"size": [
270,
266
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [
{
"label": "Frames",
"name": "frames",
"type": "IMAGE",
"link": 12
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 13
}
],
"outputs": [
{
"name": "Stabilized Frames",
"type": "IMAGE",
"links": [
30,
33
]
},
{
"name": "Padding Mask",
"type": "MASK",
"links": null
},
{
"name": "Motion Meta",
"type": "JSON",
"links": [
31
]
}
],
"properties": {
"Node name for S&R": "video_stabilizer_flow"
},
"widgets_values": [
16,
"expand",
"similarity",
false,
0.7,
0.5,
0.6,
"#7F7F7F"
],
"color": "#232",
"bgcolor": "#353"
}
],
"links": [
[
6,
3,
3,
6,
0,
"VHS_VIDEOINFO"
],
[
12,
3,
0,
10,
0,
"IMAGE"
],
[
13,
6,
0,
10,
1,
"FLOAT"
],
[
21,
6,
0,
13,
4,
"FLOAT"
],
[
30,
10,
0,
17,
0,
"IMAGE"
],
[
31,
10,
2,
17,
1,
"JSON"
],
[
32,
17,
0,
13,
0,
"IMAGE"
],
[
33,
10,
0,
18,
0,
"IMAGE"
],
[
34,
6,
0,
18,
4,
"FLOAT"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.8032493488544642,
"offset": [
-725.0202624189589,
-4768.080853647571
]
},
"frontendVersion": "1.45.19",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
cropやcrop_and_padで補正した場合、すでに切り落とした画素は戻せません。復元まで考える場合は、最初の手ブレ補正でexpandを使うのがおすすめです。
人工的に手ブレを加える
AI で生成した動画…に限りませんが、カメラワークが滑らかすぎると少し CG 感が出ます。
そこで、あえて手ブレを加えることで、臨場感や生々しさを演出できます。

{
"id": "c4a0a995-ecdc-4446-b4b3-79c2462c8d0f",
"revision": 0,
"last_node_id": 20,
"last_link_id": 19,
"nodes": [
{
"id": 6,
"type": "VHS_VideoInfoLoaded",
"pos": [
1032.1843366759986,
5183.054739756548
],
"size": [
256.2392578125,
106
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"link": 6
}
],
"outputs": [
{
"name": "fps🟦",
"type": "FLOAT",
"links": [
8,
11
]
},
{
"name": "frame_count🟦",
"type": "INT",
"links": null
},
{
"name": "duration🟦",
"type": "FLOAT",
"links": null
},
{
"name": "width🟦",
"type": "INT",
"links": null
},
{
"name": "height🟦",
"type": "INT",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_VideoInfoLoaded"
},
"widgets_values": {}
},
{
"id": 11,
"type": "video_stabilizer_motion_apply",
"pos": [
1641.247135511922,
4996.885283224809
],
"size": [
294.8951171875,
194
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{
"label": "Frames",
"name": "frames",
"type": "IMAGE",
"link": 12
},
{
"label": "Motion Meta",
"name": "motion_meta",
"type": "JSON",
"link": 13
}
],
"outputs": [
{
"name": "Frames",
"type": "IMAGE",
"links": [
14
]
},
{
"name": "Padding Mask",
"type": "MASK",
"links": null
},
{
"name": "Meta",
"type": "JSON",
"links": null
}
],
"properties": {
"Node name for S&R": "video_stabilizer_motion_apply"
},
"widgets_values": [
"crop",
"bilinear",
"#7F7F7F",
0,
"Standard"
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 3,
"type": "VHS_LoadVideo",
"pos": [
566.0962011978545,
4996.885283224809
],
"size": [
444.68014904172344,
1079.3204064228532
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
9,
12
]
},
{
"name": "frame_count",
"type": "INT",
"links": null
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": [
6
]
}
],
"properties": {
"Node name for S&R": "VHS_LoadVideo"
},
"widgets_values": {
"video": "7578123-uhd_2160_3840_24fps.mp4",
"force_rate": 0,
"custom_width": 1024,
"custom_height": 0,
"frame_load_cap": 121,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "AnimateDiff",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "7578123-uhd_2160_3840_24fps.mp4",
"type": "input",
"format": "video/mp4",
"force_rate": 0,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 121,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 5,
"type": "VHS_VideoCombine",
"pos": [
1970.3092519356228,
4996.885283224809
],
"size": [
446.50286515597736,
1107.7082285590845
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 14
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 8
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 8,
"loop_count": 0,
"filename_prefix": "Video Stabilize",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": false,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Video Stabilize_00024.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 23.976023976023978,
"workflow": "Video Stabilize_00024.png",
"fullpath": "/home/nomax/working-linux/ComfyUI-dev/output/Video Stabilize_00024.mp4"
}
}
}
},
{
"id": 8,
"type": "video_stabilizer_shake_generator",
"pos": [
1322.5905937246994,
5118.478229940922
],
"size": [
284.4895425510215,
178
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [
{
"label": "Frames Context",
"name": "frames_context",
"type": "IMAGE",
"link": 9
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 11
}
],
"outputs": [
{
"name": "Motion Meta",
"type": "JSON",
"links": [
13
]
}
],
"properties": {
"Node name for S&R": "video_stabilizer_shake_generator"
},
"widgets_values": [
16,
"handheld",
1,
1,
0,
"fixed"
],
"color": "#232",
"bgcolor": "#353"
}
],
"links": [
[
6,
3,
3,
6,
0,
"VHS_VIDEOINFO"
],
[
8,
6,
0,
5,
4,
"FLOAT"
],
[
9,
3,
0,
8,
0,
"IMAGE"
],
[
11,
6,
0,
8,
1,
"FLOAT"
],
[
12,
3,
0,
11,
0,
"IMAGE"
],
[
13,
8,
0,
11,
1,
"JSON"
],
[
14,
11,
0,
5,
0,
"IMAGE"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.5486301132808329,
"offset": [
-17.814042429216784,
-4642.277349663411
]
},
"frontendVersion": "1.45.19",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
Video Stabilizer Shake Generator で人工的なカメラ揺れを作り、これを Video Stabilizer Motion Apply に渡すことで、動画を揺らします。
パラメータ
| Parameter | 説明 |
|---|---|
frame_rate |
入力動画の FPS。動画側から FPS が渡っていない場合の fallback として使われます。 |
style |
揺れの種類。 |
amount |
揺れの強さ。少しだけ自然さを足したい場合は低めで十分です。上げすぎると普通に酔いやすい映像になります。 |
speed |
揺れの速さ。ゆっくりした手持ち感にしたい場合は下げ、細かく忙しい揺れにしたい場合は上げます。 |
seed |
揺れの乱数 seed。同じ設定でも seed を変えると揺れ方が変わります。 |
style
tripod: ほぼ固定カメラに近い、ごく弱い揺れを足します。handheld: 手持ちカメラ風の自然な揺れを足します。walking: 歩きながら撮ったような上下・左右の揺れを足します。action: 強めで荒い動きを足します。vibration: 細かい振動を足します。
Video Stabilizer Shake Generator Manualというノードもあります。 こちらは preset ではなく、内部パラメータで細かく動きを調整することができます。
Motion Blur
Video Stabilizer Motion Apply では、モーションブラーを追加することもできます。
少し追加してあげると、より実際のカメラ映像に近い雰囲気になりますね。