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.
- Buscando retroalimentación técnica en Nextreaming NexPlayer ™
- Cómo escalar el video en un SurfaceView más grande que la ventana en Android?
- Streaming de vídeo con peerjs webrtc de android webview es demasiado lento
- Archivo de vídeo sdk cut / trim de Android
- ¿Cómo puedo hacer que mis vídeos incrustados se reproduzcan en el Kindle Fire?
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?
- Añadir codec de vídeo a Android
- Reproducción de vídeo en pantalla completa
- Comprimir video como whatsapp
- Android - ¿Es posible 'bloquear' la velocidad de fotogramas de vista previa de una cámara?
- ¿El streaming de audio / video de Android no puede transmitir un archivo rtsp?
- Actividad de código abierto de Android para que el usuario seleccione / cree un medio?
- La cámara Motorola Android 2.2 ignora el parámetro EXTRA_OUTPUT
- Extraer todos los marcos de video en Android
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 puedo enviar una cadena a través de NFC mientras Screen-Pinning?
- ¿Cómo utilizar la función de respuesta directa de Android Nougat con un NotificationListener?