Skip to content

cloudinary/media-editing-java

Repository files navigation

Cloudinary Media Editing SDK

About

The Cloudinary Media Editing SDK allows you to quickly and easily integrate your application with Cloudinary. Effortlessly edit and deliver your cloud's assets.

Additional documentation

This Readme provides basic installation and usage information. For the complete documentation, see the Media Editing SDK Guide.

Table of Contents

Key Features

Media Delivery API

Media Editing API

Version Support

SDK Version Java 6+
0.1.+ V

Installation

Gradle

implementation 'com.cloudinary:media-editing-java:0.1.2-beta'

Maven

<dependency>
    <groupId>com.cloudinary</groupId>
    <artifactId>media-editing-java</artifactId>
    <version>0.1.2-beta</version>
</dependency>

Usage

Setup

// import the Cloudinary library
import com.cloudinary.ApiClient;
class SampleApp {
    ApiClient apiClient = Configuration.getDefaultApiClient();
    apiClient.setCloudinaryUrl("cloudinary://API_KEY:API_SECRET@CLOUD_NAME");
}

Create Media Source

Example of how to add Media Storage, in this case a new media source:

    MediaSourceCreatePayload mediaSourceCreatePayload = new MediaSourceCreatePayload();
    mediaSourceCreatePayload.setDisplayName("my_media_source");
    mediaSourceCreatePayload.setSourceType(MediaSourceCreatePayload.SourceTypeEnum.S3);

    MediaSourceConfig config = new MediaSourceConfig();
    config.setS3BucketName("my_bucket");
    config.setS3BucketFolder("my_bucket_folder");
    config.setS3AccessKey("123456789");
    config.setS3SecretKey("123456789");
    config.setS3UriTemplate("s3://my_bucket/images/{{vars.signature}}/{{fwd_key}}");
    mediaSourceCreatePayload.setConfig(config);

    try {
        MediaSource result = apiInstance.createMediaSource(mediaSourceCreatePayload);
        System.out.println(result);
    } catch (ApiException e) {
       System.out.println(e.getMessage());
    }

Transform and Store

Example of how to transform and store an asset:

    TransformationDescriptor transformationDescriptor = new TransformationDescriptor();
    transformationDescriptor.setCanonicalTransformation("w_500,c_scale");
    MediaConnectorInstance mediaConnectorInstance = new MediaConnectorInstance();
    mediaConnectorInstance.setId("123456789");
    mediaConnectorInstance.setFwdKey("sample");
    MediaConnectorInstance mediaTargetConnectionInstance = new MediaConnectorInstance();
    mediaTargetConnectionInstance.setId("987654321");
    mediaTargetConnectionInstance.setFwdKey("new");
    TransformRequest request = new TransformRequest();
    request.setInputType(TransformRequest.InputTypeEnum.MEDIA_SOURCE);
    request.setMediaTarget(mediaTargetConnectionInstance);
    request.setMediaSource(mediaConnectorInstance);
    request.setResourceType(TransformRequest.ResourceTypeEnum.IMAGE);
    request.setTransformationDescriptor(transformationDescriptor);
    try {
        TransformResult response = new TransformAndStoreApi().transformAndStore(request);
        System.out.println(response);
    } catch (ApiException e) {
        System.out.println(e.getMessage());
    }

Cache warmup

Example of how to perform a cache warmup:

    CacheWarmupRequestPayload cacheWarmupRequestPayload = new CacheWarmupRequestPayload();
    cacheWarmupRequestPayload.setUrl("<your url>");
    //cacheWarmupRequestPayload.setUrl("https://<cloud_name>.cloudinary.net/image/upload/c_scale,w_500/sample");
      try {
          CacheWarmupSuccessResponse response = new CacheApi().warmup(cacheWarmupRequestPayload);
          System.out.println(response);
      } catch (ApiException e) {
          System.out.println(e.getMessage());
      }

Get Help

About Cloudinary

Cloudinary is a powerful media API for websites and mobile apps alike, Cloudinary enables developers to efficiently manage, transform, optimize, and deliver images and videos through multiple CDNs. Ultimately, viewers enjoy responsive and personalized visual-media experiences—irrespective of the viewing device.

Additional Resources

License

Released under the MIT license See the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published