/// <summary>
 /// Simple constructor
 /// </summary>
 private Configuration()
 {
     _playbackQualityMode    = VIDEOENCODER_BITRATE_MODE.ConstantBitRate;
     _recordQualityMode      = VIDEOENCODER_BITRATE_MODE.ConstantBitRate;
     _playbackQualityType    = QualityType.Default;
     _recordQualityType      = QualityType.Default;
     _customQualityValue     = 50;
     _customPeakQualityValue = 75;
 }
Ejemplo n.º 2
0
 /// <summary>
 /// Simple constructor
 /// </summary>
 private Configuration()
 {
   _playbackQualityMode = VIDEOENCODER_BITRATE_MODE.ConstantBitRate;
   _recordQualityMode = VIDEOENCODER_BITRATE_MODE.ConstantBitRate;
   _playbackQualityType = QualityType.Default;
   _recordQualityType = QualityType.Default;
   _customQualityValue = 50;
   _customPeakQualityValue = 75;
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Called when record starts
 /// </summary>
 public void StartRecord()
 {
     if (_configuration != null)
     {
         _bitRateMode = _configuration.RecordQualityMode;
         _qualityType = _configuration.RecordQualityType;
     }
     else
     {
         _bitRateMode = VIDEOENCODER_BITRATE_MODE.ConstantBitRate;
         _qualityType = QualityType.Default;
     }
     ApplyQuality();
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Called when playback starts
 /// </summary>
 public void StartPlayback()
 {
     if (_configuration != null)
     {
         _bitRateMode = _configuration.PlaybackQualityMode;
         _qualityType = _configuration.PlaybackQualityType;
     }
     else
     {
         _bitRateMode = VIDEOENCODER_BITRATE_MODE.NotSet;
         _qualityType = QualityType.Default;
     }
     ApplyQuality();
 }
Ejemplo n.º 5
0
        public static void OnSetQuality(Schedule rec)
        {
            GUIDialogMenu dlg = (GUIDialogMenu)GUIWindowManager.GetWindow((int)Window.WINDOW_DIALOG_MENU);

            if (dlg != null)
            {
                dlg.Reset();
                dlg.SetHeading(882);

                dlg.ShowQuickNumbers = true;
                dlg.AddLocalizedString(968);
                dlg.AddLocalizedString(965);
                dlg.AddLocalizedString(966);
                dlg.AddLocalizedString(967);
                VIDEOENCODER_BITRATE_MODE _newBitRate = rec.BitRateMode;
                switch (_newBitRate)
                {
                case VIDEOENCODER_BITRATE_MODE.NotSet:
                    dlg.SelectedLabel = 0;
                    break;

                case VIDEOENCODER_BITRATE_MODE.ConstantBitRate:
                    dlg.SelectedLabel = 1;
                    break;

                case VIDEOENCODER_BITRATE_MODE.VariableBitRateAverage:
                    dlg.SelectedLabel = 2;
                    break;

                case VIDEOENCODER_BITRATE_MODE.VariableBitRatePeak:
                    dlg.SelectedLabel = 3;
                    break;
                }

                dlg.DoModal(GUIWindowManager.ActiveWindow);

                if (dlg.SelectedLabel == -1)
                {
                    return;
                }
                switch (dlg.SelectedLabel)
                {
                case 0: // Not Set
                    _newBitRate = VIDEOENCODER_BITRATE_MODE.NotSet;
                    break;

                case 1: // CBR
                    _newBitRate = VIDEOENCODER_BITRATE_MODE.ConstantBitRate;
                    break;

                case 2: // VBR
                    _newBitRate = VIDEOENCODER_BITRATE_MODE.VariableBitRateAverage;
                    break;

                case 3: // VBR Peak
                    _newBitRate = VIDEOENCODER_BITRATE_MODE.VariableBitRatePeak;
                    break;
                }

                rec.BitRateMode = _newBitRate;
                rec.Persist();

                dlg.Reset();
                dlg.SetHeading(882);

                dlg.ShowQuickNumbers = true;
                dlg.AddLocalizedString(968);
                dlg.AddLocalizedString(886); //Default
                dlg.AddLocalizedString(993); // Custom
                dlg.AddLocalizedString(893); //Portable
                dlg.AddLocalizedString(883); //Low
                dlg.AddLocalizedString(884); //Medium
                dlg.AddLocalizedString(885); //High
                QualityType _newQuality = rec.QualityType;
                switch (_newQuality)
                {
                case QualityType.NotSet:
                    dlg.SelectedLabel = 0;
                    break;

                case QualityType.Default:
                    dlg.SelectedLabel = 1;
                    break;

                case QualityType.Custom:
                    dlg.SelectedLabel = 2;
                    break;

                case QualityType.Portable:
                    dlg.SelectedLabel = 3;
                    break;

                case QualityType.Low:
                    dlg.SelectedLabel = 4;
                    break;

                case QualityType.Medium:
                    dlg.SelectedLabel = 5;
                    break;

                case QualityType.High:
                    dlg.SelectedLabel = 6;
                    break;
                }

                dlg.DoModal(GUIWindowManager.ActiveWindow);

                if (dlg.SelectedLabel == -1)
                {
                    return;
                }
                switch (dlg.SelectedLabel)
                {
                case 0: // Not Set
                    _newQuality = QualityType.NotSet;
                    break;

                case 1: // Default
                    _newQuality = QualityType.Default;
                    break;

                case 2: // Custom
                    _newQuality = QualityType.Custom;
                    break;

                case 3: // Protable
                    _newQuality = QualityType.Portable;
                    break;

                case 4: // Low
                    _newQuality = QualityType.Low;
                    break;

                case 5: // Medium
                    _newQuality = QualityType.Medium;
                    break;

                case 6: // High
                    _newQuality = QualityType.High;
                    break;
                }

                rec.QualityType = _newQuality;
                rec.Persist();
            }
            TvServer server = new TvServer();

            server.OnNewSchedule();
        }
Ejemplo n.º 6
0
 /// <summary>
 /// Called when record starts
 /// </summary>
 public void StartRecord()
 {
   if (_configuration != null)
   {
     _bitRateMode = _configuration.RecordQualityMode;
     _qualityType = _configuration.RecordQualityType;
   }
   else
   {
     _bitRateMode = VIDEOENCODER_BITRATE_MODE.ConstantBitRate;
     _qualityType = QualityType.Default;
   }
   ApplyQuality();
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Called when playback starts
 /// </summary>
 public void StartPlayback()
 {
   if (_configuration != null)
   {
     _bitRateMode = _configuration.PlaybackQualityMode;
     _qualityType = _configuration.PlaybackQualityType;
   }
   else
   {
     _bitRateMode = VIDEOENCODER_BITRATE_MODE.NotSet;
     _qualityType = QualityType.Default;
   }
   ApplyQuality();
 }
Ejemplo n.º 8
0
 /// <summary>
 /// Sets the bitrate mode
 /// </summary>
 /// <param name="cardId">Unique id of the card</param>
 /// <param name="bitRateMode">The new bitrate mdoe</param>
 public void SetBitRateMode(int cardId, VIDEOENCODER_BITRATE_MODE bitRateMode)
 {
   if (ValidateTvControllerParams(cardId) || !SupportsQualityControl(cardId))
     return;
   IQuality qualityControl = _cards[cardId].Card.Quality;
   if (qualityControl != null)
   {
     qualityControl.BitRateMode = bitRateMode;
   }
 }