高清范

百度 论坛搜索
东家
跳转到指定楼层
发表于 2011-8-10 15:10 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hdpdiy 于 2011-8-11 22:00 编辑

在Windows中的y+s混合格式多核固件的解包、修改和封包过程改进版

        高清播放机的固件解包、修改和封包过程现在成为一个系列,都是完全鼠标图形化操作过程。这个系列中,单一格式固件的在Linux系统中有2个,在Windows系统中也有2个,还有2个是混合格式多核固件的:

1.  在Linux中的squashfs格式固件解包、修改和封包过程改进版

2.  在Linux中的yaffs格式固件解包、修改和封包过程改进版

3.  在Windows中的squashfs格式固件解包、修改和封包过程改进版

4.  在Windows中的yaffs格式固件解包、修改和封包过程改进版

5.  在Linux中的y+s混合格式多核固件的解包、修改和封包过程改进版

6.  在Windows中的y+s混合格式多核固件的解包、修改和封包过程改进版


      在Windows中的yaffs格式固件解包、修改和封包过程改进版或者在Windows中的squashfs格式固件解包、修改和封包过程改进版,都是针对的单一格式的yaffs格式固件或squashfs格式固件,除了第一层用tar封包外,里面的第二层只用了yaffs或squashfs单一格式压缩。

      有些网友制作的固件特别是多核固件,采用了yaffs和squashfs两种格式多层压缩的方式,这时就不能直接使用以前这种针对单一格式固件的解包、修改和封包方法。根据这些混合格式多核固件的结构,要解包、修改和封包这些固件,需要综合使用高清播放机固件解包、修改和封包过程系列中的方法。

      在Windows中解包、修改和封包混合格式多核固件install.img,可能遇到兼容性问题。要想有更好的兼容性,可以参考使用在Linux中的y+s混合格式多核固件解包、修改和封包过程改进版中的方法。它们的过程完全一样,只是操作系统不同。实际过程做起来很简单,主要有以下几步:

1.  把要修改的混合格式多核固件install.img复制粘贴到hdp-win文件夹;

2.  进到hdp-win文件夹,双击open-install,自动生成解压文件夹install、yaffs2_1-root和mydiy-bin;

3.  打开解压文件夹yaffs2_1-root或mydiy-bin,相当于进到播放机的根目录或/usr/local/bin目录,在其中根据需要修改;

4.  修改完解压文件夹install、yaffs2_1-root和mydiy-bin后,回到hdp-win文件夹,双击make-install,自动生成修改后的混合格式多核固件install.img。


准备

        
游客,如果您要查看本帖隐藏内容请回复或点击我就看看,不说话!

在Windows中的混合格式多核固件解包、修改和封包过程改进版


解包

        打开hdp-win文件夹,把要修改的混合格式多核固件install.img复制粘贴到hdp-win文件夹。鼠标双击open-install解包要修改的install.img,自动生成解压文件夹install、yaffs2_1-root和mydiy-bin,这样就可以在其中修改了。同时自动把修改前的install.img改为install.img-old。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

      install文件夹是用tar -xvf命令解包混合格式多核固件install.img后的第一层文件夹。打开install文件夹,可以看到有一个package2文件夹和其他一些文件。打开第二层package2文件夹,可以看到有一个yaffs格式压缩文件yaffs2_1.img和其他一些文件。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

      把yaffs2_1.img用unyaffs命令解压到yaffs2_1-root文件夹,这相当于播放机的根目录。打开yaffs2_1-root文件夹,可以看到opt文件夹和其他一些文件夹和文件。再继续打开opt文件夹,可以看到有一个squashfs格式压缩文件mydiy.img和其他一些文件夹和文件。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

      把mydiy.img用unsquashfs命令解压到mydiy-bin文件夹,这相当于使用了这种混合格式多核固件播放机的/usr/local/bin目录。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

修改

        打开解压后的文件夹yaffs2_1-root或mydiy-bin,相当于进到播放机的根目录或/usr/local/bin目录,我们可以根据需要在其中修改增加内容。

        如果只是小修小补,可用记事本修改后直接保存就可以了,但不能用写字板修改后保存,而且修改时还要很小心,不能随便回车换行等。如果修改比较大,修改时要注意不要改变文件原来的格式或属性,最好用之类的编辑软件来修改编辑。

        固件解包后的install\package2\usr.local.etc.tar.bz2压缩文件中的内容,就是强刷升级固件后播放机/usr/local/etc的内容。要想修改强刷升级固件后播放机/usr/local/etc的内容,就要修改固件解包后的usr.local.etc.tar.bz2压缩文件中的内容。现在的改进版是可以直接在解压后的文件夹yaffs2_1-root/usr/local/etc中修改,封包时把修改后的内容自动复制到usr.local.etc.tar.bz2压缩文件中。强刷修改后的固件时,在播放机中/usr/local/etc目录所见即所得。


封包

      修改完yaffs2_1-root和mydiy-bin后,就可以开始重新封包固件了,封包的顺序和解包的顺序相反。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

      回到hdp-win文件夹,鼠标双击make-install后,首先用mksquashfs命令把文件夹mydiy-bin压缩成squashfs格式的压缩文件mydiy.img并替换原来的mydiy.img。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

      其次用mkyaffs2image命令把文件夹yaffs2_1-root压缩成yaffs格式的压缩文件yaffs2_1.img并替换原来的yaffs2_1.img。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

      最后用tar -cvf命令把文件夹install中的所有文件夹和文件封包,生成新的混合格式多核固件install.img升级文件。同时删除前面解包时生成的解压文件夹install、yaffs2_1-root和mydiy-bin。

在Windows中的混合格式多核固件解包、修改和封包过程改进版

在Windows中的混合格式多核固件解包、修改和封包过程改进版

        把新生成的install.img拖拽复制到u盘的根目录,就可以把u盘插到播放机刷机了。如果修改前的混合格式多核固件install.img是可以ftp登录播放机的,采用现在的改进版,修改过的混合格式多核固件install.img也是能ftp登录播放机的。

        如果遇到新生成的install.img不能正常刷机运行的情况,有时可能不一定是新生成的install.img有问题,把u盘重新格式化FAT或FAT32,然后再把新生成的install.img复制粘贴到u盘,可能就可以正常刷机了。


说明

      最后需要指出是,多核固件和混合格式多层压缩方式没有必然联系,多核固件也可以采用单一格式压缩方式。不过由于多核固件一般都比较大,采用单一格式压缩时不能采用yaffs格式,只能采用squashfs格式,而且多核固件采用单一格式压缩的squashfs格式比采用混合格式还要小一些。对这种采用单一格式压缩的squashfs格式多核固件解包、修改和封包,可以直接使用在Windows中的squashfs格式固件解包、修改和封包过程改进版中的方法。

      改进版中,除了强刷时/usr/local/etc的内容所见即所得和解决了ftp登录播放机问题,还增加了刷机变砖自动强刷恢复功能。如果用改进版修改的固件刷机后,开机停在开机画面遥控器失灵成为砖机,可把官方固件或自己确信可以正常使用的其他固件install.img复制粘贴到u盘的根目录,同时在u盘的根目录新建一个空文件tag_install作为刷机标志。然后把这个u盘插到播放机上,开机后等一会儿就自动开始刷机了,这时会自动删除u盘中的刷机标志tag_install,即使不拔掉u盘也不会重复刷机。刷机时播放机不需要有强刷开关,也不用TTL串口刷机线和超级终端,也不用telnet登录播放机。

      强刷时/usr/local/etc的内容,有2种情况。一种是把usr.local.etc.tar.bz2压缩文件中的内容复制到/usr/local/etc,这种情况的特点是刷机过程中一般没有2次启动。另一种是把usr.local.etc.tar.bz2压缩文件中的内容复制到/usr/local/etc后还要判断/usr/local/etc中有没有刷机标志tag_xxxxxxxx,如tag_20110430。如果没有刷机标志,就要把其中有这个刷机标志的某个目录中的内容,如/opt/tmp中的内容,复制到/usr/local/etc,这种情况的特点是刷机过程中一般会有2次启动。改进版强刷时的效果类似前一种情况,没有2次启动过程。当然,如果固件本身有把某个目录中的内容复制到/usr/local/etc的过程,改进版解包封包固件后不会改变这个过程,这种固件刷机时的2次启动过程不会改变。

        以前使用的在Windows中tar包压缩解压工具不能处理Linux中的符号链接,所以无法修改usr.local.etc.tar.bz2压缩文件中的内容。采用的修改方式是在解压后的文件夹yaffs2_1-root\usr\local\etc中修改,封包时把修改后的内容复制压缩到yaffs2_1.img文件中。强刷修改后的固件时,再把修改后的内容复制到播放机的/usr/local/etc目录。在Windows中采用这种修改方式,固件封包后usr.local.etc.tar.bz2压缩文件中的内容没有修改,还是固件解包前的内容。

        网友rocisky提供的在Windows中tar包压缩解压工具,可以在Windows中处理Linux的符号链接。现在改进版使用了网友rocisky提供的这个在Windows中tar包压缩解压工具,改进版的修改方式也可以像Linux中一样修改保存usr.local.etc.tar.bz2压缩文件了。采用这种修改方式就如同在Linux中一样,固件封包后usr.local.etc.tar.bz2压缩文件中的内容已经修改,是固件修改后的内容。
本帖评分记录RP值 金钱 收起 理由
maxjojo + 2 + 10 很给力!
2869333 + 10
aoe216 + 1 + 6
ppp1234 + 2 + 10 支持老大diy工具的更新!
总评分: RP值 + 5  金钱 + 36 
沙发
发表于 2011-8-10 15:49 | 只看该作者
这到是个新东西
板凳
发表于 2011-8-10 16:32 | 只看该作者
更完善了,辛苦了。
地板
发表于 2011-8-10 17:16 | 只看该作者
支持改进版本!
5
发表于 2011-8-10 17:17 | 只看该作者
大师辛苦了!
6
发表于 2011-8-10 22:53 | 只看该作者
支持更完善的修改方法
因為在Windows底下做修改還是比較順手
感謝分享方法!!!
7
发表于 2011-8-11 01:36 | 只看该作者
支持支持
8
发表于 2011-8-11 13:05 | 只看该作者
很好,很给力!
9
发表于 2011-8-11 14:19 | 只看该作者
支持支持
10
发表于 2011-8-11 21:29 | 只看该作者
支持,我要学习下。

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表
澳洲幸运10怎么算规律 极速3分彩 秒速飞艇稳赢的方法 有谁知道极速赛车的官网吗 极速3分彩 极速赛车彩票官网网址 极速赛车软件 极速赛车彩票官网网址 极速3分彩 秒速时时彩