Раньше не пробовал, но я думаю, что вы можете использовать полностью бесплатную среду vlcj, которая может эффективно воспроизводить практически любой тип видео (и, конечно, воспроизводит видеофайлы .mp4). Я не могу дать вам никакого кода в Android потому что никогда не работал с Android, но я знаю Java, и это просто работает. Итак, что я использую в Java:
NativeLibrary.addSearchPath("libvlc",path); //To set path of libvlc
Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);//To import libvlc
//The path can be a folder in your android project.All the files needed are in vlc player installation folder.so yes you have to install vlc in your computer to get those files but just once.
canvas = new WindowsCanvas();
panel.add(canvas);//panel is like your VideoView
canvas.setVisible(true);
canvas.setBackground(Color.black);
mediaPlayerFactory = new MediaPlayerFactory();
player12 = mediaPlayerFactory.newEmbeddedMediaPlayer();
CanvasVideoSurface videoSurface = mediaPlayerFactory.newVideoSurface(canvas);
player12.setVideoSurface(videoSurface);
player12.setPlaySubItems(true);
player12.startMedia(yourVideoPath);
player12.setAspectRatio(""+panel.getWidth()+":"+panel.getHeight()); //Those two lines are for your video to be adusted in your panel or better to your VideoView
player12.setCropGeometry(""+panel.getWidth()+":"+panel.getHeight());
JAR-файлы, которые вы должны включить в ваш classpath: jna-3.4.0.jar, platform-3.4.0.jar, vlcj-2.1.0.jar