有从mpls抽取chapter输出xml的功能
而这个mod在此基础上追加以下功能:
1、增加ogm格式输出,并强制utf8输出
2、按m2ts分隔输出
3、可指定章节项的最大长度,按此值来分割chapter
4、可自动填入章节标题
5、可输出qpfile
运行环境:
Python2 或者 Python3均可。
脚本参数说明如下:
关于qpfile的输出结果:-n CHAPTERNAME, --chapter-name=CHAPTERNAME
给脚本指定一个文本文件,文件内每行包含一个章节标题。脚本会顺序填入即将输出的chapter中。注意:脚本只是“顺序”填入,并不会智能填入,所以类似某些片子部分ep有avant部分ep没有avant的情况就不适用了 -_,-
-f FORMAT, --format=FORMAT
指定chapter输出格式,xml 或 ogm,默认为ogm
-o OUTPUT, --output=OUTPUT
指定输出路径。此参数非必需,若不指定,则脚本按内置命名规则输出;若指定此参数,则脚本以此参数的值为输出路径的前缀,脚本内置命名规则生成文件名后缀,前后缀合并作为输出文件名。
-q, --qpfile
是否输出qpfile的开关,输出路径规则同章节文件输出规则
--force-fps=FORCE_FPS
指定帧率以覆盖mpls记录的m2ts帧率,格式为xxxxx/xxxx,脚本根据此帧率来计算qpfile的输出帧。此参数一般用于对30i片源做IVTC的情况。
--time-code=TIMECODE
向脚本提供一个v2格式的timecode文件,脚本根据此timecode来计算qpfile的输出帧。此参数一般用于片源需要处理成VFR的情况。
--scene-cut
向脚本提供一个scene change的frame list,用以辅助脚本修正qpfile的输出,而chapter也会同步修正输出。因此修正的准确度依赖于所提供的scene change file。
--include=INCLUDE
给定一个5位数字的m2ts文件编号,例如--include 00002,则脚本只输出该编号对应的chapter/qpfile
-l MAXLENGTH, --max-length=MAXLENGTH
指定章节项的时间戳最大值,格式为hh:mm:ss。若在一个playlist里面遇到时间戳大于该值的章节项时,则从该章节项开始分割这个playlist,并调节分割后的时间戳。此功能一般用于对付一个m2ts内含两集动画的情况。
一般来说,如果不对片源作“改变帧数”处理的话,qpfile中的帧数都是准确对应各章节项的起始帧的。如果您在这种情况下使用本脚本得到的qpfile不是完全准确的,请作为bug报告给作者。
但是,如果对片源做了“改变帧数”的处理,例如IVTC或者手动/自动VFR等等,qpfile的输出结果就很难保证完全准确,使用该qpfile前请对照avs进行必要的修正。这种情况下生成的qpfile一般是有些是准确的有些是不准确的,就权当是参考资料吧。
Q:这个脚本抽出来的chapter好像有问题,我如何确认?
A:可以运行eac3to或者bdtools里的mpls_dump,对照结果。
# changlog:
# 2012-07-21:
# * bug fix: delete "link point"
# 删除"link point"类型的Playlist Mark entry
#
# 2012-02-05:
# * bug fix: exception occured when extract a empty playlist of some m2ts
# * 当mpls里的m2ts的playlist为空时,处理不当而抛异常。
#
# 2011-12-29:
# * add: --scene-cut, give a file contains scene cut frame number, to help script ajust qpfile/chapter output.
# 指定一个内容为scene cut帧号的文件,辅助本脚本修正qpfile/chapter的输出。
# 至于scene cut文件如何来,就请八仙过海吧。例如可以用taro新发布的SCDetect脚本。
# * add: add a comment line to the end of splited qpfile, to give a hint where to trim m2ts file
# 在分割的qpfile文件末尾写入一行注释,记录分割项的第一项在源m2ts的位置,以便trim。
# 2011-12-26:
# * bug fix: error output of splited chapter/qpfile.
# 修正分割时的输出错误
# * bug fix: some mpls fill 00 at the end can't extract.
# 不能抽取那些在文件尾填充00的mpls(例如白兔糖的BD)
下载地址(或者附件):
http://code.google.com/p/cunhan-media-t ... pters_MOD/