コード例 #1
0
        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;
        }
コード例 #2
0
ファイル: DiscTransformer.cs プロジェクト: rafntor/bdhero
        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);
        }