コード例 #1
0
ファイル: AavTimeAnalyser.cs プロジェクト: aschweiz/tangra3
        public AavTimeAnalyser(AstroDigitalVideoStream aav)
        {
            m_Aav = aav;

            float frameRate = 40;

            if (float.TryParse(m_Aav.GetFileTag("NATIVE-FRAME-RATE"), out frameRate))
            {
                m_FrameDurationMs = 1000.0f / frameRate;
            }

            int ntpAppliedCorr = 60;

            if (int.TryParse(m_Aav.GetFileTag("CAPHNTP-TIMING-CORRECTION"), out ntpAppliedCorr))
            {
                m_AppliedNtpTimeCorr = ntpAppliedCorr;
            }

            m_CorrNtpTimeMs    = ntpAppliedCorr - frameRate / 2.0f;
            m_CorrSystemTimeMs = -frameRate / 2.0f;
        }
コード例 #2
0
        public bool OpenVideo(string fileName)
        {
            string fileExtension = Path.GetExtension(fileName);

            if (fileExtension != null)
            {
                fileExtension = fileExtension.ToLower();
            }

            IFrameStream frameStream = null;

            if (fileExtension == ".adv" || fileExtension == ".aav")
            {
                AdvFileMetadataInfo fileMetadataInfo;
                GeoLocationInfo     geoLocation;
                frameStream = AstroDigitalVideoStream.OpenFile(fileName, out fileMetadataInfo, out geoLocation);
            }
            else if (fileExtension == ".avi")
            {
                frameStream = VideoStream.OpenFileForAutomation(fileName, 0);
                frameStream = ReInterlacingVideoStream.Create(frameStream, ReInterlaceMode.None);
            }
            else
            {
                Console.Error.WriteLine("{0} files are not supported.", fileExtension);
                Console.WriteLine(string.Format("{0} files are not supported.", fileExtension));

                return(false);
            }

            if (frameStream != null && m_FramePlayer != null)
            {
                m_FramePlayer.OpenVideo(frameStream);
                return(true);
            }

            return(false);
        }
コード例 #3
0
 public AavStatusChannelOnlyRenderer(AstroDigitalVideoStream aav)
 {
     m_AAV = aav;
 }