Exemplo n.º 1
0
        public CarbonTranscodePlugin()
        {
            _CarbonServerHost = new PluginPropertyString("CarbonServerHost", this, "localhost");
            _CarbonServerPort = new PluginPropertyValueType<ushort>("CarbonServerPort", this, 1101);

            _CarbonPresetGUID = new PluginPropertyString("CarbonPresetGUID", this);

            _MaxWidth = new PluginPropertyValueType<uint>("MaxWidth", this);
            _MaxWidth.AddIsInRangeTest(maxWidth => maxWidth > 0);

            _MaxHeight = new PluginPropertyValueType<uint>("MaxHeight", this);
            _MaxHeight.AddIsInRangeTest(maxHeight => maxHeight > 0);

            _MinAudioBitRate = new PluginPropertyValueType<uint>("MinAudioBitRate", this);
            _MinAudioBitRate.AddIsInRangeTest(minAudioBitRate => minAudioBitRate > 0);

            _MinVideoBitRate = new PluginPropertyValueType<uint>("MinVideoBitRate", this);
            _MinVideoBitRate.AddIsInRangeTest(minVideoBitRate => minVideoBitRate > 0);

            _MaxFrameRate = new PluginPropertyValueType<ushort>("MaxFrameRate", this);
            _MaxFrameRate.AddIsInRangeTest(maxFrameRate => maxFrameRate > 0);
        }
        public TranscodeTwoPassh264Plugin()
        {
            _FFmpegFilePath = new PluginPropertyFilePath("FFmpegFilePath", this);

            _TemporaryDirectoryPath = new PluginPropertyDirectoryPath("TemporaryDirectoryPath", this);

            _AudioBitrate = new PluginPropertyValueType<uint>("AudioBitrate", this);

            _ShouldDeinterlaceVideo = new PluginPropertyValueType<bool>("ShouldDeinterlaceVideo", this, false);
            _ShouldKeepVideoAspectRatio = new PluginPropertyValueType<bool>("ShouldKeepVideoAspectRatio", this, true);

            _VideoWidth = new PluginPropertyValueType<uint>("VideoWidth", this);
            _VideoHeight = new PluginPropertyValueType<uint>("VideoHeight", this);
            _VideoBitrate = new PluginPropertyValueType<uint>("VideoBitrate", this);

            _AudioBitrate.AddIsInRangeTest(value => value > 0);

            _VideoWidth.AddIsInRangeTest(value => value >= 0);
            _VideoHeight.AddIsInRangeTest(value => value >= 0);
            _VideoBitrate.AddIsInRangeTest(value => value > 0);

            _FFmpegOutput = new StringBuilder();
        }