예제 #1
0
        public static void setVideoOptions(Dictionary <String, Object> options, VideoEncoderPresets preset, VideoEncoders encoder)
        {
            switch (encoder)
            {
            case VideoEncoders.none:
                break;

            case VideoEncoders.libx264:
                options.Add("preset", preset.ToString().ToLower());
                break;

            case VideoEncoders.libx265:
                options.Add("preset", preset.ToString().ToLower());
                break;

            case VideoEncoders.libvpx:
                options.Add("b", 1000000);
                options.Add("crf", "5");
                options.Add("qmin", "0");
                options.Add("qmax", "50");
                options.Add("threads", "3");
                options.Add("slices", "2");
                break;

            case VideoEncoders.libvpx_vp9:
                options.Add("b", 1000000);
                options.Add("threads", "8");
                options.Add("speed", "1");
                options.Add("tile-columns", "6");
                options.Add("frame-parallel", "1");
                options.Add("auto-alt-ref", "1");
                options.Add("lag-in-frames", "25");
                break;

            case VideoEncoders.msmpeg4:
                options.Add("b", 2000000);
                break;

            case VideoEncoders.wmv1:
                options.Add("b", 2000000);
                break;

            case VideoEncoders.wmv2:
                options.Add("b", 2000000);
                break;

            case VideoEncoders.gif:
                break;

            case VideoEncoders.apng:
                break;

            default:
                break;
            }
        }
예제 #2
0
        public static void setVideoOptions(Dictionary<String, Object> options, VideoEncoderPresets preset, VideoEncoders encoder)
        {
            
            switch (encoder)
            {

                case VideoEncoders.none:
                    break;
                case VideoEncoders.libx264:
                    options.Add("preset", preset.ToString().ToLower());
                    break;
                case VideoEncoders.libx265:
                    options.Add("preset", preset.ToString().ToLower());
                    break;
                case VideoEncoders.libvpx:
                    options.Add("b", 1000000);
                    options.Add("crf", "5");
                    options.Add("qmin", "0");
                    options.Add("qmax", "50");
                    options.Add("threads", "3");
                    options.Add("slices", "2");
                    break;
                case VideoEncoders.libvpx_vp9:
                    options.Add("b", 1000000);
                    options.Add("threads", "8");
                    options.Add("speed", "1");
                    options.Add("tile-columns", "6");
                    options.Add("frame-parallel", "1");
                    options.Add("auto-alt-ref", "1");
                    options.Add("lag-in-frames", "25");
                    break;
                case VideoEncoders.msmpeg4:
                    options.Add("b", 2000000);
                    break;
                case VideoEncoders.wmv1:
                    options.Add("b", 2000000);
                    break;
                case VideoEncoders.wmv2:
                    options.Add("b", 2000000);
                    break;
                case VideoEncoders.gif:
                    break;
                case VideoEncoders.apng:
                    break;
                default:
                    break;
            }

        }