Esempio n. 1
0
        public void Video_ToMP4_Resize_Args()
        {
            var container = new ArgumentsContainer();

            container.Add(new ScaleArgument(VideoSize.Ld));
            container.Add(new VideoCodecArgument(VideoCodec.LibX264));
            Convert(VideoType.Mp4, container);
        }
Esempio n. 2
0
        public void Video_ToOGV_Resize_Args()
        {
            var container = new ArgumentsContainer();

            container.Add(new ScaleArgument(VideoSize.Ed));
            container.Add(new VideoCodecArgument(VideoCodec.LibTheora));
            Convert(VideoType.Ogv, container);
        }
Esempio n. 3
0
        public void Video_ToTS_Args()
        {
            var container = new ArgumentsContainer();

            container.Add(new CopyArgument());
            container.Add(new BitStreamFilterArgument(Channel.Video, Filter.H264_Mp4ToAnnexB));
            container.Add(new ForceFormatArgument(VideoCodec.MpegTs));
            Convert(VideoType.Ts, container);
        }
Esempio n. 4
0
        public void Builder_BuildString_Concat()
        {
            var container = new ArgumentsContainer();

            container.Add(new OutputArgument("output.mp4"));

            container.Add(new ConcatArgument(concatFiles));

            var str = builder.BuildArguments(container);

            Assert.IsTrue(str == "-i \"concat:1.mp4|2.mp4|3.mp4|4.mp4\" \"output.mp4\"");
        }
Esempio n. 5
0
        private string GetArgumentsString(params Argument[] args)
        {
            var container = new ArgumentsContainer();

            container.Add(new OutputArgument("output.mp4"));
            container.Add(new InputArgument("input.mp4"));

            foreach (var a in args)
            {
                container.Add(a);
            }

            return(builder.BuildArguments(container));
        }
Esempio n. 6
0
        public void Convert(VideoType type, ArgumentsContainer container)
        {
            var output = Input.OutputLocation(type);

            try
            {
                var input = VideoInfo.FromFileInfo(Input);

                container.Add(new InputArgument(input));
                container.Add(new OutputArgument(output));
                var scaling = container.Find <ScaleArgument>();

                Encoder.Convert(container);

                var outputVideo = new VideoInfo(output.FullName);

                Assert.IsTrue(File.Exists(output.FullName));
                Assert.AreEqual(outputVideo.Duration, input.Duration);

                if (scaling == null)
                {
                    Assert.AreEqual(outputVideo.Width, input.Width);
                    Assert.AreEqual(outputVideo.Height, input.Height);
                }
                else
                {
                    if (scaling.Value.Width != -1)
                    {
                        Assert.AreEqual(outputVideo.Width, scaling.Value.Width);
                    }

                    if (scaling.Value.Height != -1)
                    {
                        Assert.AreEqual(outputVideo.Height, scaling.Value.Height);
                    }

                    Assert.AreNotEqual(outputVideo.Width, input.Width);
                    Assert.AreNotEqual(outputVideo.Height, input.Height);
                }
            }
            finally
            {
                if (File.Exists(output.FullName))
                {
                    File.Delete(output.FullName);
                }
            }
        }