主题 : 【求助】如何将 cdi 格式转回 gdi+镜像 格式?
级别: 模拟之星
UID: 321500
精华: 0
发帖: 54
威望: 0 星
金钱: 11114 浮游币
贡献值: 16 点
好评度: 165 点
人气: 0 点
在线时间: 568(时)
注册时间: 2019-02-25
最后登录: 2024-12-24
楼主  发表于: 2020-02-14 16:11

【求助】如何将 cdi 格式转回 gdi+镜像 格式?

2020-10-29更新帖子

由于楼主已准备安心养老,强迫症也在自我治疗当中……
所以本帖也就到此为止了。
不过在这期间,已经有网友研究出了怎么从cdi转回gdi。
现在贴出网友Sho的心得,供有需要的朋友参考:

通过两晚上的研究,终于找到办法了。
主要思路是把想使用汉化游戏或改版游戏的cdi文件(一般700m左右)解压出来。
再找到这个游戏的redump版的gdi文件,转换为旧版的gdi(可以压缩至很小的chd),也解压出来。
把两个目录比较一下,把cdi中修改和汉化的文件复制到gdi的解压文件中。
修改启动文件1st的几个字节(要参考YZB老大的转cdi的教程),再重新打包gdi文件,再转chd就可以了。
转换成功的有:sf3简化出招版275M,斑鸠汉化版25.8M,cvs2简化出招版177M,沉默狙击手80M,Virtua Striker 2修改版90M。

解压和打包工具在这里找到的:projects.sappharad.com/tools/gdibuilder.html

-------------------------------------------------------------

为什么要将 cdi 转回 gdi+bin 呢?
因为目前的模拟器已经支持了 chd v5 格式
一种数据用 7z 压缩,音轨无损 flac 压缩,还能即时读取的镜像格式
这种格式甚至几乎没有读取延迟,现已非常强了,可以由 gdi 转成 chd
而且这种格式是无损压缩,不改变镜像结构、lba,能随时转回 gdi+bin
比如 DC<斑鸠>日版 gdi 原始镜像 1.2GB > chd 镜像 25MB...
其汉化版 210MB >chd 20MB(如果能将汉化版转回 gdi)
这里提供下载给各位参考:pan.baidu.com/s/1cDqLNg
另外对镜像压缩有兴趣的,可以看看下面这篇文章
emulation.gametechwiki.com/index.php/Save_Disk_Space_for_ISOs

cdi 无法用 daemon+ultraiso 转成 cue+bin
转出来的镜像实际上是损坏的,无法使用
查了很多资料,发现一种工具 cdirip可以将 cdi转回
但网上这个工具的连接,已经全死了
不知道坛里有哪位坛友,保留有这工具吗?



虽然网上现成的此工具已经枯竭了
但我却找到了源码,希望有哪位大佬帮忙编译一下
万分感谢!


----------------------------------------------------------------------

因为之前还未详测后就发问,DC 模拟器有没有支持 chd格式的。
一些坛友都表示,DC 模拟器已经支持 chd格式了。
于是就有了今天这一出,鄙人一直捣鼓研究到现在,倒也有个结果了。

最后发现:
一个更重要的问题,不知道一些坛友所支持游戏的 chd格式具体版本是多少。
但我自己用 chdman V4(140) or V5(146) 转的 redump 镜像,目前所有 DC 模拟器均不支持!不管 PC还是安卓。
其他我所遇到的支持 chd格式的模拟器,都是支持 chd v5 的。(压缩率最高)
比如 MDCD模拟器,NEOCD模拟器,PCECD模拟器,SS模拟器。

也许某些 DC 模拟器已经支持早期版本的 chd 格式
但早期版本的 chd 格式压缩率应该不会太高,这样将 cdi 转 chd 似乎就显得并不算迫切了...

算了,暂时不折腾了。
期待有一天,哪款 DC 模拟器能支持 chd v5 吧!

-------------------------------------------------------------------

已有好的消息:
flycast、reicast 和 demul 都支持 gdi 转 chd v5 格式!
[ 此帖被willzyj在2020-10-29 23:54重新编辑 ]
YZB
级别: 超级版主

UID: 12451
精华: 6
发帖: 19104
威望: 173 星
金钱: 2052 浮游币
贡献值: 10266 点
好评度: 54888 点
人气: 4322 点
在线时间: 19807(时)
注册时间: 2004-10-02
最后登录: 2024-12-23
沙发  发表于: 2020-02-14 22:14

首先CDI和iso img cue一样,只是一种镜像格式

然后因为cdi这种封装格式可以很好的支持dc游戏,并且刻录,模拟都比较方便,所以大部分dc游戏都是用这种格式,

ultraiso只能制作不带音轨的镜像

想转成cue的话只能用其他软件转,比如cloneCD 镜像

另外多说一句,因为不了解chd格式,不好说,但是用cdi的容量去对比大小是不对的

因为cdi因为为了方便刻录,很多游戏在里面加了垃圾文件填充

另外可以传个小点的chd格式游戏上来看看
YZB
级别: 超级版主

UID: 12451
精华: 6
发帖: 19104
威望: 173 星
金钱: 2052 浮游币
贡献值: 10266 点
好评度: 54888 点
人气: 4322 点
在线时间: 19807(时)
注册时间: 2004-10-02
最后登录: 2024-12-23
板凳  发表于: 2020-02-15 08:10

cdi只是一种镜像格式,没有能不能可逆的说法。只要能载入虚拟光驱,能正常读取复制文件就可以了。
另外dc的载体是gd光盘,无损的说法只能是指文件,格式都是人为定义出来的,就看支持的工具模拟器多不多了。目前你找的工具转换支持cue但是不支持cdi,只能说这个工具不支持cdi,并不能说cue就是无损其他就不是。

chd格式我知道mame模拟器是支持的,在dc游戏这方面我只知道demul模拟器支持,不知道另外2种模拟器支不支持,至于在主机上,估计不支持吧,比如刻盘,gdemu,以及Dreamshell系统上

另外没有一键转换这种东西,各个镜像格式都有它们各种的定义,如果想转换只能使用它们的专用软件。如果不行,也并不一定就是你口中所说的不可逆转,也可能是其他方面的问题,比如bin+cue这种镜像格式,据我所知,这种格式不能装载cd音轨+数据轨这种比较特殊的格式吧?(以前下载过的redump发布的ss ps镜像,但凡是有音轨的,都是bin数据+n个bin音轨组成的)

你所说的cue,无非也是这种数据+音轨分离的组合方式(track命名的数据bin+n个track的音轨)。但是cdi不同,它是把数据和音轨封装在一起的格式,所以你前面说的转换没用,一闪而过,就因为cue+bin只能数据和音轨分离,遇到这种只能傻眼了。

最后回到原话,想转换的话,与其期待一键转换还不如期待转换软件更新支持更多的格式。
说到通用性上,仅在dc游戏上这块来说,原始gd光盘数据是gdi+bin(或者说是cue+bin),而修改交流分享目前cdi还是主流,chd用的人相对少,而且在各个平台支持的恐怕也不多,等什么时候普及了会考虑制作的。

最后问一下,转成chd格式可以转回来吗?比如用redump转成的chd可以还原回来吗?
YZB
级别: 超级版主

UID: 12451
精华: 6
发帖: 19104
威望: 173 星
金钱: 2052 浮游币
贡献值: 10266 点
好评度: 54888 点
人气: 4322 点
在线时间: 19807(时)
注册时间: 2004-10-02
最后登录: 2024-12-23
地板  发表于: 2020-02-16 18:49

Re:回 9楼(YZB) 的帖子

引用
引用第12楼willzyj于2020-02-15 22:28发表的 回 9楼(YZB) 的帖子 :
已经有结论了:
目前 PC 和 安卓端, DC 模拟器,都支持 chd v5格式。
一种压缩率 ≥ 7z 的即时读取的镜像格式。
1楼我已经更新了 chd格式对游戏压缩大小的说明。
这里也给大佬提供此游戏的 redump 和 chd格式
.......


先说一下新版的cue也是可以转的,只是因为redump不知道什么原因从去年开始把相关文件改了2次,第一次改文件名改格式,第二次改直接改成cue后缀了
转换的相关讨论在2年前就有帖子说了,你照那个软件转回普通的gdi格式就可以了,http://bbs.chinaemu.org/read-htm-tid-96773.html

然后说一下这种压缩格式,是我孤陋寡闻了,一种压缩率 ≥ 7z 的压缩格式还能即时读取?哪怕现在就连pc的7z都做不到.我用斑鸠压了一个chd,用winhex看了一下,文件是整个压缩的,运行原理应该是把整个文件全部解压到内存或者一个临时文件?如果第一次读取会占用很多时间吧?当然,这只是我一个门外汉的个人猜想,具体怎么运行的,得看源码才知道


接着来说转回gdi的事,因为现在网上都有原版gdi的镜像的缘故,所以现在我发布的镜像都是用gdi转成cdi的,所以也没去研究怎么再转回去,为什么要转回去?根本没有任何意义,需要的话直接用原版gdi文件不就行了?如果你指的是那些中文版,想转回gdi然后再压成chd来节约空间,在我看来,还不如直接把镜像用7z的最大压缩比来压好保持更好,个人觉得压缩比会比chd的大一点。
废话说了那么多如果你不死心当然有方法转回去,虽然我没试过。生化危机3的汉化版发布的就是gdi文件,制作的方法我曾经问过汉化者phoe-nix,他说过国外有个制作软件叫gdi build?,是一个老外写的,写这个软件的初衷是原gdi文件太大,用这个软技能转小很多,就比如你说的斑鸠,有兴趣可以去找找看

最后再再再说一下压缩率的问题吧,你说的大压缩率是建立在以原始数据为基础来压的,dc的原盘都是1.2G,所以解压的镜像都是1.2g,这点和wii以及ngc一样,不管原游戏用了多少空间,统一填充到1.2G。知道这点就好理解了,那些大压缩率的游戏本身就没有用多少空间,有的甚至才用几十M(比如斑鸠  世嘉俄罗斯方块),几M(某些小游戏,比如世嘉出的那个挖宝游戏),这些游戏看看原游戏的压缩镜像就知道了。然后说回cdi的事,因为cdi大部分是为刻盘服务的,所以大部分这些小游戏都加了垃圾文件填充进去,所以看起来就非常大了,如果小的话也可以很小的,这个是我做的斑鸠镜像,支持模拟器也支持刻盘,但是很小,压缩包16m,解压20m   https://pan.baidu.com/s/1c0pO47m 密码: fhul,当然因为文件被压缩的缘故所以可以这么小,原游戏30M,单独做成cdi也就50m左右
上面说那么多,我无非只想表达1点,萝卜青菜各有所爱,你喜欢chd,当然可以随便转,但是也不能说cdi格式就是不可逆的镜像     
还有,后来redump发的这些原盘文件,SONIC3D说过,音轨部分被偏移了多少来着,一下想不起来了,反正是数据不准确~为此他还去反映多,结果嘛,只能自己写个软件转换了   


最最最后,我多嘴说一句,某些游戏加了不可压缩的垃圾数据进去,对于这种游戏,不管是7z还是chd都是压不小的,但是cdi是可以直接删除这些垃圾文件的(比如恶魔战士 . 欢乐桑巴 .私立学院 . cap vs snk .GUN SPIKE. 还有一些想不起了)


null哪个版本开始支持chd了?能发个上来吗?
[ 此帖被YZB在2020-02-16 20:13重新编辑 ]