Czy istnieje sposób na odtwarzanie filmów w LibGDX?
Chcę umieścić film jako ekran powitalny w Androidzie, ale nie chcę korzystać z zestawu SDK systemu Android, ponieważ używam LibGDX i jestem prawie gotowy: /
Czy istnieje sposób na odtwarzanie filmów w LibGDX?
Chcę umieścić film jako ekran powitalny w Androidzie, ale nie chcę korzystać z zestawu SDK systemu Android, ponieważ używam LibGDX i jestem prawie gotowy: /
Odpowiedzi:
Odtwarzanie wideo za pomocą LibGDX zostało zdefiniowane jako poza zakresem projektu. Więc nie , nie możesz odtwarzać filmów przy użyciu LibGDX.
Nie wyklucza to jednak możliwości pisania kodu specyficznego dla Androida do odtwarzania filmów. Oznacza to po prostu, że twoja aplikacja nie utrzyma przenośności LibGDX.
Jak powiedział Byte56, w libGDX nie można odtwarzać filmów :( więc zrobiłem to:
Utworzyłem nowe działanie „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();
}
}
W metodzie „onCompletion” używam zamiaru wywołania mojej nowej aktywności, w której wywołanie „inicjalizacji” silnika libGDX działa
I nowy układ wideoView
<?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>
Oto jak grać: libname to „indiespot-media-0.8.09.jar”, którą możesz zdobyć tutaj .
Jak używać:
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
jak zwykle tekstury