当前位置: 编程技术>移动开发
本页文章导读:
▪怎么制作Win PE闪存U盘启动盘 如何制作Win PE闪存U盘启动盘
当电脑不能启动时,启动盘就是电脑“复活”的最后一根稻草。现在闪存已经进入了千家万户,不妨制作一个闪存启动盘,轻松又方便。 制作闪存启动盘.........
▪ 替多媒体文件生成缩略图 为多媒体文件生成缩略图
1、Video 对于视频,取第一帧作为缩略图,也就是怎样从filePath得到一个Bitmap对象。 private Bitmap createVideoThumbnail(String filePath) {
Bitmap bitmap = null;
MediaMeta.........
▪ MTK 荧幕history管理 MTK 屏幕history管理
手机中的屏幕流程都是顺序的,用户都是通过按键在屏幕之间切换。这里有三种类型的屏幕切换,即1 向前移动 向下一个屏幕的切换作为用户按键输入的结果。2 向后移.........
[1]怎么制作Win PE闪存U盘启动盘
来源: 互联网 发布时间: 2014-02-18
如何制作Win PE闪存U盘启动盘
当电脑不能启动时,启动盘就是电脑“复活”的最后一根稻草。现在闪存已经进入了千家万户,不妨制作一个闪存启动盘,轻松又方便。
制作闪存启动盘的思路是:先把WinPE刷入闪存,然后让图形界面的WinPE来启动电脑。
WinPE(Windows Preinstallation Environment)是一个只拥有较少(但是非常核心)服务的32位系统,可以给它制作图形界面的外壳(ShellEx),让它在光盘等介质上启动电脑(如图)。
第一步:下载WinPE
网上有很多电脑高手制作的WinPE版本,这里给大家推荐“深山红叶袖珍PE光盘工具箱”,该启动盘基于Windows XP制作,集成了很多系统维护和修复工具,下载后的格式为ISO光盘镜像。
第二步:把WinPE写入闪存
把WinPE写入闪存需要使用UltraISO软件,大家可以访问下载。
下面是把WinPE写入闪存的具体方法:首先,在UltraISO工具栏上点击“打开”按钮,选择你下载的WinPE镜像文件,然后选择“启动→写入硬盘镜像”,在“映像文件”中,UltraISO已自动填入WinPE镜像文件的路径。插入闪存,当UltraISO检测到闪存时,对话框中的“写入方式”将变为可选,建议选择“USB-HDD+”或“USB-ZIP+”模式,这两种模式兼容性较好;接下来点击“确定”,UltraISO弹出对话框提示闪存上的数据将会丢失,点击“是”继续。
第三步:检查并验证
待写入完成后,拔出闪存,关闭UltraISO,然后再次插入闪存,在“设备管理器”(控制面板→系统→硬件)的“磁盘驱动器”中就多了个USB磁盘。大功告成,剩下的就是在BIOS中设置优先启动设备为“USB”进行实验了。
当电脑不能启动时,启动盘就是电脑“复活”的最后一根稻草。现在闪存已经进入了千家万户,不妨制作一个闪存启动盘,轻松又方便。
制作闪存启动盘的思路是:先把WinPE刷入闪存,然后让图形界面的WinPE来启动电脑。
WinPE(Windows Preinstallation Environment)是一个只拥有较少(但是非常核心)服务的32位系统,可以给它制作图形界面的外壳(ShellEx),让它在光盘等介质上启动电脑(如图)。
第一步:下载WinPE
网上有很多电脑高手制作的WinPE版本,这里给大家推荐“深山红叶袖珍PE光盘工具箱”,该启动盘基于Windows XP制作,集成了很多系统维护和修复工具,下载后的格式为ISO光盘镜像。
第二步:把WinPE写入闪存
把WinPE写入闪存需要使用UltraISO软件,大家可以访问下载。
下面是把WinPE写入闪存的具体方法:首先,在UltraISO工具栏上点击“打开”按钮,选择你下载的WinPE镜像文件,然后选择“启动→写入硬盘镜像”,在“映像文件”中,UltraISO已自动填入WinPE镜像文件的路径。插入闪存,当UltraISO检测到闪存时,对话框中的“写入方式”将变为可选,建议选择“USB-HDD+”或“USB-ZIP+”模式,这两种模式兼容性较好;接下来点击“确定”,UltraISO弹出对话框提示闪存上的数据将会丢失,点击“是”继续。
第三步:检查并验证
待写入完成后,拔出闪存,关闭UltraISO,然后再次插入闪存,在“设备管理器”(控制面板→系统→硬件)的“磁盘驱动器”中就多了个USB磁盘。大功告成,剩下的就是在BIOS中设置优先启动设备为“USB”进行实验了。
[2] 替多媒体文件生成缩略图
来源: 互联网 发布时间: 2014-02-18
为多媒体文件生成缩略图
1、Video
对于视频,取第一帧作为缩略图,也就是怎样从filePath得到一个Bitmap对象。
Android提供了MediaMetadataRetriever,由JNI(media_jni)实现。
看得出MediaMetadataRetriever主要有两个功能:MODE_GET_METADATA_ONLY和MODE_CAPTURE_FRAME_ONLY
这里设mode为MODE_CAPTURE_FRAME_ONLY,调用captureFrame取得一帧。
另外还有两个方法可以用:
extractMetadata 提取文件信息,ARTIST、DATE、YEAR、DURATION、RATING、FRAME_RATE、VIDEO_FORMAT
和extractAlbumArt 提取专辑信息,这个下面的音乐文件可以用到。
2、Music
对于音乐,取得AlbumImage作为缩略图,还是用MediaMetadataRetriever
retriever.extractAlbumArt()得到的是byte数组,还需要一步用BitmapFactory编码得到Bitmap对象。
3、Image
图片就很简单了
能直接得到Bitmap对象,把图片缩小到合适大小就OK。
同样上面的Video和Music,retrive到Bitmap后也需要缩小处理。
转载于http://blog.csdn.net/zhjp4295216/archive/2010/08/25/5838466.aspx
1、Video
对于视频,取第一帧作为缩略图,也就是怎样从filePath得到一个Bitmap对象。
private Bitmap createVideoThumbnail(String filePath) { Bitmap bitmap = null; MediaMetadataRetriever retriever = new MediaMetadataRetriever(); try { retriever.setMode(MediaMetadataRetriever.MODE_CAPTURE_FRAME_ONLY); retriever.setDataSource(filePath); bitmap = retriever.captureFrame(); } catch(IllegalArgumentException ex) { // Assume this is a corrupt video file } catch (RuntimeException ex) { // Assume this is a corrupt video file. } finally { try { retriever.release(); } catch (RuntimeException ex) { // Ignore failures while cleaning up. } } return bitmap; }
Android提供了MediaMetadataRetriever,由JNI(media_jni)实现。
看得出MediaMetadataRetriever主要有两个功能:MODE_GET_METADATA_ONLY和MODE_CAPTURE_FRAME_ONLY
这里设mode为MODE_CAPTURE_FRAME_ONLY,调用captureFrame取得一帧。
另外还有两个方法可以用:
extractMetadata 提取文件信息,ARTIST、DATE、YEAR、DURATION、RATING、FRAME_RATE、VIDEO_FORMAT
和extractAlbumArt 提取专辑信息,这个下面的音乐文件可以用到。
2、Music
对于音乐,取得AlbumImage作为缩略图,还是用MediaMetadataRetriever
private Bitmap createAlbumThumbnail(String filePath) { Bitmap bitmap = null; MediaMetadataRetriever retriever = new MediaMetadataRetriever(); try { retriever.setMode(MediaMetadataRetriever.MODE_GET_METADATA_ONLY); retriever.setDataSource(filePath); byte[] art = retriever.extractAlbumArt(); bitmap = BitmapFactory.decodeByteArray(art, 0, art.length); } catch(IllegalArgumentException ex) { } catch (RuntimeException ex) { } finally { try { retriever.release(); } catch (RuntimeException ex) { // Ignore failures while cleaning up. } } return bitmap; }
retriever.extractAlbumArt()得到的是byte数组,还需要一步用BitmapFactory编码得到Bitmap对象。
3、Image
图片就很简单了
Bitmap bm = null; Options op = new Options(); op.inSampleSize = inSampleSize; op.inJustDecodeBounds = false; bm = BitmapFactory.decodeFile(mFile.getPath(), op);
能直接得到Bitmap对象,把图片缩小到合适大小就OK。
同样上面的Video和Music,retrive到Bitmap后也需要缩小处理。
转载于http://blog.csdn.net/zhjp4295216/archive/2010/08/25/5838466.aspx
[3] MTK 荧幕history管理
来源: 互联网 发布时间: 2014-02-18
MTK 屏幕history管理
手机中的屏幕流程都是顺序的,用户都是通过按键在屏幕之间切换。这里有三种类型的屏幕切换,即
1 向前移动 向下一个屏幕的切换作为用户按键输入的结果。
2 向后移动 向前一个屏幕的切换作为用户按键输入的结果。
3 异步事件的出现 屏幕向前或者向后切换依赖于异步事件例如协议事件?
在向前切换的过程中,在绘制新的屏幕之前,先前屏幕的内容被存储在history“数据库”中。如果当前
的屏幕用于接收用户的输入,而此时一个异步事件发生例如来电,那么当前用户输入内容的缓冲区将会被存在history中,当前屏幕就会显示当前事件屏幕,直到该事件完成才恢复先前的屏幕。
History的实现类似一个栈。一个新的history节点添加在这个栈的顶端。每一个history节点的机构如下
void AddHistory(history addHistory) 添加history到这个history数据栈。
包含头文件:FrameworkStruct.h
void DeleteNHistory(U16 DeleteCount) 从history数据栈中删除history节点
包含头文件:HistoryGprot.h
void GoBackHistory(void) 该函数删除history数据栈中的顶端节点并且执行该顶端节点的入口函数,重绘该顶端节点所关联的屏幕。(该顶端节点其实就是当前屏幕的前一个屏幕?)
包含头文件:HistoryGprot.h
U8 GetHistory(U16 ScreenID,history *ptrHistory)
U8 GoBackToHistory(U16 ScreenID)该函数删除所有的history节点,并且执行该ScreenID所指屏幕的入口函数
U8* GetCurrGuiBuffer(U16 ScreenID)该函数用于从传入参数ScreenID所联系的屏幕中获得Gui缓冲区内容。
手机中的屏幕流程都是顺序的,用户都是通过按键在屏幕之间切换。这里有三种类型的屏幕切换,即
1 向前移动 向下一个屏幕的切换作为用户按键输入的结果。
2 向后移动 向前一个屏幕的切换作为用户按键输入的结果。
3 异步事件的出现 屏幕向前或者向后切换依赖于异步事件例如协议事件?
在向前切换的过程中,在绘制新的屏幕之前,先前屏幕的内容被存储在history“数据库”中。如果当前
的屏幕用于接收用户的输入,而此时一个异步事件发生例如来电,那么当前用户输入内容的缓冲区将会被存在history中,当前屏幕就会显示当前事件屏幕,直到该事件完成才恢复先前的屏幕。
History的实现类似一个栈。一个新的history节点添加在这个栈的顶端。每一个history节点的机构如下
typedef struct _history { U16 scrn /* 将要存储的屏幕ID*/ FuncPtr entryFuncPtr; /* 入口函数指针,用于恢复屏幕时的重绘*/ U8 inputBuffer[MAX_INPUT_BUFFER]; /* 用于存储当前的input缓冲区*/ U8 guiBuffer[MAX_GUI_BUFFER]; /* 存储gui,一些图片数据*/ }
void AddHistory(history addHistory) 添加history到这个history数据栈。
包含头文件:FrameworkStruct.h
void DeleteNHistory(U16 DeleteCount) 从history数据栈中删除history节点
包含头文件:HistoryGprot.h
void GoBackHistory(void) 该函数删除history数据栈中的顶端节点并且执行该顶端节点的入口函数,重绘该顶端节点所关联的屏幕。(该顶端节点其实就是当前屏幕的前一个屏幕?)
包含头文件:HistoryGprot.h
U8 GetHistory(U16 ScreenID,history *ptrHistory)
U8 GoBackToHistory(U16 ScreenID)该函数删除所有的history节点,并且执行该ScreenID所指屏幕的入口函数
U8* GetCurrGuiBuffer(U16 ScreenID)该函数用于从传入参数ScreenID所联系的屏幕中获得Gui缓冲区内容。
最新技术文章: