Есть ли способ воспроизвести видео с помощью LibGDX?
Я хочу поместить видео в качестве заставки в Android, но я не хочу использовать Android SDK, потому что я использую LibGDX, и я почти закончил: /
Есть ли способ воспроизвести видео с помощью LibGDX?
Я хочу поместить видео в качестве заставки в Android, но я не хочу использовать Android SDK, потому что я использую LibGDX, и я почти закончил: /
Ответы:
Воспроизведение видео с помощью LibGDX было определено как выход за рамки проекта. Так что нет , вы не можете воспроизводить видео, используя LibGDX.
Это не исключает возможности написания специального кода для Android для воспроизведения видео. Это просто означает, что ваше приложение не будет поддерживать переносимость LibGDX.
Как сказал Byte56, в libGDX вы не можете воспроизводить видео :( поэтому я сделал это:
Я создал новый вид деятельности "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();
}
}
В методе «onCompletion» я использую намерение вызвать мое новое действие, где вызов «initialize» для работы движка libGDX
И новый макет для просмотра видео
<?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>
Это способ играть: libname это "indiespot-media-0.8.09.jar", который вы можете получить здесь .
Как использовать:
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
как обычно текстуру