三星手机论坛(SAMSUNG)'s Archiver

无泪的鱼 发表于 2007-1-24 23:39

玩转小雅-升级/改铃声等等等等想法的实现(3)-短信铃声自制

[size=9pt][size=3][color=blue]闲言碎语不要讲,表一表E878刷铃声!

最近一直没有时间写东西,可是网友们又催得急,只好挤牙膏了,写一点算一点吧。
本帖中所有提到的软件都可以在我的资源贴中找到。(暂时不提供,待整理)
[color=red]刷机有风险,决定请谨慎[/color]
-------------------------------------
在三星推出E878ZCFH2之后,沉寂有一段时间了,估计短期内不会再发布新的版本了,那我们就可以打造属于自己的H2版本了!

确保你看过我的刷机教程贴之后,再进行如下操作噢。

首先,准备好刷机平台和最新的H2版本s3文件,(这个文件最终需要用来做修正档)。这里以我发布的版本和刷机平台为例。

先把你的E878手机刷成H2版本原版的,(这一点很关键,有些时候直接下载的H2版本中没有内置的铃声数据,只有系统数据,因此将它转换为BIN文件后,不能提取铃声表。如果你的E878ZCFH2.S3文件转为BIN之后能提取出铃声表,就可以从下面的偏移制作开始看了!)

然后使用optiflash读取如下的区域:(关于此软件的使用请查阅我从前的帖子,这里不再赘述)
0x20010000 - 0x21ffffff
0x28000000 - 0x29ffffff
是AGERE系统的全部备份。然后我们的操作就是在这个基础上进行的。

[color=red]注意,读出数据操作会造成手机无法启动,不解。
解决办法是重新刷机。[/color][/color][/size]
[size=9pt][size=3][color=blue]然后启动Samsung Diy 4.0 free。
按照下面的顺序分别执行:

切换到“s3文件转换区”页面
点击“打开s3文件”-指向你刚才读取的文件。
确认选择了“全部”(新手对地址加减、转换不熟悉,最好选择全部区域,以免造成错误)
点击“s3->bin”,指定存储位置和文件名

在经过漫长的等待过程时,就会得到一个bin文件了。我们的操作就是在这个文件的基础之上进行的。[/color][/size][/size][/size]
[size=9pt][size=9pt][size=9pt][size=3][color=blue]然后点击samsung diy 4.0 free的“文件-打开手机文件”,找到你刚才得到的bin文件,继续等待漫长的时间,将如下图所示。
点击“获取铃声表”按钮,你就会在漫长的等待后得到这个bin文件的所有铃声数据。当然,如果你使用我提供的H2版本铃声表文件的话,这段时间是可以剩下的,呵呵。

btw,读取的手机文件大概有191兆,转换后大概有600多兆,操作这么大的文件是会造成系统变慢,长时间无响应的,所以请耐心等待,或者找大内存、快硬盘、高主频的机器吧,呵呵,反正我没有~~)[/color][/size]
[size=9pt][size=3][color=blue]这时,你可以在得到的铃声表中通过双击的方式试听音频片断,确定是什么声音,用在了什么地方。当然,前提是你安装了mmf铃声播放软件,一般是MidRadio Player。

或者你也可以通过右键点击列表中项目,将其中的所有铃声都导出成mmf格式音频慢慢欣赏了,呵呵

确定是什么铃声,可以在里面做个标注,以免忘记了。[/color][/size][/size][/size][/size][/size]
[size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=3][color=blue]下面就可以正式开始我们的工作了!替换声音!

这时你面临两个选择,要么采用的铃声素材都比内置的声音小,要么就采用大的声音素材(感觉是废话~~~-_-!),采用小铃声替换,不需要制作偏移,简单方便,就是铃声质量太差,可选择性少。我们先从小的铃声素材开始,这里以低电量的报警音为例说明。关于文件的大小,在软件的列表项目后面有显示,单位是字节。

目的:将烦人的低电量报警音替换成无声
方法:首先找到那个低电量的报警音位置(大家自己试听一下找找看,我怕找错了,呵呵),然后在这个条目上按右键,在弹出的菜单上选择“加入到铃声转换区”[/color][/size]
[size=9pt][size=3][color=blue]我们用无声的mmf文件替换原来的内置声音。

无声.mmf大小为353字节,内置空间为10584字节,所以没有问题,符合我们的要求。

通过左面的路径列表选择你要替换的mmf所在目录,在左下的列表框中就会显示出这个目录下面的所有mmf文件。
我们在无声.mmf文件上点击右键,选择“加入到铃声转换区”[/color]

[attach]55939[/attach]

[color=red]btw,这个软件不稳定,进行这一步操作时,很有可能会造成软件退出。好不容易打开的bin文件就只好再重新打开了。所以最好先不要打开bin文件,先将这一步的目录指向你的mmf文件所在的文件夹,如果没有报错,在继续打开bin文件。报错的话,只好将mmf文件换地方再试试了。[/color][/size]
[size=9pt][size=3][color=blue]在右下角的列表框里面会显示出内置的铃声信息和替换的文件信息,确认无误后,在前面小小方框中点上对号后,用鼠标右键点击它,选择“生成s3文件”。

这里要注意的是,如果你一次替换很多项目的时候,那么在选择内置铃声添加到转换区的步骤中你可以重复添加,那么在右下角的列表框中就会有很多个项目。这时在从左下角的mmf文件列表中添加到转换区时,mmf文件是按照顺序添加的,要注意对应的关系,不要搞错了。

另外,生成s3文件时,只能同时生成1个项目的,就是说,不能同时点击两个及以上的对号去生成s3文件。只能点一项的对号,生成一个。然后点另一项的对号,取消这一个,再生成对应的s3文件。

天啊,希望你们知道我在说些什么!

成功后会有提示窗口。[/color][/size]
[size=9pt][size=3][color=blue]好了,得到的s3文件就是所谓的补丁了!替换其它小铃声,就是这样的,希望大家能依此类推,举一反三。如果你不准备替换大铃声了,那你可以直接往下查几楼,直接到下面看如何使用这补丁吧。留下的同学,请和我一起来替换内置的铃声1,在[color=red]11660[/color]字节内置空间的条件下,如何将体积为[color=red]232180[/color]的god is a girl.mmf装进去![/color][/size]
[size=9pt][size=3][color=blue]要实现这一目的,我们要请出UTRAEDIT,或者其它的十六进制编辑器,比如WIN HEX和HEX WORKSHOP什么的,看你的使用熟练程度了。

首先使用UE打开你转换得到的bin文件,又是等待,不过比以前要快多了。

从铃声表里面得知来电铃声1的位置是0x20a14c00-0x21a1798b。然后我们在UE中点击“编辑”-“转到行/页”。在弹出窗口中输入上述地址:0x20a14c00,就转到了铃声1所在的位置。[/color][/size]
[size=9pt][size=3][color=blue]然后耐心地向上或者向下翻动,直到找到大段的空白空间来放置我们的mmf文件。所谓空白空间,就是以FF或者00为数据的空间。

这里有一个小窍门,当你找到一段空白空间之后后,你可以通过windows自带的计算器来计算一下看能不能放下我们的铃声。这就是一个十六进制和十进制之间转换的问题,windows自带的计算器,设为科学型就足矣满足要求了。

另外,找空间时要耐心,不要大段大段的翻,最好离铃声原来的位置不要太远,以免找到用户数据区,将来可能会被其它数据覆盖,造成铃声丢失。

最后,我们读取的范围是到0x21ffffff为止的,同志们,这个地址往后就都是00了,那些我们没读取的区域在bin文件中是没有体现的,都是00,这些空白区域是不可信的,最好不要使用。我在0x21a1dde0往后找到了大段的FF区域,到0x21FFFFFF大概有多少空间呢?大家可以自己算一下,反正放我们的歌是足够了。[/color][/size][/size][/size][/size][/size][/size][/size][/size][/size][/size][/size]
[size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=3][color=blue]现在回到samsung diy,我们需要用它来制作偏移指针文件。

因为原来的铃声1的位置不能放下我们的大铃声,所以,我需要将铃声1放置到以0x21a1dde0开始的位置上。那么我们需要告诉手机不能再去原来的位置0x20a14c00-0x21a1798b去找铃声1了。这个工作就是偏移。

我们在铃声列表区域里,用右键点击铃声1,选择“修改铃声偏移地址->S108\208\308\V20x“

在弹出的窗口内写上我们预计的新的铃声1的地址0x21a1dde0,大小是232180,点击”查找“

又是漫长的等待,之后会查找出一个引用原来铃声1的地址,我们可以点击”修改“按钮,指定文件名后,会有提示我们生成了s3文件,这个就是所说的指针文件了。[/color][/size][/size][/size][/size][/size][/size][/size][/size][/size][/size][/size][/size]
[size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=9pt][size=3][color=blue]okay,耐心些,我们所做的工作就快要完成了。

铃声1的指针只是告诉手机,以后如果再需要调用铃声1,请去0x21a1dde0开始向后查找232180字节吧。

那么我们需要做的就是把这段铃声写在上述的地址内!

首先还是使用samsung diy 4.0的”s3文件转换区“页面,这时我们使用下面的”bin->s3“功能。

点击“打开bin文件”,在文件类型中选择“所有文件”,找到god is a girl.mmf,确认打开。

选择“部分地址”
起始地址就是0x21a1dde0啦,结束地址就是它加上文件长度的结果,0x21a568d4。是通过windows自带的计算器计算出来的噢。或者你也可以使用samsung diy自带的工具来计算。

确认后会有提示。至此,补丁制作完成了。[/color]

[color=red]再罗嗦一下,这个制作补丁的方法是目前我用过最简单的方法了,大家如果有更简单的方法,不妨交流一下![/color]
[/size][/size][/size]

[/size][/size][/size][/size][/size][/size][/size][/size][/size][/size]

非一般的瘋狂 发表于 2007-1-26 12:45

楼主写的那么详细啊!我学学看.遍个好的铃声来.不一般的铃声

kaoyan 发表于 2007-1-27 00:30

呵呵楼主说了不少废话,直接说重点不行吗??刷个手机铃声不用这么罗嗦吧

fakuang 发表于 2007-2-5 15:23

方法不错,急切盼望楼主早日提供这些软件,我也好来试一试

迷惘 发表于 2007-2-5 18:36

支持楼主多发这些技术帖啊`帮助太大了 顶了

永恒的欢笑 发表于 2007-3-7 18:12

说得真是不怎么样,挺复杂的,不过怎么说也是为了大家好,我就鼓励鼓励吧

小明 发表于 2007-3-7 18:14

不错不错

夺膛以小报 发表于 2007-3-12 18:45

哇,我看还行的嘛,真的不错哦,这样的贴子多来点的好啊

小义的牺牲 发表于 2007-3-15 00:42

挺有趣的哦,呵呵,借楼主的经验,有时间一定要试试看

机关 发表于 2007-10-13 11:46

这个制作我不知道能不能用啊,我得好好的学习一下了支持!

康泰 发表于 2008-1-19 10:06

铛哩个铛铛哩个铛~楼主真地还真是棒,哈哈。:ll

天下为先 发表于 2008-1-26 10:31

楼主你做得真周到,这个很值得我们大家学习学习哦!

禾轩 发表于 2008-1-30 00:09

好复杂啊,还是不会:qq

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.