全部产品
Search
文档中心

ApsaraVideo VOD:Pengelolaan aset media

更新时间:Jun 21, 2025

Topik ini memberikan contoh penggunaan operasi API dari modul pengelolaan media. Operasi API dienkapsulasi dalam ApsaraVideo VOD SDK untuk Java. Anda dapat memanggil operasi API untuk mencari informasi aset media, memodifikasi informasi video, menanyakan informasi file sumber, serta menanyakan dan menghapus video dan gambar.

Catatan penggunaan

  • Dalam contoh ini, sepasang AccessKey digunakan untuk menginisialisasi instance klien.

  • Untuk informasi lebih lanjut tentang parameter permintaan dan respons dari operasi ini, kunjungi OpenAPI Explorer. Anda dapat mengklik API Documentations di bilah navigasi atas untuk melihat informasi terkait operasi API.

  • Topik ini hanya menyediakan kode contoh untuk beberapa operasi API yang kompleks. Untuk mendapatkan kode contoh untuk operasi API lainnya, lakukan langkah-langkah berikut: Kunjungi Alibaba Cloud OpenAPI Explorer. Di panel navigasi sebelah kiri, temukan operasi API yang ingin Anda peroleh kode contohnya dan tentukan parameter yang diperlukan pada tab Parameters. Kemudian, klik Panggil Permintaan. Pada tab SDK Sample Code, pilih bahasa untuk melihat dan mengunduh kode contoh.

  • Topik ini menjelaskan cara menggunakan ApsaraVideo VOD SDK untuk Java V1.0 untuk memanggil operasi API. Jika Anda menggunakan ApsaraVideo VOD SDK untuk Java V2.0 untuk memanggil operasi API, tentukan V2.0 saat Anda memperoleh kode contoh di Alibaba Cloud OpenAPI Explorer.image.png

Inisialisasi klien

Sebelum menggunakan SDK, inisialisasi klien. Untuk informasi lebih lanjut, lihat Inisialisasi.

Menanyakan informasi aset media

Anda dapat memanggil operasi SearchMedia untuk menanyakan informasi aset media.

Klik SearchMedia untuk mempelajari lebih lanjut tentang operasi API ini.

Kode contoh:

import com.aliyuncs.auth.AlibabaCloudCredentials;
import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider;
import com.aliyuncs.vod.model.v20170321.SearchMediaRequest;
import com.aliyuncs.vod.model.v20170321.SearchMediaResponse;

 /**
   * Memperoleh Informasi AccessKey.
   */
    public static DefaultAcsClient initVodClient() throws ClientException {
    String regionId = "cn-shanghai";  // Tentukan wilayah di mana ApsaraVideo VOD diaktifkan.
    // Pasangan AccessKey akun Alibaba Cloud memiliki izin untuk semua operasi API. Kami merekomendasikan Anda menggunakan pengguna RAM untuk memanggil operasi API atau melakukan pemeliharaan rutin.
    // Kami merekomendasikan agar Anda tidak menyimpan pasangan AccessKey (ID AccessKey dan Rahasia AccessKey) di kode proyek Anda. Jika tidak, pasangan AccessKey mungkin bocor. Akibatnya, keamanan semua sumber daya di akun Anda terganggu.
    // Dalam contoh ini, sistem membaca pasangan AccessKey dari variabel lingkungan untuk mengimplementasikan otentikasi akses API. Sebelum Anda menjalankan kode contoh, konfigurasikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET.
    DefaultProfile profile = DefaultProfile.getProfile(regionId, System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
    DefaultAcsClient client = new DefaultAcsClient(profile);
    return client;
}
/**
 * Mencari informasi aset media.
 * @param client Klien yang mengirim permintaan.
 * @return SearchMediaResponse Informasi yang terkandung dalam respons.
 * @throws Exception
 */
public static SearchMediaResponse searchMedia(DefaultAcsClient client) throws Exception {
    SearchMediaRequest request = new SearchMediaRequest();
    request.setFields("Title,CoverURL,Status");
    request.setMatch("Status in ('Normal','Checking') and CreationTime = ('2018-07-01T08:00:00Z','2018-08-01T08:00:00Z')");
    request.setPageNo(1);
    request.setPageSize(10);
    request.setSearchType("video");
    request.setSortBy("CreationTime:Desc");
    return client.getAcsResponse(request);
}

// Permintaan contoh
public static void main(String[] argv) {
    DefaultAcsClient client = initVodClient();
    SearchMediaResponse response = new SearchMediaResponse();
    try {
        response = searchMedia(client);
        if (response.getMediaList() != null && response.getMediaList().size() > 0) {
            System.out.print("Total = " + response.getTotal() + "\n");
            System.out.print("ScrollToken = " + response.getScrollToken() + "\n");
            for (SearchMediaResponse.Media media : response.getMediaList()) {
                System.out.print("MediaId = " + media.getMediaId() + "\n");
                System.out.print("MediaType = " + media.getMediaType() + "\n");
                System.out.print("CreationTime = " + media.getCreationTime() + "\n");
                System.out.print("Title = " + media.getVideo().getTitle() + "\n");
                System.out.print("CoverURL = " + media.getVideo().getCoverURL() + "\n");
                System.out.print("Status = " + media.getVideo().getStatus() + "\n");
            }
        }
    } catch (Exception e) {
        System.out.print("ErrorMessage = " + e.getLocalizedMessage());
    }
    System.out.print("RequestId = " + response.getRequestId() + "\n");
}

Menanyakan informasi file audio atau video

  • Anda dapat memanggil operasi GetVideoInfo untuk menanyakan informasi tentang file audio atau video.

    Klik GetVideoInfo untuk mempelajari lebih lanjut tentang operasi API ini.

  • Anda dapat memanggil operasi GetVideoInfos untuk menanyakan informasi tentang beberapa file audio atau video sekaligus.

    Klik GetVideoInfos untuk mempelajari lebih lanjut tentang operasi API ini.

Memodifikasi informasi file audio atau video

Anda dapat memanggil operasi UpdateVideoInfo untuk memodifikasi informasi tentang file audio atau video.

Klik UpdateVideoInfo untuk mempelajari lebih lanjut tentang operasi API ini.

Memodifikasi informasi beberapa file audio atau video

Anda dapat memanggil operasi UpdateVideoInfos untuk memodifikasi informasi tentang beberapa file audio atau video sekaligus.

Klik UpdateVideoInfos untuk mempelajari lebih lanjut tentang operasi API ini.

Kode contoh:

import com.aliyuncs.auth.AlibabaCloudCredentials;
import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider;
import com.aliyuncs.vod.model.v20170321.UpdateVideoInfosRequest;
import com.aliyuncs.vod.model.v20170321.UpdateVideoInfosResponse;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

 /**
   * Memperoleh Informasi AccessKey.
   */
    public static DefaultAcsClient initVodClient() throws ClientException {
    String regionId = "cn-shanghai";  // Tentukan wilayah di mana ApsaraVideo VOD diaktifkan.
    // Pasangan AccessKey akun Alibaba Cloud memiliki izin untuk semua operasi API. Kami merekomendasikan Anda menggunakan pengguna RAM untuk memanggil operasi API atau melakukan pemeliharaan rutin.
    // Kami merekomendasikan agar Anda tidak menyimpan pasangan AccessKey (ID AccessKey dan Rahasia AccessKey) di kode proyek Anda. Jika tidak, pasangan AccessKey mungkin bocor. Akibatnya, keamanan semua sumber daya di akun Anda terganggu.
    // Dalam contoh ini, sistem membaca pasangan AccessKey dari variabel lingkungan untuk mengimplementasikan otentikasi akses API. Sebelum Anda menjalankan kode contoh, konfigurasikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET.
    DefaultProfile profile = DefaultProfile.getProfile(regionId, System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
    DefaultAcsClient client = new DefaultAcsClient(profile);
    return client;
}
/**
 * Memodifikasi informasi beberapa file video sekaligus.
 * @param client Klien yang mengirim permintaan.
 * @return UpdateVideoInfosResponse Informasi yang terkandung dalam respons.
 * @throws Exception
*/
public static UpdateVideoInfosResponse updateVideoInfos(DefaultAcsClient client) throws Exception {
    UpdateVideoInfosRequest request = new UpdateVideoInfosRequest();
    JSONArray updateContentArray = new JSONArray();
    JSONObject updateContent1 = new JSONObject();
    updateContent1.put("VideoId", "VideoId1");
    // updateContent1.put("Title", "new Title");
    // updateContent1.put("Tags", "new Tag1,new Tag2");
    updateContentArray.add((updateContent1));
    JSONObject updateContent2 = new JSONObject();
    updateContent2.put("VideoId", "VideoId2");
    // updateContent2.put("Title", "new Title");
    // updateContent2.put("Tags", "new Tag1,new Tag2");
    updateContentArray.add((updateContent2));
    request.setUpdateContent(updateContentArray.toJSONString());
    return client.getAcsResponse(request);
}

// Permintaan contoh
public static void main(String[] argv) {
    DefaultAcsClient client = initVodClient();
    UpdateVideoInfosResponse response = new UpdateVideoInfosResponse();
    try {
        response = updateVideoInfos(client);
        if (response.getNonExistVideoIds() != null && response.getNonExistVideoIds().size() > 0) {
            System.out.print("======nonexistent VideoIds : ======\n");
            for (String videoId : response.getNonExistVideoIds()) {
                System.out.print(videoId + "\n");
            }
        }
    } catch (Exception e) {
        System.out.print("ErrorMessage = " + e.getLocalizedMessage());
    }
    System.out.print("RequestId = " + response.getRequestId() + "\n");
}

Menanyakan informasi file sumber (termasuk URL unduhan)

Anda dapat memanggil operasi GetMezzanineInfo untuk menanyakan informasi file sumber.

Klik GetMezzanineInfo untuk mempelajari lebih lanjut tentang operasi API ini.

Menanyakan file audio dan video

Anda dapat memanggil operasi GetVideoList untuk menanyakan file audio dan video.

Klik GetVideoList untuk mempelajari lebih lanjut tentang operasi API ini.

Menghapus file audio dan video

Anda dapat memanggil operasi DeleteVideo untuk menghapus file audio dan video.

Klik DeleteVideo untuk mempelajari lebih lanjut tentang operasi API ini.

Menghapus aliran media

Anda dapat memanggil operasi DeleteStream untuk menghapus aliran media.

Klik DeleteStream untuk mempelajari lebih lanjut tentang operasi API ini.

Menghapus beberapa file sumber

Anda dapat memanggil operasi DeleteMezzanines untuk menghapus beberapa file sumber sekaligus.

Klik DeleteMezzanines untuk mempelajari lebih lanjut tentang operasi API ini.

Memodifikasi informasi beberapa gambar

Anda dapat memanggil operasi UpdateImageInfos untuk memodifikasi informasi tentang beberapa gambar sekaligus.

Klik UpdateImageInfos untuk mempelajari lebih lanjut tentang operasi API ini.

Kode contoh:

import com.aliyuncs.auth.AlibabaCloudCredentials;
import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider;
import com.aliyuncs.vod.model.v20170321.UpdateImageInfosRequest;
import com.aliyuncs.vod.model.v20170321.UpdateImageInfosResponse;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

 /**
   * Memperoleh Informasi AccessKey.
   */
    public static DefaultAcsClient initVodClient() throws ClientException {
    String regionId = "cn-shanghai";  // Tentukan wilayah di mana ApsaraVideo VOD diaktifkan.
    // Pasangan AccessKey akun Alibaba Cloud memiliki izin untuk semua operasi API. Kami merekomendasikan Anda menggunakan pengguna RAM untuk memanggil operasi API atau melakukan pemeliharaan rutin.
    // Kami merekomendasikan agar Anda tidak menyimpan pasangan AccessKey (ID AccessKey dan Rahasia AccessKey) di kode proyek Anda. Jika tidak, pasangan AccessKey mungkin bocor. Akibatnya, keamanan semua sumber daya di akun Anda terganggu.
    // Dalam contoh ini, sistem membaca pasangan AccessKey dari variabel lingkungan untuk mengimplementasikan otentikasi akses API. Sebelum Anda menjalankan kode contoh, konfigurasikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET.
    DefaultProfile profile = DefaultProfile.getProfile(regionId, System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
    DefaultAcsClient client = new DefaultAcsClient(profile);
    return client;
}
/**
 * Memodifikasi informasi beberapa gambar sekaligus.
 * @param client Klien yang mengirim permintaan.
 * @return UpdateImageInfosResponse Informasi yang terkandung dalam respons.
 * @throws Exception
*/
public static UpdateImageInfosResponse updateImageInfos(DefaultAcsClient client) throws Exception{
        UpdateImageInfosRequest request = new UpdateImageInfosRequest();
        JSONArray updateContentArray = new JSONArray();
        JSONObject updateContent1 = new JSONObject();
        updateContent1.put("ImageId", "ImageId1");
//        updateContent1.put("Title", "new Title");
//        updateContent1.put("Tags", "new Tag1,new Tag2");
        updateContentArray.add((updateContent1));
        JSONObject updateContent2 = new JSONObject();
        updateContent2.put("ImageId", "ImageId2");
//        updateContent2.put("Title", "new Title");
//        updateContent2.put("Tags", "new Tag1,new Tag2");
        updateContentArray.add((updateContent2));
        request.setUpdateContent(updateContentArray.toJSONString());
        return client.getAcsResponse(request);
    }

// Permintaan contoh
public static void main(String[] argv) throws Exception {
    DefaultAcsClient client = initVodClient();
    UpdateImageInfosResponse response = new UpdateImageInfosResponse();
    try {
        response = updateImageInfos(client);
        if (response.getNonExistImageIds() != null && response.getNonExistImageIds().size() > 0) {
            System.out.print("======nonexistent ImageIds : ======\n");
            for (String imageId : response.getNonExistImageIds()) {
                System.out.print(imageId + "\n");
            }
        }
    } catch (Exception e) {
        System.out.print("ErrorMessage = " + e.getLocalizedMessage());
    }
    System.out.print("RequestId = " + response.getRequestId() + "\n");
}

Menanyakan informasi tentang gambar

Anda dapat memanggil operasi GetImageInfo untuk menanyakan informasi tentang gambar.

Klik GetImageInfo untuk mempelajari lebih lanjut tentang operasi API ini.

Menghapus gambar

Anda dapat memanggil operasi DeleteImage untuk menghapus gambar.

Klik DeleteImage untuk mempelajari lebih lanjut tentang operasi API ini.

Kode contoh:

import com.aliyuncs.auth.AlibabaCloudCredentials;
import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider;
import com.aliyuncs.vod.model.v20170321.DeleteImageRequest;
import com.aliyuncs.vod.model.v20170321.DeleteImageResponse;

 /**
   * Memperoleh Informasi AccessKey.
   */
    public static DefaultAcsClient initVodClient() throws ClientException {
    String regionId = "cn-shanghai";  // Tentukan wilayah di mana ApsaraVideo VOD diaktifkan.
    // Pasangan AccessKey akun Alibaba Cloud memiliki izin untuk semua operasi API. Kami merekomendasikan Anda menggunakan pengguna RAM untuk memanggil operasi API atau melakukan pemeliharaan rutin.
    // Kami merekomendasikan agar Anda tidak menyimpan pasangan AccessKey (ID AccessKey dan Rahasia AccessKey) di kode proyek Anda. Jika tidak, pasangan AccessKey mungkin bocor. Akibatnya, keamanan semua sumber daya di akun Anda terganggu.
    // Dalam contoh ini, sistem membaca pasangan AccessKey dari variabel lingkungan untuk mengimplementasikan otentikasi akses API. Sebelum Anda menjalankan kode contoh, konfigurasikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET.
    DefaultProfile profile = DefaultProfile.getProfile(regionId, System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
    DefaultAcsClient client = new DefaultAcsClient(profile);
    return client;
}
/**
 * Menghapus gambar.
 *
 * @param client Klien yang mengirim permintaan.
 * @return DeleteImageResponse Informasi yang terkandung dalam respons.
 * @throws Exception
*/
public static DeleteImageResponse deleteImage(DefaultAcsClient client) throws Exception {
    DeleteImageRequest request = new DeleteImageRequest();
    // Hapus file gambar berdasarkan ImageURL.
    request.setDeleteImageType("ImageURL");
    // Contoh ImageURL: http://example.aliyundoc.com/cover-****.jpg.
    String url = "<your image URL>";
    String encodeUrl = URLEncoder.encode(url, "UTF-8");
    request.setImageURLs(encodeUrl);
    // Hapus file gambar berdasarkan ImageId.
    //request.setDeleteImageType("ImageId");
    //request.setImageIds("ImageId1,ImageId2");
    // Hapus file gambar tipe tertentu berdasarkan VideoId.
    //request.setDeleteImageType("VideoId");
    //request.setVideoId("VideoId");
    //request.setImageType("SpriteSnapshot");
    return client.getAcsResponse(request);
}

// Permintaan contoh
public static void main(String[] argv) throws ClientException {
    DefaultAcsClient client = initVodClient();
    DeleteImageResponse response = new DeleteImageResponse();
    try {
        response = deleteImage(client);
    } catch (Exception e) {
        System.out.print("ErrorMessage = " + e.getLocalizedMessage());
    }
    System.out.print("RequestId = " + response.getRequestId() + "\n");
}