public static void Transform(BDInfo.BDROM bdrom, Disc disc) { var fs = new DiscFileSystem { Directories = new DiscFileSystem.DiscDirectories { Root = bdrom.DirectoryRoot, BDMV = bdrom.DirectoryBDMV, CLIPINF = bdrom.DirectoryCLIPINF, PLAYLIST = bdrom.DirectoryPLAYLIST, STREAM = bdrom.DirectorySTREAM, SSIF = bdrom.DirectorySSIF, BDMT = GetBDMTDirectory(bdrom.DirectoryBDMV), BDJO = bdrom.DirectoryBDJO, SNP = bdrom.DirectorySNP, ANY = GetDirectory("ANY!", bdrom.DirectoryRoot), MAKEMKV = GetDirectory("MAKEMKV", bdrom.DirectoryRoot), AACS = null /* assigned below */, DCOPY = null /* assigned below */ }, Files = new DiscFileSystem.DiscFiles { AnyDVDDiscInf = GetFile("disc.inf", bdrom.DirectoryRoot), MCMF = null, /* assigned below */ BDMT = new FileInfo[0], /* assigned below */ DBox = GetFile("FilmIndex.xml", bdrom.DirectoryRoot), JacketImageSmall = null, /* assigned below */ JacketImageLarge = null /* assigned below */ } }; fs.Directories.AACS = GetAACSDirectory(fs); fs.Directories.DCOPY = GetDCopyDirectory(fs); fs.Files.MCMF = GetFileOrBackup("mcmf.xml", fs.Directories.AACS); fs.Files.BDMT = GetFilesByPattern("bdmt_???.xml", fs.Directories.BDMT); fs.Files.JacketImageSmall = GetJacketImage(JacketSize.Small, fs.Directories.BDMT); fs.Files.JacketImageLarge = GetJacketImage(JacketSize.Large, fs.Directories.BDMT); disc.FileSystem = fs; }
public static Disc Transform(BDInfo.BDROM bdrom) { var tsPlaylistFiles = PlaylistTransformer.Transform(bdrom.PlaylistFiles); var disc = new Disc { PrimaryLanguage = bdrom.DiscLanguage, Playlists = PlaylistTransformer.Transform(tsPlaylistFiles) }; DiscFileSystemTransformer.Transform(bdrom, disc); DiscFeaturesTransformer.Transform(disc); DiscMetadataTransformer.Transform(disc); // Data gathering TransformPrimaryLanguage(disc); TransformVideoLanguages(disc); TransformLanguageList(disc); TransformTitle(disc); return(disc); }