Exemple #1
0
        private void MyTimerCallBack(object state)
        {
            if (Status == StatusCode.Waiting)
            {
                switch (StartMode)
                {
                case StartModeType.WhenStart:
                    switch (Platform)
                    {
                    case PlatformType.None:
                        break;

                    case PlatformType.Bilibili:
                        if (B_Live.IsLiving(URL))
                        {
                            VideoUrl = B_Live.GetVideoURL(URL);
                            StartRecord();
                        }
                        break;

                    case PlatformType.Douyu:
                        break;

                    case PlatformType.Huya:
                        break;

                    case PlatformType.Panda:
                        break;

                    default:
                        break;
                    }
                    break;

                case StartModeType.WhenTime:
                    string DayOfWeekString = GetTodayDay();

                    if (Frequency.Contains("每天") || Frequency.Contains(DayOfWeekString) || (Frequency.Contains("仅一次") && Status == StatusCode.Waiting))
                    {
                        if (StartTime.Hour == DateTime.Now.Hour && StartTime.Minute == DateTime.Now.Minute && StartTime.Second == DateTime.Now.Second)
                        {
                            StartRecord();
                        }
                    }

                    break;

                default:
                    break;
                }
            }
        }
Exemple #2
0
 /// <summary>
 /// 文件整理
 /// </summary>
 /// <param name="FileName">文件路径</param>
 private void ArrangeFile()
 {
     FlvMerge.Merge(tmpFileList, FileName);
     foreach (string i in tmpFileList)
     {
         if (File.Exists(i))
         {
             File.Delete(i);
         }
     }
     tmpFileList.Clear();
     if (IsTranslateAfterCompleted)
     {
         Status = StatusCode.Translating;
         Transcode();
     }
     if ((StartMode == StartModeType.WhenStart && IsRepeat) || (StartMode == StartModeType.WhenTime && !Frequency.Contains("仅一次")))
     {
         Status = StatusCode.Waiting;
     }
     else
     {
         Status = StatusCode.Finished;
     }
 }