全部產品
Search
文件中心

ApsaraVideo VOD:視頻浮水印

更新時間:Jul 13, 2024

本篇文檔提供了Python SDK視頻浮水印模組相關功能的API調用樣本。包含添加浮水印、修改浮水印、刪除浮水印、查詢浮水印、設定預設浮水印等。

介面調用說明

  • 本文提供的介面調用樣本均通過AccessKey初始化用戶端執行個體。

  • 介面的參數解釋和返回欄位的詳細說明請訪問阿里雲OpenAPI門戶,在各介面右側的文檔頁簽查看。

  • 本文僅提供部分複雜介面的程式碼範例,其餘介面的SDK程式碼範例,可以通過阿里雲OpenAPI門戶擷取。訪問阿里雲OpenAPI門戶,在介面的左側參數配置頁簽,填寫需要的參數資訊並發起調用後,在右側的SDK樣本頁簽,選擇SDK版本,選擇目標語言,查看並下載範例程式碼。

  • 本文均以V1.0版本的SDK為例進行介面調用,如需擷取V2.0版本的SDK樣本,請在通過阿里雲OpenAPI門戶擷取SDK樣本時,指定到對應的SDK版本。image.png

初始化用戶端

使用前請先初始化用戶端,請參見初始化

添加浮水印

調用AddWatermark介面,產生添加浮水印的SDK樣本。

阿里雲OpenAPI門戶地址:AddWatermark

調用樣本如下:

說明
from aliyunsdkvod.request.v20170321 import AddWatermarkRequest
def add_watermark(clt):
    request = AddWatermarkRequest.AddWatermarkRequest()

    request.set_Name('watermark-sample')
    # 圖片浮水印必須傳圖片檔案的OSS地址,且浮水印檔案需要和視頻在同一地區,如:華東2的視頻添加浮水印,浮水印檔案必須存放在華東2
    # FileUrl樣本:http://example-bucket-****.oss-cn-shanghai.aliyuncs.com/watermark/test-****.png  
    request.set_FileUrl('<your File URL>')

    # 文字浮水印設定樣本
    request.set_Type('Text')
    # 浮水印的常值內容、字型、大小、顏色、透明度等配置
    watermarkConfig = {'Content': 'watermark Text', 'FontName': 'SimSun', 'FontSize': 25, 'FontColor': 'Black',
                       'FontAlpha': 0.2, 'BorderColor': 'White', 'BorderWidth': 1, 'Top': 20, 'Left': 15}
    request.set_WatermarkConfig(json.dumps(watermarkConfig))

    """
    # 圖片浮水印設定樣本
    request.set_Type('Image')
    # 浮水印顯示的開始時間和結束時間
    timeline = {'Start': 2, 'Duration': 'ToEND'}
    # 浮水印的位置等配置
    watermarkConfig = {'Dx': 8, 'Dy': 8, 'Width': 55, 'Height': 55, 'ReferPos': 'BottomRight', 'Timeline': timeline}
    request.set_WatermarkConfig(json.dumps(watermarkConfig))
    """

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

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

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

修改浮水印

調用UpdateWatermark介面,產生修改浮水印的SDK樣本。

阿里雲OpenAPI門戶地址:UpdateWatermark

調用樣本如下:

重要

本介面不支援圖片浮水印圖片檔案地址的修改,如要更換請建立新的浮水印。

from aliyunsdkvod.request.v20170321 import UpdateWatermarkRequest
def update_watermark(clt):
    request = UpdateWatermarkRequest.UpdateWatermarkRequest()
    request.set_WatermarkId('<watermarkId>')
    request.set_Name('new-watermark-name')

    # 更改文字浮水印設定樣本
    # 浮水印的常值內容、字型、大小、顏色、透明度等配置
    watermarkConfig = {'Content': 'watermark Text', 'FontName': 'SimSun', 'FontSize': 25, 'FontColor': 'Black',
                       'FontAlpha': 0.2, 'BorderColor': 'White', 'BorderWidth': 1, 'Top': 20, 'Left': 15}
    request.set_WatermarkConfig(json.dumps(watermarkConfig))

    """
    # 更改圖片浮水印設定樣本
    # 浮水印顯示的開始時間和結束時間
    timeline = {'Start': 2, 'Duration': 'ToEND'}
    # 浮水印的位置等配置
    watermarkConfig = {'Dx': 8, 'Dy': 8, 'Width': 55, 'Height': 55, 'ReferPos': 'BottomRight', 'Timeline': timeline}
    request.set_WatermarkConfig(json.dumps(watermarkConfig))
    """

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

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

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

刪除浮水印

調用DeleteWatermark介面,產生刪除浮水印的SDK樣本。

阿里雲OpenAPI門戶地址:DeleteWatermark

查詢浮水印

  • 調用GetWatermark介面,產生查詢單個浮水印資訊的SDK樣本。

    阿里雲OpenAPI門戶地址:GetWatermark

  • 調用ListWatermark介面,產生查詢浮水印列表資訊的SDK樣本。

    阿里雲OpenAPI門戶地址:ListWatermark

設定預設浮水印

調用SetDefaultWatermark介面,產生設定預設浮水印的SDK樣本。

阿里雲OpenAPI門戶地址:SetDefaultWatermark