Цель состоит в том, чтобы обрезать предварительный просмотр на поверхности для кадров, полученных из сеанса захвата API Camera2, но не обрезать видео, которое будет создано само.
Например, у меня есть разрешение потоковой передачи:1920x1080
(16:9
) и размер экрана (только для примера) 2000x3000
(2:3
-> 6:9
или 16:24
, давайте выберем второй вариант, например), поэтому я бы хотелу меня есть мое видео в исходном разрешении потоковой передачи - 1920x1080
, но мой предварительный просмотр, чтобы заполнить все доступное пространство без View
изменения размера - таким образом, это должно быть 5333x3000
(просто увеличивая размер, чтобы заполнить область прямоугольника, используя тот же аспектотношение как единица разрешения потоковой передачи), а затем «вырезать» «данные кадра, которые соответствуют разрешению этой поверхности (которое, я полагаю, 5333x2000)», к 2000x3000 (просто удалите (5333 - 2000) / 2
как сверху, так и снизу).
Возможно ли это?
PS: плохо то, что пример google для camera2 api изменяет размер самого представления, и эти "пустые области" нежелательны для меня.Я не нашел ничего, что даже близко соответствовало бы моей проблеме.
PSS: AFAIU это решение SO обрезает кадр, который исходит из самой камеры, но мне нужно, чтобы мое видео было воригинальное разрешение.