Fix sent videos being cropped (#1124)

This commit is contained in:
Jorge Martin Espinosa
2023-08-24 09:41:58 +02:00
committed by GitHub
parent 4218a836d5
commit 648e2c378d
2 changed files with 8 additions and 0 deletions
+1
View File
@@ -0,0 +1 @@
Videos sent from the app were cropped in some cases.
@@ -20,6 +20,8 @@ import android.content.Context
import android.net.Uri
import com.otaliastudios.transcoder.Transcoder
import com.otaliastudios.transcoder.TranscoderListener
import com.otaliastudios.transcoder.resize.AtMostResizer
import com.otaliastudios.transcoder.strategy.DefaultVideoStrategy
import io.element.android.libraries.androidutils.file.createTmpFile
import io.element.android.libraries.androidutils.file.safeDelete
import io.element.android.libraries.di.ApplicationContext
@@ -35,6 +37,11 @@ class VideoCompressor @Inject constructor(
fun compress(uri: Uri) = callbackFlow {
val tmpFile = context.createTmpFile(extension = "mp4")
val future = Transcoder.into(tmpFile.path)
.setVideoTrackStrategy(
DefaultVideoStrategy.Builder()
.addResizer(AtMostResizer(1920, 1080))
.build()
)
.addDataSource(context, uri)
.setListener(object : TranscoderListener {
override fun onTranscodeProgress(progress: Double) {