mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 16:10:00 +00:00
Fix sent videos being cropped (#1124)
This commit is contained in:
committed by
GitHub
parent
4218a836d5
commit
648e2c378d
@@ -0,0 +1 @@
|
|||||||
|
Videos sent from the app were cropped in some cases.
|
||||||
+7
@@ -20,6 +20,8 @@ import android.content.Context
|
|||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import com.otaliastudios.transcoder.Transcoder
|
import com.otaliastudios.transcoder.Transcoder
|
||||||
import com.otaliastudios.transcoder.TranscoderListener
|
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.createTmpFile
|
||||||
import io.element.android.libraries.androidutils.file.safeDelete
|
import io.element.android.libraries.androidutils.file.safeDelete
|
||||||
import io.element.android.libraries.di.ApplicationContext
|
import io.element.android.libraries.di.ApplicationContext
|
||||||
@@ -35,6 +37,11 @@ class VideoCompressor @Inject constructor(
|
|||||||
fun compress(uri: Uri) = callbackFlow {
|
fun compress(uri: Uri) = callbackFlow {
|
||||||
val tmpFile = context.createTmpFile(extension = "mp4")
|
val tmpFile = context.createTmpFile(extension = "mp4")
|
||||||
val future = Transcoder.into(tmpFile.path)
|
val future = Transcoder.into(tmpFile.path)
|
||||||
|
.setVideoTrackStrategy(
|
||||||
|
DefaultVideoStrategy.Builder()
|
||||||
|
.addResizer(AtMostResizer(1920, 1080))
|
||||||
|
.build()
|
||||||
|
)
|
||||||
.addDataSource(context, uri)
|
.addDataSource(context, uri)
|
||||||
.setListener(object : TranscoderListener {
|
.setListener(object : TranscoderListener {
|
||||||
override fun onTranscodeProgress(progress: Double) {
|
override fun onTranscodeProgress(progress: Double) {
|
||||||
|
|||||||
Reference in New Issue
Block a user