Tüm Ürünler
Search
Belge Merkezi

ApsaraVideo VOD:Medya yükleme

Son Güncelleme:Oct 05, 2026

ApsaraVideo VOD SDK'ları, medya yüklemeye yönelik çeşitli API işlemleri sunar. Bu API işlemlerini çağırarak medya dosyalarını ApsaraVideo VOD'a yükleyebilirsiniz. Bu konuda, Python için ApsaraVideo VOD SDK'sını kullanarak API işlemlerini çağırma ve medya dosyaları yükleme senaryoları ile örnek kodlar açıklanmaktadır.

Senaryolar

Önemli

Bu konuda yalnızca yükleme kimlik bilgisi ve yükleme URL'si alma gibi API işlemlerinin çağrılmasına ilişkin örnekler sunulmaktadır. Medya dosyalarını yüklemek için API işlemlerinin çağrılabileceği senaryolar aşağıdaki tabloda açıklanmıştır.

API işlemi

Senaryo

CreateUploadVideo

  • Medya dosyalarını Object Storage Service (OSS) SDK'larını kullanarak yüklerseniz, ApsaraVideo VOD SDK'sını kullanmanız ve bir yükleme kimlik bilgisi ile yükleme URL'si almak için bir işlem çağırmanız gerekir. Elde edilen URL ve kimlik bilgisi Base64 ile kodlanır ve bir OSSClient örneğini başlatmak için kullanılmadan önce kodu çözülmelidir. Daha fazla bilgi için bkz. OSS SDK'larını kullanarak medya dosyaları yükleme. Önceki konuda, Java için OSS SDK'sını kullanarak medya dosyalarının yüklenmesine ilişkin tam örnek kodlar sağlanmıştır. Diğer dillerdeki örnek kodlar hakkında daha fazla bilgi için bkz. ApsaraVideo VOD API'sini çağırarak medya dosyaları yükleme.

  • Medya dosyalarını istemcilerden yükleme SDK'sını kullanarak yüklerseniz, ApsaraVideo VOD SDK'sını entegre etmeniz ve bir yükleme kimlik bilgisi ile yükleme URL'si almak veya güncellemek için bir işlem çağırmanız gerekir. URL'leri ve kimlik bilgilerini, kod çözme işlemine gerek kalmadan istemcilere verebilirsiniz. Daha fazla bilgi için bkz. İstemcilerden yükleme.

RefreshUploadVideo

CreateUploadImage

CreateUploadAttachedMedia

UploadMediaByURL

  • Kaynak dosyaların URL'lerini kullanarak medya dosyalarını yüklemek için UploadMediaByURL işlemini çağırabilirsiniz. Bu sayede, medya dosyalarını ApsaraVideo VOD'a yüklemek üzere yükleme SDK'sını kullanmadan önce sunucularınıza veya cihazlarınıza indirmeniz gerekmez.

    Not

    URL tabanlı yükleme işleri eşzamansızdır. Bir URL tabanlı yükleme işi gönderdikten sonra, işin tamamlanması saatler hatta günler sürebilir.

  • URL tabanlı yükleme işlerinin ilerleme durumunu sorgulamak için GetURLUploadInfos işlemini çağırabilirsiniz.

GetURLUploadInfos

Register media assets

Önkoşullar

  • ApsaraVideo VOD SDK'sı yüklenmiştir. Daha fazla bilgi için bkz. Yükleme.

  • ApsaraVideo VOD SDK'sı başlatılmıştır. Daha fazla bilgi için bkz. Başlatma.

Not

Aşağıdaki örneklerde, ApsaraVideo VOD SDK'sını başlatmak için bir AccessKey çifti kullanılır.

Kullanım notları

  • Bu konudaki tüm örneklerde, bir istemci örneğini başlatmak için AccessKey çifti kullanılır.

  • İstek ve yanıt parametrelerinin ayrıntıları için Alibaba Cloud OpenAPI Explorer adresini ziyaret edin ve API Documentations sekmesini açın.

  • Diğer API işlemlerine ilişkin SDK örnekleri için Alibaba Cloud OpenAPI Explorer adresini ziyaret edin. Parameters sekmesinde parametreleri belirtin ve çağrıyı başlatın. Ardından, kodu görüntülemek ve indirmek için SDK Sample Code sekmesinden SDK sürümünü ve dilini seçin.

  • Bu konudaki örnekler SDK V1.0 sürümünü kullanır. V2.0 örnekleri için OpenAPI Explorer'da doğru SDK sürümünü seçin.

API çağrı örnekleri

Medya dosyası yüklemek için URL ve kimlik bilgisi alma

Bir medya dosyası yüklemek için yükleme URL'si ve yükleme kimlik bilgisi almak amacıyla CreateUploadVideo işlemini çağırabilirsiniz.

Alibaba Cloud OpenAPI Explorer: CreateUploadVideo.

Örnek kod:

from aliyunsdkvod.request.v20170321 import CreateUploadVideoRequest
def create_upload_video(clt):
    request = CreateUploadVideoRequest.CreateUploadVideoRequest()
    request.set_Title('Video Title')
    request.set_FileName('/opt/video/sample/video_file.mp4')
    request.set_Description('Video Description')
    # The thumbnail URL. Example: http://192.168.0.1/16/tps/TB1qnJ1PVXXXXXCXXXXXXXXXXXX-700-700.png.
    request.set_CoverURL('<your Cover URL>')
    request.set_Tags('tag1,tag2')
    request.set_CateId(0)

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

try:
    clt = init_vod_client()
    uploadInfo = create_upload_video(clt)
    print(uploadInfo['UploadAuth'])
    print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))

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

Yükleme kimlik bilgisini güncelleme

Bir medya dosyası yüklemek için kullanılan kimlik bilgisini güncellemek amacıyla RefreshUploadVideo işlemini çağırabilirsiniz.

Alibaba Cloud OpenAPI Explorer: RefreshUploadVideo.

Örnek kod:

from aliyunsdkvod.request.v20170321 import RefreshUploadVideoRequest
def refresh_upload_video(clt, videoId):
    request = RefreshUploadVideoRequest.RefreshUploadVideoRequest()
    request.set_VideoId(videoId)
    request.set_accept_format('JSON')
    return json.loads(clt.do_action_with_exception(request))

try:
    clt = init_vod_client()
    uploadInfo = refresh_upload_video(clt, 'VideoId')
    print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))

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

Resim yüklemek için URL ve kimlik bilgisi alma

Bir resim yüklemek için URL ve kimlik bilgisi almak amacıyla CreateUploadImage işlemini çağırabilirsiniz.

Alibaba Cloud OpenAPI Explorer: CreateUploadImage.

Örnek kod:

from aliyunsdkvod.request.v20170321 import CreateUploadImageRequest
def create_upload_image(clt, imageType, imageExt):
    request = CreateUploadImageRequest.CreateUploadImageRequest()
    request.set_ImageType(imageType)
    request.set_ImageExt(imageExt)
    request.set_accept_format('JSON')
    return json.loads(clt.do_action_with_exception(request))

try:
    clt = init_vod_client()
    imageInfo = create_upload_image(clt, 'cover', 'jpg')
    print(json.dumps(imageInfo, ensure_ascii=False, indent=4))

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

Yardımcı medya varlığı yüklemek için URL ve kimlik bilgisi alma

Bir yardımcı medya varlığı yüklemek için URL ve kimlik bilgisi almak amacıyla CreateUploadAttachedMedia işlemini çağırabilirsiniz.

Alibaba Cloud OpenAPI Explorer: CreateUploadAttachedMedia.

Örnek kod:

from aliyunsdkvod.request.v20170321 import CreateUploadAttachedMediaRequest
def create_upload_attached_media(clt):
    request = CreateUploadAttachedMediaRequest.CreateUploadAttachedMediaRequest()
    request.set_BusinessType("watermark");
    request.set_MediaExt("gif");
    request.set_Title("this is a sample");
    request.set_accept_format('JSON')
    return json.loads(clt.do_action_with_exception(request))

try:
    clt = init_vod_client()
    uploadInfo = create_upload_attached_media(clt)
    print(uploadInfo['UploadAuth'])
    print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))

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

Kaynak dosyaların URL'lerini kullanarak aynı anda birden çok medya dosyası yükleme

Kaynak dosyaların URL'lerini kullanarak aynı anda birden çok medya dosyası yüklemek için UploadMediaByURL işlemini çağırabilirsiniz.

Alibaba Cloud OpenAPI Explorer: UploadMediaByURL.

Örnek kod:

from aliyunsdkvod.request.v20170321 import UploadMediaByURLRequest
import sys,urllib
def upload_media_by_url(clt):
    request = UploadMediaByURLRequest.UploadMediaByURLRequest()
    # The URLs of source files. Examples: http://example-bucket-****.cn-shanghai.aliyuncs.com/sample1-****.mp4 and http://example-bucket-****.cn-shanghai.aliyuncs.com/sample2-****.flv.
    urls = ["<your URL1>",
            "your URL2"]
    # Encode the urls and add metadata
    uploadUrls = []
    uploadMetadatas = []
    for url in urls:
        if sys.version_info[0] == 3:
            encodeUrl = urllib.parse.quote(url)
        else:
            encodeUrl = urllib.quote(url)
        uploadUrls.append(encodeUrl)
        uploadMetadatas.append({'SourceURL': encodeUrl, 'Title': 'Sample Title'})

    request.set_UploadURLs(','.join(uploadUrls))
    request.set_UploadMetadatas(json.dumps(uploadMetadatas))

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

try:
    clt = init_vod_client()
    uploadInfo = upload_media_by_url(clt)
    print(uploadInfo['UploadJobs'])
    print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))

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

URL tabanlı yükleme işleri hakkında bilgi sorgulama

URL tabanlı yükleme işleri hakkında bilgi sorgulamak için GetURLUploadInfos işlemini çağırabilirsiniz.

Örnek kod:

from aliyunsdkvod.request.v20170321 import GetURLUploadInfosRequest
import sys,urllib
def get_url_upload_infos(clt):
    request = GetURLUploadInfosRequest.GetURLUploadInfosRequest()
    # The URLs. Example: http://192.168.0.1/16/sample1-****.mp4 and http://192.168.0.1/16/sample2-****.flv.
    urls = ["<your URL1>",
            "<your URL2>"]

    # Encode URLs.
    uploadUrls = []
    for url in urls:
        if sys.version_info[0] == 3:
            encodeUrl = urllib.parse.quote(url)
        else:
            encodeUrl = urllib.quote(url)
        uploadUrls.append(encodeUrl)

    # The URLs from which you want to upload media files. Separate multiple URLs with commas (,).
    request.set_UploadURLs(','.join(uploadUrls))

    # The IDs of the URL-based upload jobs.
    #request.set_JobIds("jobId1,jobId2")

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

try:
    clt = init_vod_client()
    res = get_url_upload_infos(clt)
    print(res['NonExists'])
    print(json.dumps(res, ensure_ascii=False, indent=4))

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

Medya varlıklarını kaydetme

Medya varlıklarını kaydetmek için RegisterMedia işlemini çağırabilirsiniz.

Alibaba Cloud OpenAPI Explorer: RegisterMedia.

Örnek kod:

from aliyunsdkvod.request.v20170321 import RegisterMediaRequest
def register_media(clt):
    request = RegisterMediaRequest.RegisterMediaRequest()
    metadatas = []
    # The URL of the media file. Example: https://192.168.0.1/16/vod_sample_****.mp4.
    metadatas.append({'FileURL':"<your File URL>", "Title":"RegisterMedia sample Title"})
    request.set_RegisterMetadatas(json.dumps(metadatas))
    request.set_accept_format('JSON')
    return json.loads(clt.do_action_with_exception(request))

try:
    clt = init_vod_client()
    registerInfo = register_media(clt)
    print(registerInfo['RegisteredMediaList'])
    print(registerInfo['FailedFileURLs'])
    print(json.dumps(registerInfo, ensure_ascii=False, indent=4))

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