全部产品
Search
文档中心

Intelligent Media Services:Otomatis menyelaraskan materi dan panjang materi

更新时间:Jun 21, 2025

Topik ini menjelaskan cara mengonfigurasi penyelarasan materi antar trek di timeline.

I. Informasi latar belakang

Saat menggunakan timeline reguler untuk mengedit materi dan ingin materi audio serta video dari beberapa trek diputar dan diakhiri pada waktu yang sama, Anda harus menentukan parameter TimelineIn dan TimelineOut untuk setiap materi serta memastikan bahwa materi tersebut memiliki panjang yang sama. Topik ini menjelaskan metode penyelarasan materi yang lebih praktis. Anda tidak perlu menentukan waktu mulai atau akhir setiap materi di timeline. Cukup konfigurasikan parameter penyelarasan (lihat bagian berikut) untuk menyelaraskan audios dengan videos, audios dengan audios, videos dengan audios, dan videos dengan videos antar trek yang berbeda.

II. Pengenalan detail

2.1. Pengenalan protokol timeline

Anda dapat menggunakan parameter ClipId dan ReferenceClipId untuk menentukan hubungan penyelarasan antar materi.

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "In": 0,
          "Out": 5,
          "MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/head.mp4"
        },
        {
          "ReferenceClipId": "audio_1",
          "MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/video1.mp4"
        },
        {
          "MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/end.mp4",
          "In": 0,
          "Out": 5
        }
      ]
    }
  ],
  "AudioTracks": [
    {
      "AudioTrackClips": [
        {
          "TimelineIn": 5,
          "ClipId": "audio_1",
          "MediaId": "7980d8f************e6f7e5696301",
          "In": 0,
          "Out": 10
        }
      ]
    }
  ]
}

Pada contoh sebelumnya, panjang, waktu mulai, dan waktu akhir materi kedua dari trek video dikonfigurasikan secara otomatis berdasarkan materi pertama dari trek audio.

Batasan:

  1. Parameter ClipId dan ReferenceClipId hanya didukung oleh trek audio atau video dan tidak didukung oleh trek efek maupun trek gambar.

  2. Penyelarasan materi hanya berlaku jika materi berada di trek yang berbeda. Jika tidak, timeline tidak valid dan produksi video gagal.

  3. Jika parameter TimelineIn, TimelineOut, dan ReferenceClipId dikonfigurasi untuk sebuah klip, penyelarasan materi tidak berlaku, dan parameter TimelineIn serta TimelineOut yang digunakan.

  4. Jika panjang klip tidak mencukupi selama penyelarasan, kecepatan klip akan dikurangi untuk meningkatkan panjang. Sebagai contoh, jika klip A dengan panjang 10 detik diselaraskan dengan klip B dengan panjang 20 detik, klip A diputar pada kecepatan 0,5x sehingga diputar selama 20 detik.

  5. Jika panjang klip terlalu panjang selama penyelarasan, klip tersebut akan dipotong secara otomatis. Sebagai contoh, jika klip A dengan panjang 20 detik diselaraskan dengan klip B dengan panjang 10 detik, maka 10 detik pertama klip A dipertahankan.

2.2 Skenario umum

Berikut adalah beberapa skenario umum yang memerlukan penyelarasan materi antar trek:

2.2.1. Penyelarasan audio dan video sederhana

Menyelaraskan Audios dengan Videos

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "MediaId": "e6f7e57980************d8f696301",
          "In": 0,
          "Out": 4
        },
        {
          "ClipId":"video_1",
          "MediaId": "e6f7e57980************d8f696301",
          "In": 2,
          "Out": 10
        }
      ]
    }
  ],
  "AudioTracks": [
    {
      "AudioTrackClips": [
        {
          "ReferenceClipId": "video_1",
          "MediaId": "7980d8f************e6f7e5696301",
          "Effects": [
            {
              "Type": "Volume",
              "Gain": "0.2"
            }
          ]
        }
      ]
    }
  ]
}

Menyelaraskan Videos dengan Audios

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "MediaId": "e6f7e57980************d8f696301",
          "In": 0,
          "Out": 5
        },
        {
          "ReferenceClipId":"audio_1",
          "MediaId": "e6f7e57980************d8f696301"
        }
      ]
    }
  ],
  "AudioTracks": [
    {
      "AudioTrackClips": [
        {
          "TimelineIn": 5,
          "ClipId": "audio_1",
          "MediaId": "7980d8f************e6f7e5696301"
        }
      ]
    }
  ]
}

2.2.2. Menyelaraskan videos dengan audios: Trek video berisi transisi dan trek audio berisi beberapa pidato. Videos diputar berdasarkan panjang setiap pidato

Timeline berikut digunakan sebagai contoh:

  1. Trek audio berisi tiga materi yang merupakan pidato yang dihasilkan oleh AI_TTS.

  2. Trek video berisi lima materi. Terdapat transisi 2 detik antara video kedua dan ketiga, serta antara video ketiga dan keempat.

  3. Materi video kedua, ketiga, dan keempat dari trek video diselaraskan dengan tiga pidato di trek audio. Pidato dimulai dan diakhiri pada titik tengah transisi.

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "Out": 5,
      "MediaId": "e6f7e57980************d8f696301"
    },{
      "ReferenceClipId":"speech_1",
      "MediaId": "e6f7e57980************d8f696301",
      "Effects": [{
        "Type": "Transition",
        "SubType": "waterdrop",
        "Duration": 2
      }]
    }, {
      "ReferenceClipId":"speech_2",
      "MediaId": "e6f7e57980************d8f696301",
      "Effects": [{
        "Type": "Transition",
        "SubType": "waterdrop",
        "Duration": 2
      }]
    }, {
      "ReferenceClipId":"speech_3",
      "MediaId": "e6f7e57980************d8f696301"
    }, {
        "Out": 10,
        "MediaId": "e6f7e57980************d8f696301"
    }]
  }],
  "AudioTracks": [{
    "AudioTrackClips": [{
      "TimelineIn":5,
      "Type": "AI_TTS",
      "Content": "Pidato 1 Pidato 1 Pidato 1. Pidato 1 Pidato 1 Pidato 1 Pidato 1. Pidato 1 Pidato 1 Pidato 1. Pidato 1 Pidato 1 Pidato 1. Pidato 1 Pidato 1. Pidato 1. Pidato 1 Pidato 1 Pidato 1 Pidato 1.",
      "Voice": "sicheng",
      "ClipId":"speech_1",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 90,
        "FontSize": 56,
        "FontColor": "#ffffff"
      }]
    }, {
      "Type": "AI_TTS",
      "Content": "Pidato 2 Pidato 2 Pidato 2 Pidato 2 Pidato 2. Pidato 2 Pidato 2 Pidato 2 Pidato 2. Pidato 2 Pidato 2 Pidato 2 Pidato 2 Pidato 2 Pidato 2 Pidato 2. Pidato 2 Pidato 2 Pidato 2 Pidato 2.",
      "Voice": "sicheng",
      "ClipId":"speech_2",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 90,
        "FontSize": 56,
        "FontColor": "#ffffff"
      }]
    }, {
      "Type": "AI_TTS",
      "Content": "Pidato 3 Pidato 3 Pidato 3 Pidato 3 Pidato 3. Pidato 3 Pidato 3 Pidato 3. Pidato 3 Pidato 3 Pidato 3 Pidato 3 Pidato 3. Pidato 3 Pidato 3 Pidato 3 Pidato 3 Pidato 3. Pidato 3 Pidato 3.",
      "Voice": "sicheng",
      "ClipId":"speech_3",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 90,
        "FontSize": 56,
        "FontColor": "#ffffff"
      }]
    }]
  }]
}

2.2.3. Menyelaraskan audios dengan videos: Audio adalah pidato dan dipotong berdasarkan panjang video

Timeline berikut digunakan sebagai contoh:

  1. Trek video berisi tiga materi, dan panjang video kedua adalah 8 detik.

  2. Trek audio berisi pidato yang dihasilkan oleh AI_TTS. Pidato aslinya lebih panjang dari 8 detik.

  3. Materi audio diselaraskan dengan materi video kedua. Audio hanya diputar selama 8 detik, dan panjang berlebih dipotong secara otomatis.

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "MediaId": "e6f7e57980************d8f696301",
          "In": 0,
          "Out": 5
        },
        {
          "ClipId":"video_1",
          "MediaId": "e6f7e57980************d8f696301",
          "In": 10,
          "Out": 18
        },
        {
          "MediaId": "e6f7e57980************d8f696301",
          "In": 3,
          "Out": 10
        }
      ]
    }
  ],
  "AudioTracks": [
    {
      "AudioTrackClips": [
        {
          "ReferenceClipId": "video_1",
          "Type": "AI_TTS",
          "Content": "Halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua, halo semua.",
          "Voice": "Siqi",
          "SpeechRate": 0,
          "PitchRate": 0,
          "Effects": [
            {
              "Type": "AI_ASR",
              "Font": "WenQuanYi Zen Hei Mono",
              "FontSize": 26,
              "FontColorOpacity": 1,
              "FontColor": "#000000",
              "FontFace": {
                "Bold": true,
                "Italic": true,
                "Underline": false
              }
            }
          ]
        }
      ]
    }
  ]
}

2.2.4. Menyelaraskan videos dengan videos: Video latar belakang diputar berdasarkan panjang video avatar

Timeline berikut digunakan sebagai contoh:

  1. Timeline memiliki dua trek video, dan masing-masing trek berisi satu video. Materi trek pertama adalah video biasa, sedangkan materi trek kedua adalah video yang terdiri dari avatar, subtitle, dan pidato.

  2. Materi trek video pertama dibisukan, digunakan sebagai latar belakang, dan diselaraskan dengan materi trek video kedua.

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "ReferenceClipId": "avatar2",
          "MediaId": "e6f7e57980************d8f696301",
          "Effects": [
            {
              "Type": "Volume",
              "Gain": 0
            }
          ]
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "ClipId": "avatar2",
          "Type": "AI_Avatar",
          "AvatarId": "yunxin",
          "Content": "Metode belanja ini menyimpan barang di gudang, yang meningkatkan efisiensi logistik dan keamanan barang. Banyak perusahaan e-commerce telah mulai bereksperimen dengan model ini.",
          "X": 50,
          "Y": 0,
          "Effects": [
            {
              "Type": "AI_ASR",
              "Font": "AlibabaPuHuiTi",
              "Alignment": "BottomCenter",
              "Y": 50,
              "FontSize": 40,
              "FontColor": "#ffffff",
              "FontFace": {
                "Bold": true,
                "Italic": false,
                "Underline": false
              }
            }
          ]
        }
      ]
    }
  ]
}

2.2.5 Menyelaraskan gambar dengan videos. Video avatar digunakan sebagai latar belakang dan gambar ditumpangkan di atas video

Timeline berikut digunakan sebagai contoh:

  1. Trek video pertama berisi tiga materi. 5 detik pertama dan 5 detik terakhir terdiri dari segmen pembukaan dan penutupan video. Segmen tengah video terdiri dari avatar, subtitle, dan pidato.

  2. Materi trek video kedua adalah gambar yang diselaraskan dengan video avatar dari trek pertama. Gambar ditumpangkan di atas video.

{
  "VideoTracks": [
    {
      "VideoTrackClips": [
        {
          "MediaURL": "http://your-bucket.oss-cn-shanghai.aliyuncs.com/opening.mp4",
          "Out": 5
        },
        {
          "ClipId": "avatar2",
          "Type": "AI_Avatar",
          "AvatarId": "yunxin",
          "Content": "Metode belanja ini menyimpan barang di gudang, yang meningkatkan efisiensi logistik dan keamanan barang. Banyak perusahaan e-commerce telah mulai bereksperimen dengan model ini.",
          "X": 50,
          "Y": 0,
          "Effects": [
            {
              "Type": "AI_ASR",
              "Font": "AlibabaPuHuiTi",
              "Alignment": "BottomCenter",
              "Y": 50,
              "FontSize": 40,
              "FontColor": "#ffffff",
              "FontFace": {
                "Bold": true,
                "Italic": false,
                "Underline": false
              }
            }
          ]
        },
        {
          "MediaURL": "http://your-bucket.oss-cn-shanghai.aliyuncs.com/ending.mp4",
          "Out": 5
        }
      ]
    },
    {
      "VideoTrackClips": [
        {
          "ReferenceClipId": "avatar2",
          "Type": "Image",
          "MediaId": "e6f7e57980************d8f696301",
          "Width": 0.2,
          "Height": 0.2,
          "X": 0.1,
          "Y": 0.1
        }
      ]
    }
  ]
}