- Index
- Index of the GPRM value to retrieve. Possible values range from 0 to 15.
Visual Basic (Usage) | Copy Code |
---|---|
Dim instance As DVDControl Dim Index As Integer Dim value As Integer value = instance.GetGPRM(Index) |
Parameters
- Index
- Index of the GPRM value to retrieve. Possible values range from 0 to 15.
Return Value
The specified general parameter register value.Visual Basic | Copy Code |
---|---|
Public _result As Boolean = False Public _form As PlayCtrlForm = New PlayCtrlForm() Public _playctrl As PlayCtrl Public Sub IsAudioStreamEnabledExample() ' reference the play control _playctrl = _form.PlayCtrl Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "VIDEO_TS\VIDEO_TS.IFO") Try ' set auto start off _playctrl.AutoStart = False ' use DVDSource _playctrl.UseDVDSource = True ' set the input file _playctrl.SourceFile = inFile ' check the DVD options DvdInfoCheck() ' play it _playctrl.Run() Catch e1 As Exception _result = False End Try ' we'll loop on the state and pump messages for this example. ' but you should not need to if running from a Windows Forms application. Do While _playctrl.State = PlayState.Running Application.DoEvents() Loop End Sub ' check DVD properties and info Private Sub DvdInfoCheck() Dim bstrVal As String Dim val As Integer Dim button As Integer = _playctrl.DvdController.CurrentButton val = _playctrl.DvdController.GetButtonWidth(button) val = _playctrl.DvdController.GetButtonHeight(button) val = _playctrl.DvdController.GetButtonLeft(button) val = _playctrl.DvdController.GetButtonTop(button) val = _playctrl.DvdController.DefaultMenuLanguage _playctrl.DvdController.DefaultMenuLanguage = 1033 val = _playctrl.DvdController.GetNumberOfChapters(0) val = _playctrl.DvdController.TotalTitleTime Dim tcFlags As DVDTimecodeFlags = _playctrl.DvdController.TitleTimecodeFlags val = _playctrl.DvdController.CurrentAngle If _playctrl.DvdController.AnglesAvailable > 1 Then _playctrl.DvdController.CurrentAngle = 2 End If Dim userOp As DVDValidUserOp = _playctrl.DvdController.CurrentUOPS Dim audioLang As Long = _playctrl.DvdController.GetAudioLanguage(0) val = _playctrl.DvdController.CurrentAudioStream If _playctrl.DvdController.AudioStreamsAvailable > 1 Then _playctrl.DvdController.CurrentAudioStream = 2 End If val = _playctrl.DvdController.CurrentTime val = _playctrl.DvdController.CurrentVolume val = _playctrl.DvdController.VolumesAvailable val = _playctrl.DvdController.TitlesAvailable Dim enabled As Boolean = _playctrl.DvdController.IsAudioStreamEnabled(0) val = _playctrl.DvdController.DefaultAudioLanguage _playctrl.DvdController.SelectDefaultAudioLanguage(1033, DVDAudioLangExt.Captions) Dim directory As String = _playctrl.DvdController.DVDDirectory val = _playctrl.DvdController.CurrentSubpictureStream val = _playctrl.DvdController.SubpictureStreamsAvailable If (val > 1) Then _playctrl.DvdController.CurrentSubpictureStream = 1 End If val = _playctrl.DvdController.DefaultSubpictureLanguage _playctrl.DvdController.SelectDefaultSubpictureLanguage(1033, DVDSubpictureLangExt.Caption_Normal) val = _playctrl.DvdController.CurrentTitle Dim subPicLangExt As DVDSubpictureLangExt = _playctrl.DvdController.DefaultSubpictureLanguageExt Dim audioLangExt As DVDAudioLangExt = _playctrl.DvdController.DefaultAudioLanguageExt Dim subpicLang As Long = _playctrl.DvdController.GetSubpictureLanguage(0) Dim subPicStream As Boolean = _playctrl.DvdController.IsSubpictureStreamEnabled(0) val = _playctrl.DvdController.GetDVDTextLanguageLCID(0) val = _playctrl.DvdController.DVDTextNumberOfLanguages val = _playctrl.DvdController.GetGPRM(0) _playctrl.DvdController.SetGPRM(0, 1) val = _playctrl.DvdController.GetDVDTextNumberOfStrings(0) val = _playctrl.DvdController.ButtonsAvailable val = _playctrl.DvdController.PlayerParentalLevel val = _playctrl.DvdController.PlayerParentalCountry Dim ppCountry As String = String.Format("{0}{1}", CChar(ChrW(val And &HFF)), CChar(ChrW(val >> 8))) If ppCountry <> "US" Then val = CInt(AscW("U"c)) val += (CInt(AscW("S"c)) << 8) _playctrl.DvdController.SelectParentalCountry(val, "user", "pwd") End If val = _playctrl.DvdController.GetTitleParentalLevels(-1) _playctrl.DvdController.SelectParentalLevel(9, "user", "pwd") Dim domain As DVDDomain = _playctrl.DvdController.CurrentDomain Dim diskSide As DVDDiscSide = _playctrl.DvdController.CurrentDiscSide val = _playctrl.DvdController.CurrentChapter Dim textStrType As DVDTextStringType = _playctrl.DvdController.GetDVDTextStringType(0, 0) If (Not _playctrl.DvdController.SubpictureOn) Then _playctrl.DvdController.SubpictureOn = True End If val = _playctrl.DvdController.GetSPRM(0) bstrVal = _playctrl.DvdController.GetDVDTextString(0, 0) bstrVal = _playctrl.DvdController.DVDUniqueID End Sub ' menu event helpers for DVD navigation and control Private Sub mnAcceptParentalLevelChange_Click() _playctrl.DvdController.AcceptParentalLevelChange(True) End Sub Private Sub mnActivateAtPosition_Click() _playctrl.DvdController.ActivateAtPosition(10, 10) End Sub Private Sub mnActivateButton_Click() _playctrl.DvdController.ActivateButton() End Sub Private Sub mnChangeDVDRegion_Click() _playctrl.DvdController.ChangeDVDRegion(_form) End Sub Private Sub mnNotifyParentalLevelChange_Click() _playctrl.DvdController.NotifyParentalLevelChange(True) End Sub Private Sub mnPause_Click() _playctrl.DvdController.Pause(True) End Sub Private Sub mnPlayAtInTitle_Click() _playctrl.DvdController.PlayAtTimeInTitle(1, 10000000) End Sub Private Sub mnPlayAtTime_Click() _playctrl.DvdController.PlayAtTime(10000000) End Sub Private Sub mnPlaybackword_Click() _playctrl.DvdController.PlayBackwards(5) End Sub Private Sub mnPlayChapter_Click() _playctrl.DvdController.PlayChapter(1) End Sub Private Sub mnPlaychapterautostop_Click() _playctrl.DvdController.PlayChaptersAutoStop(1, 2, 5) End Sub Private Sub mnPlaychapterintitle_Click() _playctrl.DvdController.PlayChapterInTitle(1, 3) End Sub Private Sub mnPlayfowrward_Click() _playctrl.DvdController.PlayForwards(5) End Sub Private Sub mnPlayNextChapter_Click() _playctrl.DvdController.PlayNextChapter() End Sub Private Sub mnPlayperiod_Click() _playctrl.DvdController.PlayPeriodInTitleAutoStop(1, 30, 120) End Sub Private Sub mnPlayPrevChapter_Click() _playctrl.DvdController.PlayPrevChapter() End Sub Private Sub mnPlaytitle_Click() _playctrl.DvdController.PlayTitle(1) End Sub Private Sub mnReplayChapter_Click() _playctrl.DvdController.ReplayChapter() End Sub Private Sub mnResume_Click() _playctrl.DvdController.Resume() End Sub Private Sub mnReturnfromsubmenu_Click() _playctrl.DvdController.ReturnFromSubmenu() End Sub Private Sub mnSelectAndActivateButton_Click() _playctrl.DvdController.SelectAndActivateButton(1) End Sub Private Sub mnSelectAtPosition_Click() _playctrl.DvdController.SelectAtPosition(10, 10) End Sub Private Sub mnSelectButton_Click() _playctrl.DvdController.SelectButton(1) End Sub Private Sub mnSelectRelativeButton_Click() _playctrl.DvdController.SelectRelativeButton(DVDRelativeButton.Right) End Sub Private Sub mnSetDVDDirectory_Click() _playctrl.DvdController.DVDDirectory = "e:\video_ts" End Sub Private Sub mnShowMenu_Click() _playctrl.DvdController.ShowMenu(DVDMenuId.Root) End Sub Private Sub mnStillOff_Click() _playctrl.DvdController.StillOff() End Sub Private Sub mnStop_Click() _playctrl.DvdController.Stop() End Sub Public NotInheritable Class LEAD_VARS Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 17\Media" End Class |
C# | Copy Code |
---|---|
public bool _result = false; public PlayCtrlForm _form = new PlayCtrlForm(); public PlayCtrl _playctrl; public void IsAudioStreamEnabledExample() { // reference the play control _playctrl = _form.PlayCtrl; string inFile =Path.Combine(LEAD_VARS.MediaDir,@"VIDEO_TS\VIDEO_TS.IFO"); try { // set auto start off _playctrl.AutoStart = false; // use DVDSource _playctrl.UseDVDSource = true; // set the input file _playctrl.SourceFile = inFile; // check the DVD options DvdInfoCheck(); // play it _playctrl.Run(); } catch (Exception) { _result = false; } // we'll loop on the state and pump messages for this example. // but you should not need to if running from a Windows Forms application. while (_playctrl.State == PlayState.Running) Application.DoEvents(); } // check DVD properties and info private void DvdInfoCheck() { string bstrVal; int val; int button = _playctrl.DvdController.CurrentButton; val = _playctrl.DvdController.GetButtonWidth(button); val = _playctrl.DvdController.GetButtonHeight(button); val = _playctrl.DvdController.GetButtonLeft(button); val = _playctrl.DvdController.GetButtonTop(button); val = _playctrl.DvdController.DefaultMenuLanguage; _playctrl.DvdController.DefaultMenuLanguage = 1033; val = _playctrl.DvdController.GetNumberOfChapters(0); val = _playctrl.DvdController.TotalTitleTime; DVDTimecodeFlags tcFlags = _playctrl.DvdController.TitleTimecodeFlags; val = _playctrl.DvdController.CurrentAngle; if (_playctrl.DvdController.AnglesAvailable > 1) _playctrl.DvdController.CurrentAngle = 2; DVDValidUserOp userOp = _playctrl.DvdController.CurrentUOPS; long audioLang = _playctrl.DvdController.GetAudioLanguage(0); val = _playctrl.DvdController.CurrentAudioStream; if (_playctrl.DvdController.AudioStreamsAvailable > 1) _playctrl.DvdController.CurrentAudioStream = 2; val = _playctrl.DvdController.CurrentTime; val = _playctrl.DvdController.CurrentVolume; val = _playctrl.DvdController.VolumesAvailable; val = _playctrl.DvdController.TitlesAvailable; bool enabled = _playctrl.DvdController.IsAudioStreamEnabled(0); val = _playctrl.DvdController.DefaultAudioLanguage; _playctrl.DvdController.SelectDefaultAudioLanguage(1033, DVDAudioLangExt.Captions); string directory = _playctrl.DvdController.DVDDirectory; val = _playctrl.DvdController.CurrentSubpictureStream; val = _playctrl.DvdController.SubpictureStreamsAvailable; if ((val > 1)) { _playctrl.DvdController.CurrentSubpictureStream = 1; } val = _playctrl.DvdController.DefaultSubpictureLanguage; _playctrl.DvdController.SelectDefaultSubpictureLanguage(1033, DVDSubpictureLangExt.Caption_Normal); val = _playctrl.DvdController.CurrentTitle; DVDSubpictureLangExt subPicLangExt = _playctrl.DvdController.DefaultSubpictureLanguageExt; DVDAudioLangExt audioLangExt = _playctrl.DvdController.DefaultAudioLanguageExt; long subpicLang = _playctrl.DvdController.GetSubpictureLanguage(0); bool subPicStream = _playctrl.DvdController.IsSubpictureStreamEnabled(0); val = _playctrl.DvdController.GetDVDTextLanguageLCID(0); val = _playctrl.DvdController.DVDTextNumberOfLanguages; val = _playctrl.DvdController.GetGPRM(0); _playctrl.DvdController.SetGPRM(0, 1); val = _playctrl.DvdController.GetDVDTextNumberOfStrings(0); val = _playctrl.DvdController.ButtonsAvailable; val = _playctrl.DvdController.PlayerParentalLevel; val = _playctrl.DvdController.PlayerParentalCountry; string ppCountry = string.Format("{0}{1}", (char)(val & 0xFF), (char)(val >> 8)); if (ppCountry != "US") { val = (int)'U'; val += ((int)'S' << 8); _playctrl.DvdController.SelectParentalCountry(val, "user", "pwd"); } val = _playctrl.DvdController.GetTitleParentalLevels(-1); _playctrl.DvdController.SelectParentalLevel(9, "user", "pwd"); DVDDomain domain = _playctrl.DvdController.CurrentDomain; DVDDiscSide diskSide = _playctrl.DvdController.CurrentDiscSide; val = _playctrl.DvdController.CurrentChapter; DVDTextStringType textStrType = _playctrl.DvdController.GetDVDTextStringType(0, 0); if (!_playctrl.DvdController.SubpictureOn) _playctrl.DvdController.SubpictureOn = true; val = _playctrl.DvdController.GetSPRM(0); bstrVal = _playctrl.DvdController.GetDVDTextString(0, 0); bstrVal = _playctrl.DvdController.DVDUniqueID; } // menu event helpers for DVD navigation and control private void mnAcceptParentalLevelChange_Click() { _playctrl.DvdController.AcceptParentalLevelChange(true); } private void mnActivateAtPosition_Click() { _playctrl.DvdController.ActivateAtPosition(10, 10); } private void mnActivateButton_Click() { _playctrl.DvdController.ActivateButton(); } private void mnChangeDVDRegion_Click() { _playctrl.DvdController.ChangeDVDRegion(_form); } private void mnNotifyParentalLevelChange_Click() { _playctrl.DvdController.NotifyParentalLevelChange(true); } private void mnPause_Click() { _playctrl.DvdController.Pause(true); } private void mnPlayAtInTitle_Click() { _playctrl.DvdController.PlayAtTimeInTitle(1, 10000000); } private void mnPlayAtTime_Click() { _playctrl.DvdController.PlayAtTime(10000000); } private void mnPlaybackword_Click() { _playctrl.DvdController.PlayBackwards(5); } private void mnPlayChapter_Click() { _playctrl.DvdController.PlayChapter(1); } private void mnPlaychapterautostop_Click() { _playctrl.DvdController.PlayChaptersAutoStop(1, 2, 5); } private void mnPlaychapterintitle_Click() { _playctrl.DvdController.PlayChapterInTitle(1, 3); } private void mnPlayfowrward_Click() { _playctrl.DvdController.PlayForwards(5); } private void mnPlayNextChapter_Click() { _playctrl.DvdController.PlayNextChapter(); } private void mnPlayperiod_Click() { _playctrl.DvdController.PlayPeriodInTitleAutoStop(1, 30, 120); } private void mnPlayPrevChapter_Click() { _playctrl.DvdController.PlayPrevChapter(); } private void mnPlaytitle_Click() { _playctrl.DvdController.PlayTitle(1); } private void mnReplayChapter_Click() { _playctrl.DvdController.ReplayChapter(); } private void mnResume_Click() { _playctrl.DvdController.Resume(); } private void mnReturnfromsubmenu_Click() { _playctrl.DvdController.ReturnFromSubmenu(); } private void mnSelectAndActivateButton_Click() { _playctrl.DvdController.SelectAndActivateButton(1); } private void mnSelectAtPosition_Click() { _playctrl.DvdController.SelectAtPosition(10, 10); } private void mnSelectButton_Click() { _playctrl.DvdController.SelectButton(1); } private void mnSelectRelativeButton_Click() { _playctrl.DvdController.SelectRelativeButton(DVDRelativeButton.Right); } private void mnSetDVDDirectory_Click() { _playctrl.DvdController.DVDDirectory = @"e:\video_ts"; } private void mnShowMenu_Click() { _playctrl.DvdController.ShowMenu(DVDMenuId.Root); } private void mnStillOff_Click() { _playctrl.DvdController.StillOff(); } private void mnStop_Click() { _playctrl.DvdController.Stop(); } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 17\Media"; } |
To set the value of the general parameter register at a specific index, call the SetGPRM method. Call the GetSPRM method to retrieve the current contents of the system parameter register (SPRM) at a specific index.
For more detailed information, refer to the Microsoft documentation for IDvdInfo2.GetAllGPRMs.
Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7