Воспроизводить видео с помощью opengles, android
Как воспроизвести видео с помощью OpenGLES в Android?
2 ответа
Ваш вопрос немного расплывчатый. Если все, что вы хотите сделать, это воспроизвести видео на поверхности GL, это возможно. Увидеть Media Player
Пример кода, на который ссылался Дейв в своем примере. Все, что вам нужно сделать, это заменить SurfaceView
с GLSurfaceView
как в файле MediaPlayerDemo_Video.java, так и в соответствующем файле макета (mediaplayer_2.xml).
Также вам нужно создать собственный класс Renderer (тот, который реализует GLSurfaceView.Renderer
интерфейс) и установите его на свой GLSurfaceView
,
После того, как вы все это сделаете, ваше видео будет воспроизводиться на поверхности GL, но это все.
Если, с другой стороны, вы хотите манипулировать видео, то есть рисовать видеокадры в текстуре GL и добавлять к ней эффекты или преобразовывать ее (например, масштабировать, поворачивать и т. Д.), То, боюсь, это может не будет сделано Причина в том, что у вас нет доступа к необработанным видеокадрам в вашем приложении.
Я не уверен, почему вы здесь используете OpenGL, но, вероятно, самый простой способ воспроизвести видео - это использовать VideoView
класс Вы захотите взглянуть на MediaPlayer
класс тоже.
Страница аудио и видео в документации для разработчиков Android может оказаться полезной.
Там в VideoView
образец кода и MediaPlayer
Пример кода в демоверсиях API, поставляемых с Android SDK.