Estabilización de video en tiempo real

Tengo un Google Pixel y he intentado grabar un video con la aplicación oficial, descubrí que hay un notable mecanismo de estabilización incorporado en la grabación, así que si agito un poco la mano, este movimiento solo se transfiere ligeramente a la grabación ( Incluso la vista previa del video es impresionantemente estable).

Sin embargo, he intentado con mi propia aplicación de grabación de vídeo y esta estabilización no está sucediendo.

Por supuesto, he intentado con el método setVideoStabilization() en los documentos oficiales, pero el resultado no es tan bueno como con la cámara builtin aplicación.

¿Hay algo más que me falta?

Usted podría considerar buscar en OpenSource.Android y encontrar alguna lógica para la estabilización. Otro enlace es aquí platform_packages_apps_camera . A partir de ahí usted puede hacer su propio I + D.

O

Espere hasta que una API basada en la estabilización de Google Pixel Camera, o dicho código, esté disponible para todos.
Una actualización futura del SDK de Android puede mejorar la función de estabilización actual.

Espere a que Google lo publique en su API.

Desde la experiencia anterior, las nuevas características generalmente tardan un poco en llegar para que todos podamos usarlas en forma de API.

Mientras tanto, trate de llamar la atención de los expertos aquí: https://code.google.com/p/android/issues/list . Usted puede conseguirlo empujado en una actualización anterior incluso

Si no quieres esperar, una alternativa es leer este increíble artículo sobre el contenido sin agitar usando el acelerómetro (con el código fuente aquí ).

Esto se hizo para descomprimir el contenido del teléfono (para facilitar la lectura en el transporte en movimiento, por ejemplo), pero es la misma lógica que puede aplicar a los canales de vídeo de la cámara.

Sin embargo, no espere obtener los mismos resultados que el enfoque de Google. De hecho, esto sólo puede hacer estabilización de software, que se moverá alrededor de su imagen, y por lo tanto recortar. Para evitar el cambio de la cosecha y de la luminancia, Google utiliza la estabilización óptica de la imagen, que mueve mecánicamente la lente , y evita así cualquier cosecha. Sin embargo, OIS aún no es compatible con todos los teléfonos, así que tenga esto en cuenta si utiliza la API de Google en su aplicación.

  • ¿Cómo grabar video con superposición animada en Android?
  • MediaStore.EXTRA_DURATION_LIMIT ¿No funciona Nexus Devices?
  • Sube video grande a un servidor PHP desde Android Crashes Application
  • Cómo fusionar el archivo de audio con un nuevo archivo de vídeo? ¿Es posible en Android?
  • ¿Acelerando el cifrado?
  • Borrar el marco de video de la vista de superficie en video completado
  • VideoView se bloquea después de mucho tiempo jugando
  • Codificación de video Android con fr y manipulación de resolución
  • Los vídeos que no se reproducen en Android en un estado sin conexión cuando se usa appcache
  • ¿Hay una manera de hacer que VideoView siga jugando en segundo plano en la aplicación para Android?
  • Cómo reproducir un archivo de vídeo en android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.