Хорошо, поэтому мне удалось решить проблему, видео не было полноэкранным, потому что соотношение сторон видео не совпадает с соотношением сторон экрана, поэтому все, что нам нужно сделать, это исправить соотношение сторон видео, чтобы оно соответствовало экрану, мы можем сделать это, следуя приведенному ниже коду ...
в первую очередь, нам нужно FFmpeg, я использую эту библиотеку
, тогда мы можем просто использовать эту команду
val displaySize = Point().apply {
windowManager.defaultDisplay.getSize(this)
}
val screenR = displaySize.y.toFloat() / displaySize.x
val testCrop = FFmpeg.execute("-i $videoPath -y -filter:v crop=ih/$screenR:ih ${OutputPath}")
when (testCrop) {
RETURN_CODE_SUCCESS -> {
//successful
}
RETURN_CODE_CANCEL -> {
//canceled
}
else -> {
// failed
}
videoPath
- это путь к видео, которое вы хотите редактировать (видео, которое мы хотим чтобы превратить в полноэкранный режим)
outputPath
- это место, где мы хотим сохранить наше видео, имейте в виду, что мы должны включить имя файла также, например,
/ storage / emulated / 0 / Android / data / myAppName / files / result.mp4
также, имейте в виду этот результат. mp4 'не должен существовать, потому что FFmpeg создаст этот файл для нас, если был файл с таким именем тогда мы получим ошибку, или мы должны дать разрешение FFmpeg перезаписать этот файл.
наконец,
crop = ih / $ screenR: ih
используется для изменения ширины видео до соотношения, соответствующего экрану (в моем случае я всегда хочу, чтобы мое видео было вертикальным, поэтому я изменяю только высоту видео), но имейте в виду, что я не 100% уверен, всегда ли правильно обрезать ширину ...