Business.MediaEncoderBusiness.FinalizeEncoding C# (CSharp) Метод

FinalizeEncoding() приватный Метод

private FinalizeEncoding ( MediaEncoderSettings settings, System.DateTime startTime ) : EncodingCompletedEventArgs
settings MediaEncoderSettings
startTime System.DateTime
Результат EncodingCompletedEventArgs
        private EncodingCompletedEventArgs FinalizeEncoding(MediaEncoderSettings settings, DateTime? startTime) {
            EncodingCompletedEventArgs Result = null;
            if (File.Exists(settings.OutputFile) || (settings.VideoCodec == VideoCodecs.Copy && File.Exists(settings.AudioFileAac))) {
                // Muxe video with audio.
                string FinalFile = GetNextAvailableFileName(settings.FinalFile);
                string VideoFile = null;
                if (settings.VideoCodec == VideoCodecs.Copy)
                    VideoFile = Settings.NaturalGroundingFolder + settings.FileName;
                else
                    VideoFile = settings.OutputFile;
                string AudioFile = null;
                if (settings.AudioAction == AudioActions.Copy)
                    AudioFile = Settings.NaturalGroundingFolder + settings.FileName;
                else if (settings.AudioAction == AudioActions.Encode)
                    AudioFile = settings.AudioFileAac;
                FfmpegBusiness.JoinAudioVideo(VideoFile, AudioFile, FinalFile, true);
                Result = GetEncodingResults(settings, FinalFile, startTime);
            }

            return Result;
        }