dpg格式是由日本的moonlight先生所写,应用在NDS的非官方moonshell软件上,可以让NDS游戏主机播放的影片的格式。
规格
dpg = moonlight先生特制的header + mpeg1 layer2 audio + mpeg1 video
(header的意思为一个文件开头描述内部文件内容的重要信息文件资料)
注意虽然理论上要制作dpg档只需要将mpeg2 audio + mpeg1 video前面放置一个特殊header然后组合即可,但是在转置参数的使用上需要特别注意,否则会造成播放不能或是播放出现意外问题.在最强的画面与最佳的体积间进行抉择,什么才是最佳的转置方式恐怕连月光先生都不是很清楚吧?
制作
制作dpg档最大的问题在于,由于header区域需要有对于video frame的总数定义,因此如何正确撷取video frame的数量就是转置的问题关键所在
就是因为需要frame的信息参数去建立header,所以moonlight先生的转档软件支持的格式才有限(目前moonlight支持的格式有限,可以转置的都是文件本身就带有frame数量参数在的格式文件),另一款BatchDPG软件利用的是menocder在转档时的stdout信息,撷取其最后统计出的frame数目,来当成建立header所需的参数
至于如何撷取mencoder在转档时输出的信息画面,这就看个人技术了,但是也并非是很复杂的技巧.
BatchDPG里面有附一个headrmaker.exe,可以用于建立必要的header信息档,使用参数是
headermaker.exe frames fps audio_sample_rate mp2_file_size m1v_file_size header_name
frames : 影片frame张数
fps : 影片播放正确的速率
audio_sample_rate : 播放取样率
mp2_file_szie : mp2文件大小,单位是byte
m1v_file_szie : m1v mpeg1 video文件大小,单位是byte
header_name : 输出的header名称
最后你之需要将header.m1v.mp2文件copy在一起就好了.
注意上面指令的关系前后不能改变,header要放在开头,mp2其次,m1v最后.
上面的信息与技巧参考于网络与BatchDPG与mooshell dpgenc两个转档程序的原始码分析.
资源
目前网络上DPG格式的资源下载站屈指可数,由于用户群不够庞大的原因,所以一些大网站也早起放弃了DPG资源,只剩下一小部分人还在为玩家提供服务 ,就目前看来龙组游戏联盟的DPG资源算是更新最为稳定的。另外玩家可以选择自己来转换DPG资源放在NDS上观看,网络上有很多工具可以转换DPG格式的视频,例如:Ezbuilder,这样的好处就是自己可以想看什么就看什么。
评论
NDS播放DPG的效果还可以,不过因为屏幕分辨率比psp低,可能有人觉得效果不如psp。不过nds游戏性远高于psp,所以这也无可厚非