예제 #1
0
        private void DoDemuxSubtitle(EncodeInfo job)
        {
            MkvMerge mkvMerge = new MkvMerge();

            mkvMerge.SetJob(job);
            _worker.DoWork += mkvMerge.DemuxSubtitle;
            Log.Info("mkvMerge.DemuxSubtitle()");
        }
예제 #2
0
        private void DoMuxResult(EncodeInfo job)
        {
            switch (job.EncodingProfile.OutFormat)
            {
            case OutputType.OutputTs:
            case OutputType.OutputM2Ts:
            case OutputType.OutputAvchd:
            case OutputType.OutputBluRay:
                TsMuxeR tsmuxer = new TsMuxeR();
                tsmuxer.SetJob(job);
                _worker.DoWork += tsmuxer.DoEncode;
                Log.Info("TSMuxer.DoEncode()");
                break;

            case OutputType.OutputMatroska:
            case OutputType.OutputWebM:
                MkvMerge mkvmerge = new MkvMerge();
                mkvmerge.SetJob(job);
                _worker.DoWork += mkvmerge.DoEncode;
                Log.Info("MKVmergeEncoder.DoEncode()");
                break;

            case OutputType.OutputDvd:
                DvdAuthor dvdauthor = new DvdAuthor();
                dvdauthor.SetJob(job);
                _worker.DoWork += dvdauthor.DoEncode;
                Log.Info("DVDAuthor.DoEncode()");
                break;

            case OutputType.OutputMp4:
                MP4Box box = new MP4Box();
                box.SetJob(job);
                _worker.DoWork += box.DoEncode;
                Log.Info("MP4Box.DoEncode()");
                break;
            }
        }