Стабилизация видео в реальном времени

Я получил Google Pixel и попытался записать видео с официальным приложением, я обнаружил, что на записи есть замечательный встроенный механизм стабилизации, поэтому, если я немного пожимаю руку, это движение немного переносится на запись ( Даже просмотр видео впечатляюще стабилен).

Однако я попытался с помощью своего собственного приложения для записи видео, и эта стабилизация не происходит.

Я, конечно, пробовал setVideoStabilization() метод setVideoStabilization() в официальных документах, но результат не так хорош, как со встроенным приложением Camera.

Есть ли что-то еще, что мне не хватает?

Вы можете рассмотреть возможность использования OpenSource.Android и найти некоторую логику для стабилизации. Еще одна ссылка: platform_packages_apps_camera . Оттуда вы можете делать свои собственные исследования и разработки.

Или

Подождите, пока API-интерфейс, основанный на стабилизации изображения на основе Pixel Camera, или такой код, будет доступен для всех.
Будущее обновление Android SDK может улучшить текущую функцию стабилизации.

Подождите, пока Google выпустит его в своем API.

Из предыдущего опыта новые функции обычно занимают немного времени, чтобы пройти для всех нас, чтобы использовать их в форме API.

Тем временем попробуйте и привлеките внимание экспертов здесь: https://code.google.com/p/android/issues/list . Вы можете заставить его вдаваться в обновление ранее даже

Если вы не хотите ждать, альтернатива – прочитать эту потрясающую статью о том, что контент не разбирается с помощью акселерометра ( здесь здесь используется исходный код ).

Это было сделано для того, чтобы отключить контент телефона (например, облегчить чтение при перемещении транспорта), но это та же логика, которую вы можете применить к видеопотокам с камеры.

Однако не ожидайте получить те же результаты, что и подход Google. Действительно, это может только стабилизация программного обеспечения, которая будет перемещаться вокруг вашего изображения и, таким образом, обрезать его. Чтобы избежать обрезки и изменения яркости, Google использует оптическую стабилизацию изображения, которая механически перемещает объектив и, таким образом, позволяет избежать кадрирования. Однако OIS пока не поддерживается на всех телефонах, поэтому учтите это, если вы используете API Google в своем приложении.