All Products
Search
Document Center

Object Storage Service:variabel

Last Updated:Jun 21, 2026

Saat menggunakan fitur pemrosesan data, setiap objek memicu sebuah task. Untuk setiap task, Anda harus menentukan jalur penyimpanan objek hasil pemrosesan. Agar objek tidak saling menimpa, gunakan jalur output dinamis dengan variabel yang mereferensikan informasi dari objek sumber, seperti bucket, kunci objek (object key), atau waktu unggahnya. Misalnya, dalam task ekstraksi bingkai video, atur jalur output menjadi oss://test-bucket/{dirname}/{barename}_output.{autoext}. Dengan demikian, objek hasil disimpan di direktori yang sama dengan objek sumber, diberi nama source-object-name_output, dan secara otomatis diberi ekstensi yang sesuai.

Kasus Penggunaan

Kasus Penggunaan Konsol

  • Task: Anda dapat mereferensikan informasi objek sumber dalam jalur output task pemrosesan. Misalnya, untuk mengonversi dokumen menjadi gambar JPG, atur jalur output menjadi oss://test-bucket/output/{dirname}/{barename}/{index}.{autoext}. Selama pemrosesan, {autoext} diganti dengan jpg. Gambar hasil disimpan ke oss://test-bucket/output/direktori-sumber/nama-file-sumber/urutan-gambar.jpg.

    Pada kotak dialog Create Task, pilih doc_to_jpg untuk Style. Petunjuk di bawah Output Path menyatakan bahwa Anda harus memasukkan kunci objek lengkap—yang dapat mencakup variabel—dan jalur input serta output harus berbeda. Di bagian Notification Configuration, Anda dapat memilih Message Queue. Setelah menyelesaikan konfigurasi, klik OK.

  • Pemrosesan batch: Saat membuat pekerjaan pemrosesan batch, sistem menghasilkan satu task untuk setiap objek yang ada. Untuk menghindari penimpaan data, disarankan menggunakan variabel dalam jalur output. Misalnya, untuk mengekstraksi bingkai dari video dan menyimpannya sebagai gambar PNG, atur jalur output menjadi oss://test-bucket/output/{dirname}/{barename}/{index}.{autoext}. Selama pemrosesan, {autoext} diganti dengan png. Gambar PNG yang dihasilkan disimpan ke oss://test-bucket/output/direktori-sumber/nama-file-sumber/urutan-bingkai.png.

    Setelah mengonfigurasi jalur output di bagian Output Configuration, pastikan jalur output berbeda dari jalur input jika Anda menggunakan variabel key, barename, atau basename. Hal ini mencegah objek sumber tertimpa dan menghindari pembuatan loop tak hingga. Di bagian Permission Configuration, pilih AliyunIMMBatchTriggerRole (Default Role) untuk Service Role, lalu klik OK.

  • Pemicu (Triggers): Membuat pemicu akan menghasilkan satu task untuk setiap objek baru. Untuk menghindari penimpaan objek, disarankan menggunakan variabel dalam jalur output. Misalnya, jika pemicu konversi dokumen dibuat untuk mengonversi dokumen menjadi gambar JPG, atur jalur output menjadi oss://test-bucket/output/{dirname}/{barename}/{index}.{autoext}. Selama pemrosesan, {autoext} diganti dengan jpg. Gambar JPG yang dihasilkan disimpan ke oss://test-bucket/output/direktori-sumber/nama-file-sumber/urutan-gambar.jpg.

    Jika Anda menggunakan variabel kunci objek (object key), barename, atau basename, pastikan jalur output berbeda dari jalur input untuk mencegah penimpaan objek. Di bagian Permission Configuration, pilih AliyunIMMBatchTriggerRole (Default Role) untuk Service Role, lalu klik OK.

Kasus Penggunaan API

  • Save as (sys/saveas): Parameter b (bucket) dan o (object) untuk operasi save as (sys/saveas) mendukung variabel. Misalnya, untuk mengonversi halaman 1 hingga 10 dari dokumen bernama example.docx menjadi gambar PNG, Anda dapat mengatur parameter sys/saveas menjadi b_e2J1Y2tldH0,o_ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw. Dalam parameter ini, e2J1Y2tldH0 adalah nilai Base64-encoded dari {bucket}, dan ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw adalah nilai Base64-encoded dari doc_images/{index}.png. Gambar hasil konversi kemudian disimpan ke bucket yang sama dengan objek sumber pada jalur doc_images/index.png.

  • Task: Jalur output untuk task mendukung variabel. Misalnya, saat Anda memanggil operasi CreateOfficeConversionTask untuk membuat task konversi dokumen, Anda harus mengatur parameter TargetURI ke jalur output lengkap, termasuk ekstensinya. TargetURI dapat berisi variabel, seperti oss://test-bucket/output/{dirname}/{barename}/{index}.jpg.

Catatan

  • Untuk pemrosesan batch dan pemicu, jika jalur output tidak diakhiri dengan garis miring maju (/), kunci objek harus mencakup setidaknya satu variabel. Hal ini mencegah beberapa objek output saling menimpa.

  • Jalur output untuk sebuah task tidak boleh diakhiri dengan garis miring maju (/), tetapi dapat berisi variabel.

Variabel terkait Task

Anda juga dapat menggunakan timestamp permintaan pemrosesan sinkron atau asinkron sebagai variabel. Misalnya, jika Anda mengirim permintaan pemrosesan pada 2022-09-01T02:06:57.798Z, Anda dapat menggunakan variabel dalam tabel berikut.

Parameter

Deskripsi

Contoh nilai

t_year

Tahun empat digit (yyyy) saat permintaan dikirim.

2022

t_mon

Bulan dua digit (mm) saat permintaan dikirim.

09

t_day

Hari dua digit (dd) saat permintaan dikirim.

01

t_hour

Jam (HH, format 24 jam) saat permintaan dikirim.

02

t_min

Menit (MM) saat permintaan dikirim.

06

t_sec

Detik (SS) saat permintaan dikirim.

57

Variabel pemrosesan gambar

Untuk objek sumber bernama oss://test-bucket/path1/path2/name.png yang diunggah pada 2022-04-22 14:38:25, Anda dapat menggunakan variabel dalam tabel berikut.

Parameter

Deskripsi

Contoh nilai

bucket

Nama bucket tempat objek sumber disimpan.

test-bucket

key

Kunci objek (object key) objek sumber di dalam bucket.

Penting

Jangan atur jalur output dan sumber menjadi identik saat menggunakan variabel ini. Jika tidak, Anda mungkin menimpa objek sumber atau menyebabkan loop tak hingga dalam pekerjaan pemrosesan batch.

path1/path2/name.png

dirname

Jalur direktori objek sumber.

Penting

Jangan atur jalur output dan sumber menjadi identik saat menggunakan variabel ini. Jika tidak, Anda mungkin menimpa objek sumber atau menyebabkan loop tak hingga dalam pekerjaan pemrosesan batch.

path1/path2

barename

Nama objek sumber tanpa ekstensinya.

Penting

Jangan atur jalur output dan sumber menjadi identik saat menggunakan variabel ini. Jika tidak, Anda mungkin menimpa objek sumber atau menyebabkan loop tak hingga dalam pekerjaan pemrosesan batch.

name

basename

Nama objek sumber beserta ekstensinya.

Penting

Jangan atur jalur output dan sumber menjadi identik saat menggunakan variabel ini. Jika tidak, Anda mungkin menimpa objek sumber atau menyebabkan loop tak hingga dalam pekerjaan pemrosesan batch.

name.png

ext

Ekstensi objek sumber. Ekstensi diperoleh dari mimeType yang terdeteksi otomatis atau dari akhiran object key.

png

year

Tahun empat digit (yyyy) saat objek sumber diunggah.

2022

mon

Bulan dua digit (mm) saat objek sumber diunggah.

04

day

Hari dua digit (dd) saat objek sumber diunggah.

22

hour

Jam (HH, format 24 jam) saat objek sumber diunggah.

14

min

Menit (MM) saat objek sumber diunggah.

38

sec

Detik (SS) saat objek sumber diunggah.

25

Variabel konversi dokumen

Untuk konversi dokumen, Anda dapat menggunakan variabel seperti nomor halaman dan nama sheet. Misalnya, untuk mengonversi dokumen Excel yang berisi sheet bernama sheet1 menjadi gambar JPG, Anda dapat menggunakan variabel dalam tabel berikut.

Parameter

Deskripsi

Contoh nilai

autoext

Ekstensi objek output dalam task konversi dokumen.

png

index

Indeks output, yang bertambah mulai dari 1. Untuk dokumen Word, PDF, dan PPT, variabel ini merepresentasikan nomor halaman. Untuk dokumen Excel, formatnya adalah sheetindex_sheetsubindex.

Untuk Word, PDF, dan PPT: 1

Untuk Excel: 1_1

sheetname

Nama sheet dalam dokumen Excel.

sheet1

sheetindex

Indeks sheet dalam dokumen Excel, dimulai dari 1.

1

sheetsubindex

Sub-indeks sheet dalam dokumen Excel, dimulai dari 1.

1

Variabel pemrosesan media

Untuk pemrosesan media, Anda dapat menggunakan variabel seperti ekstensi kontainer dan resolusi. Misalnya, untuk mentranskode video bernama video.mp4 menjadi segmen ts dengan resolusi 1920x1080, Anda dapat menggunakan variabel dalam tabel berikut.

Parameter

Deskripsi

Contoh nilai

autoext

Ekstensi objek output dalam task pemrosesan media.

ts

index

Indeks output, yang bertambah mulai dari 1. Ini digunakan dalam skenario multi-output seperti transkoding tersegmentasi atau ekstraksi bingkai.

1

streamindex

ID aliran audio atau video. ID untuk aliran audio dan video bertambah secara independen mulai dari 0.

0

resolution

Resolusi yang ditetapkan untuk transkoding. Ini hanya tersedia untuk transkoding video.

1920x1080

Menggunakan REST API

Jika aplikasi Anda memerlukan tingkat kustomisasi yang tinggi, Anda dapat langsung memanggil RESTful API, yang mengharuskan Anda menulis kode untuk menghitung signature secara manual.

Anda dapat memproses objek dengan menambahkan parameter pemrosesan atau style ke permintaan PostObject. Untuk informasi selengkapnya, lihat Save as.

Contoh 1: Konversi format dokumen

Contoh RESTful API berikut menunjukkan cara menambahkan parameter pemrosesan ke permintaan PostObject untuk mengonversi format example.docx. Parameter b (bucket) dan o (object) dari operasi save as (sys/saveas) menggunakan variabel.

  • pages_MS0xMA: Mengonversi halaman 1 hingga 10 dokumen. MS0xMA adalah nilai Base64-encoded dari "1-10".

  • target_png: Mengonversi dokumen ke format gambar PNG.

  • source_docx: Menentukan bahwa tipe objek sumber adalah DOCX.

  • sys/saveas: Save as.

    • b_e2J1Y2tldH0: Setelah transkoding selesai, variabel {bucket} menyimpan gambar hasil ke bucket sumber. e2J1Y2tldH0 adalah nilai Base64-encoded dari {bucket}.

    • o_ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw: Ini menyimpan objek ke direktori doc_images. Kunci objek menggunakan variabel {index}, yang sesuai dengan nomor halaman example.docx. ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw adalah nilai Base64-encoded dari doc_images/{index}.png.

POST /exmaple.docx?x-oss-async-process HTTP/1.1
Host: doc-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
 // Mengonversi halaman 1 hingga 10 objek example.docx menjadi gambar PNG. Objek hasil disimpan ke oss://source-bucket/doc_images/nomor-halaman.png.
x-oss-async-process=doc/convert,pages_MS0xMA,target_png,source_docx|sys/saveas,b_e2J1Y2tldH0,o_ZG9jX2ltYWdlcy97aW5kZXh9LnBuZw

Contoh 2: Transkoding video

Contoh ini menunjukkan cara mentranskode objek example.avi dengan mengonfigurasi beberapa parameter pemrosesan.

  • f_mp4: Menetapkan kontainer file media hasil transkoding menjadi MP4.

  • vcodec_h265: Menetapkan format aliran video menjadi H.265.

  • s_1920x1080: Menetapkan resolusi menjadi 1920x1080.

  • vb_2000000: Menetapkan bitrate video menjadi 2 Mbps.

  • fps_30: Menetapkan laju bingkai video menjadi 30 fps.

  • acodec_aac: Menetapkan format encoding audio menjadi AAC.

  • ab_100000: Menetapkan bitrate audio menjadi 100 Kbps.

  • sn_1: Menonaktifkan aliran subtitle.

  • sys/saveas: Save as.

    • b_e2J1Y2tldH0: Setelah transkoding selesai, objek hasil disimpan ke bucket sumber dengan menggunakan variabel {bucket}. e2J1Y2tldH0 adalah nilai Base64-encoded dari {bucket}.

    • o_b3V0cHV0LnthdXRvZXh0fQ: Variabel {autoext} secara otomatis menambahkan ekstensi ke objek, sehingga objek yang disimpan bernama output.mp4. b3V0cHV0LnthdXRvZXh0fQ adalah nilai Base64-encoded dari output.{autoext}.

POST /exmaple.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: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
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_e2J1Y2tldH0,o_b3V0cHV0LnthdXRvZXh0fQ