VLC multi Instanze using MiniGUI

General Help regarding HMG, Compilation, Linking, Samples

Moderator: Rathinagiri

Post Reply
User avatar
AUGE_OHR
Posts: 2117
Joined: Sun Aug 25, 2019 3:12 pm
DBs Used: DBF, PostgreSQL, MySQL, SQLite
Location: Hamburg, Germany

VLC multi Instanze using MiniGUI

Post by AUGE_OHR »

hi,

i have Probelem with VLC when using multi Instanze under MimiGUI to "mute"

Code: Select all

METHOD New( oControl ) CLASS TVlc
LOCAL oError, bOldError := ERRORBLOCK( { | e | BREAK( e ) } )

   IF HB_ISOBJECT( oControl )
      ::oControl := oControl

      bOldError := ERRORBLOCK( { | e | BREAK( e ) } )
      BEGIN SEQUENCE
         ::oPlaylist := oControl:playlist
      RECOVER USING oError
         ERRORBLOCK( bOldError )
         MsgStop( 'This Program Required Installed ' + hb_ntos( hb_Version( HB
         QUIT
      END SEQUENCE
      ERRORBLOCK( bOldError )

      ::oControl:Toolbar := .T.
      ::oControl:AutoPlay := .T.

      ::oInput := oControl:input
      ::oVideo := oControl:video
      ::oAudio := oControl:audio
      ::oMedia := oControl:MediaDescription

      ::Volume( 0 )
      // ::Mute( .T. ) 			-> Crash
      // ::oAudio:mute := .T.		-> Crash
      ::oAudio:toggleMute()

      ::lMute := .T.
it does Crash when call ::Mute(.T.) but ::oAudio:toggleMute() work

---

Code: Select all

PROCEDURE Main()
      DEFINE TIMER Timer_Main of Win1 INTERVAL 1000 ACTION CheckFullScreen()

Code: Select all

STATIC PROCEDURE CheckFullScreen()
LOCAL ii, iMax, cFile := "Start"
STATIC clast := ""

   IF lCheck = .T.
      iMax := nRow * nCol
      IF iMax > LEN( aVLC )
         iMax := LEN( aVLC )
      ENDIF

      IF LEN( aVLC ) >= iMax
         FOR ii := 1 TO iMax
            oVLC := aVLC[ ii ]
            IF HB_ISOBJECT( oVLC )
               IF oVLC:IsFullScreen()
                  // oVLC:Mute( .F. )		-> Crash
                  //   oVlc:oAudio:mute := .F.	-> Crash
                  oVlc:Volume( 100 )
               ELSE
                  // oVLC:Mute( .T. )		-> Crash
                  //   oVlc:oAudio:mute := .T.	-> Crash
                  oVlc:Volume( 0 )
               ENDIF
            ENDIF
         NEXT
      ENDIF
   ENDIF
RETURN
i use a TIMER every Second to check oVLC:IsFullScreen() and while only 1 can be in "FullScreen" i want to enable Sound.
but it also Crash here ... :(

i know that ::oAudio:toggleMute() work but how to implement Logic :idea:
have fun
Jimmy
Post Reply