Кнопки управления мультимедиа в 360 видеоплеере с использованием картона Google и rajawali

Я создал видеоплеер VR, используя Google Cardboard Android SDK и Rajawali VR.
Я хочу добавить кнопки управления, такие как воспроизведение, пауза, поток, как обычный видеоплеер.
Как я могу это реализовать?

1 ответ

Решение
  1. Создайте пользовательский интерфейс кнопки внутри сферы, где ваше видео 360 текстурировано. Попробуйте этот код:

    Material playBtnM = new Material();
    playBtnM.setColorInfluence(0);
    try {
         //place the button picture in "res/drawable-nodpi/"
        playBtnM.addTexture(new Texture("playBtn", R.drawable.play));
    } catch(TextureException e) {
        e.printStackTrace();
    }
    
    Plane playBtn;
    playBtn = new Plane(1, 1, 8, 8);
    playBtn.setScale(-1);
    playBtn.setMaterial(playBtnMaterial);
    playBtn.setPosition(0, 0, -2);
    playBtn.setAlpha(0);
    
    this.getCurrentScene().addChild(playBtn);
    

Вы можете использовать Куб или другие примитивы вместо Плоскости в Раджавали, чтобы сопоставить свою текстуру.

  1. Создайте свой собственный способ запуска кнопки. Например, используя точку фокусировки в центре. Если точка фокусировки находится внутри кнопки, то кнопка срабатывает.

  2. Уведомить видеоплеер. Вызовите метод start(), pause() или stop() MediaPlayer, чтобы управлять воспроизведением при нажатии кнопки.

Другие вопросы по тегам