2015-10-26 91 views
1

我必須使用java kaltura api上傳文件。我已經搜索了很多,但找不到任何幫助文檔。如果有人知道如何使用java上傳kaltura文件,請幫助我。Kaltura文件上傳API

我有一個C#API文件上傳,我希望它能幫助你。

KalturaClient kalturaClient = KalturaUtilsService.getKalturaClient(); 
      KalturaMediaEntry kalturaMediaEntry = new KalturaMediaEntry(); 


      kalturaMediaEntry.name = "Java Entry Using C#"; 
      kalturaMediaEntry.mediaType = KalturaMediaType.VIDEO; 
      kalturaMediaEntry = kalturaClient.getMediaService().add(kalturaMediaEntry); 
      FileStream fileStream = new FileStream("/home/alok/Desktop/index.mp4", FileMode.Open, FileAccess.Read); 
      KalturaUploadToken uploadToken = kalturaClient.UploadTokenService.Add(); 
      kalturaClient.UploadTokenService.Upload(uploadToken.Id, fileStream); 

      KalturaUploadedFileTokenResource mediaResource = new KalturaUploadedFileTokenResource(); 
      mediaResource.Token = uploadToken.Id; 
      kalturaMediaEntry = kalturaClient.MediaService.AddContent(kalturaMediaEntry.Id, mediaResource); 

在此先感謝!

回答

3

提供了與Java客戶端庫(http://www.kaltura.com/api_v3/testme/client-libs.php),您可以src/Kaltura.java下,發現這是一個例子,方法uploadMediaFileAndAttachToEmptyEntry

下面是一個簡化版本:

String adminSecret = "API-ADMIN-SECRET"; 
Integer partnerId = PARTNER_ID; 
String filePath = "src/DemoVideo.flv"; 
String uploadUserId = "TestUploader"; 

// initialize the client 
KalturaConfiguration config = new KalturaConfiguration(); 
config.setEndpoint("http://www.kaltura.com/"); 
KalturaClient client = new KalturaClient(config); 
String ks = client.generateSession(adminSecret, uploadUserId, KalturaSessionType.ADMIN, partnerId); 
client.setKs(ks); 

// add the media entry 
KalturaMediaEntry mediaEntry = new KalturaMediaEntry(); 
mediaEntry.name = "Uploaded Media"; 
mediaEntry.mediaType = KalturaMediaType.VIDEO; 
mediaEntry = client.getMediaService().add(mediaEntry); 

// add the upload token 
KalturaUploadToken uploadToken = new KalturaUploadToken(); 
uploadToken = client.getUploadTokenService().add(uploadToken); 

// initialize the file 
File file = new File(filePath); 

// upload the file 
client.getUploadTokenService().upload(uploadToken.id, file); 

// link between the file and the media entry 
KalturaUploadedFileTokenResource uploadedFileTokenResource = new KalturaUploadedFileTokenResource(); 
uploadedFileTokenResource.token = uploadToken.id; 
client.getMediaService().addContent(mediaEntry.id, uploadedFileTokenResource); 
+0

感謝羅馬,這是工作的罰款 –

+0

我一直試圖完成這一段時間(嘗試了幾種方法),但每次我得到錯誤413.你有沒有遇到過這個? http://stackoverflow.com/questions/37681080/kaltura-upload-video-error-413 – user2120910