Я загрузил видео в виде нескольких блоков в корзину S3, у меня есть список видео eTags.Как я могу объединить эти видео в одно видео, используя java?
1) Я не хочу загружать куски на свой сервер и объединять их.
2) Есть ли способгде я могу объединить его из самой корзины s3 для формирования одного видео.
Мой код -
@Path("/uploadVideo")
@POST
public Response uploadVideoParts(@FormDataParam("folderName") String folderName,
@FormDataParam("bucketName") String bucketName, @FormDataParam("fileName") String fileName, @FormDataParam("eTagList") String eTagList) {
logger.info("inside uploadVideoParts ");
String[] etagsListArray = null;
if(!Strings.isNullOrEmpty(eTagList)) {
etagsListArray = eTagList.split(",");
}
UploadVideoBO uploadVideoObj = new UploadVideoBO(etagsListArray, folderName, bucketName, fileName);
CreateMultipartUploadRequest createMultipartUploadRequest = CreateMultipartUploadRequest.builder()
.bucket(uploadVideoObj.getBucketName()).key("test").build();
CreateMultipartUploadResponse response = s3.createMultipartUpload(createMultipartUploadRequest);
String uploadId = response.uploadId();
List<CompletedPart> completedPartList = new ArrayList<>();
for (String eTag : uploadVideoObj.geteTagList()) {
CompletedPart part = CompletedPart.builder().partNumber(1).eTag(eTag).build();
completedPartList.add(part);
}
CompletedMultipartUpload completedMultipartUpload = CompletedMultipartUpload.builder().parts(completedPartList)
.build();
CompleteMultipartUploadRequest completeMultipartUploadRequest = CompleteMultipartUploadRequest.builder()
.bucket("motor01-non-prod").key("fileName").uploadId(uploadId).multipartUpload(completedMultipartUpload)
.build();
s3.completeMultipartUpload(completeMultipartUploadRequest);
return null;
}