全部产品
Search
文档中心

ApsaraVideo VOD:Kueri informasi aset media

更新时间:Feb 11, 2026

Menemukan aset media tertentu bisa menjadi tantangan ketika pustaka Anda berisi banyak file audio, video, dan gambar. ApsaraVideo VOD (VOD) menyediakan fitur pencarian media yang andal untuk mencari, memfilter, dan mengurutkan aset berdasarkan berbagai dimensi. Anda dapat menggunakan Konsol, API, atau SDK guna mengambil aset media yang dibutuhkan secara efisien dan akurat dari set data besar.

Skenario 1: Pencarian menggunakan konsol

Untuk mencari informasi audio atau video, ikuti langkah-langkah berikut:

  1. Masuk ke ApsaraVideo VOD console.

  2. Pada panel navigasi kiri, pilih Media Files > Audio/Video untuk membuka halaman manajemen Audio/Video.

  3. Gunakan fitur filter dan pencarian di bagian atas halaman untuk menemukan aset media.搜索媒资信息1.png

    • Pencarian: Mendukung pencarian fuzzy untuk Video Title dan pencocokan eksak untuk Media ID dan Tag Name.

    • Filter: Mendukung pemfilteran file audio dan video berdasarkan Address, Type, Category, Status, Source, dan Storage Class. Anda juga dapat mengurutkan hasil berdasarkan Created At secara menaik atau menurun.

Skenario 2: Pencarian aset media menggunakan API atau SDK

Catatan

Gunakan kit pengembangan perangkat lunak (SDK) sisi server untuk memanggil API guna mencari informasi aset media. Untuk informasi selengkapnya, lihat VOD SDKs.

Gunakan operasi SearchMedia untuk mengintegrasikan kemampuan pencarian ke dalam sistem bisnis Anda dan mengotomatiskan pengambilan aset media. Anda dapat memfilter aset media berdasarkan bidang seperti VideoId, CateId, StorageLocation, Title, dan Tags. Untuk informasi selengkapnya, lihat Protocol for media asset search. Contoh kode berikut disediakan:

import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.vod.model.v20170321.SearchMediaRequest;
import com.aliyuncs.vod.model.v20170321.SearchMediaResponse;

public class SearchMediaExample {
    public static void main(String[] args) {
        // Inisialisasi client.
        DefaultProfile profile = DefaultProfile.getProfile(
            "cn-shanghai",          // ID wilayah.
            "YOUR_ACCESS_KEY_ID",   // ID AccessKey.
            "YOUR_ACCESS_KEY_SECRET"// Rahasia AccessKey.
        );
        IAcsClient client = new DefaultAcsClient(profile);
        
        // Bangun permintaan.
        SearchMediaRequest request = new SearchMediaRequest();
        request.setMatch("Title='VOD' AND Status='Normal'");
        request.setFields("Title,CoverURL,Duration,Size");
        request.setSortBy("CreationTime:Desc");
        request.setPageSize(20);
        request.setPageNo(1);
        
        try {
            SearchMediaResponse response = client.getAcsResponse(request);
            System.out.println("Total Records: " + response.getTotal());
            for (SearchMediaResponse.Media media : response.getMediaList()) {
                System.out.println("VideoId: " + media.getMediaId() + ", Title: " + media.getVideo().getTitle());
            }
        } catch (Exception e) {
            System.err.println("Terjadi kesalahan: " + e.getMessage());
            e.printStackTrace();
        }
    }
}
from aliyunsdkcore.client import AcsClient
from aliyunsdkvod.request.v20170321 import SearchMediaRequest
import json

# Inisialisasi client.
client = AcsClient(
    'YOUR_ACCESS_KEY_ID', 
    'YOUR_ACCESS_KEY_SECRET', 
    'cn-shanghai'
)

# Bangun permintaan.
request = SearchMediaRequest.SearchMediaRequest()
request.set_Match("Title='VOD' AND Status='Normal'")
request.set_Fields("Title,CoverURL,Duration,Size")
request.set_SortBy("CreationTime:Desc")
request.set_PageSize(20)
request.set_PageNo(1)

try:
    response_str = client.do_action_with_exception(request)
    response_data = json.loads(response_str)
    print(f"Total Records: {response_data.get('Total')}")
    for media in response_data.get('MediaList', {}).get('Media', []):
        print(f"VideoId: {media.get('MediaId')}, Title: {media.get('Video', {}).get('Title')}")
except Exception as e:
    print(f"Terjadi kesalahan: {e}")

Paginasi dan penelusuran data

Untuk memastikan performa kueri, pencarian media menyediakan dua mode paging.

  • Paging standar (untuk tampilan UI)

    Gunakan parameter PageNo dan PageSize untuk mengambil data per halaman. Anda dapat mengambil hingga 5.000 catatan pertama dari hasil pencarian.

  • Traversed berbasis scroll (untuk ekspor data)

    Gunakan parameter PageNo dan PageSize serta kursor ScrollToken untuk traversed mendalam. Metode ini memungkinkan Anda mengambil semua hasil pencarian dalam segmen. Setiap segmen dibatasi maksimal 1.200 catatan. Contoh kode berikut disediakan:

    // Contoh traversed berbasis scroll
    String scrollToken = null;
    // SessionId harus tetap sama sepanjang traversed lengkap.
    String sessionId = java.util.UUID.randomUUID().toString(); 
    List<SearchMediaResponse.Media> allMedia = new ArrayList<>();
    
    do {
        SearchMediaRequest request = new SearchMediaRequest();
        request.setPageSize(100); // Ambil hingga 100 catatan sekaligus.
        request.setSessionId(sessionId);
        
        if (scrollToken != null) {
            request.setScrollToken(scrollToken);
        }
        
        SearchMediaResponse response = client.getAcsResponse(request);
        if (response.getMediaList() != null) {
            allMedia.addAll(response.getMediaList());
        }
        
        scrollToken = response.getScrollToken();
        
    // ScrollToken kosong atau null menandakan bahwa semua data telah ditraversed.
    } while (scrollToken != null && !scrollToken.isEmpty());
    

Contoh pemanggilan API

Kode contoh pada bagian berikut menjelaskan pernyataan kueri yang digunakan untuk mengkueri informasi video.

Penting
  • Sebelum mengirim permintaan, Anda harus melakukan URL encoding pada parameter permintaan.

  • Tanda sama dengan (=), tanda kutip ganda ("), tanda kutip tunggal ('), dan tanda kurung yang digunakan dalam pernyataan harus berupa karakter single-byte.

Klasifikasi

Deskripsi

Bidang yang dikembalikan

Operasi pencarian media mengembalikan informasi dasar aset media secara default. Untuk mendapatkan informasi tambahan, tentukan parameter Fields. Contoh berikut mengembalikan Title dan CoverURL:

Fields=Title,CoverURL

Contoh permintaan:

http://vod.cn-shanghai.aliyuncs.com?Action=SearchMedia
&Fields=Title,CoverURL

Pencocokan eksak

Kueri informasi video dengan VideoId bernilai 28ba2b26d540446c94cdd2c4c48090e5:

VideoId='28ba2b26d540446c94cdd2c4c48090e5'

Contoh permintaan:

http://vod.cn-shanghai.aliyuncs.com?Action=SearchMedia
&Match=VideoId='28ba2b26d540446c94cdd2c4c48090e5'

Fuzzy match

Untuk mencari Title yang mengandung Music, Anda dapat menggunakan:

Title='Music'

Atau, Anda dapat menulisnya sebagai

Title in ('Music')

Contoh permintaan:

http://vod.cn-shanghai.aliyuncs.com?Action=SearchMedia
&Match=Title='Music'

Kueri multi-nilai

Catatan: Jika bidang yang digunakan untuk kueri hanya mendukung pencarian fuzzy, hasil kueri juga dikembalikan berdasarkan pencarian fuzzy.

Kueri untuk Status bernilai Normal atau Checking:

Status in ('Normal','Checking')

Contoh permintaan:

http://vod.cn-shanghai.aliyuncs.com?Action=SearchMedia
&Match=Status in ('Normal','Checking')

Kueri rentang

Gunakan interval tertutup atau terbuka untuk menentukan rentang. CreationTime berada di antara 2018-01-01T00:00:00Z dan 2018-02-01T00:00:00Z:

CreationTime=('2018-01-01T00:00:00Z','2018-02-01T00:00:00Z')

Contoh permintaan:

http://vod.cn-shanghai.aliyuncs.com?Action=SearchMedia
&Match=CreationTime=('2018-01-01T00:00:00Z','2018-02-01T00:00:00Z')

Jika Anda hanya menentukan waktu mulai atau akhir, biarkan nilai lainnya kosong. Misalnya, untuk mengkueri CreationTime yang lebih baru dari 2018-01-01T00:00:00Z:

CreationTime=('2018-01-01T00:00:00Z',)

Contoh permintaan:

http://vod.cn-shanghai.aliyuncs.com?Action=SearchMedia
&Match=CreationTime=('2018-01-01T00:00:00Z',)

Bidang pengurutan

Urutkan informasi aset media berdasarkan waktu pembuatan secara menurun:

CreationTime:Desc

Contoh permintaan:

http://vod.cn-shanghai.aliyuncs.com?Action=SearchMedia
&SortBy=CreationTime:Desc

Referensi