Exemple #1
0
        /// <summary>
        ///     Initializes a new instance of the ConversionProgress class
        /// </summary>
        /// <param name="arguments">Encode arguments</param>
        /// <param name="useSinkWriter">False to use the Transcode API, true to use Sink Writer</param>
        public ConversionProgress(Dictionary <string, object> arguments, bool useSinkWriter)
        {
            // Start Media Foundation
            MFHelper.MFStartup();

            this.InitializeComponent();

            this.startTime              = DateTime.Now;
            this.progressTimer          = new DispatcherTimer();
            this.progressTimer.Interval = TimeSpan.FromMilliseconds(500);
            this.progressTimer.Tick    += ProgressTimer_Tick;

            if (useSinkWriter)
            {
                this.encodeWorker = new SimpleSinkWriterEncode();
            }
            else
            {
                this.encodeWorker = new SimpleFastEncode();
            }

            // Start transcoding
            this.StartEncode(arguments);
        }