public ScreenshotAdjusterParam CreateScreenshotAdjusterParam(IVideoMetadata videoMetadata)
        {
            CheckVideoStream(videoMetadata.VideoStreamsCount);
            ScreenshotAdjusterParam screenshotAdjusterParam = CreateParam(videoMetadata);

            return screenshotAdjusterParam;
        }
        public ScreenshotAdjusterParam CreateScreenshotAdjusterParam(IVideoMetadata videoMetadata)
        {
            CheckVideoStream(videoMetadata.VideoStreamsCount);
            ScreenshotAdjusterParam screenshotAdjusterParam = CreateParam(videoMetadata);

            return(screenshotAdjusterParam);
        }
        public VideoAdjusterParam CreateVideoParam(IVideoMetadata videoMetadata)
        {
            CheckVideoStream(videoMetadata.VideoStreamsCount);
            int keyFrameRate = ParseKeyFrameRate(videoMetadata.VideoFormatSettingsGOP);
            VideoAdjusterParam videoParam = CreateVideoParam(videoMetadata, keyFrameRate);

            return(videoParam);
        }
        public VideoAdjusterParam CreateVideoParam(IVideoMetadata videoMetadata)
        {
            CheckVideoStream(videoMetadata.VideoStreamsCount);
            int keyFrameRate = ParseKeyFrameRate(videoMetadata.VideoFormatSettingsGOP);
            VideoAdjusterParam videoParam = CreateVideoParam(videoMetadata, keyFrameRate);

            return videoParam;
        }
예제 #5
0
        public List <DomainProcessedScreenshot> Generate(IVideoMetadata videoMetadata)
        {
            ScreenshotAdjusterParam   screenshotParam     = _screenshotAdjusterParamFactory.CreateScreenshotAdjusterParam(videoMetadata);
            DomainProcessedScreenshot processedScreenshot = _processedScreenshotBuilder.BuildProcessedScreenshot(screenshotParam, MetadataConstant.JpegFormat, ContentType.JpegContent);
            IEnumerable <DomainProcessedScreenshot> processedScreenshots = CreateProcessedScreenshots(processedScreenshot);
            var list = new List <DomainProcessedScreenshot>(processedScreenshots);

            return(list);
        }
 private ScreenshotAdjusterParam CreateParam(IVideoMetadata videoMetadata)
 {
     return new ScreenshotAdjusterParam
     {
         ImageWidth = videoMetadata.VideoWidth,
         ImageHeight = videoMetadata.VideoHeight,
         Duration = videoMetadata.VideoDuration/1000.0,
         VideoRotation = videoMetadata.VideoRotation
     };
 }
예제 #7
0
 public void LoadVideoMetadata()
 {
     SaveVideoMetadata();
     using (XmlReader reader = Helpers.CreateXmlReader(@"testVideoMetadata.cxml"))
     {
         IVideoMetadata metadata = (IVideoMetadata) new VideoMetadata().Load("testVideo.wmv", reader, null);
         Assert.AreEqual("22", metadata.Id);
         Assert.AreEqual("testVideo.wmv", metadata.Filename);
     }
 }
 private ScreenshotAdjusterParam CreateParam(IVideoMetadata videoMetadata)
 {
     return(new ScreenshotAdjusterParam
     {
         ImageWidth = videoMetadata.VideoWidth,
         ImageHeight = videoMetadata.VideoHeight,
         Duration = videoMetadata.VideoDuration / 1000.0,
         VideoRotation = videoMetadata.VideoRotation
     });
 }
        public AudioAdjusterParam CreateAudioParam(IVideoMetadata videoMetadata)
        {
            CheckAudioStream(videoMetadata.AudioStreamsCount);

            return(new AudioAdjusterParam
            {
                AudioCodec = videoMetadata.AudioFormat,
                AudioBitrate = videoMetadata.AudioBitRate,
                AudioChannels = videoMetadata.AudioChannels,
                IsExistAudioStream = videoMetadata.AudioStreamsCount != 0,
                AudioSampleRate = videoMetadata.AudioSamplingRate
            });
        }
        public AudioAdjusterParam CreateAudioParam(IVideoMetadata videoMetadata)
        {
            CheckAudioStream(videoMetadata.AudioStreamsCount);

            return new AudioAdjusterParam
            {
                AudioCodec = videoMetadata.AudioFormat,
                AudioBitrate = videoMetadata.AudioBitRate,
                AudioChannels = videoMetadata.AudioChannels,
                IsExistAudioStream = videoMetadata.AudioStreamsCount != 0,
                AudioSampleRate = videoMetadata.AudioSamplingRate
            };
        }
 private VideoAdjusterParam CreateVideoParam(IVideoMetadata videoMetadata, int keyFrameRate)
 {
     return(new VideoAdjusterParam
     {
         MediaContainer = videoMetadata.GeneralFormat,
         VideoCodec = videoMetadata.VideoFormat,
         VideoProfile = videoMetadata.VideoFormatProfile,
         VideoBitrate = videoMetadata.VideoBitRate,
         FrameRate = videoMetadata.VideoFrameRate,
         FrameRateMode = videoMetadata.VideoFrameRateMode,
         KeyFrameRate = keyFrameRate,
         VideoRotation = videoMetadata.VideoRotation
     });
 }
 private VideoAdjusterParam CreateVideoParam(IVideoMetadata videoMetadata, int keyFrameRate)
 {
     return new VideoAdjusterParam
     {
         MediaContainer = videoMetadata.GeneralFormat,
         VideoCodec = videoMetadata.VideoFormat,
         VideoProfile = videoMetadata.VideoFormatProfile,
         VideoBitrate = videoMetadata.VideoBitRate,
         FrameRate = videoMetadata.VideoFrameRate,
         FrameRateMode = videoMetadata.VideoFrameRateMode,
         KeyFrameRate = keyFrameRate,
         VideoRotation = videoMetadata.VideoRotation
     };
 }
        public List <DomainProcessedVideo> Generate(IVideoMetadata videoMetadata)
        {
            int width  = videoMetadata.VideoWidth;
            int height = videoMetadata.VideoHeight;

            List <IVideoSize>  sizeList   = _resolutionCalculator.Calculate(width, height);
            VideoAdjusterParam videoParam = _multimediaAdjusterParamFactory.CreateVideoParam(videoMetadata);
            AudioAdjusterParam audioParam = _multimediaAdjusterParamFactory.CreateAudioParam(videoMetadata);
            IEnumerable <DomainProcessedVideo> mp4ProcessedVideos  = _processedVideoList.CreateProcessedVideos(videoParam, audioParam, MetadataConstant.Mp4Container, sizeList, ContentType.Mp4Content);
            IEnumerable <DomainProcessedVideo> webmProcessedVideos = _processedVideoList.CreateProcessedVideos(videoParam, audioParam, MetadataConstant.WebmContainer, sizeList, ContentType.WebmContent);

            var list = new List <DomainProcessedVideo>();

            list.AddRange(mp4ProcessedVideos);
            list.AddRange(webmProcessedVideos);

            return(list);
        }
예제 #14
0
        private List<DomainProcessedVideo> GetProcessedVideos(IVideoMetadata videoMetadata, List<Exception> generatorsExceptions)
        {
            List<DomainProcessedVideo> processedVideos = null;

            try
            {
                processedVideos = _processedVideoGenerator.Generate(videoMetadata);
            }
            catch (AggregateException e)
            {
                generatorsExceptions.AddRange(e.InnerExceptions);
            }
            catch (Exception e)
            {
                generatorsExceptions.Add(e);
            }
            return processedVideos;
        }
예제 #15
0
        private List <DomainProcessedVideo> GetProcessedVideos(IVideoMetadata videoMetadata, List <Exception> generatorsExceptions)
        {
            List <DomainProcessedVideo> processedVideos = null;

            try
            {
                processedVideos = _processedVideoGenerator.Generate(videoMetadata);
            }
            catch (AggregateException e)
            {
                generatorsExceptions.AddRange(e.InnerExceptions);
            }
            catch (Exception e)
            {
                generatorsExceptions.Add(e);
            }
            return(processedVideos);
        }