コード例 #1
0
ファイル: AviSynthClip.cs プロジェクト: Gpower2/gMediaTools
        public AviSynthClip(string func, string arg, AvsVideoColorspace forceColorspace)
        {
            SetAviSynthDLL();

            string colorSpace = forceColorspace.ToString();

            if (forceColorspace == AvsVideoColorspace.Unknown)
            {
                colorSpace = "";
            }
            if (AvsInit(ref _avsWrapper, func, arg, ref _videoInfoStruct, ref _videoColorSpace, ref _audioSampleType, colorSpace) != 0)
            {
                // Get Last AviSynth Error BEFORE disposing the avs
                string errorMessage = GetLastAviSynthError();

                Dispose(false);

                throw new AviSynthException(errorMessage);
            }
        }
コード例 #2
0
        public AviSynthFile ParseAviSynthScript(string scriptContent, AvsVideoColorspace forceColorSpace)
        {
            var clip = new AviSynthClip("Eval", scriptContent, forceColorSpace);

            return(new AviSynthFile(clip));
        }
コード例 #3
0
        public AviSynthFile OpenAviSynthScriptFile(string scriptFileName, AvsVideoColorspace forceColorSpace)
        {
            var clip = new AviSynthClip("Import", scriptFileName, forceColorSpace);

            return(new AviSynthFile(clip));
        }
コード例 #4
0
ファイル: AviSynthClip.cs プロジェクト: Gpower2/gMediaTools
 private int AvsInit(ref IntPtr avs, string func, string arg, ref AvsWrapperVideoInfo vi, ref AvsVideoColorspace originalColorspace, ref AvsAudioSampleType originalSampleType, string cs)
 {
     return(GetFunctionDelegate <g_avs_init>()(ref avs, func, arg, ref vi, ref originalColorspace, ref originalSampleType, cs));
 }