Facility Control

 View Only
Expand all | Collapse all

Blackmagic Hyperdeck Panel clip offset by 1 problem

Ben Gatien

Ben Gatien07-07-2020 20:45

Paul Foster

Paul Foster10-10-2020 01:34

  • 1.  Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 06-30-2020 15:12

    Blackmagic Hyperdeck Panel is fully functional except that clips are cued at a -1 position.  eg; clip 002 when cued recalls clip 001.   I've even added my own loop button to the Panel which works fine.

    I followed the advice on fixing a clip offset problem in Hyperdeck Control Panel but pasting James' code fix didn't help.  I'm useless at scripting however, so quite possible I did something wrong.  I've pasted the "fixed" code below.   Here's the original thread:  https://support.rossvideo.com/hc/en-us/community/posts/360040333972-BlackMagic-control-panel-dropdown?page=1#community_comment_360011188551

     

    And the suggested code fix:

     

    if (event.isConnectEvent()) {
       ogscript.rename('ConnectLabel', 'Connected<fg#00FF00>');
       var commandToSend = ogscript.getObject('sendCommand');
       ogscript.putObject('sendCommand', null);
       if (commandToSend != null) {
          ogscript.debug('sending command: ' + commandToSend);
          this.writeString(commandToSend + '\n', false);
       } else {
          ogscript.debug ('command to send was null');
       }
    } else if (event.isMessageEvent()) {
       var message = event.getBytesAsString().trim();
       var startmsgsearch = message.indexOf('clip count: ');
       if (startmsgsearch != -1) {
          var clipsnum = message.substr(12, message.length-1);
          ogscript.putObject('ClipsNum', clipsnum);
          ogscript.putObject('ClipsCount', 0);
          ogscript.debug('Number of Clips = ' + clipsnum);
          ogscript.putObject('responseBuilder', new Array());
       } else {
          var clipsnum = ogscript.getObject('ClipsNum');
          var clipscount = ogscript.getObject('ClipsCount');
          if (clipsnum != null) {
             if (clipsnum == clipscount) {
                ogscript.debug('end of response');
                ogscript.putObject('busy', false);
                var responseObject = ogscript.getObject('responseBuilder');
                var callback = ogscript.getObject('callback');
                if (callback != null) {
                   ogscript.debug('making callback with ' + responseObject);
                   callback(responseObject);  
                }
                ogscript.putObject('ClipsNum', null);
                ogscript.putObject('ClipsCount', null);
             } else if (clipsnum != clipscount) {
                var clipnamestart = message.indexOf(':');
                var clipnameend = message.indexOf('.mov');
                var clipnameparsed = message.substr(clipnamestart + 2, clipnameend - clipnamestart - 2);
               var clipid = parseInt(message.substring(0, clipnamestart));
               ogscript.debug('clip received: ' clipid +' ' + clipnameparsed + ' ' + clipnamestart + ' ' + clipnameend + ' ' + clipnameparsed.length);
                ogscript.debug('clip received: ' + message);
               ogscript.getObject('responseBuilder').push({"key":clipid, "value":clipnameparsed});
                clipscount++;
                ogscript.putObject('ClipsCount', clipscount);
              } else {
                ogscript.debug('message received ' + message);
              }
          }
       }
    } else if (event.isDisconnectEvent()) {
       ogscript.rename('ConnectLabel', 'Disconnected<fg#FF0000>');
       ogscript.debug('connection closed');
       ogscript.putObject('busy', false);
    } else {
       ogscript.debug('no event info');
    }

     

     



  • 2.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 06-30-2020 15:56

    Not exactly related to the above problem, but also wondering how to have multiple instances of the controller for using multiple Hyperdecks?


    #DashBoard


  • 3.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 06-30-2020 17:05

    You seem to be missing a "+" here


    #DashBoard


  • 4.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 06-30-2020 17:14

    In order to have multiple controllers, you would have to have 2 different parameters to hold the 2 different IP addresses

    Right now, in that panel, it's parameter 0x9 that holds the IP address.

    You could make a second one (e.g. 0x10).  Once you do that, you could duplicate the playback buttons to control the second hyperdeck and change anywhere in those button's tasks that says

    rosstalk.sendMessage(params.getValue(0x9, 0), parseInt(ogscript.getPrivateString('hosts', 'BlackmagicDeck1.port')), <something>);

    to 

    rosstalk.sendMessage(params.getValue(0x10, 0), parseInt(ogscript.getPrivateString('hosts', 'BlackmagicDeck1.port')), <something>);

     

    You would probably also need to make a copy of the 0x2 parameter (which is the clip list), so that you have have multiple clip lists.

     

     

    If you don't feel comfortable doing this yourself, I know Ross has a service that can help you create or modify custom panels.


    #DashBoard


  • 5.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 07-07-2020 20:45

    Did adding the "+" help?


    #DashBoard


  • 6.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 07-07-2020 20:50

    It did!  I did something wrong trying to paste in just the code fix from James & yourself, so today I pasted the entire Listener code block & that fixed it.  

    Also tried a "stupid people" workaround on accessing multiple Hyperdecks - I created a Panel for each desk with the IP address saved.  Then used different GPI triggers to roll appropriate deck.  Not elegant, but works.

    If there's any code lying around that would demonstrate how to cue clip #xx (assuming clip list is refreshed manually), that would be awesome.  It's the final bit I need to be able to CC a list of lower 3rds off Hyperdeck.   


    #DashBoard


  • 7.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 08-06-2020 21:33

    Hey Bob,

    Are you still working on this? If so I have a panel with multiple HyperDecks (6) and buttons that search by the name not the clip number since the clip number isn't static.


    #DashBoard


  • 8.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 08-06-2020 21:59

    YES!  Thank you so much Mark!  And maybe it'll help me learn the coding side, with it as an example.


    #DashBoard


  • 9.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem



  • 10.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 08-14-2020 14:51

    Got it, thanks, I should have some time in the next week or so to dive in & see how it's done.


    #DashBoard


  • 11.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 10-02-2020 03:58

    Hi Mark
    I'm keen to get a hold of your 6 player setup too please! Your link has expired. We have multiple units to control as well. Thanks!


    #DashBoard


  • 12.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 10-09-2020 20:30

    Once I figure out where I stored it... I'll post a link again.


    #DashBoard


  • 13.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 10-10-2020 01:34

    Magic!


    #DashBoard


  • 14.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 10-11-2020 16:35


  • 15.  RE: Blackmagic Hyperdeck Panel clip offset by 1 problem

    Posted 10-11-2020 19:27

    Awesome thanks, I'll take a look! I think I'm mostly there now, but definitely up for any tips.


    #DashBoard