Video beim Start einer app als Intro abspielen

Startseite Foren Deutsches LiveCode-Forum Video beim Start einer app als Intro abspielen

Schlagwörter: 

Ansicht von 15 Antwort-Themen
  • Autor
    Beiträge
    • #25912
      akrages
      Teilnehmer

        Hallo liebe Livecoder,

        ich verwende LiveCode Community 9.6.2 (rc2).
        Leider schaffe ich es nicht mit folgendem Code ein Video abzuspielen.

        on openCard
           if the environment is "mobile" then
              send "playMobileVideo" to me in 0 milliseconds
           else
              play videoClip (specialfolderpath("documents")& "/Iron-Picker106/Intro/Intro.mp4") 
           end if    
        end openCard
        
        on playMobileVideo 
           play videoClip (specialfolderpath("documents")& "/Iron-Picker106/Intro/Intro.mp4") 
           go to the next card
        end playMobileVideo
        
        end openCard

        Was mache ich falsch?
        Ich würde mich freuen, wenn mir jemand helfen könnte.

      • #25916
        Torsten
        Teilnehmer

          Hi,

          auf den ersten Blick würde ich vermuten, dass es an der Leerstelle zwischen Funktionsname der Klammer liegt. Versuch’s mal mit
          videoClip(specialfolderpath… statt
          videoClip (specialfolderpath…

          Happy Coding
          Torsten

          • #25920
            Torsten
            Teilnehmer

              Jep, war totaler Blödsinn… hab heute nacht scheinbar nicht genug Schlaf gehabt!

          • #25918
            Klaus Major
            Administrator

              Nein, Torsten, das ist definitiv nicht das Problem!

              1. Da ist ein doppeltes -> end opencard am Ende des Skripts

              2. Kein SEND hier nötig:

              ...
              if the environment is "mobile" then
                   playMobileVideo
                 else
              ...

              3. Ich habe auf dem Desktop noch nie ein MP4 mit PLAY zum Laufen bekommen.
              Nimm ein Player Objekt hier!

              4. Bist Du sicher, daß sich diese MP4 Datei in Deinem DOCUMENTS Ordner auf dem Handy wirklich schon vorhanden ist? Und auch wirklich in dem Unterordner: Iron-Picker106/Intro ? 😎

              Denk dran, auf der mobilen Platform ist das NICHT der DOCUMENTS Ordner auf Deiner Festplatte, sondern ein geschützer Bereich innerhalb des APK Pakets!

              5. Auf der mobilen Platform heisst der Befehl -> play VIDEO „pfag zum/video.mp4“

              ...
              play video(specialfolderpath("documents")& "/Iron-Picker106/Intro/Intro.mp4") 
              ## siehe 4.!
              ...
            • #25993
              akrages
              Teilnehmer

                Hallo.
                Vielen Dank für die Hilfe.

                Ich habe es jetzt mit folgenden Script welches ich in einem „Button“ habe geschafft, ein Video abzuspielen.

                on mouseUp
                   if the environment = "mobile" then
                      put specialfolderpath("resources")& "/Intro/Intro.mp4" into tVideoFile
                      mobileControlCreate "player", "myPlayer" ##Einen Player erstellen
                      put the result into sPlayerID -- Speichern der Steuerelement-ID
                      
                      mobileControlSet sPlayerID, "filename", tVideoFile
                      mobileControlSet sPlayerID, "visible", true
                      mobileControlSet sPlayerID, "rect", "30,32,414,330"
                      mobileControlSet sPlayerID, "showController", false ##Controller anzeigen
                      mobileControlSet sPlayerID, "preserveAspect", true ##Seitenverhältnis beibehalten
                      
                      mobileControlDo "myPlayer", "play"
                      --mobileControlDo "myPlayer", "pause"
                   else
                      play video "Intro.mp4"
                   end if 
                   
                   # Skript der Wiedergabetaste
                   //on mouseUp
                   //mobileControlDo "myPlayer", "play"
                   //end mouseUp
                   
                   # Skript der Pause-Taste
                   //on mouseUp
                   //mobileControlDo "myPlayer", "pause"
                   //end mouseUp
                end mouseUp   
                
                on playerFinished
                   if the environment = "mobile" then
                      mobileControlDelete sPlayerID
                   end if
                   go to cd "Home"
                end playerFinished

                Der Wechsel zur Karte „Home“ erfolgt zwar, allerdings bleibt ein schwarzes Viereck zurück, wenn die Videowiedergabe fertig ist.
                Das selbe Script in der Karte „Intro“ (Die erste Karte) funktioniert leider gar nicht.
                Was ist denn da der Fehler?
                Oder Fehlt noch etwas“
                Danke für jede Hilfe.

              • #25994
                akrages
                Teilnehmer

                  Das selbe Script in der Karte „Intro“ (Die erste Karte) funktioniert leider gar nicht.
                  D.h. Es ist nur der Ton zu hören.
                  Der Wechsel zur Karte „Home“ erfolgt zwar auch, allerdings bleiben zwei schwarze Balken zurück wenn die Videowiedergabe fertig ist. (Einer oben und einer unten)

                • #25996
                  akrages
                  Teilnehmer

                    Zwischenzeitlich konnte ich das Problem mit dem fehlenden Videobild bei der Wiedergabe des Videos lösen.
                    Für alle die es interessiert.
                    Diese Zeile im Stack war der Übeltäter;)

                    on openStack
                       set the acceleratedRendering of this stack to true

                    Einfach auskommentiert und das Video wird problemlos unter Android abgespielt.
                    Lediglich das Problem mit dem schwarzen Viereck besteht nach wie vor.
                    Jemand eine Idee?

                  • #25997
                    Klaus Major
                    Administrator

                      Lediglich das Problem mit dem schwarzen Viereck besteht nach wie vor.
                      Jemand eine Idee?

                      Versuche mal, einen Bildschirm-Refresh zu forcieren:

                      on playerFinished
                         lock screen
                         if the environment = "mobile" then
                            mobileControlDelete sPlayerID
                         end if
                         go to cd "Home"
                         unlock screen
                      end playerFinished

                      Ich selber besitze kein Handy o.ö., aber ist einen Versuch wert. 🙂

                    • #25999
                      akrages
                      Teilnehmer

                        Hi,
                        danke für den Tip.
                        Ich habe selbst auch schon daran gedacht.
                        Leider ohne den gewünschten Erfolg.
                        Das schwarze Viereck (Ist wohl das Fenster des Videoplayers),
                        liegt immer noch über der Karte „Home“

                      • #26000
                        akrages
                        Teilnehmer

                          So, auch hier war die Lösung ganz simpel.
                          Ein local sPlayerID
                          am Anfang desKartencripts und der #
                          mobileControlDelete sPlayerID Befehl wird jetzt richtig ausgeführt.

                        • #26006
                          Torsten
                          Teilnehmer

                            Danke für Deine Lösungen, das ist für spätere Problemsucher sehr wertvoll!

                            Happy Coding
                            Torsten

                          • #26027
                            akrages
                            Teilnehmer

                              Gern geschehen.
                              Schließlich lebt dieses Forum auch von Lösungen. 😉
                              Eine Frage habe ich noch.
                              Wie kann ich dieWiedergabelautstärke des Videos anpassen?
                              Das
                              set the playLoudness of player "myIntro" to 30
                              funktioniert leider nicht.

                            • #26030
                              Klaus Major
                              Administrator

                                Was Du hier mit „mobileControlCreate“ erstellt hast ist KEIN Player Objekt wie auf dem Desktop, sondern es wird hier ein natives Objekt erstellt.

                                Daher lass „of player xyz“ einfach mal weg:
                                set the playLoudness to 30

                                Leider habe ich im Dictionary nichts wie:
                                mobilecontrolset sPlayerID,"volume",30
                                gefunden?

                                Geht wohl nicht, oder?

                              • #26032
                                akrages
                                Teilnehmer

                                  mobilecontrolset sPlayerID,"volume",30
                                  Funktioniert leider nicht.
                                  Trotzdem Danke für den Tip.

                                • #26035
                                  Klaus Major
                                  Administrator

                                    Das war mir schon klar, aber was ist mit:
                                    set the playLoudness to 30

                                  • #26037
                                    akrages
                                    Teilnehmer

                                      in der IDE funktioniert
                                      set the playLoudness to 30
                                      natürlich.
                                      Aber unter Android nicht.

                                    • #26038
                                      Klaus Major
                                      Administrator

                                        Laut Dictionary sollte es das aber.
                                        Wieder ein Bug?

                                    Ansicht von 15 Antwort-Themen
                                    • Du musst angemeldet sein, um auf dieses Thema antworten zu können.