All Products
Search
Document Center

Intelligent Media Services:Pengeditan gambar dan video

Last Updated:Sep 08, 2026

Konfigurasikan parameter Timeline dalam operasi SubmitMediaProducingJob untuk mengedit dan mencampur gambar serta video.

Catatan penggunaan

  • Produksi cerdas mendukung pengeditan dan komposit, rendering efek, serta templat untuk aliran langsung (live streams), file VOD, dan file materi dari Object Storage Service (OSS). Untuk informasi lebih lanjut, lihat Ikhtisar produksi cerdas.

  • Anda dapat membuat video dari satu atau beberapa video, file audio, gambar, dan materi subtitle dengan mengonfigurasi parameter Timeline dan memanggil operasi SubmitMediaProducingJob.

  • Timeline dibuat saat Anda menambahkan materi dan mengonfigurasi efek untuk membuat video. Timeline terdiri dari track, materi, dan efek. Untuk informasi lebih lanjut, lihat Konfigurasi Timeline.

  • Untuk informasi lebih lanjut tentang cara menggunakan IMS SDK untuk mengedit file audio dan video, lihat Memulai.

Tentukan resolusi output

Panggil operasi SubmitMediaProducingJob untuk mengirimkan pekerjaan pengeditan video. Tetapkan `Width` dan `Height` dalam `OutputMediaConfig` guna menentukan resolusi output.

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);

Konversi video landscape ke portrait dan tambahkan bilah hitam

Saat video landscape dioutput dalam orientasi portrait, sistem secara proporsional menskalakan dan memusatkan materi dalam bingkai.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4"
    },{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4"
    },{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4"
    }]
  }]
}

Konversi video landscape ke portrait dan tambahkan area buram

`Radius` (radius blur) menerima nilai dari 0,01 hingga 1. Untuk informasi lebih lanjut, lihat Jenis Efek: Pengaturan latar belakang.

Efek akhir

Contoh Timeline

{
	"VideoTracks": [{
		"VideoTrackClips": [{
			"MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
			"Effects": [{
				"Type": "Background",
				"SubType": "Blur",
				"Radius": 0.1
			}]
		}, {
			"MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
			"Effects": [{
				"Type": "Background",
				"SubType": "Blur",
				"Radius": 0.1
			}]
		}, {
			"MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
			"Effects": [{
				"Type": "Background",
				"SubType": "Blur",
				"Radius": 0.1
			}]
		}]
	}]
}

Konversi video landscape ke portrait dengan efek layar tiga bagian

`AdaptMode=Cover` menskalakan materi agar mengisi area target sambil mempertahankan rasio aspeknya. Nilai lainnya tercantum dalam VideoTrackClip.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.3333,
      "AdaptMode": "Cover"
    },{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.3333,
      "AdaptMode": "Cover"
    },{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.3333,
      "AdaptMode": "Cover"
    }]
  },{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0,
      "AdaptMode": "Cover"
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0,
      "AdaptMode": "Cover"
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0,
      "AdaptMode": "Cover"
    }]
  },{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.6666,
      "AdaptMode": "Cover"
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.6666,
      "AdaptMode": "Cover"
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.6666,
      "AdaptMode": "Cover"
    }]
  }],
  "SubtitleTracks":[
    {
      "SubtitleTrackClips": [
        {
          "Type": "Text",
          "X": 0,
          "Y": 200,
          "Font": "AlibabaPuHuiTi",
          "Content": "This is the title",
          "Alignment": "TopCenter",
          "FontSize": 80,
          "FontColorOpacity": 1,
          "1FontColor": "#ffffff",
          "FontColor": "#FFDEAD",
          "FontFace": {
            "Bold": true,
            "Italic": false,
            "Underline": false
          }
        }
      ]
    },
    {
      "SubtitleTrackClips": [
        {
          "Type":"Text",
          "X": 0,
          "Y": 320,
          "Font": "KaiTi",
          "Content": "This is the subtitle",
          "Alignment": "TopCenter",
          "FontSize": 45,
          "FontColor": "#ffffff",
          "FontFace": {
            "Bold": false,
            "Italic": true,
            "Underline": true
          }
        }
      ]
    },
    {
      "SubtitleTrackClips":[
        {
          "Type":"Text",
          "X": 0,
          "Y": 900,
          "Font": "AlibabaPuHuiTi",
          "Content": "You can add captions during video merging.\nUse a line feed to display text on multiple lines.",
          "Alignment": "TopCenter",
          "FontSize": 40,
          "FontColor": "#ffffff",
          "FontFace": {
            "Bold": true,
            "Italic": false,
            "Underline": false
          }
        }
      ]
    }
  ]
}

Konversi video landscape ke portrait dan atur warna latar belakang

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Effects": [{
        "Type": "Background",
        "SubType": "Color",
        "Color": "#000066"
      }]
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Effects": [{
        "Type": "Background",
        "SubType": "Color",
        "Color": "#006400"
      }]
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
      "Effects": [{
        "Type": "Background",
        "SubType": "Color",
        "Color": "#8B1A1A"
      }]
    }]
  }]
}

Potong video

`In=3` dan `Out=8` memotong segmen dari detik ke-3 hingga ke-8.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "In": 3,
      "Out": 8
    }]
  }]
}

Potong dan gabungkan beberapa segmen video

Jika Anda menghilangkan `TimelineIn` dan `TimelineOut`, sistem akan menggabungkan materi secara berurutan.

Jika `MaxOut` diatur ke 5, maksimal 5 detik materi akan digunakan:

  • Materi yang lebih panjang dari 5 detik: 5 detik pertama yang digunakan.

  • Materi yang lebih pendek dari 5 detik: seluruh materi digunakan.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "In": 3,
      "Out": 8
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "MaxOut": 5
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
      "Effects": [{
        "Type": "Clip",
        "SubType": "RandomClip",
        "ClipDuration": 5
      }]
    }]
  }]
}

Campur video dan gambar

Nilai default `Type` adalah `Video`. Untuk menggunakan materi gambar, atur `Type` menjadi `Image`.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Out": 3
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/image/01.jpg",
      "Type": "Image",
      "Duration": 3
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Out": 3
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/image/02.jpg",
      "Type": "Image",
      "Duration": 3
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
      "Out": 3
    }]
  }]
}

Tambahkan Watermark, stiker, atau stiker GIF

Untuk gambar GIF, atur `DyncFrames` ke jumlah frame dalam GIF tersebut.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Out": 5
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Out": 5
    }, {
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
      "Out": 5
    }]
  },{
    "VideoTrackClips": [{
      "Type": "Image",
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/image/s1.png",
      "TimelineIn": 0,
      "Duration": 5,
      "X": 40,
      "Y": 40,
      "Width": 300,
      "Height": 150
    }, {
      "Type": "Image",
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/image/g2.gif",
      "TimelineIn": 5,
      "Duration": 5,
      "X": 20,
      "Y": 800,
      "Width": 200,
      "Height": 200,
      "DyncFrames": 8
    }, {
      "Type": "Image",
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/image/g1.gif",
      "TimelineIn": 10,
      "Duration": 5,
      "X": 400,
      "Y": 40,
      "Width": 200,
      "Height": 200,
      "DyncFrames": 8
    }]
  }]
}

Mode penskalaan

`AdaptMode` menerima nilai `Contain`, `Cover`, dan `Fill`. Untuk informasi lebih lanjut, lihat VideoTrackClip.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.3333,
      "AdaptMode": "Cover",
      "Out": 5
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.3333,
      "AdaptMode": "Cover",
      "Out": 5
    }]
  },{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0,
      "AdaptMode": "Contain",
      "Out": 5
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0,
      "AdaptMode": "Contain",
      "Out": 5
    }]
  },{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.6666,
      "AdaptMode": "Fill",
      "Out": 5
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
      "Width": 1,
      "Height": 0.3333,
      "X": 0,
      "Y": 0.6666,
      "AdaptMode": "Fill",
      "Out": 5
    }]
  }],
  "SubtitleTracks":[
    {
      "SubtitleTrackClips":[
        {
          "Type":"Text",
          "X": 0,
          "Y": 0,
          "Font": "AlibabaPuHuiTi",
          "Content": "AdaptMode=Cover: The content is scaled to fill the entire target area while maintaining its aspect ratio. If the object's aspect ratio does not match the content box, the object is cropped to fit.",
          "FontSize": 30,
          "FontColor": "#ffffff",
          "AdaptMode": "AutoWrap",
          "TextWidth": 1,
          "FontFace": {
            "Bold": true,
            "Italic": false,
            "Underline": false
          }
        }
      ]
    },
    {
      "SubtitleTrackClips":[
        {
          "Type":"Text",
          "X": 0,
          "Y": 0.3333,
          "Font": "AlibabaPuHuiTi",
          "Content": "AdaptMode=Contain: The content is scaled to fit within the target area while preserving its aspect ratio.",
          "FontSize": 30,
          "FontColor": "#ffffff",
          "AdaptMode": "AutoWrap",
          "TextWidth": 1,
          "FontFace": {
            "Bold": true,
            "Italic": false,
            "Underline": false
          }
        }
      ]
    },
    {
      "SubtitleTrackClips":[
        {
          "Type":"Text",
          "X": 0,
          "Y": 0.6666,
          "Font": "AlibabaPuHuiTi",
          "Content": "AdaptMode=Fill: This is the default behavior. The content is sized to fill the target content box exactly. The entire object completely fills the box. If the object's aspect ratio does not match the content box, the object is stretched to fit.",
          "FontSize": 30,
          "FontColor": "#ffffff",
          "AdaptMode": "AutoWrap",
          "TextWidth": 1,
          "FontFace": {
            "Bold": true,
            "Italic": false,
            "Underline": false
          }
        }
      ]
    }
  ]
}

Picture-in-picture

Dalam `VideoTracks`, track yang lebih akhir memiliki tingkat layer lebih tinggi dan menimpa track sebelumnya.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4"
    }]
  },{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
      "X": 0.25,
      "Y": 0.25,
      "Width": 0.5,
      "Height": 0.5
    }]
  }]
}

Pembalikan horizontal dan vertikal

Efek akhir

Contoh Timeline

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "Width": 0.5,
          "Height": 0.5,
          "X": 0,
          "Y": 0,
          "Effects": [
            {
              "Type": "Text",
              "FixedX": 0,
              "FixedY": 0,
              "Font": "HappyZcool-2016",
              "Content": "Original video",
              "Alignment": "TopLeft",
              "FontSize": 80,
              "FontColor": "#F5FFFA",
              "TimelineIn": 0,
              "TimelineOut": 10,
              "Outline": 1,
              "OutlineColour": "#0e0100"
            }
          ]
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "Width": 0.5,
          "Height": 0.5,
          "X": 0.5,
          "Y": 0,
          "Effects": [
            {
              "Type": "Flip",
              "Direction": "horizontal"
            },{
              "Type": "Text",
              "FixedX": 0.5,
              "FixedY": 0,
              "Font": "HappyZcool-2016",
              "Content": "Horizontal flip",
              "Alignment": "TopLeft",
              "FontSize": 80,
              "FontColor": "#F5FFFA",
              "TimelineIn": 0,
              "TimelineOut": 10,
              "Outline": 1,
              "OutlineColour": "#0e0100"
            }
          ]
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "Width": 0.5,
          "Height": 0.5,
          "X": 0,
          "Y": 0.5,
          "Effects": [
            {
              "Type": "Flip",
              "Direction": "vertical"
            },{
              "Type": "Text",
              "FixedX": 0,
              "FixedY": 0.5,
              "Font": "HappyZcool-2016",
              "Content": "Vertical flip",
              "Alignment": "TopLeft",
              "FontSize": 80,
              "FontColor": "#F5FFFA",
              "TimelineIn": 0,
              "TimelineOut": 10,
              "Outline": 1,
              "OutlineColour": "#0e0100"
            }
          ]
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "Width": 0.5,
          "Height": 0.5,
          "X": 0.5,
          "Y": 0.5,
          "Effects": [
            {
              "Type": "Flip",
              "Direction": "horizontal"
            },{
              "Type": "Flip",
              "Direction": "vertical"
            },{
              "Type": "Text",
              "FixedX": 0.5,
              "FixedY": 0.5,
              "Font": "HappyZcool-2016",
              "Content": "Horizontal and vertical flip",
              "Alignment": "TopLeft",
              "FontSize": 80,
              "FontColor": "#F5FFFA",
              "TimelineIn": 0,
              "TimelineOut": 10,
              "Outline": 1,
              "OutlineColour": "#0e0100"
            }
          ]
        }
      ]
    }
  ]
}

Pangkas video

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
      "Out": 3,
      "X": 0.3,
      "Y": 0.3,
      "Width":0.4,
      "Height":0.4,
      "Effects": [{
        "Type":"Crop",
        "X":0.3,
        "Y":0.3,
        "Width":0.4,
        "Height":0.4
      },{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "Crop by 60%",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA",
        "Outline": 1,
        "OutlineColour": "#0e0100"
      }]
    },{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
      "In": 3,
      "Out": 6,
      "X": 0.15,
      "Y": 0.15,
      "Width":0.7,
      "Height":0.7,
      "Effects": [{
        "Type":"Crop",
        "X":0.15,
        "Y":0.15,
        "Width":0.7,
        "Height":0.7
      },{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "Crop by 30%",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA",
        "Outline": 1,
        "OutlineColour": "#0e0100"
      }]
    },{
      "MediaURL": "http://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
      "In": 6,
      "Out": 9,
      "Effects": [{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "No crop",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA",
        "Outline": 1,
        "OutlineColour": "#0e0100"
      }]
    }]
  }]
}

Ubah kecepatan audio dan video

`AudioTrackClips` juga mendukung parameter `Speed` untuk mengontrol kecepatan pemutaran.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Out": 3,
      "Effects": [{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "Original speed",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA"
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Speed": 2,
      "Out": 6,
      "Effects": [{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "2x speed",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA"
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Speed": 3,
      "Out": 9,
      "Effects": [{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "3x speed",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA"
      }]
    }]
  }]
}

Putar material

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Out": 3,
      "Effects": [{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "Original angle",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA",
        "Outline": 1,
        "OutlineColour": "#0e0100"
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Out": 3,
      "X": 0,
      "Y": 0,
      "Height": 720,
      "Width": 1280,
      "Effects": [{
        "Type": "Rotate",
        "Degree": 90
      },{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "Rotate 90 degrees",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA",
        "Outline": 1,
        "OutlineColour": "#0e0100"
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Out": 3,
      "Effects": [{
        "Type": "Rotate",
        "Degree": 180
      },{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "Rotate 180 degrees",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA",
        "Outline": 1,
        "OutlineColour": "#0e0100"
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "Out": 3,
      "X": 0,
      "Y": 0,
      "Height": 720,
      "Width": 1280,
      "Effects": [{
        "Type": "Rotate",
        "Degree": 270
      },{
        "Type": "Text",
        "Font": "HappyZcool-2016",
        "Content": "Rotate 270 degrees",
        "FixedY": 150,
        "Alignment": "TopCenter",
        "FixedFontSize": 70,
        "FontColor": "#F5FFFA",
        "Outline": 1,
        "OutlineColour": "#0e0100"
      }]
    }]
  }]
}

Mask lingkaran, persegi panjang, linear, dan cermin

Efek akhir

Contoh Timeline

{
    "VideoTracks": [
        {
            "VideoTrackClips": [
                {
                    "MediaUrl": "https://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
                    "Width": 1,
                    "Height": 1,
                    "In": 0,
                    "Out": 5,
                    "AdaptMode": "Cover",
                    "Duration": 10
                }
            ]
        },
        {
            "VideoTrackClips": [
                {
                    "MediaURL": "https://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
                    "X": 0.1,
                    "Y": 0.1,
                    "Width": 0.3,
                    "Height": 0.3,
                    "AdaptMode": "Cover",
                    "In": 0,
                    "Out": 5,
                    "Effects": [
                        {
                            "Type": "VFX",
                            "SubType": "mask_circle",
                            "ExtParams": "x=0.5,y=0.2,width=200.0,height=200.0,antialias=0.05"
                        }
                    ]
                }
            ]
        },
        {
            "VideoTrackClips": [
                {
                    "MediaURL": "https://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
                    "X": 0.5,
                    "Y": 0.1,
                    "Width": 0.3,
                    "Height": 0.3,
                    "AdaptMode": "Cover",
                    "In": 0,
                    "Out": 5,
                    "Effects": [
                        {
                            "Type": "VFX",
                            "SubType": "mask_linear",
                            "ExtParams": "x=0.5,y=0.2,antialias=0.1,angle=90.0"
                        }
                    ]
                }
            ]
        },
        {
            "VideoTrackClips": [
                {
                    "MediaURL": "https://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
                    "X": 0.1,
                    "Y": 0.5,
                    "Width": 0.3,
                    "Height": 0.3,
                    "AdaptMode": "Cover",
                    "In": 0,
                    "Out": 5,
                    "Effects": [
                        {
                            "Type": "VFX",
                            "SubType": "mask_minor",
                            "ExtParams": "x=0.5,y=0.4,size=0.6,angle=45.0"
                        }
                    ]
                }
            ]
        },
        {
            "VideoTrackClips": [
                {
                    "MediaURL": "https://ice-document-materials.oss-cn-shanghai.aliyuncs.com/test_media/v1.mp4",
                    "X": 0.5,
                    "Y": 0.5,
                    "Width": 0.3,
                    "Height": 0.3,
                    "AdaptMode": "Cover",
                    "In": 0,
                    "Out": 5,
                    "Effects": [
                        {
                            "Type": "VFX",
                            "SubType": "mask_rec",
                            "ExtParams": "x=0.5,y=200.0,width=200.0,height=200.0,radius=50.0,antialias=0.03"
                        }
                    ]
                }
            ]
        }
    ]
}

Efek akhir blur mask parsial

Contoh Timeline

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "X": 0,
          "Y": 0,
          "In": 0,
          "Out": 5,
          "Width": 0.5,
          "Height": 0.5,
          "Effects": [
            {
              "Type": "VFX",
              "SubType": "mask_circle",
              "ExtParams": "x=0.5,y=0.5,width=0.6,height=0.6,antialias=0.01,angle=0.0,blur_intensity=1.0,outer_alpha=1.0"
            }
          ],
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "AdaptMode": "Cover"
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "X": 0.5,
          "Y": 0,
          "In": 0,
          "Out": 5,
          "Width": 0.5,
          "Height": 0.5,
          "Effects": [
            {
              "Type": "VFX",
              "SubType": "mask_linear",
              "ExtParams": "x=0.5,y=0.5,angle=90.0,antialias=0.01,blur_intensity=1.0,outer_alpha=1.0"
            }
          ],
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "AdaptMode": "Cover"
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "X": 0,
          "Y": 0.5,
          "In": 0,
          "Out": 5,
          "Width": 0.5,
          "Height": 0.5,
          "Effects": [
            {
              "Type": "VFX",
              "SubType": "mask_minor",
              "ExtParams": "x=0.5,y=0.4,size=0.6,angle=45.0,antialias=0.01,blur_intensity=1.0,outer_alpha=1.0"
            }
          ],
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "AdaptMode": "Cover"
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "X": 0.5,
          "Y": 0.5,
          "In": 0,
          "Out": 5,
          "Width": 0.5,
          "Height": 0.5,
          "Effects": [
            {
              "Type": "VFX",
              "SubType": "mask_rec",
              "ExtParams": "x=0.5,y=0.5,width=0.6,height=0.6,radius=0.15,antialias=0.01,angle=0.0,blur_intensity=1.0,outer_alpha=1.0"
            }
          ],
          "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h3.mp4",
          "AdaptMode": "Cover"
        }
      ]
    }
  ]
}

Deskripsi parameter

  • Lingkaran (elips)

    type = mask_circle

    Parameter

    Tipe

    Nilai valid

    Nilai default

    Deskripsi

    x

    float

    [0.0, lebar materi]

    0.5

    Koordinat X pusat mask dalam materi, relatif terhadap pojok kiri atas materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap lebar materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    y

    float

    [0.0, tinggi materi]

    0.5

    Koordinat Y pusat mask dalam materi, relatif terhadap pojok kiri atas materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap tinggi materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    width

    float

    [0.0, lebar materi]

    0.8

    Lebar mask elips, relatif terhadap lebar materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan lebar relatif terhadap lebar materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    height

    float

    [0.0, tinggi materi]

    0.8

    Tinggi mask elips, relatif terhadap tinggi materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan tinggi relatif terhadap tinggi materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    antialias

    float

    [0.0, 1.0]

    0.1

    Parameter anti-aliasing untuk mask elips. Nilai yang lebih besar menghasilkan tepi yang lebih halus.

    angle

    float

    [-9999.0, 9999.0]

    0.0

    Sudut rotasi.

    blur_intensity

    float

    [0.0, 1.0]

    0

    Intensitas blur di dalam mask. Nilai 0.0 menonaktifkan blur. Nilai yang lebih besar meningkatkan efek blur pada area di dalam mask.

    outer_alpha

    float

    [0.0, 1.0]

    0

    Opasitas area di luar mask. Nilai 0.0 menjadikan area tersebut transparan penuh, sedangkan nilai 1.0 mempertahankan gambar asli sepenuhnya. Nilai antara mempertahankan area tersebut secara sebagian transparan.

  • Persegi panjang

    type = mask_rec

    Parameter

    Tipe

    Nilai valid

    Nilai default

    Deskripsi

    x

    float

    [0.0, lebar materi]

    0.5

    Koordinat X pusat mask persegi panjang dalam materi video, relatif terhadap pojok kiri atas materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap lebar materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    y

    float

    [0.0, tinggi materi]

    0.5

    Koordinat Y pusat mask persegi panjang dalam materi video, relatif terhadap pojok kiri atas materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap tinggi materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    width

    float

    [0.0, lebar materi]

    0.8

    Lebar mask persegi panjang.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan lebar relatif terhadap lebar materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    height

    float

    [0.0, tinggi materi]

    0.8

    Tinggi mask persegi panjang.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan tinggi relatif terhadap tinggi materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    antialias

    float

    [0.0, 1.0]

    0.1

    Parameter anti-aliasing untuk mask persegi panjang. Nilai yang lebih besar menghasilkan tepi yang lebih halus.

    radius

    float

    [0.0, nilai lebih besar antara lebar atau tinggi materi]

    0.1

    Jari-jari sudut mask persegi panjang.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan ukuran jari-jari relatif terhadap nilai lebih besar antara lebar atau tinggi materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    angle

    float

    [-9999.0, 9999.0]

    0.0

    Sudut rotasi.

    blur_intensity

    float

    [0.0, 1.0]

    0

    Intensitas blur di dalam mask. Nilai 0.0 menonaktifkan blur. Nilai yang lebih besar meningkatkan efek blur pada area di dalam mask.

    outer_alpha

    float

    [0.0, 1.0]

    0

    Opasitas area di luar mask. Nilai 0.0 menjadikan area tersebut transparan penuh, sedangkan nilai 1.0 mempertahankan gambar asli sepenuhnya. Nilai antara mempertahankan area tersebut secara sebagian transparan.

  • Linear

    type = mask_linear

    Parameter

    Tipe

    Nilai valid

    Nilai default

    Deskripsi

    x

    float

    [0.0, lebar materi]

    0.5

    Koordinat X titik referensi pusat mask linear dalam materi, relatif terhadap pojok kiri atas materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap lebar materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    y

    float

    [0.0, tinggi materi]

    0.5

    Koordinat Y titik referensi pusat mask linear dalam materi video, relatif terhadap pojok kiri atas video.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap tinggi materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    antialias

    float

    [0.0, 1.0]

    0.1

    Parameter anti-aliasing untuk mask linear. Nilai yang lebih besar menghasilkan tepi yang lebih halus.

    angle

    float

    [-9999.0, 9999.0]

    0.0

    Sudut rotasi.

    blur_intensity

    float

    [0.0, 1.0]

    0

    Intensitas blur di dalam mask. Nilai 0.0 menonaktifkan blur. Nilai yang lebih besar meningkatkan efek blur pada area di dalam mask.

    outer_alpha

    float

    [0.0, 1.0]

    0

    Opasitas area di luar mask. Nilai 0.0 menjadikan area tersebut transparan penuh, sedangkan nilai 1.0 mempertahankan gambar asli sepenuhnya. Nilai antara mempertahankan area tersebut secara sebagian transparan.

  • Cermin

    type = mask_minor

    Parameter

    Type

    Nilai valid

    Nilai default

    Deskripsi

    x

    float

    [0.0, lebar materi]

    0.5

    Koordinat X titik referensi pusat mask cermin dalam materi, relatif terhadap pojok kiri atas materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap lebar materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    y

    float

    [0.0, tinggi materi]

    0.5

    Koordinat Y titik referensi pusat mask cermin dalam materi, relatif terhadap pojok kiri atas materi.

    • Nilai dari 0.0 hingga 1.0 merepresentasikan koordinat relatif terhadap tinggi materi.

    • Nilai lebih besar dari 1.0 merepresentasikan nilai piksel absolut.

    antialias

    float

    [0.0, 1.0]

    0.1

    Parameter anti-aliasing untuk mask cermin. Nilai yang lebih besar menghasilkan tepi yang lebih halus.

    angle

    float

    [-9999.0, 9999.0]

    0.0

    Sudut rotasi.

    blur_intensity

    float

    [0.0, 1.0]

    0

    Intensitas blur di dalam mask. Nilai 0.0 menonaktifkan blur. Nilai yang lebih besar meningkatkan efek blur pada area di dalam mask.

    outer_alpha

    float

    [0.0, 1.0]

    0

    Opasitas area di luar mask. Nilai 0.0 menjadikan area tersebut transparan penuh, sedangkan nilai 1.0 mempertahankan gambar asli sepenuhnya. Nilai antara mempertahankan area tersebut secara sebagian transparan.

Bingkai beku video

Memotong video dari detik ke-0 hingga ke-3 dan menambahkan frame beku selama 2 detik.

Efek akhir

Contoh Timeline

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/h2.mp4",
      "In": 0,
      "Out": 3,
      "Effects": [{
        "Type": "FreezeFrame",
        "Duration": 2
      }]
    }]
  }],
  "SubtitleTracks": [{
    "SubtitleTrackClips": [{
      "Type": "Text",
      "TimelineIn": 0,
      "TimelineOut": 3,
      "X": 0,
      "Y": 150,
      "Font": "HappyZcool-2016",
      "Content": "Trim material 0-3s",
      "Alignment": "TopCenter",
      "FontSize": 80,
      "FontColor": "#F5FFFA",
      "FontFace": {
        "Bold": true
      }
    }, {
      "Type": "Text",
      "TimelineIn": 0,
      "TimelineOut": 3,
      "X": 0,
      "Y": 150,
      "Font": "HappyZcool-2016",
      "Content": "Freeze frame 2s",
      "Alignment": "TopCenter",
      "FontSize": 80,
      "FontColor": "#F5FFFA",
      "FontFace": {
        "Bold": true
      }
    }]
  }]
}

Referensi