Tous les produits
Search
Centre de documentation

ApsaraVideo VOD:Modèles de transcodage

Dernière mise à jour :Aug 10, 2026

ApsaraVideo VOD utilise des modèles de transcodage pour le transcodage vidéo. Si les groupes de modèles de transcodage intégrés ne répondent pas à vos besoins, créez un groupe de modèles de transcodage et personnalisez des paramètres tels que le format d'encodage, la fréquence d'images et la résolution. Utilisez le SDK Python pour créer et gérer des groupes de modèles de transcodage en appelant des opérations API.

Notes d'utilisation

  • Tous les exemples de cette rubrique utilisent une paire AccessKey pour initialiser une instance de client.

  • Pour obtenir le détail des paramètres de requête et de réponse, consultez Alibaba Cloud OpenAPI Explorer et ouvrez l'onglet API Documentations.

  • Pour consulter des exemples de SDK relatifs à d'autres opérations API, rendez-vous sur Alibaba Cloud OpenAPI Explorer. Dans l'onglet Parameters, spécifiez les paramètres et lancez l'appel. Sélectionnez ensuite la version du SDK et le langage dans l'onglet SDK Sample Code pour afficher et télécharger le code.

  • Les exemples de cette rubrique utilisent le SDK V1.0. Pour les exemples V2.0, sélectionnez la version correcte du SDK dans OpenAPI Explorer.

Initialiser un client

Avant d'utiliser le SDK, initialisez un client. Pour plus d'informations, consultez la section Initialisation.

Créer un groupe de modèles de transcodage

Appelez l'opération AddTranscodeTemplateGroup pour créer un groupe de modèles de transcodage.

Alibaba Cloud OpenAPI Explorer : AddTranscodeTemplateGroup.

Exemple de code :

from aliyunsdkvod.request.v20170321 import AddTranscodeTemplateGroupRequest

""" Build the configuration data for the transcoding template to add. """
def build_transcode_template_list():
    transcodeTemplateList = []
    transcodeTemplate = {}

    # Set the template name.
    transcodeTemplate["TemplateName"] = "MP4-for-Low-Definition"

    # Definition.
    transcodeTemplate["Definition"] = "LD"

    # Video stream transcoding configuration.
    videoConfig = {"Width": 640, "Bitrate": 400, "Fps": 25, "Remove": False, "Codec": "H.264", "Gop": "250"}
    transcodeTemplate["Video"] = videoConfig

    # Audio stream transcoding configuration.
    audioConfig = {"Codec": "AAC", "Bitrate": "64", "Channels": "2", "Samplerate": "32000"}
    transcodeTemplate["Audio"] = audioConfig

    # Encapsulation container.
    container = {"Format": "mp4"}
    transcodeTemplate["Container"] = container

    # Conditional transcoding configuration.
    condition = {"IsCheckReso": False, "IsCheckResoFail": False, "IsCheckVideoBitrate": False,
                 "IsCheckVideoBitrateFail": False, "IsCheckAudioBitrate": False, "IsCheckAudioBitrateFail": False}
    transcodeTemplate["TransConfig"] = condition

    """
    # Encryption configuration (HLS only).
    encryptSetting = {"EncryptType": "Private"}
    transcodeTemplate["EncryptSetting"] = encryptSetting
    """

    # Watermark ID (for associating multiple watermarks).
    watermarkIdList = []
    #watermarkIdList.append("<WatermarkId>")
    watermarkIdList.append("USER_DEFAULT_WATERMARK")
    transcodeTemplate["WatermarkIds"] = watermarkIdList

    transcodeTemplateList.append(transcodeTemplate)

    return transcodeTemplateList

""" Add the transcoding template configuration. """
def add_transcode_template_group(clt):
    request = AddTranscodeTemplateGroupRequest.AddTranscodeTemplateGroupRequest()

    request.set_Name("SampleTranscodeTemplateGroup")

    transcodeTemplateList = build_transcode_template_list()
    request.set_TranscodeTemplateList(json.dumps(transcodeTemplateList))

    request.set_accept_format('JSON')
    response = json.loads(clt.do_action_with_exception(request))
    return response

try:
    clt = init_vod_client()
    res = add_transcode_template_group(clt)
    print(json.dumps(res, ensure_ascii=False, indent=4))

except Exception as e:
    print(e)
    print(traceback.format_exc())

Modifier un groupe de modèles de transcodage

Appelez l'opération UpdateTranscodeTemplateGroup pour modifier un groupe de modèles de transcodage.

Portail Alibaba Cloud OpenAPI : / UpdateTranscodeTemplateGroup.

Exemple de code :

from aliyunsdkvod.request.v20170321 import UpdateTranscodeTemplateGroupRequest

""" Build the configuration data for the transcoding template to modify. """
def build_transcode_template_list():
    transcodeTemplateList = []
    transcodeTemplate = {}

    # Set the transcoding template ID. This is required.
    transcodeTemplate["TranscodeTemplateId"] = "<TranscodeTemplateId>"

    # The following are optional.

    # Set the new template name (to change it).
    transcodeTemplate["TemplateName"] = "new-MP4-for-Low-Definition"

    # Video stream transcoding configuration.
    videoConfig = {"Width": 640, "Bitrate": 500, "Fps": 60, "Remove": False, "Codec": "H.264", "Gop": "250"}
    transcodeTemplate["Video"] = videoConfig

    # Audio stream transcoding configuration.
    audioConfig = {"Codec": "AAC", "Bitrate": "128", "Channels": "2", "Samplerate": "32000"}
    transcodeTemplate["Audio"] = audioConfig

    # Encapsulation container.
    container = {"Format": "mp4"}
    transcodeTemplate["Container"] = container

    # Conditional transcoding configuration.
    condition = {"IsCheckReso": False, "IsCheckResoFail": False, "IsCheckVideoBitrate": False,
                 "IsCheckVideoBitrateFail": False, "IsCheckAudioBitrate": False, "IsCheckAudioBitrateFail": False}
    transcodeTemplate["TransConfig"] = condition

    """
    # Encryption configuration (HLS only).
    encryptSetting = {"EncryptType": "Private"}
    transcodeTemplate["EncryptSetting"] = encryptSetting
    """

    # Watermark ID (for associating multiple watermarks).
    watermarkIdList = []
    #watermarkIdList.append("<WatermarkId>")
    watermarkIdList.append("USER_DEFAULT_WATERMARK")
    transcodeTemplate["WatermarkIds"] = watermarkIdList

    transcodeTemplateList.append(transcodeTemplate)

    return transcodeTemplateList

""" Modify the transcoding template configuration. """
def update_transcode_template_group(clt):
    request = UpdateTranscodeTemplateGroupRequest.UpdateTranscodeTemplateGroupRequest()

    # Set the transcoding template group ID.
    request.set_TranscodeTemplateGroupId("<TranscodeTemplateGroupId>")

    # Set the transcoding template configuration.
    transcodeTemplateList = build_transcode_template_list()
    request.set_TranscodeTemplateList(json.dumps(transcodeTemplateList))

    request.set_accept_format('JSON')
    response = json.loads(clt.do_action_with_exception(request))
    return response

try:
    clt = init_vod_client()
    res = update_transcode_template_group(clt)
    print(json.dumps(res, ensure_ascii=False, indent=4))

except Exception as e:
    print(e)
    print(traceback.format_exc())

Interroger un groupe de modèles de transcodage

  • Appelez l'opération GetTranscodeTemplateGroup pour interroger un groupe de modèles de transcodage.

    Portail Alibaba Cloud OpenAPI : ou GetTranscodeTemplateGroup.

  • Appelez l'opération ListTranscodeTemplateGroup pour interroger une liste de groupes de modèles de transcodage.

    Portail Alibaba Cloud OpenAPI : ListTranscodeTemplateGroup.

Définir un groupe de modèles de transcodage comme groupe par défaut

Appelez l'opération SetDefaultTranscodeTemplateGroup pour définir un groupe de modèles de transcodage comme groupe par défaut.

Vous pouvez appeler l'opération SetDefaultTranscodeTemplateGroup dans le portail Alibaba Cloud OpenAPI.

Supprimer un groupe de modèles de transcodage

Appelez l'opération DeleteTranscodeTemplateGroup pour supprimer un groupe de modèles de transcodage.

Portail Alibaba Cloud OpenAPI : DeleteTranscodeTemplateGroup.