Skip to content

Commit dd3d14d

Browse files
author
Shahen Hovhannisyan
authored
Revert layouts (#71)
* temporary remove playerLayer * fix(Trimmer): Preview Images load preview images properly when video's duration is less than 10sec * get preview image with the right orientation
1 parent 77d5040 commit dd3d14d

File tree

3 files changed

+18
-7
lines changed

3 files changed

+18
-7
lines changed

android/src/main/java/com/shahenlibrary/Trimmer/Trimmer.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@ public static void getPreviewImages(String path, Promise promise, ReactApplicati
105105

106106
for (int i = 0; i < duration; i += duration / 10) {
107107
Bitmap frame = retriever.getFrameAtTime(i * 1000);
108+
108109
if(frame == null) {
109110
continue;
110111
}

android/src/main/java/com/shahenlibrary/VideoPlayer/VideoPlayerView.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -287,8 +287,17 @@ public void sendMediaInfo() {
287287

288288
public void getFrame(float sec) {
289289
Bitmap bmp = metadataRetriever.getFrameAtTime((long) (sec * 1000000));
290+
291+
int width = Integer.parseInt(metadataRetriever.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH));
292+
int height = Integer.parseInt(metadataRetriever.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT));
293+
int orientation = Integer.parseInt(metadataRetriever.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_VIDEO_ROTATION));
294+
295+
Matrix mx = new Matrix();
296+
mx.postRotate(orientation - 360);
297+
Bitmap normalizedBmp = Bitmap.createBitmap(bmp, 0, 0, width, height, mx, true);
298+
290299
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
291-
bmp.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
300+
normalizedBmp.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
292301
byte[] byteArray = byteArrayOutputStream .toByteArray();
293302
String encoded = Base64.encodeToString(byteArray, Base64.DEFAULT);
294303

ios/RNVideoProcessing/RNVideoPlayer.swift

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -343,12 +343,13 @@ class RNVideoPlayer: RCTView {
343343
playerItem = AVPlayerItem(url: movieURL as! URL)
344344
player.replaceCurrentItem(with: playerItem)
345345

346-
playerLayer = AVPlayerLayer(player: player)
347-
playerLayer!.frame = filterView.bounds
348-
playerLayer!.videoGravity = self._resizeMode
349-
playerLayer!.masksToBounds = true
350-
playerLayer!.removeFromSuperlayer()
351-
filterView.layer.addSublayer(playerLayer!)
346+
// MARK - Temporary removing playeLayer, it dublicates video if it's in landscape mode
347+
// playerLayer = AVPlayerLayer(player: player)
348+
// playerLayer!.frame = filterView.bounds
349+
// playerLayer!.videoGravity = self._resizeMode
350+
// playerLayer!.masksToBounds = true
351+
// playerLayer!.removeFromSuperlayer()
352+
// filterView.layer.addSublayer(playerLayer!)
352353

353354
print("CHANGED playerframe \(playerLayer), frameAAA \(playerLayer?.frame)")
354355
self.setNeedsLayout()

0 commit comments

Comments
 (0)