Existe uma maneira de reproduzir vídeos com LibGDX?
Quero colocar um vídeo como minha tela inicial no Android, mas não quero usar o SDK do Android, porque estou usando o LibGDX e estou quase terminando: /
Existe uma maneira de reproduzir vídeos com LibGDX?
Quero colocar um vídeo como minha tela inicial no Android, mas não quero usar o SDK do Android, porque estou usando o LibGDX e estou quase terminando: /
Respostas:
A reprodução de vídeo com LibGDX foi definida como fora do escopo do projeto. Portanto , não , você não pode reproduzir vídeos usando o LibGDX.
Isso não exclui a possibilidade de escrever código específico para o Android para reproduzir vídeos. Significa apenas que seu aplicativo não manterá a portabilidade do LibGDX.
Como disse Byte56, no libGDX você não pode reproduzir vídeos :( então eu fiz isso:
Criei uma nova atividade "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();
}
}
No método "onCompletion", uso a intenção de chamar minha nova atividade, na qual "inicialize" solicita que o mecanismo libGDX funcione
E um novo layout para o 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 é a maneira de jogar: libname é "indiespot-media-0.8.09.jar", que você pode obter aqui .
Como usar:
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 usual