BrightCove video didn't download properly : Android

42 Views Asked by At

When i tried to download BrightCove video it download some time and some times it going to queuing state and doesn't and not recover from it what i have did it wrong.

Here is my code (1st way)


catalog.findVideoByID(brightCoveVideoId, new VideoListener() {

     @Override

     public void onVideo(Video video) {

         String name = allRecordModel.getTitle();

         video.getProperties().put(Video.Fields.NAME, name);

         catalog.getMediaFormatTracksAvailable(video, (mediaDownloadable, bundle) -> {

             List<MediaFormat> list = bundle.getParcelableArrayList(MediaDownloadable.VIDEO_RENDITIONS);

             if (list != null) {

                 brightCoveQualityHolders.clear();

                 int bitrate = 0;

                 for (MediaFormat media : list) {

                     brightCoveQualityHolders.add(new BrightCoveQualityHolder(media.width, media.height, media.bitrate));

                     if (media.height == 360) {

                         bitrate = media.bitrate;

                     }

                     String msg = "width " + media.width + " height " + media.height + " bitrate " + media.bitrate;

                     Log.d("sumit",msg);

                 }

                 catalog.setVideoBitrate(bitrate);

 

                 getVideo(video, new OfflineCallback<>() {

                     @Override

                     public void onSuccess(Video video1) {

                         if (video1.isClearContent()) {

                             videoListListener.downloadVideo(video1);

                         }

                     }

 

                     @Override

                     public void onFailure(Throwable throwable) {

 

                     }

                 });

             }

 

         });

     }

 });

Second way

`

catalog.findVideoByID(brightCoveVideoId, new VideoListener() {

 @Override

 public void onVideo(Video video) {

String name = allRecordModel.getTitle();

     video.getProperties().put(Video.Fields.NAME, name);

     progressDialog.show();

     mediaDownloadable = MediaDownloadable.create(context, video, downloadEventListener, new RequestConfig().setNotificationVisibility(RequestConfig.VISIBILITY_HIDDEN));

     mediaDownloadable.requestDownload();

 }

});

`

0

There are 0 best solutions below