全部产品
Search
文档中心

ApsaraVideo Media Processing:Kelola template transkoding

更新时间:Jul 06, 2025

Jika template transcoding bawaan dari ApsaraVideo Media Processing (MPS) tidak memenuhi kebutuhan bisnis Anda, Anda dapat membuat template transcoding kustom dan mengonfigurasi pengaturannya, seperti format encoding, frame rate, dan resolusi. Topik ini memberikan contoh cara menggunakan MPS SDK untuk Java V2.0 untuk membuat, memodifikasi, menghapus, dan menanyakan template transcoding.

Prasyarat

Klien SDK telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi Klien.

Buat template transkoding

Anda dapat memanggil operasi AddTemplate untuk membuat template transcoding.

Catatan
  • Jika pesan kesalahan The resource "Template" quota has been used up muncul saat Anda membuat template, kuota template Anda telah habis. Anda dapat mengajukan tiket untuk meminta kuota yang lebih tinggi.

  • Disarankan untuk mencatat ID template transcoding yang Anda buat. Anda juga dapat membuat template transcoding dan mendapatkan ID-nya di konsol MPS. Untuk informasi lebih lanjut, lihat Template Transcoding.

package com.aliyun.sample;

import com.aliyun.tea.*;

public class Sample {

    /**
     *  :
     * <p>Gunakan ID AccessKey dan Rahasia AccessKey Anda untuk menginisialisasi klien.</p>
     * @return Client
     *
     * @throws Exception
     */
    public static com.aliyun.mts20140618.Client createClient() throws Exception {

        com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dikonfigurasi.
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_SECRET dikonfigurasi.
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        config.endpoint = "mts.cn-qingdao.aliyuncs.com";
        return new com.aliyun.mts20140618.Client(config);
    }

    public static void main(String[] args_) throws Exception {
        java.util.List<String> args = java.util.Arrays.asList(args_);
        com.aliyun.mts20140618.Client client = Sample.createClient();
        com.aliyun.mts20140618.models.AddTemplateRequest addTemplateRequest = new com.aliyun.mts20140618.models.AddTemplateRequest()
                // Nama template.
                .setName("mps-example")
                // Format kontainer.
                .setContainer("{\"Format\":\"mp4\"}")
                // Konfigurasi transkoding untuk aliran video.
                .setVideo("{\"Codec\":\"H.264\",\"Profile\":\"high\",\"Bitrate\":\"500\",\"Crf\":\"15\",\"Width\":\"256\",\"Height\":\"800\",\"Fps\":\"25\",\"Gop\":\"10s\"}")
                // Konfigurasi transkoding untuk aliran audio.
                .setAudio("{\"Codec\":\"H.264\",\"Samplerate\":\"44100\",\"Bitrate\":\"500\",\"Channels\":\"2\"}")
                // Konfigurasi transkoding umum.
                .setTransConfig("{\"TransMode\":\"onepass\"}")
                // Konfigurasi segmen.
                .setMuxConfig("{\"Segment\":{\"Duration\":\"10\"}}");
        com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
        try {
            // Tulis kode Anda sendiri untuk menampilkan respons dari operasi API jika diperlukan.
            client.addTemplateWithOptions(addTemplateRequest, runtime);
        } catch (TeaException error) {
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis aktual dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi.
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan terkait.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        } catch (Exception _error) {
            TeaException error = new TeaException(_error.getMessage(), _error);
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis aktual dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi.
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan terkait.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        }
    }
}

Memodifikasi konfigurasi template transkoding

Anda dapat memanggil operasi UpdateTemplate untuk memodifikasi konfigurasi template transcoding.

package com.aliyun.sample;

import com.aliyun.tea.*;

public class Sample {

    /**
     *  :
     * <p>Gunakan ID AccessKey dan Rahasia AccessKey Anda untuk menginisialisasi klien.</p>
     * @return Client
     *
     * @throws Exception
     */
    public static com.aliyun.mts20140618.Client createClient() throws Exception {

        com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID telah dikonfigurasi. 
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_SECRET telah dikonfigurasi. 
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        config.endpoint = "mts.cn-qingdao.aliyuncs.com";
        return new com.aliyun.mts20140618.Client(config);
    }

    public static void main(String[] args_) throws Exception {
        java.util.List<String> args = java.util.Arrays.asList(args_);
        com.aliyun.mts20140618.Client client = Sample.createClient();
        com.aliyun.mts20140618.models.UpdateTemplateRequest updateTemplateRequest = new com.aliyun.mts20140618.models.UpdateTemplateRequest()
                // ID dari template.
                .setTemplateId("16f01ad6175e4230ac42bb5182cd****")
                // Nama dari template.
                .setName("MPS-example")
                // Format kontainer.
                .setContainer("{\"Format\":\"mp4\"}")
                // Konfigurasi transkoding untuk aliran video.
                .setVideo("{\"Codec\":\"H.264\",\"Profile\":\"high\",\"Bitrate\":\"500\",\"Crf\":\"15\",\"Width\":\"256\",\"Height\":\"800\",\"Fps\":\"25\",\"Gop\":\"10\"}")
                // Konfigurasi transkoding untuk aliran audio.
                .setAudio("{\"Codec\":\"aac\",\"Samplerate\":\"44100\",\"Bitrate\":\"500\",\"Channels\":\"2\"}")
                // Konfigurasi transmuxing.
                .setMuxConfig("{\"Segment\":{\"Duration\":\"10\"}}")
                // Konfigurasi transkoding umum.
                .setTransConfig("{\"TransMode\":\"onepass\"}");
        com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
        try {
            // Tulis kode Anda sendiri untuk menampilkan respons dari operasi API jika diperlukan.
            client.updateTemplateWithOptions(updateTemplateRequest, runtime);
        } catch (TeaException error) {
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi. 
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan yang sesuai.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        } catch (Exception _error) {
            TeaException error = new TeaException(_error.getMessage(), _error);
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi. 
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan yang sesuai.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        }
    }
}

Hapus template transkoding

Anda dapat memanggil operasi DeleteTemplate untuk menghapus template transcoding.

package com.aliyun.sample;

import com.aliyun.tea.*;

public class Sample {

    /**
     *  :
     * <p>Gunakan ID AccessKey dan Rahasia AccessKey Anda untuk menginisialisasi klien.</p>
     * @return Client
     *
     * @throws Exception
     */
    public static com.aliyun.mts20140618.Client createClient() throws Exception {

        com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID telah dikonfigurasi.
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_SECRET telah dikonfigurasi.
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        config.endpoint = "mts.cn-qingdao.aliyuncs.com";
        return new com.aliyun.mts20140618.Client(config);
    }

    public static void main(String[] args_) throws Exception {
        java.util.List<String> args = java.util.Arrays.asList(args_);
        com.aliyun.mts20140618.Client client = Sample.createClient();
        com.aliyun.mts20140618.models.DeleteTemplateRequest deleteTemplateRequest = new com.aliyun.mts20140618.models.DeleteTemplateRequest()
                // ID template transkoding yang akan dihapus.
                .setTemplateId("16f01ad6175e4230ac42bb5182cd****");
        com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
        try {
            // Tulis kode Anda sendiri untuk menampilkan respons dari operasi API jika diperlukan.
            client.deleteTemplateWithOptions(deleteTemplateRequest, runtime);
        } catch (TeaException error) {
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis aktual dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi.
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan yang sesuai.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        } catch (Exception _error) {
            TeaException error = new TeaException(_error.getMessage(), _error);
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis aktual dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi.
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan yang sesuai.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        }
    }
}

Kueri template transkoding berdasarkan ID template

Anda dapat memanggil operasi QueryTemplateList untuk menanyakan template transcoding berdasarkan ID template.

package com.aliyun.sample;

import com.aliyun.tea.*;

public class Sample {

    /**
     *  :
     * <p>Gunakan ID AccessKey dan Rahasia AccessKey Anda untuk menginisialisasi klien.</p>
     * @return Client
     *
     * @throws Exception
     */
    public static com.aliyun.mts20140618.Client createClient() throws Exception {

        com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dikonfigurasi. 
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_SECRET dikonfigurasi. 
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        config.endpoint = "mts.cn-qingdao.aliyuncs.com";
        return new com.aliyun.mts20140618.Client(config);
    }

    public static void main(String[] args_) throws Exception {
        java.util.List<String> args = java.util.Arrays.asList(args_);
        com.aliyun.mts20140618.Client client = Sample.createClient();
        com.aliyun.mts20140618.models.QueryTemplateListRequest queryTemplateListRequest = new com.aliyun.mts20140618.models.QueryTemplateListRequest()
                // ID dari template transkoding yang akan diperiksa.
                .setTemplateIds("16f01ad6175e4230ac42bb5182cd****,88c6ca184c0e424d5w5b665e2a12****");
        com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
        try {
            // Tulis kode Anda sendiri untuk menampilkan respons dari operasi API jika perlu.
            client.queryTemplateListWithOptions(queryTemplateListRequest, runtime);
        } catch (TeaException error) {
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi. 
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan terkait.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        } catch (Exception _error) {
            TeaException error = new TeaException(_error.getMessage(), _error);
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi. 
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan terkait.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        }
    }
}

Memfilter template transkoding berdasarkan status template

Anda dapat memanggil operasi SearchTemplate untuk memfilter template transcoding berdasarkan status template.

// File ini dihasilkan secara otomatis, jangan diedit. Terima kasih.
package com.aliyun.sample;

import com.aliyun.tea.*;

public class Sample {

    /**
     *  :
     * <p>Gunakan ID AccessKey dan Rahasia AccessKey Anda untuk menginisialisasi klien.</p>
     * @return Client
     *
     * @throws Exception
     */
    public static com.aliyun.mts20140618.Client createClient() throws Exception {

        com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID telah dikonfigurasi. 
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // Diperlukan. Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_SECRET telah dikonfigurasi. 
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        config.endpoint = "mts.cn-qingdao.aliyuncs.com";
        return new com.aliyun.mts20140618.Client(config);
    }

    public static void main(String[] args_) throws Exception {
        java.util.List<String> args = java.util.Arrays.asList(args_);
        com.aliyun.mts20140618.Client client = Sample.createClient();
        com.aliyun.mts20140618.models.SearchTemplateRequest searchTemplateRequest = new com.aliyun.mts20140618.models.SearchTemplateRequest()
                // Status template transkoding yang akan diquery.
                .setState("Normal")
                // Awalan yang digunakan untuk mencari template berdasarkan nama template.
                .setNamePrefix("S00000001")
                // Jumlah entri yang akan dikembalikan di setiap halaman.
                .setPageSize(10L)
                // Nomor halaman saat ini.
                .setPageNumber(1L);
        com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
        try {
            // Tulis kode Anda sendiri untuk menampilkan respons dari operasi API jika diperlukan.
            client.searchTemplateWithOptions(searchTemplateRequest, runtime);
        } catch (TeaException error) {
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi. 
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan terkait.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        } catch (Exception _error) {
            TeaException error = new TeaException(_error.getMessage(), _error);
            // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, pesan kesalahan ditampilkan hanya untuk referensi. 
            // Pesan kesalahan.
            System.out.println(error.getMessage());
            // URL halaman diagnostik kesalahan terkait.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        }
    }
}

Referensi