全部产品
Search
文档中心

Object Storage Service:Transkoding video

更新时间:Nov 09, 2025

Transkoding video memungkinkan Anda mengubah format pengkodean, menyesuaikan resolusi dan bitrate, memodifikasi format kontainer, serta mengubah parameter video untuk memenuhi berbagai kebutuhan bisnis.

Ikhtisar fitur

Transkoding video adalah proses mengonversi aliran video terkompresi ke format lain dengan menyesuaikan elemen seperti format video, format kontainer, resolusi, laju frame, dan bitrate. Proses ini memastikan kompatibilitas pemutaran di berbagai perangkat dan platform sambil mengurangi ukuran file untuk meningkatkan efisiensi transmisi.

image

Skenario

  • Kompatibilitas Lintas Perangkat: Untuk memastikan pemutaran video yang lancar di berbagai perangkat seperti ponsel, tablet, komputer, dan smart TV, teknologi transkoding dapat mengonversi video ke format yang kompatibel dengan setiap perangkat tertentu.

  • Pemutaran Media Streaming: Layanan streaming harus mentranskode video ke dalam beberapa format dan bitrate untuk secara dinamis menyesuaikan dengan kondisi jaringan pengguna, sehingga meningkatkan pengalaman menonton secara keseluruhan.

  • Kompresi Video: Transkoding video dapat mengurangi ukuran file sambil tetap menjaga kualitas video, sehingga lebih mudah disimpan dan ditransmisikan, terutama di lingkungan dengan lebar pita jaringan yang terbatas.

  • Pengarsipan Data: Transkoding mengonversi video berkualitas tinggi ke format yang dioptimalkan untuk penyimpanan dan manajemen jangka panjang yang efisien, meminimalkan kebutuhan penyimpanan.

  • Adaptasi Resolusi: Transkoding mengurangi resolusi video untuk mendukung berbagai perangkat pemutaran dan kondisi jaringan, memastikan pengalaman pemutaran yang lebih lancar.

  • Kompatibilitas Format Video: Transkoding mengonversi format video yang kurang umum menjadi format yang banyak digunakan, memastikan kompatibilitas dengan perangkat lunak pemutaran media dan memungkinkan aksesibilitas yang lebih luas.

Penggunaan

Prasyarat

  • Intelligent Media Management (IMM) telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan IMM.

  • Bucket Object Storage Service (OSS) yang sesuai telah dihubungkan ke proyek IMM.

    • Untuk informasi tentang pengikatan di Konsol OSS, lihat Memulai.

    • Untuk informasi tentang pengikatan menggunakan API IMM, lihat AttachOSSBucket.

  • Izin yang diperlukan telah diberikan kepada Pengguna Resource Access Management (RAM) yang Anda gunakan untuk menggunakan fitur IMM. Untuk informasi lebih lanjut, lihat Izin.

Gunakan SDK OSS

Transkoding video bersifat asinkron. Di antara semua SDK OSS untuk bahasa yang didukung, hanya SDK Java, Python, dan Go yang mendukung fitur ini.

Java

OSS SDK for Java 3.17.4 atau versi lebih baru diperlukan.

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 {
        // Tentukan endpoint wilayah tempat bucket berada.
        String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
        // Tentukan ID wilayah Alibaba Cloud tempat bucket berada. Contoh: 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. Contoh: examplebucket.
        String bucketName = "examplebucket";
        // Tentukan nama video keluaran.
        String targetKey = "dest.avi";
        // Tentukan nama video sumber.
        String sourceKey = "src.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 {
            // Buat variabel gaya bertipe string untuk menyimpan parameter transkoding video.
            String style = String.format("video/convert,f_avi,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1");
            // Buat instruksi pemrosesan asinkron.
            String bucketEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(bucketName.getBytes());
            String targetEncoded = Base64.getUrlEncoder().withoutPadding().encodeToString(targetKey.getBytes());
            String process = String.format("%s|sys/saveas,b_%s,o_%s", style, bucketEncoded, targetEncoded);
            // Buat objek AsyncProcessObjectRequest.
            AsyncProcessObjectRequest request = new AsyncProcessObjectRequest(bucketName, sourceKey, 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 instance OSSClient.
            ossClient.shutdown();
        }
    }
}

Python

OSS SDK for Python V2.18.4 atau versi lebih baru diperlukan.

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


def main():
    # Tentukan endpoint 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'
    # Dapatkan kredensial akses 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())

    # Tentukan nama bucket.
    bucket_name = 'examplebucket'
    # Tentukan ID wilayah Alibaba Cloud tempat bucket berada. Contoh: cn-hangzhou.
    region = 'cn-hangzhou'
    # Buat bucket.
    bucket = oss2.Bucket(auth, endpoint, bucket_name, region=region)

    # Tentukan nama video sumber.
    source_key = 'src.mp4'
    # Tentukan nama video keluaran.
    target_key = 'dest.avi'
    # Buat variabel gaya bertipe string untuk menyimpan parameter transkoding video.
    style = 'video/convert,f_avi,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1'
    process = "{0}|sys/saveas,o_{1}".format(style,
                                            oss2.compat.to_string(base64.urlsafe_b64encode(
                                                oss2.compat.to_bytes(target_key))).replace('=', ''))

    # Panggil operasi pemrosesan media.
    try:
        # Jalankan tugas pemrosesan asinkron.
        result = bucket.async_process_object(source_key, 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

OSS SDK for Go V3.0.2 atau versi lebih baru diperlukan.

package main

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

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

func main() {
	// Dapatkan kredensial akses 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.
	// Tentukan endpoint wilayah tempat bucket berada. 
	// Misalnya, jika bucket berada di wilayah China (Hangzhou), atur endpoint ke https://oss-cn-hangzhou.aliyuncs.com. Tentukan endpoint aktual Anda.
	client, err := oss.New("https://oss-cn-hangzhou.aliyuncs.com", "", "", oss.SetCredentialsProvider(&provider), oss.AuthVersion(oss.AuthV4), oss.Region("cn-hangzhou"))
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
	// Tentukan nama bucket tempat video sumber disimpan. Contoh: examplebucket.
	bucketName := "examplebucket"
	bucket, err := client.Bucket(bucketName)
	// Tentukan nama video keluaran.
	targetObject := "dest.avi"
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
	// Tentukan nama video sumber.
	sourceObject := "src.mp4"

	// Buat variabel gaya bertipe string untuk menyimpan parameter transkoding video.
	style := "video/convert,f_avi,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1"

	process := fmt.Sprintf("%s|sys/saveas,b_%v,o_%v", style, strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(bucketName)), "="), strings.TrimRight(base64.URLEncoding.EncodeToString([]byte(targetObject)), "="))
	fmt.Printf("%#v\n", process)
	rs, err := bucket.AsyncProcessObject(sourceObject, 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)
}

Parameter

Action: video/convert

Tabel berikut menjelaskan parameter untuk transkoding video.

Parameter

Tipe

Diperlukan

Deskripsi

ss

int

Tidak

Waktu mulai video dari mana transkoding dimulai. Satuan: milidetik. Nilai valid:

  • 0 (default): Transkoding dimulai dari posisi awal video.

  • Lebih besar dari 0: Mulai dari milidetik ke-ss.

t

int

Tidak

Durasi konten video yang akan ditranskode setelah waktu mulai yang ditentukan. Satuan: milidetik. Nilai valid:

  • 0 (default): Transkoding berlangsung hingga akhir video.

  • Lebih besar dari 0: Berlangsung selama t milidetik.

f

string

Ya

Jenis kontainer media.

  • Nilai valid untuk kontainer audio dan video: mp4, mkv, mov, asf, avi, mxf, ts, flv, dan webm

  • Nilai valid untuk kontainer audio: mp3, aac, flac, oga, ac3, opus, dan amr

vn

int

Tidak

Menentukan apakah pembuatan aliran video dinonaktifkan. Nilai valid:

  • 0 (default): Tidak menonaktifkan pembuatan aliran video.

  • 1: Menonaktifkan pembuatan aliran video. Tidak ada aliran video yang termasuk dalam objek keluaran.

vcodec

string

Tidak

Format pengkodean video keluaran. Nilai valid:

  • copy (default): Menyalin aliran video di video sumber ke objek keluaran.

  • h264: Video keluaran dalam format H.264.

  • h265: Video keluaran dalam format H.265.

  • vp9: Video keluaran dalam format VP9.

fps

float

Tidak

Laju frame video. Nilai valid: 0 hingga 240.

fpsopt

int

Tidak

Opsi laju frame. Nilai valid:

  • 0: Selalu menggunakan laju frame target.

  • 1: Menggunakan laju frame sumber ketika laju frame sumber lebih kecil dari laju frame target.

  • 2: Mengembalikan kegagalan ketika laju frame sumber lebih kecil dari laju frame target.

pixfmt

string

Tidak

Format piksel target. Secara default, format piksel target sama dengan format piksel sumber. Nilai valid:

  • yuv420p

  • yuva420p

  • yuv420p10le

  • yuv422p

  • yuv422p10le

  • yuv444p

  • yuv444p10le

s

string

Tidak

Resolusi yang diinginkan.

  • Resolusi dalam format LebarxTinggi.

  • Lebar dan tinggi harus merupakan kelipatan dari 2 dan dalam rentang 64 hingga 4.096. Contoh: 4096x4096 dan 64x64.

sopt

int

Tidak

Opsi resolusi. Nilai valid:

  • 0: Selalu menggunakan resolusi target.

  • 1: Menggunakan resolusi sumber ketika resolusi sumber lebih kecil dari resolusi target.

  • 2: Mengembalikan kegagalan ketika resolusi sumber lebih kecil dari resolusi target.

scaletype

string

Tidak

Mode pengubahan ukuran. Nilai valid:

  • crop: Proporsional mengubah ukuran video agar sesuai dalam area persegi panjang yang ditentukan oleh lebar dan tinggi yang ditentukan atau panjang sisi yang lebih panjang dan lebih pendek, lalu memotong bagian yang melampaui area persegi panjang dari tengah.

  • stretch (default): Memaksa mengubah ukuran video berdasarkan lebar dan tinggi yang ditentukan atau panjang sisi yang lebih panjang dan lebih pendek, lalu meregangkan video untuk mengisi ruang yang tersisa.

  • fill: Proporsional mengubah ukuran video ke resolusi maksimum dalam area persegi panjang yang ditentukan oleh lebar dan tinggi yang ditentukan atau panjang sisi yang lebih panjang dan lebih pendek, lalu mengisi ruang dengan warna hitam dari tengah.

  • fit: Proporsional mengubah ukuran video ke resolusi maksimum dalam area persegi panjang yang ditentukan oleh lebar dan tinggi yang ditentukan atau panjang sisi yang lebih panjang dan lebih pendek.

arotate

int

Tidak

Menentukan apakah orientasi resolusi adaptif diaktifkan. Nilai valid:

  • 0 (default): Tidak mengaktifkan orientasi resolusi adaptif.

  • 1: Mengaktifkan orientasi resolusi adaptif.

g

int

Tidak

Interval keyframe. Nilai valid: 1 hingga 100000.

vb

int

Tidak

Bitrate video target. Satuan: bit/detik. Nilai valid: 10000 hingga 100000000.

vbopt

int

Tidak

Opsi bitrate video. Nilai valid:

  • 0: Selalu menggunakan bitrate video target.

  • 1: Menggunakan bitrate video sumber ketika bitrate video sumber lebih kecil dari bitrate video target.

  • 2: Mengembalikan kegagalan ketika bitrate video sumber lebih kecil dari bitrate video target.

crf

float

Tidak

Faktor laju konstan (CRF). Nilai valid: 0 hingga 51.

maxrate

int

Tidak

Bitrate maksimum. Satuan: bit/detik. Nilai valid: 10000 hingga 100000000.

bufsize

int

Tidak

Ukuran buffer. Satuan: bit. Nilai valid: 10000 hingga 200000000.

an

int

Tidak

Menentukan apakah pembuatan aliran audio dinonaktifkan. Nilai valid:

  • 0 (default): Tidak menonaktifkan pembuatan aliran audio.

  • 1: Menonaktifkan pembuatan aliran audio. Tidak ada aliran audio yang termasuk dalam objek keluaran.

acodec

string

Tidak

Format pengkodean audio. Nilai valid:

  • copy (default): Menyalin aliran audio ke objek keluaran.

  • mp3: Audio keluaran dalam format MP3.

  • aac: Audio keluaran dalam format AAC.

  • flac: Audio keluaran dalam format FLAC.

  • vorbis: Audio keluaran dalam format Vorbis.

  • ac3: Audio keluaran dalam format AC3.

  • opus: Audio keluaran dalam format Opus.

  • amr: Audio keluaran dalam format AMR.

ar

int

Tidak

Laju pengambilan sampel audio. Nilai valid:

  • 8000

  • 11025

  • 12000

  • 16000

  • 22050

  • 24000

  • 32000

  • 44100

  • 48000

  • 88200

  • 96000

ac

int

Tidak

Jumlah saluran suara dalam audio keluaran. Secara default, audio keluaran mempertahankan jumlah saluran yang sama dengan audio sumber. Nilai valid: 1 hingga 8.

aq

int

Tidak

Kualitas kompresi audio. Parameter ini dan parameter ab saling eksklusif. Nilai valid: 0 hingga 100.

ab

int

Tidak

Bitrate audio. Parameter ini dan parameter aq saling eksklusif. Satuan: bit/detik. Nilai valid: 1000 hingga 10000000.

abopt

int

Tidak

Opsi bitrate audio. Nilai valid:

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

  • 1: Menggunakan bitrate audio sumber ketika bitrate audio sumber lebih kecil dari bitrate audio target.

  • 2: Mengembalikan kegagalan ketika bitrate audio sumber lebih kecil dari bitrate audio target.

sn

int

Tidak

Menentukan apakah pembuatan subtitle dinonaktifkan. Nilai valid:

  • 0 (default): Tidak menonaktifkan pembuatan subtitle.

  • 1: Menonaktifkan pembuatan subtitle. Tidak ada subtitle yang termasuk dalam objek keluaran.

adepth

int

Tidak

Kedalaman bit pengambilan sampel audio keluaran. Nilai valid: 16 dan 24.

Catatan

Parameter ini hanya berlaku jika Anda mengatur parameter acodec ke flac.

segment

string

Tidak

Pengaturan segmentasi media. Secara default, tidak ada segmentasi yang dilakukan.

f

string

Tidak

Mode segmentasi media. Nilai valid:

  • hls

  • dash

Node induk: segment

t

int

Tidak

Panjang segmen. Satuan: milidetik. Nilai valid: 0 hingga 3600000.

Node induk: segment

Anda mungkin juga perlu menggunakan parameter sys/saveas dan notify dalam tugas transkoding video. Untuk informasi lebih lanjut, lihat sys/saveas dan Pemberitahuan Pesan.

Gunakan API OSS

Jika bisnis Anda memerlukan tingkat penyesuaian yang tinggi, Anda dapat langsung memanggil API RESTful. Untuk memanggil API RESTful secara langsung, Anda harus menyertakan perhitungan tanda tangan dalam kode Anda. Untuk informasi tentang cara menghitung tanda tangan untuk Header Authorization, lihat (Direkomendasikan) Sertakan Tanda Tangan V4.

Konversi dari AVI ke MP4

Informasi tugas transkoding

  • Objek Sumber

    • Format Video: AVI

    • Nama Video: example.avi

  • Metode Pemrosesan: Transkoding Video

  • Objek Tujuan

    • Informasi Video

      • Format Video: MP4

      • Nama Video: outobjprefix.mp4

      • Format Aliran Video: H.265

      • Resolusi Video: 1920×1080

      • Laju Frame Video: 30 fps

      • Bitrate Video: 2 Mbit/detik

    • Informasi Audio

      • Format Aliran Audio: AAC

      • Bitrate Audio: 100 Kbit/detik

      • Aliran Subtitle: Dinonaktifkan

    • Path Keluaran: oss://outbucket/outobjprefix.mp4

Contoh permintaan

POST /example.avi?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: SignatureValue
 
// Transkode objek example.avi ke format kontainer MP4 dan tentukan H.265 sebagai format aliran video.
// Atur resolusi menjadi 1920 x 1080, laju frame menjadi 30 fps, dan bitrate video menjadi 2 Mbit/detik. Tentukan AAC sebagai format aliran audio dan atur bitrate audio menjadi 100 Kbit/detik. Nonaktifkan pembuatan aliran subtitle. Simpan objek keluaran sebagai oss://outbucket/outobjprefix.mp4.
x-oss-async-process=video/convert,f_mp4,vcodec_h265,s_1920x1080,vb_2000000,fps_30,acodec_aac,ab_100000,sn_1|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ

Konversi dari AVI ke TS

Informasi tugas transkoding

  • Objek Sumber

    • Format Video: AVI

    • Nama Video: example.avi

  • Rincian Tugas Pemrosesan

    • Durasi Transkoding: Transkode 60.000 milidetik video, dimulai dari milidetik ke-1.000 video.

    • Metode Segmentasi: Buat segmen HTTP Live Streaming (HLS) pada interval 30 detik.

    • Pemberitahuan Penyelesaian Transkoding: Kirim pesan Simple Message Queue (SMQ).

  • Objek Tujuan

    • Informasi Video

      • Format Video: TS

      • Format Aliran Video: H.264

      • Bitrate Video: 1 Mbit/detik

    • Informasi Audio

      • Format Audio: AAC

      • Bitrate Audio: 100 Kbit/detik

    • Path Keluaran

      • Objek TS: oss://outbucket/outobjprefix-%d.ts

      • Objek M3U8: oss://outbucket/outobjprefix.m3u8

Contoh permintaan

POST /example.avi?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: SignatureValue
 
// Transkode video example.avi.
x-oss-async-process=video/convert,ss_10000,t_60000,f_ts,vcodec_h264,vb_1000000,acodec_mp3,ab_100000/segment,f_hls,t_30000|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ/notify,topic_QXVkaW9Db252ZXJ0

Konversi dari AVI ke MP3

Informasi tugas transkoding

  • Objek Sumber

    • Nama Video: example.avi

    • Format Video: AVI

  • Metode Pemrosesan: Ekstrak dan transkode audio.

  • Objek Tujuan

    • Format Kontainer Audio: MP3

    • Format Pengkodean Audio: MP3

    • Bitrate Audio: 100 Kbit/detik

    • Aliran Video: Dinonaktifkan

    • Aliran Subtitle: Dinonaktifkan

    • Path Keluaran: oss://outbucket/outobjprefix.mp3 (Jika video berisi beberapa saluran audio, hanya saluran pertama yang diproses secara default.)

Contoh permintaan

POST /example.avi?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: SignatureValue
 
// Ekstrak audio dari objek example.avi dan transkode audio yang diekstraksi.
x-oss-async-process=video/convert,f_mp3,acodec_mp3,ab_100000,vn_1,sn_1|sys/saveas,b_b3V0YnVja2V0,o_b3V0b2JqcHJlZml4LnthdXRvZXh0fQ

Catatan

  • Transkoding video hanya mendukung pemrosesan asinkron (x-oss-async-process).

  • Transkoding video tidak mendukung akses anonim.

  • Transkoding video mendukung format video berikut: MP4, MPEG-TS, MKV, MOV, AVI, FLV, M3U8, WebM, WMV, RM, dan VOB.

  • Menggunakan video/convert untuk transkoding video akan dikenakan biaya. Biaya pemrosesan media termasuk dalam tagihan IMM Anda. Untuk informasi lebih lanjut, lihat Item yang Dikenakan Biaya.

FAQ

Bagaimana cara memperbaiki kesalahan ResourceNotFound untuk tugas transkoding video?

Untuk memperbaiki kesalahan "ResourceNotFound, The specified resource Attachment is not found." selama transkoding video, pastikan bucket telah dibuat dan dihubungkan ke proyek IMM Anda. Untuk informasi lebih lanjut, lihat Langkah 2: Hubungkan Bucket OSS.

Bisakah saya menyimpan objek keluaran tugas transkoding video ke path objek sumber?

Tidak, Anda tidak dapat menyimpan objek keluaran tugas transkoding video ke path yang sama dengan objek sumber. Untuk mencegah masalah seperti loop eksekusi pemicu atau penimpaan objek sumber secara tidak sengaja, jangan gunakan path input sebagai awalan path output.

Bisakah saya menentukan kedalaman bit audio dalam tugas transkoding video?

Ya, Anda dapat menentukan kedalaman bit audio dalam tugas transkoding video dengan menyertakan parameter pixfmt dalam x-oss-process.

Bagaimana cara mengambil hasil eksekusi tugas untuk transkoding video menggunakan ID tugas yang dikembalikan?

Untuk mengambil hasil eksekusi tugas untuk transkoding video menggunakan ID tugas yang dikembalikan, kami sarankan Anda memanggil operasi GetTask di IMM.

Bagaimana OSS menangani pengambilan dan penghapusan objek dengan format tertentu berdasarkan akhirannya selama transkoding video?

OSS tidak mendukung pencarian objek berdasarkan akhiran, karena layanan penyimpanan yang ditawarkan tidak terurut.

Apa yang harus saya lakukan jika konfigurasi pendorongan pesan untuk transkoding video telah disiapkan tetapi backend tidak menerima pesan?

Periksa apakah topik SMQ telah dibuat dan langganan telah dikonfigurasi. Jika topik SMQ tidak ada atau telah dihapus, konfigurasikan ulang langganan. Mulai ulang proses transkoding berdasarkan konfigurasi langganan saat ini.

Bisakah saya menggunakan templat tertentu untuk mentranskode video setelah mengunggah video ke OSS?

Ya, Anda dapat mengonfigurasi pemicu untuk mengimplementasikan fitur ini. Tugas pemrosesan video dapat diinisiasi secara manual, atau secara otomatis menggunakan pemroses batch (untuk data yang sudah ada) dan pemicu (untuk data inkremental). Saat membuat tugas, pemroses batch, atau pemicu, Anda dapat menggunakan gaya sistem atau gaya kustom. Untuk informasi lebih lanjut, lihat Pemrosesan Batch dan Pemicu.

Apakah saya dikenakan biaya untuk penyimpanan video keluaran dalam tugas transkoding video? Jika video keluaran memiliki awalan yang berbeda dari video sumber, apakah video keluaran akan menggantikan video sumber?

Video keluaran mengonsumsi ruang penyimpanan, sehingga menghasilkan biaya terkait. Menggunakan path yang sama untuk video yang ditranskode dan video sumber dapat menyebabkan masalah looping.