public void remuxTemplate3EAC3ToOutputNamingService_can_set_audio_name_test()
 {
     //given not extract for remux
     EAC3ToConfiguration config = new EAC3ToConfiguration()
     {
         IsExtractForRemux = true,
         RemuxFileNameTemplate = new EAC3ToRemuxFileNameTemplate()
         {
             AudioType = "FLAC 5.1",
             SeriesName = "BatchGuy",
             SeasonNumber = "2",
             SeasonYear = "1978",
             Tag = "Guy",
             VideoResolution = "1080p"
         }
     };
     string filesOutputPath = "c:\\bluray";
     string paddedEpisodeNumber = "01";
     string episodeName = "Episode 1";
     //when i get the audio name
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService service = new RemuxTemplate3EAC3ToOutputNamingService(audioService);
     BluRayTitleAudio audio = new BluRayTitleAudio() { Id = "5:", AudioType = EnumAudioType.DTSMA, Language = "english" };
     string audioName = service.GetAudioName(config, audio, filesOutputPath, paddedEpisodeNumber, episodeName);
     //then audio name should be based on the remux template
     audioName.Should().Be("\"c:\\bluray\\2x01 Episode 1 english01-5.dtsma\"");
 }
 public void movieRemuxTemplate1EAC3ToOutputNamingService_can_set_audio_name_test()
 {
     //given not extract for remux
     BluRaySummaryInfo summary = new BluRaySummaryInfo() { IsSelected = true, RemuxFileNameForMovieTemplate = new EAC3ToRemuxFileNameTemplate()
         {
             AudioType = "FLAC 5.1",
             SeriesName = "BatchGuy",
             SeasonNumber = "2",
             SeasonYear = "1978",
             Tag = "Guy",
             VideoResolution = "1080p"
         }
     };
     EAC3ToConfiguration config = new EAC3ToConfiguration()
     {
         IsExtractForRemux = true,
         IfIsExtractForRemuxIsItForAMovie = true
     };
     string filesOutputPath = "c:\\bluray";
     string paddedEpisodeNumber = "01";
     string episodeName = string.Empty;
     //when i get the audio name
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService service = new MovieRemuxTemplate1EAC3ToOutputNamingService(audioService);
     BluRayTitleAudio audio = new BluRayTitleAudio() { Id = "5:", AudioType = EnumAudioType.DTSMA, Language = "english" };
     service.SetCurrentBluRaySummaryInfo(summary);
     string audioName = service.GetAudioName(config, audio, filesOutputPath, paddedEpisodeNumber, episodeName);
     //then audio name should be based on the remux template
     audioName.Should().Be("\"c:\\bluray\\BatchGuy 1978 1080p FLAC 5.1-Guy english01-5.dtsma\"");
 }
 public FFMSIndexBatchFileWriteService(EAC3ToConfiguration eac3toConfiguration, IDirectorySystemService directorySystemService, List<BluRayDiscInfo> bluRayDiscInfo, AbstractEAC3ToOutputNamingService eac3ToOutputNamingService)
 {
     _bluRayDiscInfoList = bluRayDiscInfo;
     _eac3toConfiguration = eac3toConfiguration;
     _directorySystemService = directorySystemService;
     _eac3ToOutputNamingService = eac3ToOutputNamingService;
     _errors = new ErrorCollection();
 }
예제 #4
0
 public FFMSIndexOutputService(EAC3ToConfiguration config, AbstractEAC3ToOutputNamingService eac3ToOutputNamingService, string bluRayPath, BluRaySummaryInfo bluRaySummaryInfo)
 {
     _eac3ToConfiguration = config;
     _eac3ToOutputNamingService = eac3ToOutputNamingService;
     _bluRayPath = bluRayPath;
     _bluRaySummaryInfo = bluRaySummaryInfo;
     this.Init();
 }
 public override string GetSubtitleName(EAC3ToConfiguration eac3toConfiguration, BluRayTitleSubtitle subtitle, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
 {
     StringBuilder sb = new StringBuilder();
     if (eac3toConfiguration.IsExtractForRemux != true)
     {
         sb.Append(string.Format("\"{0}\\{1}{2}-{3}{4}.sup\"", filesOutputPath, subtitle.Language, paddedEpisodeNumber, subtitle.Id.RemoveColons(), this.GetSubtitleCommentary(subtitle)));
     }
     return sb.ToString();
 }
 public MKVMergeDefaultSettingsService(EAC3ToConfiguration eac3toConfiguration, ApplicationSettings applicationSettings, BluRaySummaryInfo bluRaySummaryInfo, 
     IMKVMergeLanguageService languageService, IAudioService audioService)
 {
     _eac3toConfiguration = eac3toConfiguration;
     _applicationSettings = applicationSettings;
     _bluRaySummaryInfo = bluRaySummaryInfo;
     _languageService = languageService;
     _audioService = audioService;
 }
 public override string GetLogName(EAC3ToConfiguration eac3toConfiguration, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
 {
     StringBuilder sb = new StringBuilder();
     if (eac3toConfiguration.IsExtractForRemux != true)
     {
         sb.Append(string.Format(" -log=\"{0}\\log{1}.log\"", filesOutputPath, paddedEpisodeNumber));
     }
     return sb.ToString();
 }
 public void eac3tocommonrulesvalidatorservice_has_no_disc_selected_error_when_no_disc_selected_test()
 {
     List<BluRayDiscInfo> discList = new List<BluRayDiscInfo>() { new BluRayDiscInfo() { Id = 1, IsSelected = false, BluRayPath = @"c:\temp\disc1" } };
     EAC3ToConfiguration config = new EAC3ToConfiguration();
     var directorySystemServiceMock = new Mock<IDirectorySystemService>();
     directorySystemServiceMock.Setup(m => m.Exists(It.IsAny<string>())).Returns(true);
     IEAC3ToCommonRulesValidatorService service = new EAC3ToCommonRulesValidatorService(config, directorySystemServiceMock.Object, discList);
     bool isValid = service.IsAtLeastOneDiscSelected();
     service.Errors[0].Description.Should().Be("No Disc was selected.");
 }
 public EAC3ToBatchFileWriteService(EAC3ToConfiguration eac3toConfiguration, IDirectorySystemService directorySystemService, List<BluRayDiscInfo> bluRayDiscInfo, IAudioService audioService, AbstractEAC3ToOutputNamingService eac3ToOutputNamingService, IEAC3ToCommonRulesValidatorService eac3ToCommonRulesValidatorService)
 {
     _bluRayDiscInfoList = bluRayDiscInfo;
     _eac3toConfiguration = eac3toConfiguration;
     _directorySystemService = directorySystemService;
     _audioService = audioService;
     _eac3ToOutputNamingService = eac3ToOutputNamingService;
     _eac3ToCommonRulesValidatorService = eac3ToCommonRulesValidatorService;
     _errors = new ErrorCollection();
 }
 public override string GetAudioName(EAC3ToConfiguration eac3toConfiguration, BluRayTitleAudio audio, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
 {
     StringBuilder sb = new StringBuilder();
     if (eac3toConfiguration.IsExtractForRemux != true)
     {
         sb.Append(string.Format("\"{0}\\{1}{2}-{3}{4}.{5}\"", filesOutputPath, audio.Language, paddedEpisodeNumber, audio.Id.RemoveColons(), this.GetAudioCommentary(audio),
         _audioService.GetAudioExtension(audio.AudioType)));
     }
     return sb.ToString();
 }
 public MKVMergeBatchFileWriteForEncodeService(BatchGuyEAC3ToSettings batchGuyEAC3ToSettings, IDirectorySystemService directorySystemService, IAudioService audioService, AbstractEAC3ToOutputNamingService eac3ToOutputNamingService, IEAC3ToCommonRulesValidatorService eac3ToCommonRulesValidatorService)
 {
     _batchGuyEAC3ToSettings = batchGuyEAC3ToSettings;
     _bluRayDiscInfoList = _batchGuyEAC3ToSettings.BluRayDiscs;
     _eac3toConfiguration = _batchGuyEAC3ToSettings.EAC3ToSettings;
     _directorySystemService = directorySystemService;
     _audioService = audioService;
     _eac3ToOutputNamingService = eac3ToOutputNamingService;
     _eac3ToCommonRulesValidatorService = eac3ToCommonRulesValidatorService;
     _errors = new ErrorCollection();
 }
 public void eac3tocommonrulesvalidatorservice_has_invalid_bluray_directory_error_when_some_bluray_disc_directories_dont_exist_test()
 {
     List<BluRayDiscInfo> discList = new List<BluRayDiscInfo>() { new BluRayDiscInfo() { Id = 1, IsSelected = true,BluRayPath = @"c:\temp\disc1",
         BluRaySummaryInfoList = new List<BluRaySummaryInfo>() { new BluRaySummaryInfo() { IsSelected = true,
      BluRayTitleInfo = new BluRayTitleInfo() { EpisodeNumber = "1", Video = new BluRayTitleVideo() { IsSelected = true} }} } } };
     EAC3ToConfiguration config = new EAC3ToConfiguration();
     var directorySystemServiceMock = new Mock<IDirectorySystemService>();
     directorySystemServiceMock.Setup(m => m.Exists(It.IsAny<string>())).Returns(false);
     IEAC3ToCommonRulesValidatorService service = new EAC3ToCommonRulesValidatorService(config, directorySystemServiceMock.Object, discList);
     bool isValid = service.IsAllBluRayPathsValid();
     service.Errors[0].Description.Should().Be("Invalid Blu-ray disc directories found.");
 }
 public void eac3tocommonrulesvalidatorservice_has_episode_number_not_set_for_all_titles_error_when_some_episodes_numbers_not_set_test()
 {
     List<BluRayDiscInfo> discList = new List<BluRayDiscInfo>() { new BluRayDiscInfo() { Id = 1, IsSelected = true,BluRayPath = @"c:\temp\disc1",
         BluRaySummaryInfoList = new List<BluRaySummaryInfo>() { new BluRaySummaryInfo() { IsSelected = true,
      BluRayTitleInfo = new BluRayTitleInfo() { Video = new BluRayTitleVideo() { IsSelected = true} }} } } };
     EAC3ToConfiguration config = new EAC3ToConfiguration();
     var directorySystemServiceMock = new Mock<IDirectorySystemService>();
     directorySystemServiceMock.Setup(m => m.Exists(It.IsAny<string>())).Returns(true);
     IEAC3ToCommonRulesValidatorService service = new EAC3ToCommonRulesValidatorService(config, directorySystemServiceMock.Object, discList);
     bool isValid = service.IsAllEpisodeNumbersSet();
     service.Errors[0].Description.Should().Be("Episode number not set for all selected titles.");
 }
 public override string GetVideoName(EAC3ToConfiguration eac3toConfiguration, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
 {
     StringBuilder sb = new StringBuilder();
     if (eac3toConfiguration.IsExtractForRemux != true)
     {
         if (eac3toConfiguration.IsVideoNameForEncodeMkvMerge == false)
             sb.Append(string.Format("\"{0}\\video{1}.mkv\"", filesOutputPath, paddedEpisodeNumber));
         else
             sb.Append(string.Format("\"{0}\"", episodeName));
     }
     return sb.ToString();
 }
        public override string GetVideoName(EAC3ToConfiguration eac3toConfiguration, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
        {
            StringBuilder sb = new StringBuilder();
            if (eac3toConfiguration.IsExtractForRemux == true)
            {
                string videoName = string.Format("{0}{1}{2}", this.GetFormattedSeasonNumber(eac3toConfiguration),
                    this.GetFormattedPaddedEpisodeNumber(paddedEpisodeNumber), this.GetFormattedEpisodeName(episodeName));

                sb.Append(string.Format("\"{0}\\{1}.mkv\"", filesOutputPath, this.AddWordSeparator(eac3toConfiguration.IsExtractForRemux, eac3toConfiguration.RemuxFileNameTemplate.UsePeriodsInFileName, videoName.Trim().RemoveDoubleSpaces())));
            }
            return sb.ToString();
        }
        public override string GetSubtitleName(EAC3ToConfiguration eac3toConfiguration, BluRayTitleSubtitle subtitle, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
        {
            StringBuilder sb = new StringBuilder();
            if (eac3toConfiguration.IsExtractForRemux == true)
            {
                string subtitleName = string.Format("{0}{1}{2}", this.GetFormattedSeasonNumber(eac3toConfiguration),
                    this.GetFormattedPaddedEpisodeNumber(paddedEpisodeNumber), this.GetFormattedEpisodeName(episodeName));

                sb.Append(string.Format("\"{0}\\{1} {2}{3}-{4}{5}.sup\"", filesOutputPath, this.AddWordSeparator(eac3toConfiguration.IsExtractForRemux, eac3toConfiguration.RemuxFileNameTemplate.UsePeriodsInFileName, subtitleName.Trim().RemoveDoubleSpaces()), subtitle.Language, paddedEpisodeNumber, subtitle.Id.RemoveColons(), this.GetSubtitleCommentary(subtitle)));
            }
            return sb.ToString();
        }
 public void eac3tocommonrulesvalidatorservice_when_summary_selected_at_least_one_stream_selected_test()
 {
     List<BluRayDiscInfo> discList = new List<BluRayDiscInfo>() { new BluRayDiscInfo() { Id = 1, IsSelected = true,BluRayPath = @"c:\temp\disc1",
         BluRaySummaryInfoList = new List<BluRaySummaryInfo>() { new BluRaySummaryInfo() { IsSelected = true,
      BluRayTitleInfo = new BluRayTitleInfo() { EpisodeNumber = "1", Video = new BluRayTitleVideo() { IsSelected = false} }} } } };
     EAC3ToConfiguration config = new EAC3ToConfiguration();
     var directorySystemServiceMock = new Mock<IDirectorySystemService>();
     directorySystemServiceMock.Setup(m => m.Exists(It.IsAny<string>())).Returns(false);
     IEAC3ToCommonRulesValidatorService service = new EAC3ToCommonRulesValidatorService(config, directorySystemServiceMock.Object, discList);
     bool isValid = service.WhenSummarySelectedAtLeastOneStreamSelected();
     service.Errors[0].Description.Should().Be("Some selected titles have no streams selected.");
 }
        public override string GetAudioName(EAC3ToConfiguration eac3toConfiguration, BluRayTitleAudio audio, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
        {
            StringBuilder sb = new StringBuilder();
            if (eac3toConfiguration.IsExtractForRemux == true)
            {
                string audioName = string.Format("{0}, {1}E{2}{3}", eac3toConfiguration.RemuxFileNameTemplate.SeriesName, this.GetFormattedSeasonNumber(eac3toConfiguration),
                    this.GetFormattedPaddedEpisodeNumber(paddedEpisodeNumber), this.GetFormattedYear(eac3toConfiguration));

                sb.Append(string.Format("\"{0}\\{1} {2}{3}-{4}{5}.{6}\"", filesOutputPath, this.AddWordSeparator(eac3toConfiguration.IsExtractForRemux, eac3toConfiguration.RemuxFileNameTemplate.UsePeriodsInFileName, audioName.Trim().RemoveDoubleSpaces()), audio.Language, paddedEpisodeNumber, audio.Id.RemoveColons(),
                    this.GetAudioCommentary(audio), _audioService.GetAudioExtension(audio.AudioType)));
            }
            return sb.ToString();
        }
예제 #19
0
 public void mkvmergeoutputservice_can_getmkvmergepathPart_Tests()
 {
     //given
     EAC3ToConfiguration config = new EAC3ToConfiguration() {  MKVMergePath = "c:\\exe\\mkvmerge.exe" };
     BluRaySummaryInfo bluRaySummaryInfo = new BluRaySummaryInfo() { Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo() { EpisodeNumber = "1" } };
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new RemuxTemplate1EAC3ToOutputNamingService(audioService);
     //when
     IMKVMergeOutputService mkvMergeOutputService = new MKVMergeOutputService(config, eac3ToOutputNamingService, @"c:\temp", bluRaySummaryInfo);
     var mkvmergepath = mkvMergeOutputService.GetMKVMergePathPart();
     //then
     mkvmergepath.Should().Be("\"c:\\exe\\mkvmerge.exe\"");
 }
 public void eac3tobatchfilewriteservice_has_no_disc_selected_error_when_no_disc_selected_test()
 {
     List<BluRayDiscInfo> discList = new List<BluRayDiscInfo>() {new BluRayDiscInfo() { Id = 1, IsSelected = false, BluRayPath = @"c:\temp\disc1" }};
     EAC3ToConfiguration config = new EAC3ToConfiguration();
     var directorySystemServiceMock = new Mock<IDirectorySystemService>();
     directorySystemServiceMock.Setup(m => m.Exists(It.IsAny<string>())).Returns(true);
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     IEAC3ToCommonRulesValidatorService eac3ToCommonRulesValidatorService = new EAC3ToCommonRulesValidatorService(config, directorySystemServiceMock.Object, discList);
     IEAC3ToBatchFileWriteService service = new EAC3ToBatchFileWriteService(config,directorySystemServiceMock.Object, discList, audioService, eac3ToOutputNamingService, eac3ToCommonRulesValidatorService);
     bool isValid = service.IsValid();
     service.Errors[0].Description.Should().Be("No Disc was selected.");
 }
예제 #21
0
 public void eacoutputservice_can_set_eac3to_executable_path_test()
 {
     //given eac3to path
     EAC3ToConfiguration config = new EAC3ToConfiguration() { EAC3ToPath = "c:\\exe\\eac3to" };
     BluRaySummaryInfo bluRaySummaryInfo = new BluRaySummaryInfo() { Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo() { EpisodeNumber = "1" } };
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     string bluRayPath = "c:\\temp";
     //when I want the output
     IEAC3ToOutputService service = new EAC3ToOutputService(config, eac3ToOutputNamingService, bluRayPath, bluRaySummaryInfo);
     //then the eac3to path is set
     string output = service.GetEAC3ToPathPart();
     output.Should().Contain(config.EAC3ToPath);
 }
예제 #22
0
 public void eacoutputservice_can_set_progress_numbers_false_settings_test()
 {
     //given
     EAC3ToConfiguration config = new EAC3ToConfiguration() { BatchFilePath = "c:\\temp", ShowProgressNumbers = false };
     BluRaySummaryInfo summaryInfo = new BluRaySummaryInfo() { Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo() { EpisodeNumber = "1", AudioList = new List<BluRayTitleAudio>() { new BluRayTitleAudio() { Id = "3:", AudioType = EnumAudioType.DTSEXPRESS, IsSelected = true, Arguments = "-core" } } } };
     string bluRayPath = "c:\\disc";
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     //when
     IEAC3ToOutputService service = new EAC3ToOutputService(config, eac3ToOutputNamingService, bluRayPath, summaryInfo);
     //then
     string output = service.GetShowProgressNumbersPart();
     output.Should().Be("");
 }
 public void encodeTemplate1EAC3ToOutputNamingService_can_set_chapter_name_when_not_extract_for_remux_test()
 {
     //given not extract for remux
     EAC3ToConfiguration config = new EAC3ToConfiguration() { IsExtractForRemux = false };
     string filesOutputPath = "c:\\bluray";
     string paddedEpisodeNumber = "01";
     string episodeName = string.Empty;
     //when i get the chapter name
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService service = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     string chapterName = service.GetChapterName(config, filesOutputPath, paddedEpisodeNumber, episodeName);
     //then chapter name should be hard coded for workflow
     chapterName.Should().Be("\"c:\\bluray\\chapters01.txt\"");
 }
 public void encodeTemplate1EAC3ToOutputNamingService_can_set_audio_name_when_not_extract_for_remux_test()
 {
     //given not extract for remux
     EAC3ToConfiguration config = new EAC3ToConfiguration() { IsExtractForRemux = false };
     string filesOutputPath = "c:\\bluray";
     string paddedEpisodeNumber = "01";
     string episodeName = string.Empty;
     BluRayTitleAudio audio = new BluRayTitleAudio() { Id = "13:", AudioType = EnumAudioType.DTSMA, Language = "english" };
     //when i get the audio name
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService service = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     string audioName = service.GetAudioName(config, audio, filesOutputPath, paddedEpisodeNumber, episodeName);
     //then audio name should be hard coded for workflow
     audioName.Should().Be("\"c:\\bluray\\english01-13.dtsma\"");
 }
 public void encodeTemplate1EAC3ToOutputNamingService_can_set_subtitle_name_when_is_commentary_and_not_extract_for_remux_test()
 {
     //given not extract for remux
     EAC3ToConfiguration config = new EAC3ToConfiguration() { IsExtractForRemux = false };
     string filesOutputPath = "c:\\bluray";
     string paddedEpisodeNumber = "01";
     string episodeName = string.Empty;
     BluRayTitleSubtitle subtitle = new BluRayTitleSubtitle() { Id = "3:", Language = "english", IsCommentary = true };
     //when i get the subtitle name
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService service = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     string subtitleName = service.GetSubtitleName(config, subtitle, filesOutputPath, paddedEpisodeNumber, episodeName);
     //then subtitle name should be hard coded for workflow and commentary
     subtitleName.Should().Be("\"c:\\bluray\\english01-3-commentary.sup\"");
 }
예제 #26
0
 public void eacoutputservice_can_set_bluray_stream_test()
 {
     //given bluray folder and stream#
     string bluRayPath = "c:\\disc";
     EAC3ToConfiguration config = new EAC3ToConfiguration();
     BluRaySummaryInfo bluRaySummaryInfo = new BluRaySummaryInfo() { Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo() { EpisodeNumber = "1" }  };
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     //when I want the output
     IEAC3ToOutputService service = new EAC3ToOutputService(config,eac3ToOutputNamingService, bluRayPath, bluRaySummaryInfo);
     //then the bluray path/stream# is set
     string output = service.GetBluRayStreamPart();
     output.Should().Contain(bluRayPath);
     output.Should().Contain("1)");
 }
예제 #27
0
 public void eacoutputservice_can_set_dtsexpress_audio_settings_test()
 {
     //given dts and audio settings
     EAC3ToConfiguration config = new EAC3ToConfiguration() {  BatchFilePath = "c:\\temp" };
     BluRaySummaryInfo summaryInfo = new BluRaySummaryInfo() { Eac3ToId = "1)", BluRayTitleInfo = new BluRayTitleInfo() { EpisodeNumber = "1", AudioList = new List<BluRayTitleAudio>() { new BluRayTitleAudio() {Id="3:", AudioType = EnumAudioType.DTSEXPRESS, IsSelected = true, Arguments = "-core"}}} };
     string bluRayPath = "c:\\disc";
     IAudioService audioService = new AudioService();
     AbstractEAC3ToOutputNamingService eac3ToOutputNamingService = new EncodeTemplate1EAC3ToOutputNamingService(audioService);
     //when I want the output
     IEAC3ToOutputService service = new EAC3ToOutputService(config, eac3ToOutputNamingService, bluRayPath, summaryInfo);
     //then the dts audio is set
     string output = service.GetAudioStreamPart();
     output.Should().Contain(".dts");
     output.Should().Contain("-core");
 }
        public override string GetLogName(EAC3ToConfiguration eac3toConfiguration, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
        {
            if (_currentMovieRemuxTemplate == null)
                throw new NullReferenceException("Current Movie Template is Null.");

            StringBuilder sb = new StringBuilder();
            if (eac3toConfiguration.IsExtractForRemux == true)
            {
                string tag = this.GetFormattedTag(eac3toConfiguration, paddedEpisodeNumber);
                string logName = string.Format("{0}{1}{2}{3}{4}{5}{6}",
                    _currentMovieRemuxTemplate.SeriesName,
                    this.GetFormattedYear(eac3toConfiguration),
                    this.GetFormattedVideoResolution(eac3toConfiguration),
                    this.GetFormattedCountry(eac3toConfiguration),
                    this.GetFormattedMedium(eac3toConfiguration),
                    this.GetFormattedVideoFormat(eac3toConfiguration),
                    this.GetFormattedAuditoType(eac3toConfiguration));

                sb.Append(string.Format(" -log=\"{0}\\{1}{2} log.log\"", filesOutputPath, this.AddWordSeparator(eac3toConfiguration.IsExtractForRemux, _currentMovieRemuxTemplate.UsePeriodsInFileName, logName.Trim().RemoveDoubleSpaces()), tag));
            }
            return sb.ToString();
        }
        public override string GetLogName(EAC3ToConfiguration eac3toConfiguration, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
        {
            StringBuilder sb = new StringBuilder();
            if (eac3toConfiguration.IsExtractForRemux == true)
            {
                string tag = this.GetFormattedTag(eac3toConfiguration, paddedEpisodeNumber, episodeName);
                string logName = string.Format("{0}{1}{2}E{3}{4}{5}{6}{7}{8}{9}",
                    eac3toConfiguration.RemuxFileNameTemplate.SeriesName,
                    this.GetFormattedYear(eac3toConfiguration),
                    this.GetFormattedSeasonNumber(eac3toConfiguration),
                    paddedEpisodeNumber,
                    this.GetFormattedEpisodeName(episodeName),
                    this.GetFormattedVideoResolution(eac3toConfiguration),
                    this.GetFormattedCountry(eac3toConfiguration),
                    this.GetFormattedMedium(eac3toConfiguration),
                    this.GetFormattedVideoFormat(eac3toConfiguration),
                    this.GetFormattedAuditoType(eac3toConfiguration));

                sb.Append(string.Format(" -log=\"{0}\\{1}{2} log.log\"", filesOutputPath, this.AddWordSeparator(eac3toConfiguration.IsExtractForRemux, eac3toConfiguration.RemuxFileNameTemplate.UsePeriodsInFileName, logName.Trim().RemoveDoubleSpaces()), tag));
            }
            return sb.ToString();
        }
        public override string GetAudioName(EAC3ToConfiguration eac3toConfiguration, BluRayTitleAudio audio, string filesOutputPath, string paddedEpisodeNumber, string episodeName)
        {
            if (_currentMovieRemuxTemplate == null)
                throw new NullReferenceException("Current Movie Template is Null.");

            StringBuilder sb = new StringBuilder();
            if (eac3toConfiguration.IsExtractForRemux == true && eac3toConfiguration.IfIsExtractForRemuxIsItForAMovie)
            {
                string tag = this.GetFormattedTag(eac3toConfiguration, paddedEpisodeNumber);
                string audioName = string.Format("{0}{1}{2}{3}{4}{5}{6}",
                    _currentMovieRemuxTemplate.SeriesName,
                    this.GetFormattedYear(eac3toConfiguration),
                    this.GetFormattedVideoResolution(eac3toConfiguration),
                    this.GetFormattedCountry(eac3toConfiguration),
                    this.GetFormattedMedium(eac3toConfiguration),
                    this.GetFormattedVideoFormat(eac3toConfiguration),
                    this.GetFormattedAuditoType(eac3toConfiguration));

                sb.Append(string.Format("\"{0}\\{1}{2} {3}{4}-{5}{6}.{7}\"", filesOutputPath, this.AddWordSeparator(eac3toConfiguration.IsExtractForRemux, _currentMovieRemuxTemplate.UsePeriodsInFileName, audioName.Trim().RemoveDoubleSpaces()), tag, audio.Language, paddedEpisodeNumber, audio.Id.RemoveColons(),
                    this.GetAudioCommentary(audio), _audioService.GetAudioExtension(audio.AudioType)));
            }
            return sb.ToString();
        }