Example #1
0
        public MkvMerge(Job job, Playlist playlist, string outputMKVPath, IJobObjectManager jobObjectManager, ITempFileRegistrar tempFileRegistrar)
            : base(jobObjectManager)
        {
            _tempFileRegistrar = tempFileRegistrar;

            var cli = new MkvMergeCLI(Arguments, tempFileRegistrar)
                      .SetOutputPath(outputMKVPath)
                      .SetSelectedTracks(playlist)
                      .NoGlobalTags()
                      .NoTrackTags()
                      .NoChapters()
                      .SetInputPath(playlist.FullPath)
                      .AttachCoverArt(job.SelectedReleaseMedium)
                      .SetMovieTitle(job)
                      .SetChapters(playlist.Chapters)
            ;

            ExePath = cli.ExePath;

            StdOut += HandleOutputLine;
            StdErr += HandleOutputLine;
            Exited += (state, code, exception, time) => OnExited(state, code, job.SelectedReleaseMedium, playlist, outputMKVPath);

//            CleanExit = false;
        }
Example #2
0
        private MkvMerge(ArgumentList arguments, IJobObjectManager jobObjectManager)
            : base(jobObjectManager)
        {
            Arguments = arguments;

            var cli = new MkvMergeCLI(Arguments, null);

            ExePath = cli.ExePath;
        }