0

How to load a list of commands from a csv file?

Hi all,
I am developing a DMX controller that ingests UDP strings from a Brightsign player. My goal is to trigger lighting cues at certain points of a video playback. In BrightAuthor Connected I use a Video Timecode node to send the strings to UDP, but I find myself having to add manually hundreds of commands.
As my starting point is a CSV file coming from my DAW, the question is: is there a way I can import the CSV and transform it in a list of commands to feed into the video timecode node?
Until now my workaround was to build the project in legacy brightAuthor, properly format the CSV to comply to the <timedBrightSignCmd> block,  paste it in the project file and then import the project in BAconnected.. but it's a terrible workflow.
I used legacy BrightAuthor because the project files are much cleaner.
A little help would be greatly appreciated!
Thanks.



 

4 comments

  • 1
    Avatar
    Bright Scripters

    Hi Paul,

    A custom BrightAuthor plugin would be the way to go here. Such solution would work with both BA Classic and BA Connected.

    Could you share a snippet with a line or two from the CSV exported from the DAW? 

    What other formats can the DAW export which include timing and labels?

    Which DAW is being used?

  • 0
    Avatar
    paul harden

    Tried to answer but Firefox failed submitting.. Let's type it again in Chrome :-)
    The workflow I am using right now is similar to the one suggested by Erica, but I inject the code in a .BPF project file instead of .BPFX because the structure is more clean (no hashcodes, id's and strange things)
    So, I start in Reaper, where each timeline marker outputs a string like this:
    "31888,A001,20,250,250,0,2000"
    Syntax is: Time (ms), Bank (A,B,C), intensity, R,G,B, transition duration.
    The string can be sent in realtime as UDP via a LUA script, just for preview.
    UDP commands are sent to an Arduino with a DMX shield.
    When I am happy, another LUA script parses all the markers and saves an XML file.
    In the XML file, each string is encapsulated in a <timedBrightSignCmd>. The time(ms) parameter becomes the <timeout>, and the rest of the string goes into <SendUDP><parameterValueItemText>.
    Then I paste all the stuff in the .BPF project, import it in BAconnected so each cue becomes a VideoTimeCode command.
    While in playback the BrightSign can then drive a simple light rig with three independent fade channels.
    Does it make sense?
    It works flawlessly, but the workflow is not elegant at all.
    Aside to the XML, I can output a .CSV with the same content, so it would be very nice to import it directly into a VideoTimecode module in BAConnected without all that copying and pasting.

  • 0
    Avatar
    Bright Scripters

    Potentially, your workflow could be without BrightAuthor at all.

    Your SD card would contain the following:

    • Custom autorun.brs
    • Video file
    • CSV file

    Should you still want to use BrightAuthor, there would be a BA plugin and CSV placed on the SD card, which the plugin would read and process.

    You could eliminate the Arduino through use of USB to DMX controller such as from HSM Electronics.

    Could you provide mode details about the use-case? 

    Is your video repeatedly looping or triggered during live events?

     

    By the way, Erica Den and lawrence wise are AI powered spammers :)

    You can tell by the links which have nothing to do with the topic of this thread.

     

     

  • 0
    Avatar
    paul harden

    Hehe, I supposed they were AI, even without off topic links you can tell from the syntax.
    So, I need to publish with BA so I can do remote management and I need Arduino because I've got several analog stuff to control (BrightSign GPIO is already full with button inputs).
    Basically I'm building a show control rig for live performances and self contained installations. A plug and play "no fuss" AV/lighting and practical effects box.
    No computers, no power-off cycles.. just press the right button and let things happen :-)
    I've got two similar systems running since two years ago and they are solid as rocks.
    But I would like to streamline the production workflow so I can focus on content creation.
    A plugin to import a list of cues into the Video Timecode module would be just what I'm looking for.

Please sign in to leave a comment.