Я хочу создать эскиз видео с пути sdcard, как я могу создать эскиз из пути к видеофайлу?Как создать миниатюру видео с пути видеофайла в Android
ответ
Вы можете использовать класс ThumbnailUtils
, чтобы получить видеоролик Video Video.
createVideoThumbnail()
- метод, который возвращает битмап (уменьшенное изображение) видео с пути видеофайла.
С Android Docs:
общественности статической Bitmap createVideoThumbnail (String Filepath, внутр вид)
Создать миниатюру видео для видео. Может вернуть значение null, если видео повреждено или формат не поддерживается.
Вы можете создать VideoThumbnail из SDK-пути следующим образом.
Bitmap thumb = ThumbnailUtils.createVideoThumbnail(filePath, Thumbnails.MINI_KIND);
Используя ThumbnailUtils
, вы можете создать эскиз двух типов.
MediaStore.Images.Thumbnails.MICRO_KIND
тип будет генерировать миниатюру размером 96 х 96.MediaStore.Images.Thumbnails.MINI_KIND
тип будет генерировать миниатюру размером 512 х 384.
Я надеюсь, что это помогает!
Пожалуйста, проверьте мой код надеюсь, что это поможет вам
/**
* Retrieve video frame image from given video path
*
* @param p_videoPath
* the video file path
*
* @return Bitmap - the bitmap is video frame image
*
* @throws Throwable
*/
@SuppressLint("NewApi")
public static Bitmap retriveVideoFrameFromVideo(String p_videoPath)
throws Throwable
{
Bitmap m_bitmap = null;
MediaMetadataRetriever m_mediaMetadataRetriever = null;
try
{
m_mediaMetadataRetriever = new MediaMetadataRetriever();
m_mediaMetadataRetriever.setDataSource(p_videoPath);
m_bitmap = m_mediaMetadataRetriever.getFrameAtTime();
}
catch (Exception m_e)
{
throw new Throwable(
"Exception in retriveVideoFrameFromVideo(String p_videoPath)"
+ m_e.getMessage());
}
finally
{
if (m_mediaMetadataRetriever != null)
{
m_mediaMetadataRetriever.release();
}
}
return m_bitmap;
}
Modify выше способа в соответствии с вашими потребностями
Если вы непосредственно создавать эскизы следующим
Bitmap thumb = ThumbnailUtils.createVideoThumbnail(path,
MediaStore.Images.Thumbnails.MINI_KIND);
Тогда это проблема с этим методом, если вы создаете миниатюры для большого набора видео (для большого количества видео). приложение замерзает, пока все миниатюры не будут загружены, потому что весь процесс выполняется в основном потоке.
Использование SuziLoader
Этот загрузчик загружает эскизы для видео, которые локально хранятся в файловой системе в фоновом режиме.
String path = Environment.getExternalStorageDirectory().getAbsolutePath() + "/video.mp4";
ImageView mThumbnail = (ImageView) findViewById(R.id.thumbnail);
SuziLoader loader = new SuziLoader(); //Create it for once
loader.with(MainActivity.this) //Context
.load(path) //Video path
.into(mThumbnail) // imageview to load the thumbnail
.type("mini") // mini or micro
.show(); // to show the thumbnail
Чтобы получить эту зависимость использовать следующие шаги
Шаг 1. Добавить репозиторий JitPack в файл сборки
Добавьте его в корневой build.gradle в конце репозиториев:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Шаг 2. Добавить зависимость
dependencies {
compile 'com.github.sushinpv:SuziVideoThumbnailLoader:0.1.0'
}
ADD READ ВНЕШНЕЕ ХРАНЕНИЕ Разрешение в манифесте
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
- 1. Как получить миниатюру видеофайла в android
- 2. Как получить миниатюру загруженного видеофайла?
- 3. Как получить миниатюру видео с абсолютного пути?
- 4. Как создать миниатюру из видеофайла (.mp4) на Windows Phone 8?
- 5. Создать миниатюру с видео URL!
- 6. Создайте миниатюру видеофайла в sdcard
- 7. Как создать миниатюру для видео в facebook?
- 8. Android: Невозможно отобразить миниатюру видео
- 9. Как получить миниатюру видео в android
- 10. Как получить миниатюру видео в Android
- 11. Как получить миниатюру видео в Android?
- 12. Android: Как отображать миниатюру видео в ImageView?
- 13. На DSPACE, как создать миниатюру для видео?
- 14. Невозможно создать миниатюру Изображение с записанного видео
- 15. Как создать миниатюру формата URL-адреса видео?
- 16. Как отобразить миниатюру для видео? Android
- 17. Как создать миниатюру из видео с помощью copyCGImageAtTime в Swift?
- 18. Создать миниатюру с url
- 19. Как создать миниатюру с середины видео с FFmpeg
- 20. Создайте миниатюру/снимок видеофайла, выбранного вводом файла в определенное время.
- 21. Как создать миниатюру из mpg-видео с C#?
- 22. Невозможно создать миниатюру из URL видео
- 23. Как отображать миниатюру видео Youtube?
- 24. Создать миниатюру с видео на сервере в php
- 25. Загрузить видеоролик и создать миниатюру с видео в django
- 26. Как создать blob видеофайла
- 27. Создать миниатюру
- 28. Как получить миниатюру видео с моего сервера?
- 29. Как отображать миниатюру видео с помощью HTML5?
- 30. Создать миниатюру с PHP
Большое вам спасибо. Это работает :) –
это работает для видео uri от JSON –
Нет, нет. он работает только с видеофайлами, хранящимися в памяти – Rajesh