HISE Logo Forum
    • Categories
    • Register
    • Login

    Jump to DAW playback position

    Scheduled Pinned Locked Moved Solved Scripting
    transportdawplayheadmidiplayer
    10 Posts 2 Posters 357 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Matt_SFM
      Matt_SF
      last edited by

      Hello all,
      I searched the forum for an answer but could'n find anything.

      I'm working on a drums plugin that contains midi clips.
      I've already a working transport handler to sync/unsyc the plugin and the clips to the DAW, but I want to do this:

      • DAW is already playing (user wants to find a good midi clip that matches his song)
      • User will click on several midi clips listen to them along his song
      • The midi player should jump to the DAW's play head and start playing the clip at the right beat in the right bar (not start at 0 when the bar is 2.5).

      Engine.getPlayHead() is empty (that's been already reported) and I can't think of any other way to do that.

      Would anyone have a idea about how doing it ?

      Cheers

      Develop branch
      Win10 & VS17 / Ventura & Xcode 14. 3

      ulrikU 1 Reply Last reply Reply Quote 0
      • Matt_SFM
        Matt_SF @ulrik
        last edited by

        @ulrik Aah ok noted. Thank you for your help !

        Develop branch
        Win10 & VS17 / Ventura & Xcode 14. 3

        1 Reply Last reply Reply Quote 0
        • ulrikU
          ulrik @Matt_SF
          last edited by

          @Matt_SF Try this snippet, it's built for having the midi files in the projects midi folder, so if you're having them elsewhere you have to adjust the settings

          playintime.gif

          HiseSnippet 3802.3oc2Yk1iiajdVZlQdc2axB6EKBBxmHFjfn1Z.snNnDsg2o0snnnnDE0o2EdoHKdHdJV7PRKLv9OK+ExOE+87gMUQI0s5YZOdvfrAYSCzM5538sddO4SQNNvSA.gdAYxdqzAePlr+C4ldvMznkgroaF11Yx9ujaPjiOgjGwXa4CajUrF6AMCM8byz7fuLDBTyjM6K6g2e1adUlze9o21T1V1UA73TYxL2yTALzzwL7wYGeOmoscWYUfjoyU6tx8rJdts7r8hPX6k4JlwGcxx5fQx3s8hbY5KCMxj8qxUrJM.Tqrlppb4xpzzzL0YpvPIqUrh7FJZlJkpTqT8ZZYx9YcTMC8BlFJGBfYx9pldpGlZ3k3d5.laBM2XCvCnxLEcxmltqmsJ1Dwylokgos53KNMXlLYyM9QW3KO4B+c43MUMeX9GckeQ5BDOJw0Nvru3ov6kOAdTWCuhWAumARu3JH8qtDUSgDJ.BBRgxM43OO5ZLzJJH.3FNErKB7jf2O81yKIEfBCWO+POO+NtxHjod8zWxUl5Cd5BYe4GsYR8AMyLXKpqoM.axYuL.sar4gxOZKGJm4Ee4mmipZkxjtRzb0aQIO3HCGoq6x98ZLN9HkMI4v39iVp0n6oesVpFOY4X4i9tKn51.5eXRawibP1UFh6GxdPZqb39v5h7a6KFKNXGHwcw5NB8aOXqXaZdnv1wj7s0ZzXYwBGAbQbGJevY4.iiBVimOeggC4gfo1C7po2o958lMDKXUXLaUusQ6i1dPeYQmILbK6XVCtjyVBzQH4HE6BOJ0058mCjnWrPooZ8kUXKNcB8RlhkqwMrGvkZpWc3NlRUsftFvJaE5HzXNbZ2VPSPYoHYmZZjqBlrVhGLKTXZqJk6rGRor2gtjA81CkMzn51Zy1cgNyo42qrOQtc.kJS8HiJwVzN970oKxxzoD6zHg4zfPtPEQFwfsCBc4nXZVoWxj0hrc2as7PhydaUVFxE1TBG3bJOvUj6.654gGcMGDOhJwYTYyoIyj3kipoWl0kDlLlYd49q5YXZLG5.zchoGGzYJRhVrKKwBZEC5VabzbRVx3FwlLftqGGsusnc8py5Npkf+9psqMbHOmUwhKJ3rjuF6HSocSYHoaNYGey3kqXWBJNOpBx0ukF5LpTOK50ECqRUnYsIIpAvVVvikBsGVc8N3VVZetjVkoEoTK4mXtHYxVJ9MGs7ONOJwZYetoiFaw2rYRaFxoTp6k7NrqiP2kByzDXquu8lff1cb37hDaZwVY+woLhTa1JM7XKKfgiiPRUy8810mSef9LAI5odUgGCsFP6sNZt0rRjlBZt7M6TjYRzBYy.pNFyrZsdsLeYVmJLCmKqUUMX8BmR63azcT+c8mtpDqgXP8ZbE60+f1rfgSzQoXTAQkOxdjaGmnz1xrf9VRC6spOrT+EqnGUQnfYgwabB1vrr1jkKTFzfIvsjn5vcLFKfwwCsq50b4rHq0I6kJEZLTaCjjoytInZ6JaJyqpUmqaqYkrMFtub0F0FsoqnBriSKfNa3ng8D1Wc8P0REp6XnG263nAwgiO5BaLZQmRclxtSgt6FNKX8v5KLpWyacgYg0cqXaG4AiHmpzZgkt7zZRFI6mrZmlfSylLdCa2MooUMmlQ5BSpXIQwKuntKjewHY9RMKHy.KLMfegbW1CMEVKOHhiB13f8HyRJzUoptNhKQUcnkRQ3xF0zWI2o1fQ167kXQUOsEjaugScvzJG1I2FtRnBUOHPTNxodqjM0Fa2nwNQZN+pCCqUnYoJs5VwZAuSOcAWJ4IzcpMrvzgC4300Vst2wDXAIt4t8gda3X1KYpURsZQtckVqFDLu5gBAE1sJd0XVFXbA1ZM6paoTc8HVKwIkaSIQ2PneSdgJb9c2KaC3T2QxD55LPXqu5vJIwtF7Ug80o1uc0Q.KvZPU31EUm6MNwtH.0YXQQTGANUFsUEjnWubo2rY7vIR91B5SF0e0bOtd1gkDEsZtURukwQp0ZrxBi2zekQvNmAh5ynVNtArA6LoEK0DmK1EZdbhDy3gG2NawDlEKG3RROZSeax4KPO7NddCPg88iZE0n874tCN1egHOC0F9BEAqrrAyhjpVeF8Z9BRt0m3a2kget7QM8UCWuVfWVRY5BZENsHsdS3JOqNyrRQJiknTQUnCqQxPs2HdIJZxzKpHnShXe4igUKtFpWxfO1wFZwTOAtrccU5gqmSyVvPAtLHXKJSmWWpA6VRx8i70SNtpeeqlSjV1jbYisRj7CH6uVtEIer15ljM2jjvVfa6bO+M6lRBg1yYpWphuSMulirFDrYAsDWw4SGDuiNbBWW1ciCCCLZVXSo3sC6.DU1ywssT7vRNlcUzDF3Vr2gx5diKzecX.4LsFs7KDBbicq0nx7FEjSJYsOlxsesMxx9qDGuqW4QraV6qUevVeQz4VmqScZm5h6M3DYlwaSOcecx9dkmejWrs0zwL1jE2taE6VuXZROaAHocUyp91r68ho5jzUo5Vg4wpdC4ZGWonRmsRIwMnR7ZXD.0T51pS6cKbWprpQeojRpsc836zOrt01gsjnCYWUX6dSxxa6uANYPmZqmUXSu16LHqM1bbXaK+X+F6GnZWSmbi1bm5E3TUCqOeyH5Qpzk2lv1aayssZLqJkNmDK6ZXfhJiewFqWnVxS02BUHzw.TInGUPQ5Ci.qfyahZ2dXf4v5TaLKRYwjbrsfv.i9MqoVTeru0L8n5Rk7aKPNYPowb0XAk6Vrs5HV2k5kV6I1Vu05XO60sazuWQ5FIlb1UW5tIXX8c0aoueGCcCxLXZBmXQRj6OOVTXPmVR+PWggs6H9ibHpPDgF.G.oiIlRDlU5TScW4vn.jDe1nHmlxH5GOvnoy8i7bLQqiYacYxu391.2maZLaIDymfvq4EehB0SXIIAb78vS7EM15+W+Oldelq3z8pSb59xbSUBL8CebELymecNV2PPflLh910T6Ns2Lu3+5WkqkGZGtgjNxVftAnAOHQd5hEeCA5O28s2da.PmvG0p2.HqR7cDE+1aQLxggDmINhlJ8lBj5fvGIWl+0mW90XUbR.o9n81wU2zEPpD.P79PrHcg9dAg8kcUsQRg1rTeRHHDoREdOUPdzvwA.MPPm8Hv4Jai0moqMRIDZQtJ3KfP34hOLDAaWcPdSHdfoq9c29mu8lGFQ7VBrpwN8T6DopV1dJV4KdGw2bZIO+2cku81eDcbe8WeSngIJg.GMHPnKDqu7kJe2avIIDPGYaD+yPBWuP.QrrcDff5qoqH8fj9AdaAJgDFxPB.xPbQWk3r57C.9WhbDfSLnwxYpQbvKhP0y8eOjHBBROo2Q1yPA9lzsBM7hrUQmQL53qSXh743PlmFQoxmcqmXn2KvTMeXPD3MnUdN+oNZCm8lJXOwaHjCzKk92xod0qxGNGPQQ+oxN9H2PWufIQHuLHnIJFCOoguJO0WyPe2ceUku8VrocZVhuCkOc2s2by4jELDe2aW9PT3jEH316QvcxFdDsOlqYaBC+tKonWRMwU7CQKfSyvY034viwcAfHS46+iH40Pgg7tHuWpNPf6I6hzOBZjGwUMZCLL.46Q+uIJhrWPK+q+wWeWAp2Pb0L3tGu9t6dDWXkAmOFcXWp9PXqkGJX5hFfpZNsNtp47+hM57u1DEvgu9MOExja8Lcy+5+f6qSOgmor3rNvmUfmcdkKGzaNkklFKu3jTrAxAMrsubqOH1MccjA69xicJeepv+w2PnIaCQA.bX3bP5Wvpvp4LXZgpYvw47uKJ+YLELNZF59AMETNkrMAHF6gHdR3uSLZq3oQM5btXg4ovV3IgrO0Z6lau4wZuzlEo0cnvno+o1cIF.2z4TkSR6KhMBBTMdPjqKJgHUAXocA35TOBj1UhrQc6vhF.dPeZH24kZ1ymjWpBOCBDpIr8jwU6OrcafqdnAQda4Sca7zzHBQOZBIuiOJWMM4EfSdO4Dv0V3pM.oIbDp4jflV96vSdC1dSqZktHd96H98H2vae+o+FB6KdlGMlKlt+45ThMxnGwfBTOwwbw856iNu7Oz13eiv9NhuNUsn.JzyFP5iplBy66iCImZg91GBfX4N0m9gzQTy5zNCmfEJs58ADxcdwWSbJ3c6GrQS5Y+ymDeNA7mKI9o4m3j3qRdS88t4SSRu8Guk3cWBGVdl0NqrzmL9LKiiQAeHAy6F4rADbcIBdiHpCO8kuj6i6kunbxub0F8bYcMCE7At+buXrLmcl32G0YTg1ZXJyke6YlK.04lfDLOfLXxV2j6bCgLov9JJR2m4cUwu4rJZFEF54dV7ygh2S7LYlwl95fPDgNCKDT8AAglXuP11fXSEvIVU2jqM.ZgxxRw84jfLY+7ORju+wis88Gdbvu+9DS0PiGl3OAu2.XpabEQvU2idZOt38jKMsyelreSNTdlwOfXKXGoBt0.nlXpeli5sORW8VmCAdHFLHV.AnntEh4IND7.9+rOB21OC1+KxuC1+Ke+6g81OGA0uHGhIGtowSeGn32T74Ed2WhLlFlKpp7vSdig+O0KF8iEheYtwlgJFOOFewyfQbN9eCv34Wm7+XtNZZHRjOBvWkq6x+17tiu93+MmN9ectonmHmR0O8v+mRGSr.y1rGvEDfcdTefuEv+4G62Bv+i9aAHnDhN9y2h.9DEOE3XJgR5gWO4LH5hNfch3n40y2xCcWtmaoe5scQF4yJyT7UASSKZ33E49jax8tub6W8w0e8W3SL7p+O2mX3uCJ1yl8JLdyELN0DeUkNtw.aT++TL9aQM70jirCuL6Syk48b87M7bMUtNPKBPWBPWGDbM1eVCpQX3S9hI+t6EAHB2Wmz9ud+PTxlb.9dueh9BpOdewGJd8Om6DbIvEfD+8aS5W9+uaRK5Egu9OuLJID8P6bihblh5Mp.v2F1EXiY1k8E39amFWDO9TyQW0zA+UzOmWjBON64Eotr3+qbFNxJAd+fxIpc37zOOcFjc6l994PzpviIndeFcXx8+fhxSU06IXoOUAK+oJXkOUAq9oJH8mpf09TEr9urf3GB0HJzy4ToYlL7i6jx.Oa1G9XwYeYl+aoXjq0A
          

          Hise Develop branch
          MacOs 15.3.1, Xcode 16.2
          http://musikboden.se

          ulrikU 1 Reply Last reply Reply Quote 0
          • ulrikU
            ulrik @ulrik
            last edited by

            @ulrik oh and one more thing, if you start the midi player when the daw is playing, there is a function in the Play callback that calculate the midi file length, based on the the last note off timestamp in the loaded sequence.
            So if your midi file has silence after the last note off event, it will fail to set the right playback position.
            I couldn't find a way to calculate the actual length of the midi file (maybe there is a way that I'm not aware of)

            Hise Develop branch
            MacOs 15.3.1, Xcode 16.2
            http://musikboden.se

            Matt_SFM 1 Reply Last reply Reply Quote 0
            • Matt_SFM
              Matt_SF @ulrik
              last edited by Matt_SF

              @ulrik Many Thanks Ulrik! I tried using setOnGridChange but the docs lacked some details (what are the arguments, how many are they). What is the clock arg ? What are its units ?

              I'm not a math genius but, using what you've made I managed to get the playhead position without relying on the timestamps. As you said, if there is slience after the last notOff event, it might mess up the calculation.
              I haven't tried in a compiled plugin but seems to be working.

              Let me know what you think! At this hour I don't know if I can be trusted 😅

              HiseSnippet 3256.3oc2Zs0TajbEdD1ZSfMYqc2rUpT4kLEURsirYkPiDBXc4XP2.rQfrjvX7lMTslokTCi5d7bAPdKWYeK+7RdH+.xOgM+BRNm4hzHYgtAaprgG.5Kem9zmy24zWltpkPiZaKrjhsRidlToX+h306wc5TnCgwkNnnTrea7SLrXW9k1xNVDtsovxYeBW2fZIkumIw1lpKEK1C1C6erkenj2O+vyxSLHbM5fpjjdkfoQOj0k4Ln1p67BlgQYhNsAqajdmcmCzD7BBCgKnaOH95RlDsKIsoGQvtsTbo8I1cjh8n3jLYzakK2Vaqqkciza2hrotVyLauAUWMaF51Tc8Myn2rUKoXeTIclivptCwgZKE6g4E58p2QbM2e.dEyl0zfhERKUGFY+pKKLzwoHVqTgNLC8pgFMaIoXwqNvD9.eS3WDuBSm0u9AlxO0qA4AHhZ.iszvp2CFR8RGU8VOh5MFUZoHpzOKzq5oRFjdfaCUkkiWInTTcnfqkEk6Tm9VW5PNue3YAM0vBbCQq+PgvrDm.ZldzpQg2D5ZcS5vMD6Ay7zL8DmlR3LpLyfhS4XgEfdiSOfeTj3PjV58whqtU5j7F4dwVER+tce2d4Stu1MWlI+EcKm7vWzt8tu442jrS4MUKdIoUQwElWre6FcN7kEpmozq4tUr4V165XcAqCqbkiqW8MapYt2d2TbuZIK17hMeiS0F4DV8ztRr6gGbxtIczK+5N56+t2bR4Rua+VVFEecgWaXkqYcypDJuvAGt+U2bgVsstN8djbpMt3rbpEdU0itj3xqyrI1a03BiyZR12slQ1aR28xiTu3z5GJ1irEq50Gm+rSZbbMdyKcy73qKXxyWkWtZu7UJsd9bt6d0F4KJ3Gk75juLemlUxePdQ02VI4KaTMckJq2nz6zOcqSxp0rRuCOXutF0Kkz7TsqNMCsZNyWlij6Tqja2UTmc1IOlZt8QhKxum8KncbRen0aebijLqZGjea8SONy0l4oGb56N6ZwyeEoxFaKzZmuUUg4VNYsdW8mexwFYJa8bIzk3GwdT7uqZsiedoBMNu7wGVrTs2eLmJWzRXlZOKg3Jpb5uJ84PcXUm6W040gTNr1cbNO25MM6ddV4lDK6jcYHYEyWTm0lSbbs.4+QG41MOz5.t1msyQhtLncLNHrxOcmhT93pF4w.mzxIZFKex8P72FztlhAU7m2QJRz1C8i19r300rXlNCZA4jeb7C3NTqVDHvJZPmeekV5u9wwKHfdvcR1kbIsrETnOBkbqu9ZxvuR7jUVwh1V1DBv5PI5xOUd8m3Wivl4vDb+Zfrm1NxAA4PUdY0S1l5LHQfxpAMuJJTe.M1G5aIdaFmlTyhBwnMFIquBz4F6mzl5.hTqhPmp.EqZQaQsJcCntbhQTkrpvF0njAZI22MAUEL3nNMjuTIQx.eY3rvIn4ICJhiMDHPWxCygoMZCfgZHNZUod.Ab4.MOUfAAvtuv1IuYWzHrBia.0J2xkq4Y2EbbLfz871TElMVfwamXkuakk6WR9YxnwCIZd9VvXUvPncox5Ij+Z+lDli1xSV48vvkJ0xNcXvxvHCTFr+Nn7TTyjXMYmNTY6tDCHaniLW3PkuhX3BwToxksQejlVhKnZNxcH1xTvUwgE1BDmoE0LjsJS8ymi3Xsj6Ibk0E7uzQ10l5MRifMPUrWyqq1cDtF5vXfgzaIy.+.RSEsjUyDPb7WuXOKlthikKcMnkwYOaCcHvZpgVh0jIVsU89cFOqZpTxUCI8LtbSzUuxxQhLTF33p.ayfUmB7Bc6xBqW5Bd.emrsuzejR5TamKQhGkMQpzquNPWW1aDFhN7TYCJusSGb5P7FPbfs8EqW26yui1UznYHHnIqKtCfVPZw9B2mY+Tu+W1NjWJqjMUVHhO0VqImLYxDdce.e9o3.0DhrAo6MuQ8HM1g.09TpuKvQH2h5n0wSGBUNexAkfUiiJ1FRPka553fFSjqPwDTnXwV26jC7DKvNttC0uNynH7qp3tmFErR+sL56G8mEGnSAlZO4qogjEhgcnZR38j075b+wdXCCN+FjWQQQIzemJhmJg7ePVIb19n9l4DIjSEs9P6YhDddaH8qsvflzzhwc5K2fvOep6w78FvJ8IuCnoCRiZvrcFJmS39SNDZ.SdfIZv5vx3Bj3b4a9V.eKvBq3YOQY.Frg5URSW6NJ7j1tMsc.srM7+LHT7liaor56WMwiSulbjZvkJWMQhA5EJL6WUEFrvkZ.cqf.hh4PAXAA+1wEDB9WbRqrJChzsWcsgU4jWHXbkU+S7U8FgPCj2JjAVHbIhiDNrVLMBFltleJiAlqQi4izrBmdsmrBi0K2mGGMlzmKy7Cx7SH4yef3wYMU96in8CyXGyLPLZeF+ZAiJngWP.lN0DtbcLENp39yhlTMBlj0Vzkh5NjrGya2WpVTHBfaCodZAoSbjUfLCOC3HQVTk.qxagRVY5qu5Oy+PUOv0iTDKgghVH+XMe0zaBDJcMCJwZWCivyLXi1y9sBlTj0qfb4uwC72tlbKHbGhavnGru2Ak+IqLEZLp.ASiBPNG7DIJiN+t8kxy6vmnMXw07QR0rZXBMubqZFLsKgzees7pxONbOT9Yn7oIOqelErQ+sNz2hC6evaKCdKCrLL+8j.Ny6uAQXMAjy4sTjoGrg7XgmcKbsUkAp.lHb7l7.60sYxG1bhl7H1ZH9hdLWwylBLR4QapUqw1Vfv71S5XZFs9VSBnh+RnQ8nXGgswO7QTiOaGQUy2tDoiB9AblywlT9sc8ARAFS7T6AZEzUGuSQ74Amhfp+JF8ZLShDdvmkiGPek7T6nWYhznh3SBDQduEoCfG3JFEN7yIG3cnY3PIApEnplTKGFZEhUjdESi5eBmkiWjZeIP07z6.R.T8Lp42LXXKtSuAE9i6bMS2oS+J14urSGJd.vAc4rcfDj3RP9lTuEljV5e9qhWDuto8AFWJbwozmuaKKAl3+bHAjwfSRt4V3II81oj8JCiQ87Zz1sIzYGQlPDGf18QgnF.wsYpJDKsNXtdnf7WIiCfb5ygBiLVoyr8LfTcQP5qhHvQT1ohrVmdNc55AczykGfM6sh8UDKl25lAS26f.TuqBHycU.YmAAz+VMJQr64IArTnGO79M78ccba0xfBBXyHLrII.06f.785idAKyiDp4QClrDlrUHJa39QNp2SxIy8jbxdOImMlS4Lm2g1DAtOae3LQiBT81.pNkQbF.NmiXlQBClaXykoQ8qtk3VeTomNpQbgSTMUGiiX1votPZo5j0xrSG27okYVvwKy7Md38RZwm07upyrHTuShXJ4fmIYDrZ7jER1oHjYJQ7bJI06MIk4dSRYu2jzFyojph2g2zodo2ZbQmi.VcAAOY51zPOEhlO7aeZOKTrYWFp2CxHy8fLxdOHiMlMYTSHbrScH6JpQOXan4I1LsPmhWaiBeqbQbniftlviD5iaHVzTQoNunh54mfhlcJfUuKfybW.m8t.di6B3byEXKidA8O3HcSv4fqhNKjnMUuMr2NExGCbp3V2FL0aG13Fpoxf1T8CMHiBUcwglYwglcwgtwhCM274VFKqYLtiFhq4xd2d9n9g9G9M65ef1M.k5bf5TBy.OzccSpFiLfoM5UqDnkAPcaRzgirGrMwLvlmCpZBaBdBflzdRm.rIskzO.l5jTwoCZtTQ0IqhiGV1EyfjcZFjQfE72zg2g1sPR7cZRWwnWGdgzmgWGn8+57e2Y+i+1yjhb+iezLbsm2xcO98jQt6wu+a9f6dr33drGeZbXSitF36GH5K8BeObAM.Z7PO3C7y6ygYRugdWT2WO+qYUE+r3UYNZcFuNtzXzQ7Np+QPGCdzb+x3kZ0hp4LPAeX7xu9GmWHWzg+S7G9ONdcFm58HY7F7esWY4SwOg9dTN0BMdomvKd7uOqu3QyY9EOdrlCL7AeGQ6gDbcZWVCfzaGsxSroksnusF5MiVeAAD.Mtl9gmUFljiESc7aV4QK1sqvkOzqhZzmv2CmsuOxTdHkO7+4dHk+DHXOVrH53xg5XcVWSCZINr8RATCpied7hzVDWCmvZGlKWQvElcDblVTGcMpiEqcapUTcerSnccbF5cg9E6TiZPIQIs+9cNDHaDK7H1KnsH8raKlj+52D2Wckw.P4e5lj9A++cR5ZBW7YkUg.jPXQ63G41sNjaTihOnBN0.+xrwVByu4WdcrrexQttWg+M7SPiowxwBZLcXi+WYL5RzfMvp4+oYQd5O2qFXdy8dYrKGuBVVN8G9EYwuP+4ZZCKpO.n5hBLyhBL6hBbiEEXtEE3lKJvslNPbQncccDc8CMkjpTsj2WPOVr9OI9XOP5+.kpqvGA
              

              Develop branch
              Win10 & VS17 / Ventura & Xcode 14. 3

              ulrikU 2 Replies Last reply Reply Quote 0
              • ulrikU
                ulrik @Matt_SF
                last edited by

                @Matt_SF said in Jump to DAW playback position:

                @ulrik Many Thanks Ulrik! I tried using setOnGridChange but the docs lacked some details (what are the arguments, how many are they). What is the clock arg ? What are its units ?

                I have only tried the first arg which I named "clock", I don't know what the 2 others are

                The clock argument counts how many, in this case, 1/64T has occurred, up to the daw playback position meaning that if the count is 96 sixty-fourths triplets, 4 quarter notes has passed
                The unit is the note value you set here:

                TH.setEnableGrid(true, 23);
                

                So in my case (with extended tempo settings), 0 refer to 8/1, 1 to 6/1, etc... and 23 refer to 1/64T, the shortest note value

                Hise Develop branch
                MacOs 15.3.1, Xcode 16.2
                http://musikboden.se

                Matt_SFM 1 Reply Last reply Reply Quote 0
                • Matt_SFM
                  Matt_SF @ulrik
                  last edited by

                  @ulrik Aah ok noted. Thank you for your help !

                  Develop branch
                  Win10 & VS17 / Ventura & Xcode 14. 3

                  1 Reply Last reply Reply Quote 0
                  • Matt_SFM Matt_SF has marked this topic as solved on
                  • ulrikU
                    ulrik @Matt_SF
                    last edited by

                    @Matt_SF at line 82 you have a undefined variable if there is no midi file loaded in the midi player, and trying to load a midi file with the vp will make Hise crash.
                    And if the daw is playing and you start to play a midi file with "Play" button, it will start from the beginning not from where the daw playhead is.I think my example take care of that.

                    Counting bars taken from the Timesignature object will not work with midi files that have more than one time signature

                    Otherwise, if the midi player is already running it seems to work nicely when changing midi files

                    Hise Develop branch
                    MacOs 15.3.1, Xcode 16.2
                    http://musikboden.se

                    Matt_SFM 1 Reply Last reply Reply Quote 0
                    • Matt_SFM
                      Matt_SF @ulrik
                      last edited by

                      @ulrik said in Jump to DAW playback position:

                      at line 82 you have a undefined variable if there is no midi file loaded in the midi player

                      Ah, indeed...

                      And if the daw is playing and you start to play a midi file with "Play" button, it will start from the beginning not from where the daw playhead is.I think my example take care of that.

                      That's weird, it's working here...

                      CleanShot 2024-12-15 at 09.27.43.gif

                      Counting bars taken from the Timesignature object will not work with midi files that have more than one time signature

                      Also true...

                      Develop branch
                      Win10 & VS17 / Ventura & Xcode 14. 3

                      ulrikU 1 Reply Last reply Reply Quote 0
                      • ulrikU
                        ulrik @Matt_SF
                        last edited by

                        @Matt_SF said in Jump to DAW playback position:

                        That's weird, it's working here...

                        Sorry, my bad, it is indeed working here as well 👍

                        Hise Develop branch
                        MacOs 15.3.1, Xcode 16.2
                        http://musikboden.se

                        Matt_SFM 1 Reply Last reply Reply Quote 0
                        • Matt_SFM
                          Matt_SF @ulrik
                          last edited by

                          @ulrik Ok, I'm not completely useless then 😂

                          It's the first time I'm using midi clips in a plugin so...
                          Thank you again for your help, it's much appreciated !

                          Develop branch
                          Win10 & VS17 / Ventura & Xcode 14. 3

                          1 Reply Last reply Reply Quote 1
                          • First post
                            Last post

                          51

                          Online

                          1.7k

                          Users

                          11.7k

                          Topics

                          101.8k

                          Posts