Извлечение продолжительности видеофайла 3GP в Java/ Android
Я абсолютно новичок в разработке Android и пытаюсь создать небольшой видеоплеер, который может записывать видео и просматривать записанные видео. Я просматриваю список видео, записанных приложением, в ListView, где для каждого видео я показываю название и длину видео.
Я получаю список видео, используя:
File[] fileList = directory.listFiles(filter);
Мне удалось получить название видео, используя следующее:
fileList[i].getName()
Но я не могу понять, как извлечь длину / продолжительность видео. Я не мог найти соответствующие API, которые так делают.
Как узнать продолжительность видеофайла 3GP на Java?
1 ответ
Решение
Вы можете использовать Курсор, как это...
String[] proj = {
MediaStore.Video.Media._ID,
MediaStore.Video.Media.DATA,
MediaStore.Video.Media.DISPLAY_NAME,
MediaStore.Video.Media.SIZE,
MediaStore.Video.Media.DATE_TAKEN,
MediaStore.Video.Media.DURATION };
videocursor = managedQuery(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,proj, null, null, null);
Вы можете получить длительность видео файла, используя MediaStore.Video.Media.DURATION
,
Надеюсь, это поможет вам.