Как воспроизвести видео из кэша приложения в android



Я хочу воспроизвести видеофайл из папки кэша android, используя следующий код:



String cacheDir = getApplicationContext().getCacheDir().getAbsolutePath();
File outFile = new File(cacheDir, "intro.mp4");
vvIntro.setVideoPath(cacheDir+"/intro");
vvIntro.start();


Но я получил ошибку:



07-05 20:14:21.896: E/MediaPlayer(1251): error (1, -2147483648)
07-05 20:14:21.928: I/Choreographer(1251): Skipped 79 frames! The application may be doing too much work on its main thread.
07-05 20:14:22.186: D/gralloc_goldfish(1251): Emulator without GPU emulation detected.
07-05 20:14:22.496: E/MediaPlayer(1251): Error (1,-2147483648)
07-05 20:14:22.496: D/VideoView(1251): Error: 1,-2147483648


Где файл уже существует и требуется хурма, как показано ниже :
Введите описание изображения здесь

633   2  

2 ответов:

Вы создаете объект File, указывающий на ваш файл MP4, а затем полностью игнорируете этот объект File и предоставляете недопустимый путь к объекту vvIntro. Вместо этого попробуйте:

File outFile = new File(getCacheDir(), "yourVideoName.mp4");
vvIntro.setVideoPath(outFile.getAbsolutePath());
vvIntro.start();

И посмотреть, если это помогает.

Вы можете просто использовать мою простую библиотеку AndroidVideoCache . Он позволяет передавать и кэшировать видео одновременно.

Comments

    Ничего не найдено.