Exemple #1
0
        ///<summary>
        ///</summary>
        ///<returns></returns>
        public override void LockInOnSignal()
        {
            bool     isLocked  = false;
            DateTime timeStart = DateTime.Now;
            TimeSpan ts        = timeStart - timeStart;

            while (!isLocked && ts.TotalSeconds < 2)
            {
                _tuner.UpdateSignalQuality();
                isLocked = _tuner.TunerLocked;

                if (!isLocked)
                {
                    ts = DateTime.Now - timeStart;
                    Log.Log.WriteFile("analog:  LockInOnSignal waiting 20ms");
                    System.Threading.Thread.Sleep(20);
                }
            }

            if (!isLocked)
            {
                Log.Log.WriteFile("analog:  LockInOnSignal could not lock onto channel - no signal or bad signal");
                throw new TvExceptionNoSignal("Unable to tune to channel - no signal");
            }
            else
            {
                Log.Log.WriteFile("analog:  LockInOnSignal ok");
            }
        }