『漫游』酷论坛>『影音数码技术学习交流』>[已解决]MeGui更新到0.3. ..
[已解决]MeGui更新到0.3.0.2005,遇到问题~
lzhm@2008-09-02 19:08
用D2V Creator打开vob就报错,有没有遇到同样问题的?不知道是我机器问题还是下边的这个更新的bug:
- (kurtnoise) [DGIndexer] updated command line in order to retrieve trackIDs.
- (kurtnoise) [VobinputWindow] added a checkedListbox component to select audio tracks & the code to parse the IFO file.
uc0083@2008-09-02 19:16
DGIndex本来就有gui,所以从来都不需要去megui里开
squallatf@2008-09-02 19:19
可能是
(kurtnoise) [DGIndexer] updated command line in order to retrieve trackIDs.
造成的bug,错误的意思是数组越界。
------------------------------------
更正,刚才看了一下源代码,megui的那个d2vcreater只支持DVD盘中的vob,或者说只支持文件名为vts*.vob的vob。
src
- public static string DetermineMovieIFO(string inputPath)
- {
- // The first 7 characters are the same for each VOB set, e.g.
- // VTS_24_0.VOB, VTS_24_1.VOB etc.
- string[] vobFiles = Directory.GetFiles(inputPath, "vts*.vob");
-
- // Look for the largest VOB set
- string vtsNameCurrent;
- string vtsNamePrevious = Path.GetFileName(vobFiles[0]).Substring(0, 7);
- long vtsSizeLargest = 0;
- long vtsSize = 0;
- string vtsNumber = "01";
- foreach (string file in vobFiles)
- {
- vtsNameCurrent = Path.GetFileName(file).Substring(0, 7);
- if (vtsNameCurrent.Equals(vtsNamePrevious))
- vtsSize += new FileInfo(file).Length;
- else
- {
- if (vtsSize > vtsSizeLargest)
- {
- vtsSizeLargest = vtsSize;
- vtsNumber = vtsNamePrevious.Substring(4, 2);
- }
- vtsNamePrevious = vtsNameCurrent;
- vtsSize = new FileInfo(file).Length;
- }
- }
- // Check whether the last one isn't the largest
- if (vtsSize > vtsSizeLargest)
- vtsNumber = vtsNamePrevious.Substring(4, 2);
-
- string ifoFile = inputPath + Path.DirectorySeparatorChar + "VTS_" + vtsNumber + "_0.IFO";
- // Name of largest VOB set is the name of the IFO, so we can now create the IFO file
- return ifoFile;
- }
string[] vobFiles = Directory.GetFiles(inputPath, "vts*.vob");
这句代码限定了打开vob的文件名,当打开的vob文件所在目录中没有包含vts*.vob命名方式的vob时,vobFiles数组为空,当代码执行到
string vtsNamePrevious = Path.GetFileName(vobFiles[0]).Substring(0, 7);
时vobFiles[0]就产生数组越界。
lzhm@2008-09-02 19:31
谢谢uc0083,DGIndex的gui没问题。
谢谢squall617,看来是命令行编写的问题。
问题已解决,请版主锁帖吧,谢谢。
| TOP