全部产品
Search
文档中心

Object Storage Service:Penggabungan video

更新时间:Nov 10, 2025

Fitur penggabungan video memungkinkan Anda menggabungkan beberapa video menjadi satu video tunggal dan mengonversinya ke format yang ditentukan.

Perkenalan fitur

Penggabungan video adalah kemampuan untuk menggabungkan beberapa klip video menjadi satu video lengkap dan mengonversinya ke format yang diperlukan.

002

Skenario

  • Film production: Dalam proses produksi film, serial TV, dan film pendek, penggabungan video merupakan salah satu langkah inti yang membantu editor mengintegrasikan berbagai potongan gambar dan adegan untuk membangun struktur narasi yang lengkap.

  • Content creation: Di platform media sosial video pendek, pembuat konten sering menggunakan teknologi penggabungan video untuk menghasilkan vlog, tutorial, atau video bertema, meningkatkan daya tarik dan visibilitas konten mereka.

  • Pendidikan dan pelatihan: Guru dan pelatih dapat membuat video instruksional dengan menggabungkan klip video yang berbeda untuk mengombinasikan teori dan praktik, sehingga mendorong pemahaman dan pembelajaran siswa.

  • Tayangan ulang acara olahraga: Dalam siaran olahraga, teknologi penggabungan video digunakan untuk menghasilkan cuplikan sorotan guna membantu penonton meninjau momen-momen menarik dalam acara tersebut.

Cara menggunakan

Prasyarat

Menggabungkan video

Anda hanya dapat menggunakan SDK Java, Python, atau Go untuk menggabungkan video melalui pemrosesan asinkron.

Java

Gunakan Java SDK versi 3.17.4 atau yang lebih baru.

import com.aliyun.oss.ClientBuilderConfiguration;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.common.auth.CredentialsProviderFactory;
import com.aliyun.oss.common.auth.EnvironmentVariableCredentialsProvider;
import com.aliyun.oss.common.comm.SignVersion;
import com.aliyun.oss.model.AsyncProcessObjectRequest;
import com.aliyun.oss.model.AsyncProcessObjectResult;
import com.aliyuncs.exceptions.ClientException;

import java.util.Base64;

public class Demo {
    public static void main(String[] args) throws ClientException {
        // Ganti yourEndpoint dengan Endpoint dari wilayah tempat bucket berada.
        String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
        // Tentukan ID wilayah Alibaba Cloud umum, seperti cn-hangzhou.
        String region = "cn-hangzhou";
        // Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah dikonfigurasi.
        EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
        // Tentukan nama bucket.
        String bucketName = "examplebucket";
        // Tentukan nama file video gabungan.
        String targetObject = "dest.mp4";
        // Tentukan nama file video sumber.
        String sourceVideo = "src.mp4";
        // Tentukan nama file video yang akan digabungkan.
        String video1 = "concat1.mp4";
        String video2 = "concat2.mp4";
        // Buat instance OSSClient.
        // Saat instance OSSClient tidak lagi digunakan, panggil metode shutdown untuk melepaskan sumber daya.
        ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
        clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);
        OSS ossClient = OSSClientBuilder.create()
                .endpoint(endpoint)
                .credentialsProvider(credentialsProvider)
                .clientConfiguration(clientBuilderConfiguration)
                .region(region)
                .build();

        try {
            // Enkode nama file video.
            String video1Encoded = Base64.getUrlEncoder().withoutPadding().encodeToString(video1.getBytes());
            String video2Encoded = Base64.getUrlEncoder().withoutPadding().encodeToString(video2.getBytes());
            // Bangun string gaya pemrosesan video dan parameter penggabungan video.
            String style = String.format("video/concat,ss_0,f_mp4,vcodec_h264,fps_25,vb_1000000,acodec_aac,ab_96000,ar_48000,ac_2,align_1/pre,o_%s/sur,o_%s,t_0", video1Encoded, video2Encoded);
            // Bangun instruksi pemrosesan asinkron.
            String bucketEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(bucketName.getBytes());
            String targetEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(targetObject.getBytes());
            String process = String.format("%s|sys/saveas,b_%s,o_%s/notify,topic_QXVkaW9Db252ZXJ0", style, bucketEncoded, targetEncoded);
            // Buat objek AsyncProcessObjectRequest.
            AsyncProcessObjectRequest request = new AsyncProcessObjectRequest(bucketName, sourceVideo, process);
            // Jalankan tugas pemrosesan asinkron.
            AsyncProcessObjectResult response = ossClient.asyncProcessObject(request);
            System.out.println("EventId: " + response.getEventId());
            System.out.println("RequestId: " + response.getRequestId());
            System.out.println("TaskId: " + response.getTaskId());

        } finally {
            // Matikan OSSClient.
            ossClient.shutdown();
        }
    }
}

Python

Gunakan Python SDK versi 2.18.4 atau yang lebih baru.

# -*- coding: utf-8 -*-
import base64
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider

def main():
    # Dapatkan kredensial akses sementara dari variabel lingkungan. Sebelum menjalankan kode contoh, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah dikonfigurasi.
    auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())
    # Ganti Endpoint dengan yang sesuai untuk wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur Endpoint ke https://oss-cn-hangzhou.aliyuncs.com.
    endpoint = 'https://oss-cn-hangzhou.aliyuncs.com'
    # Tentukan ID wilayah Alibaba Cloud umum, seperti cn-hangzhou.
    region = 'cn-hangzhou'

    # Tentukan nama bucket, seperti examplebucket.
    bucket = oss2.Bucket(auth, endpoint, 'examplebucket', region=region)

    # Tentukan nama video gabungan.
    target_object = 'out.mp4'
    # Tentukan nama file video sumber.
    source_video = 'emrfinal.mp4'
    # Tentukan nama file video yang akan digabungkan.
    video1 = 'osshdfs.mp4'
    video2 = 'product.mp4'
    # Bangun string gaya pemrosesan video dan parameter penggabungan video.
    video1_encoded = base64.urlsafe_b64encode(video1.encode()).decode().rstrip('=')
    video2_encoded = base64.urlsafe_b64encode(video2.encode()).decode().rstrip('=')
    style = f"video/concat,ss_0,f_mp4,vcodec_h264,fps_25,vb_1000000,acodec_aac,ab_96000,ar_48000,ac_2,align_1/pre,o_{video1_encoded}/sur,o_{video2_encoded},t_0"
    # Bangun instruksi pemrosesan asinkron.
    bucket_encoded = base64.urlsafe_b64encode('examplebucket'.encode()).decode().rstrip('=')
    target_encoded = base64.urlsafe_b64encode(target_object.encode()).decode().rstrip('=')
    process = f"{style}|sys/saveas,b_{bucket_encoded},o_{target_encoded}/notify,topic_QXVkaW9Db252ZXJ0"
    print(process)
    # Jalankan tugas pemrosesan asinkron.
    try:
        result = bucket.async_process_object(source_video, process)
        print(f"EventId: {result.event_id}")
        print(f"RequestId: {result.request_id}")
        print(f"TaskId: {result.task_id}")
    except Exception as e:
        print(f"Error: {e}")


if __name__ == "__main__":
    main()

Go

Gunakan Go SDK versi 3.0.2 atau yang lebih baru.

package main

import (
    "encoding/base64"
    "fmt"
    "os"
    "strings"

    "github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
    // Dapatkan kredensial akses sementara dari variabel lingkungan. Sebelum menjalankan kode contoh, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah dikonfigurasi.
    provider, err := oss.NewEnvironmentVariableCredentialsProvider()
    if err != nil {
    fmt.Println("Error:", err)
    os.Exit(-1)
    }
    // Buat instance OSSClient.
    // Ganti yourEndpoint dengan Endpoint dari bucket. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur Endpoint ke https://oss-cn-hangzhou.aliyuncs.com. Untuk wilayah lain, tentukan Endpoint sebenarnya.
    // Ganti yourRegion dengan ID wilayah Alibaba Cloud umum, seperti cn-hangzhou.
    client, err := oss.New("yourEndpoint", "", "", oss.SetCredentialsProvider(&provider), oss.AuthVersion(oss.AuthV4), oss.Region("yourRegion"))
    if err != nil {
    fmt.Println("Error:", err)
    os.Exit(-1)
    }
    // Tentukan nama bucket, seperti examplebucket.
    bucketName := "examplebucket"

    bucket, err := client.Bucket(bucketName)
    if err != nil {
    fmt.Println("Error:", err)
    os.Exit(-1)
    }
    // Tentukan nama file video gabungan.
    targetObject := "dest.mp4"
    if err != nil {
    fmt.Println("Error:", err)
    os.Exit(-1)
    }
    // Tentukan nama file video sumber.
    sourcevideo := "src.mp4"
    // Tentukan nama file video yang akan digabungkan.
    video1 := "concat1.mp4"
    video2 := "concat2.mp4"
    // Bangun string gaya pemrosesan video dan parameter penggabungan video.    
    style := fmt.Sprintf("video/concat,ss_0,f_mp4,vcodec_h264,fps_25,vb_1000000,acodec_aac,ab_96000,ar_48000,ac_2,align_1/pre,o_%s/sur,o_%s,t_0", strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(video1)), "="), strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(video2)), "="))
    // Bangun instruksi pemrosesan asinkron.
    process := fmt.Sprintf("%s|sys/saveas,b_%v,o_%v/notify,topic_QXVkaW9Db252ZXJ0", style, strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(bucketName)), "="), strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(targetObject)), "="))
    fmt.Printf("%#v\n", process)
    rs, err := bucket.AsyncProcessObject(sourcevideo, process)
    if err != nil {
    fmt.Println("Error:", err)
    os.Exit(-1)
    }
    fmt.Printf("EventId:%s\n", rs.EventId)
    fmt.Printf("RequestId:%s\n", rs.RequestId)
    fmt.Printf("TaskId:%s\n", rs.TaskId)
}
Catatan

Permintaan pemrosesan asinkron tidak mengembalikan hasil pemrosesan. Untuk mendapatkan hasil dari tugas asinkron, gunakan Simple Message Queue (SMQ), sebelumnya dikenal sebagai MNS. Untuk informasi lebih lanjut, lihat Notifikasi pesan.

Deskripsi parameter

Aksi: video/concat

Tabel berikut menjelaskan parameter.

Parameter penggabungan

Operasi video/concat menggabungkan video dalam urutan kemunculan pre dan sur di dalam string permintaan. Detailnya adalah sebagai berikut:

  • /pre: File video untuk digabungkan di awal.

  • /sur: File video untuk digabungkan di akhir.

Parameter

Tipe

Diperlukan

Deskripsi

ss

int

Tidak

Waktu mulai untuk menggabungkan video awalan atau akhiran, dalam milidetik. Nilai yang valid:

  • 0 (default): Mulai dari awal.

  • Nilai lebih besar dari 0: Mulai dari milidetik ss.

t

int

Tidak

Durasi untuk menggabungkan video awalan atau akhiran, dalam milidetik. Nilai yang valid:

  • 0 (default): Berlanjut hingga akhir.

  • Nilai lebih besar dari 0: Berlangsung selama t milidetik.

o

string

Ya

Objek OSS di bucket saat ini. Nama objek harus dienkripsi menggunakan Base64 URL-safe.

Parameter transkoding

Parameter

Tipe

Diperlukan

Deskripsi

ss

int

Tidak

Waktu mulai Transkoding untuk video yang sedang digabungkan, dalam milidetik. Nilai yang valid:

  • 0 (bawaan): Mulai dari awal.

  • Nilai lebih besar dari 0: Mulai dari milidetik ss.

t

int

Tidak

Durasi transkoding untuk video yang digabungkan, dalam milidetik. Nilai yang valid:

  • 0 (bawaan): Berlanjut hingga akhir.

  • Nilai lebih besar dari 0: Berlangsung selama t milidetik.

f

string

Ya

Kontainer video. Nilai yang valid:

  • mp4, mkv, mov, asf, avi, mxf, ts, flv, webm

vn

int

Tidak

Menentukan apakah akan menonaktifkan aliran video. Nilai yang valid:

  • 0 (default): Tidak menonaktifkan aliran video.

  • 1: Dinonaktifkan.

vcodec

string

Ya

Kodek video (format encoding). Nilai yang valid:

  • h264: Format encoding H.264.

  • h265: Format encoding H.265.

  • vp9: Format encoding VP9.

Catatan

Format mxf dan flv tidak mendukung H.265.

fps

float

Tidak

Laju bingkai video. Secara default, parameter ini sama dengan yang ada pada video sumber yang ditentukan oleh align. Rentang nilai adalah 0 hingga 240.

fpsopt

int

Tidak

Opsi laju bingkai video. Nilai yang valid:

  • 0: Selalu menggunakan laju bingkai target.

  • 1: Jika laju bingkai video sumber dalam daftar penggabungan kurang dari nilai fps, laju bingkai video sumber terkecil dalam daftar digunakan.

  • 2: Jika laju bingkai video sumber dalam daftar penggabungan kurang dari nilai fps, operasi gagal.

Catatan

Parameter ini harus dikonfigurasi dengan fps.

pixfmt

string

Tidak

Format pengambilan sampel piksel. Secara default, parameter ini sama dengan yang ditentukan oleh video sumber melalui align. Nilai yang valid:

  • yuv420p

  • yuva420p

  • yuv420p10le

  • yuv422p

  • yuv422p10le

  • yuv444p

  • yuv444p10le

s

string

Tidak

Resolusi.

  • Formatnya adalah w x h, yang berarti lebar × tinggi.

  • Lebar dan tinggi harus merupakan kelipatan dari 2 dan berkisar antara 64 hingga 4096. Sebagai contoh, 4096x4096 dan 64x64 valid.

sopt

int

Tidak

Opsi resolusi. Nilai yang valid:

  • 0: Selalu menggunakan resolusi target.

  • 1: Jika resolusi video sumber dalam daftar penggabungan lebih kecil dari nilai s, resolusi video sumber terkecil dalam daftar digunakan.

  • 2: Jika resolusi video sumber dalam daftar penggabungan lebih kecil dari nilai s, operasi gagal.

Catatan

Parameter ini harus dikonfigurasi dengan s.

scaletype

string

Tidak

Metode penskalaan. Nilai yang valid:

  • crop: Memperbesar dan memotong.

  • stretch (default): Meregangkan untuk memenuhi.

  • fill: Memperbesar dan menambah bilah hitam.

  • fit: Memperbesar tanpa menambah bilah hitam. Rasio aspek dipertahankan.

arotate

int

Tidak

Rotasi otomatis arah resolusi. Nilai yang valid:

  • 0 (bawaan): Matikan.

  • 1. Hidupkan.

g

int

Tidak

Ukuran Group of Pictures (GOP). Nilai default adalah 150. Rentang nilai adalah 1 hingga 100000.

vb

int

Tidak

Bitrate video, dalam bit per detik (bps). Rentang nilai adalah 10.000 hingga 100.000.000.

Catatan

Parameter ini saling eksklusif dengan crf. Mereka mewakili algoritma kontrol bitrate yang berbeda. Jika tidak ada yang diatur, video dikodekan pada bitrate default untuk resolusi keluaran.

vbopt

int

Tidak

Opsi bitrate video. Nilai yang valid:

  • 0: Selalu menggunakan target bitrate video.

  • 1: Jika bitrate video sumber dalam daftar penggabungan kurang dari nilai vb, bitrate video sumber terkecil dalam daftar digunakan.

  • 2: Jika bitrate video sumber dalam daftar penggabungan kurang dari nilai vb, operasi gagal.

Catatan

Parameter ini harus dikonfigurasi dengan vb.

crf

float

Tidak

Faktor laju konstan. Rentang nilai adalah 0 hingga 51. Nilai yang lebih besar menunjukkan kualitas citra yang lebih rendah. Kami merekomendasikan nilai dari 18 hingga 38.

maxrate

int

Tidak

Bitrate maksimum, dalam bit per detik (bps). Nilai default adalah 0. Rentang nilai adalah 10.000 hingga 100.000.000.

Catatan

Parameter ini harus dikonfigurasi dengan crf.

bufsize

int

Tidak

Ukuran buffer, dalam bit. Nilai defaultnya adalah 0. Rentang nilai adalah 10.000 hingga 200.000.000.

Catatan

Parameter ini harus dikonfigurasi dengan crf.

sebuah

int

Tidak

Menentukan apakah akan menonaktifkan aliran audio. Nilai yang valid:

  • 0 (default): Tidak menonaktifkan aliran audio.

  • 1: Dinonaktifkan.

acodec

string

Ya

Kodek audio (format encoding). Nilai yang valid:

  • mp3

  • aac

  • flac

  • vorbis

  • ac3

  • opus

  • pcm

Catatan

mp4 tidak mendukung pcm. mov tidak mendukung flac atau opus. asf tidak mendukung opus. avi tidak mendukung opus. mxf hanya mendukung pcm. ts tidak mendukung flac, vorbis, amr, atau pcm. flv tidak mendukung flac, vorbis, amr, opus, atau pcm.

ar

int

Tidak

Laju pengambilan sampel audio. Secara default, parameter ini sama dengan yang ditentukan oleh video sumber pada align. Nilai yang valid:

  • 8000

  • 11025

  • 12000

  • 16000

  • 22050

  • 24000

  • 32000

  • 44100

  • 48000

  • 64000

  • 88200

  • 96000

Catatan

Laju sampel yang didukung bervariasi menurut format. mp3 hanya mendukung 48 kHz dan lebih rendah. opus mendukung 8 kHz, 12 kHz, 16 kHz, 24 kHz, dan 48 kHz. ac3 mendukung 32 kHz, 44.1 kHz, dan 48 kHz. amr hanya mendukung 8 kHz dan 16 kHz.

ac

int

Tidak

Jumlah saluran suara. Secara default, parameter ini sama dengan yang ada di video sumber yang ditentukan oleh align. Rentang nilainya adalah 1 hingga 8.

Catatan

Jumlah saluran yang didukung bervariasi menurut format. mp3 hanya mendukung mono dan stereo. ac3 mendukung hingga 6 saluran (5.1). amr hanya mendukung mono.

aq

int

Tidak

Kualitas kompresi audio. Rentang nilai adalah 0 hingga 100.

Catatan

Parameter ini saling eksklusif dengan ab. Jika tidak ada yang diatur, audio dikodekan pada bitrate default dari penyandi.

ab

int

Tidak

Bitrate audio, dalam bit per detik (bps). Rentang nilai adalah 1.000 hingga 10.000.000.

abopt

string

Tidak

Opsi bitrate audio. Nilai yang valid:

  • 0 (bawaan): Selalu menggunakan target bitrate audio.

  • 1: Jika bitrate audio sumber dalam daftar penggabungan kurang dari nilai ab, bitrate audio sumber terkecil dalam daftar digunakan.

  • 2: Jika bitrate audio sumber dalam daftar penggabungan kurang dari nilai ab, operasi gagal.

Catatan

Parameter ini harus dikonfigurasi dengan ab.

align

int

Tidak

Nomor urut file video utama (yang menyediakan parameter transcoding default) dalam daftar penggabungan. Nilai default adalah 0, yang sesuai dengan file video pertama dalam daftar penggabungan.

adepth

int

Tidak

Kedalaman bit pengambilan sampel audio. Nilai yang valid: 16 atau 24.

Catatan

Parameter ini hanya valid ketika acodec diatur ke flac.

Catatan

Penyambungan video juga menggunakan parameter sys/saveas dan notify. Untuk informasi lebih lanjut, lihat Save as dan Message notifications.

Parameter sharding media

/segment: Parameter sharding

Parameter

Tipe

Diperlukan

Deskripsi

f

string

Ya

Format sharding. Nilai yang valid:

  • hls

  • dash

t

int

Ya

Panjang shard, dalam milidetik. Rentang nilai adalah 0 hingga 3.600.000.

Catatan

Sharding media hanya mendukung kontainer mp4 dan ts.

Operasi API terkait

Menggabungkan video menjadi file MP4

Informasi penggabungan

  • Nama video sumber: pre.mov, example.mkv, sur.mov

  • Durasi dan urutan penggabungan:

    Nama video

    Urutan

    Durasi

    pre.mov

    1

    Seluruh video

    example.mkv

    2

    Dari detik ke-10 hingga akhir

    sur.mov

    3

    Dari awal hingga detik ke-10

  • Notifikasi penyelesaian transkoding: Pesan MNS dikirim.

  • Informasi video tergabung

    • Format video: h264

    • Laju frame video: 25 fps

    • Bitrate video: 1 Mbps

    • Format audio: aac

    • Konfigurasi audio: Laju sampel 48 kHz, saluran ganda

    • Bitrate audio: 96 Kbps

  • Path penyimpanan file:

    • File MP4: oss://outbucket/outobj.mp4

Contoh pemrosesan

// Menggabungkan file video example.mkv.
POST /example.mkv?x-oss-async-process HTTP/1.1
Host: video-demo.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 28 Oct 2022 06:40:10 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
 
x-oss-async-process=video/concat,ss_10000,f_mp4,vcodec_h264,fps_25,vb_1000000,acodec_aac,ab_96000,ar_48000,ac_2,align_1/pre,o_cHJlLm1vdgo/sur,o_c3VyMS5hYWMK,t_10000|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqLnthdXRvZXh0fQo/notify,topic_QXVkaW9Db252ZXJ0

Izin

Sebuah Akun Alibaba Cloud memiliki semua izin secara default. Seorang Pengguna Resource Access Management (RAM) atau Peran RAM tidak memiliki izin apa pun secara default. Anda harus memberikan izin kepada Pengguna RAM atau Peran RAM menggunakan Kebijakan RAM atau kebijakan bucket.

API

Aksi

Definisi

GetObject

oss:GetObject

Mengunduh sebuah objek.

oss:GetObjectVersion

Saat mengunduh sebuah objek, jika Anda menentukan versi objek melalui versionId, izin ini diperlukan.

kms:Decrypt

Saat mengunduh sebuah objek, jika metadata objek berisi X-Oss-Server-Side-Encryption: KMS, izin ini diperlukan.

API

Aksi

Definisi

HeadObject

oss:GetObject

Memeriksa metadata dari sebuah objek.

API

Aksi

Definisi

PutObject

oss:PutObject

Mengunggah sebuah objek.

oss:PutObjectTagging

Saat mengunggah sebuah objek, jika Anda menentukan tag objek melalui x-oss-tagging, izin ini diperlukan.

kms:GenerateDataKey

Saat mengunggah sebuah objek, jika metadata objek berisi X-Oss-Server-Side-Encryption: KMS, kedua izin ini diperlukan.

kms:Decrypt

API

Tindakan

Definisi

CreateMediaConvertTask

imm:CreateMediaConvertTask

Izin untuk menggunakan IMM untuk transkoding media.

Penagihan

Selama penggabungan video, karena layanan IMM dipanggil, item yang dapat ditagih dihasilkan untuk OSS dan IMM. Detailnya adalah sebagai berikut:

  • Sisi OSS: Anda perlu memanggil operasi GetObject dan menambahkan parameter x-oss-async-process untuk menggabungkan video. Anda juga perlu memanggil operasi HeadObject untuk mengambil metadata objek. Setelah penggabungan, operasi PutObject dipanggil untuk mengunggah video yang dihasilkan ke bucket. Item yang dapat ditagih berikut ini dihasilkan. Untuk harga terperinci, lihat Harga OSS:

    API

    Item yang dapat ditagih

    Deskripsi

    GetObject

    Permintaan GET

    Anda dikenakan biaya permintaan berdasarkan jumlah permintaan yang berhasil.

    Lalu lintas keluar melalui Internet

    Jika Anda memanggil operasi GetObject menggunakan titik akhir publik, seperti oss-cn-hangzhou.aliyuncs.com, atau titik akhir percepatan, seperti oss-accelerate.aliyuncs.com, Anda akan dikenakan biaya lalu lintas keluar melalui Internet berdasarkan ukuran data.

    Pengambilan objek IA

    Jika objek IA diambil, Anda akan dikenakan biaya pengambilan data IA berdasarkan ukuran data IA yang diambil.

    Pengambilan objek Arsip dalam bucket dengan akses real-time diaktifkan

    Jika Anda mengambil objek Arsip dalam bucket dengan akses real-time diaktifkan, Anda akan dikenakan biaya pengambilan data Arsip berdasarkan ukuran objek Arsip yang diambil.

    Biaya akselerasi transfer

    Jika Anda mengaktifkan akselerasi transfer dan menggunakan titik akhir percepatan untuk mengakses bucket Anda, Anda akan dikenakan biaya akselerasi transfer berdasarkan ukuran data.

    API

    Item yang dapat ditagih

    Deskripsi

    PutObject

    Permintaan PUT

    Anda dikenakan biaya permintaan berdasarkan jumlah permintaan yang berhasil.

    Biaya penyimpanan

    Anda dikenakan biaya penyimpanan berdasarkan kelas penyimpanan, ukuran, dan durasi penyimpanan objek.

  • Sisi IMM: Item yang dapat ditagih berikut ini dihasilkan. Untuk harga terperinci, lihat Item yang dapat ditagih IMM:

    API

    Item yang dapat ditagih

    Deskripsi

    CreateMediaConvertTask

    Biaya Pemrosesan Media ApsaraVideo

    Biaya Pemrosesan Media ApsaraVideo dihitung berdasarkan definisi dan durasi sebenarnya (dalam detik) dari video yang digabungkan.

Catatan

  • Penggabungan video hanya mendukung pemrosesan asinkron (menggunakan metode x-oss-async-process).

  • Akses anonim akan ditolak.

  • Saat melakukan transkoding dengan laju sampel default atau jumlah saluran suara, penggabungan mungkin gagal karena masalah kompatibilitas dengan Kontainer video target.

  • Maksimum 11 video dapat digabungkan dalam satu waktu.