當前位置:首頁 » 安卓系統 » android獲取視頻縮略圖

android獲取視頻縮略圖

發布時間: 2023-01-01 07:45:34

㈠ 如何在低版本的Android SDK中生成縮略圖

從Android2.2開始系統新增了一個縮略圖ThumbnailUtils類,位於framework的android.media.ThumbnailUtils位置,可以幫助我們從mediaprovider中獲取系統中的視頻或圖片文件的縮略圖,該類提供了三種靜態方法可以直接調用獲取。
1.
static
Bitmap
createVideoThumbnail(String
filePath,
int
kind)
//獲取視頻文件的縮略圖,第一個參數為視頻文件的位置,比如/sdcard/android123.3gp,而第二個參數可以為MINI_KIND或MICRO_KIND最終和解析度有關
2.
static
Bitmap
extractThumbnail(Bitmap
source,
int
width,
int
height,
int
options)
//直接對Bitmap進行縮略操作,最後一個參數定義為OPTIONS_RECYCLE_INPUT,來回收資源
3.
static
Bitmap
extractThumbnail(Bitmap
source,
int
width,
int
height)
//
這個和上面的方法一樣,無options選項
ThumbnailUtils類是API
Level從8或更高才開始支持的。
Android縮略圖類源代碼
Android
2.2開始新增的縮略圖類ThumbnailUtils的主要方法是靜態的,對於Android
2.2或API
Level8以下的工程可以直接使用,本類相對於我們常規的縮略圖類考慮更周全,除了尺寸比例優化外,針對OOM的內存管理方面有更周全的處理方式.

㈡ 手機如何讓視頻顯示縮略圖

手機還可以,點開設置相冊,裡面的設置,然後點開列表,有大圖標,小圖標就進行可以設置不管是XP系統的,還是win7或更高的系統,在設置上基本上都是差不多的。下面以win7的為例講解一下。
右鍵計算機,選擇屬性。
選擇高級系統設置。
選擇高級選項卡裡面的性能—設置。
在視覺效果中選擇自定義下面的:顯示縮略圖,而不是顯示圖標,然後點擊確定。
然後再點擊確定。設置完成後,圖片已經以縮略圖的形式顯示出來了。

㈢ android4.4 中如何獲取最近應用的縮略圖

最近有項需求是獲取應用的縮略,用於在動畫時顯示。因此就對此塊知識簡要了解了一下。

在android中獲取視頻文件的縮略圖有三種方法:
1.從媒體庫中查詢
新視頻增加後需要SDCard重新掃描才能給新增加的文件添加縮略圖,靈活性差,而且不是很穩定,適合簡單應用
2. android 2.2以後使用ThumbnailUtils類獲取
實現簡單,但2.2以前的版本不支持
3.調用jni文件,實現MediaMetadataRetriever類

實現復雜,但比較靈活,推薦使用

那麼Android 中如何獲取最近應用的縮略圖,這塊也有現成的函數,不過都被 @hide 掉了,所以需要利用java reflect 反射才能使用

核心代碼如下:
package com.example.testondraw;

import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;

import android.app.ActivityManager;
import android.graphics.Bitmap;
import android.util.Log;

/**
* 調用隱藏方法的助手類
*/public class HideExploder {
static final String TAG = "HideExploder";
private final static Object refLock = new Object();

private static Method getTaskThumbnails = null;
private static Field taskThumbnailsBitmap = null;

@SuppressWarnings("rawtypes")
public static void listAllObject(String classFullName) {
try {
Log.i(TAG, "listAllObject classFullName: " + classFullName);
Class<?> clazz = Class.forName(classFullName);

// 反射屬性欄位
Field[] fields = clazz.getDeclaredFields();

// 反射方法欄位
Method[] methods = clazz.getDeclaredMethods();

// 反射構造器
Constructor[] constuctors = clazz.getDeclaredConstructors();

Log.i(TAG, "FIELD========");
for (Field f : fields) {
Log.i(TAG, "TYPE: " + f.getType() + " NAME: " + f.getName());
}

Log.i(TAG, "METHOD========");
for (Method m : methods) {
Log.i(TAG, "METHOD NAME: " + m.getName());
}

Log.i(TAG, "CONSTUCTOR========");
for (Constructor c : constuctors) {
Log.i(TAG, "NAME:" + c.getName());

Class[] clss = c.getParameterTypes();
Object o = null;

// 產生實例
try {
if (clss.length == 0)
o = c.newInstance();
else if (clss.length > 0) {
// TODO
}
Log.i(TAG, "object: " + o);
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
}
}

public static Bitmap getTaskThumbnailsBitmap(ActivityManager am, int id) {
synchronized (refLock) {
try {
if (getTaskThumbnails == null) {
getTaskThumbnails = am.getClass().getDeclaredMethod(
"getTaskThumbnails", int.class);
}
if (getTaskThumbnails != null) {
Object thumbnails = getTaskThumbnails.invoke(am,
Integer.valueOf(id));
if (thumbnails != null) {
if (taskThumbnailsBitmap == null)
taskThumbnailsBitmap = thumbnails.getClass()
.getField("mainThumbnail");
if (taskThumbnailsBitmap != null) {
return (Bitmap) taskThumbnailsBitmap
.get(thumbnails);
}
}
}
} catch (Exception e) {
Log.w(TAG, "getTaskThumbnailsBitmap error:" + e);
e.printStackTrace();
}
}
return null;
}
}

㈣ Android 中用ThumbnailUtils 獲取手機視頻文件縮略圖出錯

旋轉90°就好了:

Bitmapbitmap=BitmapFactory.decodeFile(mCurrentPhotoPath,bmOptions);

Matrixmtx=newMatrix();
mtx.postRotate(90);
//RotatingBitmap
BitmaprotatedBMP=Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),mtx,true);

㈤ android怎樣獲取視頻縮略圖

需要快速提取圖片和視頻縮略圖可以直接訪問 android.provider.MediaStore.Images.Thumbnails 和android.provider.MediaStore.Video.Thumbnails這兩個資料庫,即可查詢出來縮略圖 。 如何判斷文件呢? 可以通過Cursor遍歷資料庫,對比INTERNAL_CONTENT_URI欄位的值,這是一個Uri,這里保存著Android手機SD卡上的多媒體文件完整路徑。 Uri originalUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; //若為視頻則為MediaStore.Video.Media.EXTERNAL_CONTENT_URI; ContentResolver cr = this.getContentResolver(); Cursor cursor = cr.query(originalUri, null, null, null, null); if (cursor == null) { return; } for (cursor.moveToFirst();!cursor.isAfterLast(); cursor.moveToNext()) { long thumbNailsId = cursor.getLong(cursor .getColumnIndex("_ID")); Bitmap bitmap = MediaStore.Images.Thumbnails.getThumbnail(cr, thumbNailsId, Video.Thumbnails.MICRO_KIND, null); //若為視頻則為 // Bitmap bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, // thumbNailsId, Video.Thumbnails.MICRO_KIND, null); return bitmap; }

㈥ 安卓平台生成視頻縮略圖的幾種方法

使用MediaMetadataRetriever 的getFrameAtTime()方法, 如下:

getFrameAtTime方法有幾個重載形式, 其中type參數有如下幾種取值:

可以根據需要選擇是否選取關鍵幀. 以及優先取前面的還是後面的.
還提供了指定尺寸的重載方法.

這種方法效率最高, 速度最快!

需要注意的是, 這個辦法對很多格式不規整的視頻文件不能很好的支持, 有些文件只有一個關鍵幀, 或者關鍵幀很少. 導致很難獲取到正確的截圖.

使用MediaExtractor,MediaCodec和opengl抽取mp4視頻文件的幀縮略圖.
具體實現可以參考 https://www.jianshu.com/p/567d7ce47f52
這個方法速度中等, 但是對視頻文件的格式支持兼容性較好, 只要能播放, 基本都能搞定.

將視頻渲染到TextureView上, 然後通過將TextureView內容轉換為bitmap來獲得指定時間點的截圖.
具體實現參考: https://www.jianshu.com/p/0f6578362e58
這個方法效率最低, 必須要把視頻在TextureView上播放出來, 才能截圖. 雖然可以通過調節播放倍速來加快截圖效率, 但是這種方式仍然是最慢的.

通過ffmpeg實現, 這個能做, 但是沒用過, 不多說了.

㈦ 【Android音視頻】MediaMetadataRetriever使用

MediaMetadataRetriever是Android原生提供的獲取音視頻文件信息的一個類,我們可以通過這個類的相關方法獲取一些基本信息,如視頻時長、寬高、幀率、方向、某一幀的圖片等。

我們可以通過MediaMetadataRetriever的extractMetadata(int keyCode)的方法獲取一些視頻的基本信息,以下列出一些常用的:

可以通過getFrameAtTime(long timeUs)獲取某一時刻附近的幀圖片;API>=28,可以准確獲取幀圖片,相關方法getFrameAtIndex(...);獲取幀圖可以應用在 視頻封面圖 視頻裁剪的縮略圖 等。

MediaMetadataRetriever還是比較常用的,以上只是簡略的列出了MediaMetadataRetriever的一些用法,具體可自行查閱源文件。

㈧ 如何創建從Android視頻文件路徑視頻縮略圖

如何創建從Android視頻文件路徑視頻縮略圖

這個問題本身不難,你貼一堆代碼這么亂怎麼看?
要實現這樣的功能呢,建議你自定義一個adapter繼承自BaseAdapter,然後在getView方法里,
載入一個item布局,這個item布局可以包含imageView,自己寫一個就好。
自定義的adapter可以設置數據源,構造方法中上一個list map數據源,
獲取到數據源之後傳進來,根據position設置好對應數據就好了。

win7下如何視頻文件縮略圖

關於這個問題,右擊空白處選擇那個大圖標或者超大圖標有些格式的視頻文件就會變成縮略圖了。有些格式不行像MKV

視頻縮略圖哪個文件夾

很簡單,不關屬性的問題,你打開那個不顯示縮略圖的文件夾,然後看上面有
文件 編輯 查看 收藏 工具 幫主 這些也就是上面的工具欄。
點查看--然後選擇---縮略圖 就可以了。 同時也提供別的顯示方式,比如詳細列表,列表,,圖標。等你可以看一下。
不管是圖片還是視頻,都支持顯示縮略圖的,那麼就1個原因,是因為你的視頻格式不一樣,不支持顯示縮略圖,即便有些視頻文件你查看屬性,同樣是MPG或者別的格式也有些是顯示不出來縮略圖的。

android怎樣獲取視頻縮略圖

需要快速提取圖片和視頻縮略圖可以直接訪問 android.provider.MediaStore.Images.Thumbnails 和android.provider.MediaStore.Video.Thumbnails這兩個資料庫,即可查詢出來縮略圖 。 如何判斷文件呢? 可以通過Cursor遍歷資料庫,對比INTERNAL_CONTENT_URI欄位的值,這是一個Uri,這里保存著Android手機SD卡上的多媒體文件完整路徑。 Uri originalUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; 若為視頻則為MediaStore.Video.Media.EXTERNAL_CONTENT_URI; ContentResolver cr = this.getContentResolver(); Cursor cursor = cr.query(originalUri, null, null, null, null); if (cursor == null) { return; } for (cursor.moveToFirst();!cursor.isAfterLast(); cursor.moveToNext()) { long thumbNailsId = cursor.getLong(cursor .getColumnIndex("_ID")); Bitmap bitmap = MediaStore.Images.Thumbnails.getThumbnail(cr, thumbNailsId, Video.Thumbnails.MICRO_KIND, null); 若為視頻則為 Bitmap bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, thumbNailsId, Video.Thumbnails.MICRO_KIND, null); return bitmap; }

dedecms獲取視頻縮略圖

她輕捷、長發,而眼裡
野性等等的光芒閃閃。
我給她編織過花冠、
芬芳的腰帶和手鐲,
她柔聲地輕輕太息,
彷彿是真心愛我。
我帶她騎在駿馬上.
她把臉兒側對著我.

android 怎麼在android 2.1中獲取視頻縮略圖

使用surfaceview播放視頻,播放到某個時間時將該幀圖像抓下來轉bmp後通過imageview顯示出來

win10的視頻文件如何顯示縮略圖?

方法一:在"組織"的下拉菜單中找到"文件夾和搜索選項",在"查看"選項中找到"始終顯示圖標,從不顯示縮略圖"選項前的勾去掉,然後點擊確定。
方法二:
1、右鍵我的電腦點擊「屬性」,後在左側點擊「高級系統設置」
2、在性能處點擊「設置」
3、如下圖勾選,「應用」即可

如何在Win7圖片文件夾顯示視頻縮略圖

你安裝個win7codecs

wordpress如何讀取文章中的視頻縮略圖

第一步:在主題模板的function.php里添加下面的函數,代碼如下:
截取內容中第一張圖片函數
function catch_that_image() {
global $post, $posts;
ob_start();
ob_end_clean();
preg_match('/<imgs[^<>]*?src=['"]([^'"<>]+?)['"][^<>]*?>/i', $post->post_content, $matche);
if($matche[1])
return $matche[1];
否則取默認圖片
return 'default.gif'
}
第二步:在wordpress需要調用縮略圖的地方直接用這個函數調用,如下面例子,代碼如下:
<img src=<?php echo catch_that_image(); ?> alt="<?php the_title(); ?>" title="<?php the_title(); ?>" width=200px height=200px />

視頻縮略圖怎麼查看

MediaPreviewSetup 趕緊下,然後打開後全部格式選中點下面的應用就ok啦。
樓下那些人別聽他們的,他們不懂,這個軟體是專門用於各類新視頻格式的縮略圖插件,一裝就好了,相當於一個補丁

㈨ Android中如何取得指定視頻的縮略圖

sd卡的可以輕松的取得 android.provider.MediaStore.Images.Thumbnails 和android.provider.MediaStore.Video.Thumbnails這兩個資料庫,即可查詢出來縮略圖 但是你說的網路的視頻,這個得自己視頻解碼了,讀取某些幀信息啊。。。

熱點內容
scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:640
榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:368
java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:86
php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:310
android實現陰影 發布:2025-04-16 16:50:08 瀏覽:794
粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:346
機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:213
編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:816
proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:367
土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:594