2011-11-30 11 views
7

Actualmente estoy desarrollando una aplicación específicamente para dispositivos GoogleTV de Android donde usar o forzar la orientación de la aplicación a cualquier otra cosa que no sea horizontal no está habilitada, y no estará habilitado en el futuro por lo que tengo figurado, en realidad la aplicación simplemente se bloquea al intentar ejecutar setRequestedOrientation();Girando el videobuffer actual en Videoview

Las vistas en video heredan las propiedades posicionales de las vistas normales, Cosas como SetX, SetY y concretamente SetRotation.

Puede establecer la rotación de la vista de video en 90 grados, pero el videobuffer actual NO girará. He intentado de todo, desde usar el reproductor de medios anterior>surfaceview.getHolder().lockcanvas().rotate(degrees) en todos los sentidos imaginables, hasta sobrescribir el método onDraw de una vista de video personalizada que amplía la clase normal, ninguna de las cuales podría funcionar correctamente.

En pocas palabras, ¿cómo puedo rotar el video REAL en la vista de video, sin cambiar la orientación del dispositivo? si tiene un ejemplo funcional de una vista de video rotada con el contenido también girado, explique cómo lo hizo funcionar.

Gracias de antemano.

Me gustaría que tenga en cuenta que estamos desarrollando para Android 3.1 y también que todo hasta ahora ha sido codificado dinámicamente, todas las imágenes y videoview se crean a través del código, solo los diseños específicos que utilizamos para Z indexando elementos se han definido en el archivo layout.xml.

Respuesta

1

VideoView no admite la rotación de video, incluso si la matriz de composición está configurada correctamente y se utiliza el atributo de rotación.

Lo que puede hacer es usar TextureView y establecer su atributo rotation = "90" (por ejemplo). A continuación, girará los cuadros, pero la relación de aspecto es algo que necesita para manejar su auto. Con el fin de hacer lo que puede utilizar textTureView.setScaleX ((* ScreenHeight 1.0f)/ScreenWidth)

Más detalles aquí: Rotating an android VideoView