Respuestas:
Reproducir video con LibGDX se ha definido como fuera del alcance del proyecto. Entonces no , no puedes reproducir videos usando LibGDX.
Sin embargo, esto no excluye la posibilidad de escribir código específico para Android para reproducir videos. Simplemente significa que su aplicación no mantendrá la portabilidad de LibGDX.
Como dijo Byte56, en libGDX no puedes reproducir videos :( así que hice esto:
Creé una nueva actividad "SplashScreen"
public class SplashScreen extends Activity implements OnCompletionListener
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
String fileName = "android.resource://"+ getPackageName() +"/raw/video";
VideoView vv = (VideoView) this.findViewById(R.id.surface);
vv.setVideoURI(Uri.parse(fileName));
vv.setOnCompletionListener(this);
vv.start();
}
@Override
public void onCompletion(MediaPlayer mp)
{
// TODO Auto-generated method stub
Intent intent = new Intent(this, libgdx.class);
startActivity(intent);
finish();
}
}
En el método "onCompletion", uso la intención de llamar a mi nueva actividad donde la llamada "inicializar" para que funcione el motor libGDX
Y un nuevo diseño para el videoView
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<VideoView
android:id="@+id/surface"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center" >
</VideoView>
</LinearLayout>
Esta es la forma de jugar: libname es "indiespot-media-0.8.09.jar" que puedes encontrar aquí .
Cómo utilizar:
player = new MoviePlayer(videoFile);
Texure playerTexture = new Texture(
player.movie.width(),
player.movie.height(),
Pixmap.Format.RGBA8888) {
@Override
public void bind() {
Gdx.gl.glBindTexture(0, player.textureHandle);
}
};
playerTexture
como textura habitual