Dual-touch screen stage light programming control method and system
Patent Information
- Application Number
- CN202611249876.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-18
- Publication Date
- 2026-11-03
AI Technical Summary
Existing stage lighting control technologies suffer from several problems in scenarios involving multiple lights, multiple cue objects, and synchronized programming of background music. These problems include discontinuous connection between light fixture connection data and cue programming, difficulty in matching effect parameters with light fixture channel fields, and inconsistencies between fader playback index and timecode records.
By identifying the occupancy length of the lighting channel, generating candidate addresses, and verifying address conflicts, lighting fixture matching data and address occupancy tables are formed. A lighting fixture selection set is generated and mapped to effect library parameters. The cue steps are encapsulated and a fader replay index is established. Cue trigger events are recorded and timecode synchronization data is generated.
It implements the same-source referencing of lamp number, channel field and address occupancy status in subsequent effect mapping and cue step encapsulation, ensuring continuous matching of effect mapping data and consistency between fader trigger relationship and music playback progress record.
Smart Images

Figure CN123035587A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of stage lighting control technology, and in particular to a dual-touchscreen stage lighting programming control method and system. Background Technology
[0002] In the field of stage lighting control technology, existing solutions for stage lighting consoles typically rely on luminaire libraries, luminaire channel modes, DMX512 protocols, or Art-Net protocols to complete luminaire pairing. Stage luminaires are then programmed and controlled via effects libraries, attribute parameter windows, cue lists, and faders. While these solutions can handle luminaire address allocation, luminaire parameter adjustment, cue saving, and lighting control command output in typical scenarios, they are prone to limitations in scenarios involving multiple luminaires, multiple cue files, and simultaneous background music programming. These limitations include a disconnect between luminaire pairing data and subsequent cue programming, difficulty in continuously matching effect parameters with luminaire channel fields, and inconsistencies between fader playback indexes and timecode records.
[0003] Existing solutions often rely on manual address setting, fixed lamp grouping, preset effect recall, or external timecode processing. When the number of lamps, channel modes, cue steps, fader binding relationships, or background music playback progress changes, there is a lack of stable connection between the lamp matching process, effect mapping process, cue step saving process, and timecode recording process. This can easily lead to discrepancies between address occupancy status and lamp channel fields, discontinuous step numbers in the cue list and fader trigger relationships, and inconsistencies between music playback progress and cue trigger event records.
[0004] For the joint processing of lighting fixture connection data, effect mapping data, cue list data, fader playback index, and internal music playback progress, existing technologies still have common shortcomings in data object integration, trigger event recording, and execution status write-back. Therefore, it is necessary to address the issue of synchronizing timecode data based on lighting fixture connection data and internal music playback progress through cue steps and fader playback indexes, specifically within the on-site programming scenario of a stage lighting control console. Summary of the Invention
[0005] To address the aforementioned technical problems, this invention provides a dual-touchscreen stage lighting programming control method, comprising: S100: Obtain the performance file initialization command, lighting configuration data and address occupancy status based on DMX512 protocol or Art-Net protocol, identify the lighting channel occupancy length, generate candidate addresses and verify address conflicts, and generate lighting connection data and address occupancy table; S200. Based on the lamp matching data and dual touch screen interactive input, generate a lamp selection set and map the built-in effect library parameters to the lamp channel field to generate effect mapping data. S300: Based on the effect mapping data, lighting attribute parameters, cue time parameters and fader binding information, perform cue step encapsulation, cue list appending and fader replay index establishment to generate cue list data and fader replay index; S400: Based on the cue list data, the fader replay index, the background music file, and the internal music playback progress, record the cue trigger event, generate timecode synchronization data, output lighting control instructions conforming to the DMX512 protocol or the Art-Net protocol, and write the execution status back to the performance file data.
[0006] Furthermore, the lighting configuration data includes lighting model, number of lighting fixtures, lighting channel mode, lighting channel definition, lighting channel occupancy length, and lighting equipment identifier; The candidate address generation includes: reading the occupied address segments in the address occupancy table according to the Universe number; forming candidate address segments based on the lamp channel occupancy length and starting address; and writing the candidate address segments that do not overlap with the occupied address segments into the lamp mating data.
[0007] Furthermore, the generation of the lighting fixture connection data includes remote addressing feedback processing; The remote addressing feedback process includes: issuing an RDM addressing command to the luminaire based on the luminaire device identifier and receiving addressing feedback; updating the address occupancy table when the addressing feedback indicates that the addressing is complete; and generating an addressing error flag and retaining the luminaire mating data when the addressing feedback indicates that the addressing has failed.
[0008] Furthermore, the dual-touchscreen interactive input includes programming stage switching instructions, lamp layout window selection input, attribute parameter window input, effect library window input, cue list window input, and timecode recording window input; The generation of the lamp selection set includes: calling the programming stage layout state according to the programming stage switching instruction; associating the lamp layout window selection input with the lamp number in the lamp matching data to obtain the lamp selection set; and writing the lamp selection set into the programming stage layout state.
[0009] Furthermore, the built-in effects library parameters include position effect parameters, color effect parameters, and pattern effect parameters; The lighting channel fields include pan / tilt channel field, brightness channel field, color channel field, pattern channel field, and prism channel field; The lighting channel field mapping includes: writing the position effect parameters into the pan-tilt channel field, writing the color effect parameters into the color channel field, and writing the pattern effect parameters into the pattern channel field to form the effect mapping data.
[0010] Furthermore, the cue step encapsulation includes: writing the lamp selection set, the effect mapping data, the lamp attribute parameters, and the cue time parameters into the same cue step record; The cue time parameters include fade-in time, fade-out time, delay time, and overlap time; The cue list appending includes writing the cue step records into the target cue list according to the step sequence number, thereby generating the cue list data.
[0011] Furthermore, the push rod binding information includes the push rod page number and the push rod serial number; The establishment of the putter replay index includes: writing the putter page number, the putter number, the cue list number, the step number, and the cue time parameter into the same index record; binding the index record with the cue list data to generate the putter replay index.
[0012] Furthermore, the cue trigger event record includes: reading the music file identifier, playback start point, and internal music playback progress of the background music file; recording the push button page number, push button number, cue list number, step number, and trigger timestamp corresponding to the trigger time; and generating the timecode synchronization data.
[0013] Furthermore, the execution status write-back includes generating corresponding abnormal status records when there is an address conflict, remote addressing failure, cue save conflict, push bar index conflict, timecode recording interruption, or control output abnormality. The abnormal status record, the lighting fixture connection data, the cue list data, the fader replay index, and the timecode synchronization data are written into the performance file data.
[0014] Furthermore, a dual-touchscreen stage lighting programming control system, applied to the method of any one of claims 1 to 9, includes: a mating and address management module, a dual-touchscreen effect mapping module, a cue generation and fader playback module, and a timecode synchronization and control output module; The matching and address management module is used to obtain the performance file initialization command, lighting configuration data and address occupancy status based on DMX512 protocol or Art-Net protocol, identify the occupancy length of lighting channel, generate candidate addresses and verify address conflicts, and generate lighting matching data and address occupancy table. The dual-touchscreen effect mapping module is connected to the matching and address management module. It is used to generate a set of lamp selections based on the lamp matching data and dual-touchscreen interactive input, and to map the built-in effect library parameters to the lamp channel field to generate effect mapping data. The cue generation and fader replay module is connected to the dual-touchscreen effect mapping module. It is used to encapsulate cue steps, append cue list and establish fader replay index based on the effect mapping data, lamp attribute parameters, cue time parameters and fader binding information, and generate cue list data and fader replay index. The timecode synchronization and control output module, connected to the cue generation and fader playback module, is used to record cue trigger events based on the cue list data, the fader playback index, the background music file, and the internal music playback progress. It generates timecode synchronization data, outputs lighting control commands conforming to the DMX512 or Art-Net protocol, and writes the execution status back to the performance file data.
[0015] The key innovations of this invention include: (1) Based on the performance file initialization instructions, lighting configuration data and address occupancy status based on DMX512 protocol or Art-Net protocol, identify the occupancy length of lighting channel, generate candidate addresses and verify address conflicts to form lighting connection data and address occupancy table, and use the lighting connection data as the basis for subsequent lighting selection set generation and lighting channel field mapping.
[0016] (2) Based on the lamp matching data and dual touch screen interactive input, generate a lamp selection set, map the built-in effect library parameters to the lamp channel field to form effect mapping data, and encapsulate the cue step based on the effect mapping data, lamp attribute parameters and cue time parameters, and add cue list data.
[0017] (3) Based on the cue list data, fader binding information and cue time parameters, establish a fader replay index, and based on the fader replay index, background music file and internal music playback progress record cue trigger event, form timecode synchronization data, and write the execution status back to the performance file data.
[0018] The following are its main beneficial effects: (1) To address the problem of discontinuous connection between lamp address configuration and subsequent cue programming in the existing stage lighting control console, lamp connection data and address occupancy table are formed by lamp channel occupancy length identification, candidate address generation and address conflict verification, so that lamp number, lamp channel field and address occupancy status maintain the same source reference relationship in subsequent effect mapping and cue step encapsulation.
[0019] (2) To address the problem that the preset effect call results are difficult to match continuously with different lamp channel fields in the existing scheme, the effect mapping data can be written into the cue step record and enter the subsequent fader replay processing along with the cue list data by generating the lamp selection set, mapping the built-in effect library parameters to the lamp channel fields, and encapsulating the cue step.
[0020] (3) To address the inconsistency between the pusher trigger relationship and the music playback progress record in the existing scheme, a pusher replay index is established, and based on the internal music playback progress record cue trigger event, timecode synchronization data containing cue list number, step number and trigger timestamp is formed, so that a continuous record relationship is formed between cue list data, pusher replay index and performance file data. Attached Figure Description
[0021] Figure 1 A flowchart illustrating a dual-touchscreen stage lighting programming control method provided in this application embodiment; Figure 2 This is a structural block diagram of a dual-touchscreen stage lighting programming control system provided in an embodiment of this application. Detailed Implementation
[0022] Example 1: Refer to Figure 1 This is a flowchart illustrating a dual-touchscreen stage lighting programming control method provided in an embodiment of the present invention. The process may include at least steps S100-S400: S100: Obtain the performance file initialization command, lighting configuration data and address occupancy status based on DMX512 protocol or Art-Net protocol, identify the lighting channel occupancy length, generate candidate addresses and verify address conflicts, and generate lighting connection data and address occupancy table; S200. Based on the lamp matching data and dual touch screen interactive input, generate a lamp selection set and map the built-in effect library parameters to the lamp channel field to generate effect mapping data. S300: Based on the effect mapping data, lighting attribute parameters, cue time parameters and fader binding information, perform cue step encapsulation, cue list appending and fader replay index establishment to generate cue list data and fader replay index; S400: Based on the cue list data, the fader replay index, the background music file, and the internal music playback progress, record the cue trigger event, generate timecode synchronization data, output lighting control instructions conforming to the DMX512 protocol or the Art-Net protocol, and write the execution status back to the performance file data.
[0023] S100: Obtain the performance file initialization command, lighting configuration data, and address occupancy status based on the DMX512 protocol or Art-Net protocol; perform lighting channel occupancy length identification, candidate address generation, and address conflict verification; and generate lighting connection data and address occupancy table.
[0024] This step is executed by the Pairing and Address Management module in the stage lighting control console. This module is connected to the console's main processor, memory, DMX512 output interface, and network interface. The DMX512 protocol stands for Digital Multiplex 512; the Art-Net protocol stands for Artistic License Network, a network protocol for transmitting lighting control data over Ethernet. The performance file initialization command is generated when the console receives a new performance file, opens a blank performance file, or loads a performance file to be edited. The lighting fixture configuration data comes from the lighting fixture library or externally imported lighting fixture configuration files. The address occupancy status based on the DMX512 or Art-Net protocol is derived from the address occupancy table in the current performance file, the connected lighting fixture records, and the console interface configuration.
[0025] The luminaire configuration data in this step represents the basic description data of the luminaires to be connected, including luminaire model, quantity, channel mode, channel definition, channel occupancy length, and device identifier. The channel definition describes the correspondence between the luminaire channel and functions such as pan / tilt, brightness, color, pattern, prism, flicker, or reset. The channel occupancy length indicates the number of continuous control channels occupied by a single luminaire in the current channel mode. The device identifier distinguishes different luminaires and is used for addressing via a remote device management protocol, participating in the matching of addressing commands.
[0026] During this step, the mating and address management module first reads the performance file initialization command and establishes the file identifier, lighting mating area, address occupancy area, and abnormal status area of the current performance file in memory. Subsequently, the mating and address management module receives lighting configuration data, parses the lighting model and lighting channel mode, and reads the channel field order from the lighting channel definition. For each lighting model, the mating and address management module counts the number of consecutive channels from the start channel to the end channel according to the lighting channel definition, generating the lighting channel occupancy length. For multiple lighting fixtures of the same model, the mating and address management module copies the lighting configuration record according to the number of lighting fixtures and writes the lighting fixture number and pending mating status to each lighting configuration record.
[0027] During candidate address generation, the mating and address management module reads the occupied address segments from the address occupancy table according to the Universe number. The Universe represents a set of channels under the DMX512 or Art-Net protocol. The mating and address management module generates candidate address segments using the start address and the lamp channel occupancy length as input. Each candidate address segment includes the Universe number, start address, end address, lamp number, and verification status. The mating and address management module compares the candidate address segments with the occupied address segments. If the start or end address of a candidate address segment overlaps with an occupied address segment, the mating and address management module marks the candidate address segment as a conflicting address segment and reads the next consecutive free address segment to form a new candidate address segment. If the candidate address segment does not overlap with an occupied address segment, the mating and address management module writes the candidate address segment into the lamp mating data.
[0028] In one implementation, the generation of luminaire mating data includes remote addressing feedback processing. RDM stands for Remote Device Management. For luminaires that support RDM remote addressing, the mating and address management module issues an RDM addressing command to the luminaire based on the luminaire device identifier. The RDM addressing command includes the luminaire device identifier, Universe number, starting address, and channel mode. The console receives addressing feedback after the addressing command is issued. When the addressing feedback indicates a completed addressing status, the mating and address management module writes the corresponding candidate address range into the address occupancy table and updates the mating status in the luminaire mating data to a mated status. When the addressing feedback indicates a failed addressing status, the mating and address management module generates an addressing anomaly flag, retains the luminaire mating data in a pending confirmation status, and writes the anomaly status into the anomaly status area of the performance file data.
[0029] In another implementation, the luminaire configuration data is imported from an external storage medium. The mating and address management module reads the fields of the imported luminaire configuration file. If the fields contain luminaire model, channel mode, and channel definition, the mating and address management module writes the luminaire configuration file into the luminaire library. If a luminaire channel definition is missing from the fields, the mating and address management module marks the luminaire configuration record as missing channel definition and writes the record to the abnormal status area. When the fields contain multiple channel modes, the mating and address management module reads the corresponding channel definition according to the channel mode selected by the user in the dual-touchscreen interface to determine the luminaire channel occupancy length.
[0030] During project implementation, after receiving the command to create a new performance file, the stage lighting control console loads the configuration data for 12 moving head lights, 8 color-changing lights, and 4 pattern lights. The patching and address management module reads the channel mode and channel occupancy length of each light fixture, scans the address occupancy table according to the Universe number, and generates candidate address segments for each light fixture. For light fixtures whose candidate address segments overlap with existing address segments, the patching and address management module rereads the next available address segment and generates a new candidate address segment. For light fixtures whose addressing feedback indicates that the addressing is complete, the patching and address management module writes its light fixture number, Universe number, start address, end address, channel mode, and patching status into the light fixture patching data.
[0031] The lighting fixture pairing data generated in this step includes the fixture number, fixture model, fixture channel mode, fixture channel definition, fixture channel occupancy length, Universe number, start address, end address, fixture device identifier, and pairing status. The address occupancy table includes the Universe number, occupied start address, occupied end address, corresponding fixture number, and occupancy status. The lighting fixture pairing data and address occupancy table generated in this step are written into the performance file data and used as input for generating the lighting fixture selection set and mapping lighting fixture channel fields in S200. Subsequent steps read the fixture number, channel definition, and address fields from the lighting fixture pairing data, establishing the lighting fixture selection, effect mapping, cue step encapsulation, and control command output based on the same pairing record.
[0032] S200. Based on the lamp matching data and dual touch screen interactive input, generate a lamp selection set and map the built-in effect library parameters to the lamp channel field to generate effect mapping data.
[0033] This step is executed by the dual-touchscreen interaction module and the effects mapping module in the stage lighting control console. The dual-touchscreen interaction module receives the lighting fixture connection data generated by S100 and displays the lighting fixture layout window, attribute parameter window, effects library window, cue list window, and timecode recording window on the touchscreen interface. The effects mapping module reads the lighting fixture number, lighting fixture channel definition, and lighting fixture channel occupancy length from the lighting fixture connection data, and generates a lighting fixture selection set based on the dual-touchscreen interaction input. The dual-touchscreen interaction input includes programming stage switching commands, lighting fixture layout window selection input, attribute parameter window input, effects library window input, cue list window input, and timecode recording window input.
[0034] In this step, the lamp selection set represents the set of lamp records selected to participate in the current programming operation. The lamp selection set includes a lamp selection set number, the selected lamp number, the lamp channel mode, the corresponding lamp mating data identifier, and the current programming stage identifier. The programming stage layout state represents the window combination state of the dual touchscreens during the mating, programming, playback, and timecode recording stages. After receiving the programming stage switching command, the dual touchscreen interaction module reads the window layout record corresponding to that programming stage and associates the lamp layout window selection input with the lamp number in the lamp mating data. After the association is completed, the dual touchscreen interaction module writes the selected lamp number into the lamp selection set and writes the lamp selection set into the programming stage layout state.
[0035] In this step, the built-in effect library parameters represent the preset lighting effect parameters of the console. These parameters include position effect parameters, color effect parameters, and pattern effect parameters. The position effect parameters participate in the pan-tilt channel field mapping, the color effect parameters participate in the color channel field mapping, and the pattern effect parameters participate in the pattern channel field mapping. The lighting fixture channel fields include pan-tilt channel fields, brightness channel fields, color channel fields, pattern channel fields, and prism channel fields. The effect mapping module reads the selected lighting fixture number from the lighting fixture selection set and then queries the lighting fixture channel definition in the lighting fixture matching data based on the selected lighting fixture number. When a lighting fixture channel field corresponding to an effect parameter exists in the lighting fixture channel definition, the effect mapping module writes the corresponding effect parameter into that lighting fixture channel field, forming effect mapping data.
[0036] Specifically, the effect mapping module writes position effect parameters into the pan / tilt channel field, color effect parameters into the color channel field, and pattern effect parameters into the pattern channel field. For luminaires containing a brightness channel field, the effect mapping module writes the brightness parameters input from the attribute parameter window into the brightness channel field. For luminaires containing a prism channel field, the effect mapping module writes the prism parameters input from the attribute parameter window into the prism channel field. When different luminaire models have different channel orders, the effect mapping module does not write parameters according to fixed channel numbers, but rather maps them according to the field names in the luminaire channel definition. After mapping, the effect mapping module generates channel fields, parameter sources, parameter values, and mapping status records for each selected luminaire, and combines the mapping status records of multiple luminaires into effect mapping data.
[0037] This step begins when input is received from the lighting layout window and also when parameters from the built-in effects library are invoked. Lighting layout window input includes touch-screen clicks, box selection, and lighting group selection. Attribute parameter window input includes pan / tilt parameters, brightness parameters, color parameters, pattern parameters, and prism parameters. Effects library window input includes position effect parameter selection, color effect parameter selection, and pattern effect parameter selection. Cue list window input and timecode recording window input participate in the layout state recording during this step, and their recording results are written to the performance file data along with the lighting selection set.
[0038] In one implementation, one touchscreen displays a luminaire layout window and an effects library window, while the other touchscreen displays an attribute parameter window, a cue list window, and a timecode recording window. After receiving a programming stage switching command, the dual-touchscreen interaction module reads the corresponding programming stage layout state. During the mating stage, the luminaire layout window and the address occupancy table are displayed in tandem. During the programming stage, the luminaire layout window and the effects library window are displayed in tandem. During the playback stage, the cue list window and the fader status record are displayed in tandem. During the timecode recording stage, the timecode recording window and the cue list window are displayed in tandem. The window state records generated by these tandem displays are written into the programming stage layout state and enter the effects mapping process along with the selected luminaire set.
[0039] In another implementation, when the effect mapping module reads the luminaire channel definition, if the target luminaire does not contain a luminaire channel field corresponding to the built-in effect library parameters, the field is marked as unmapped, while the mappable channel fields are retained. The unmapped state is written into the effect mapping data. If there are multiple luminaire models in the luminaire selection set, the effect mapping module reads the luminaire channel definition corresponding to each luminaire model and generates an independent mapping status record according to the luminaire number. Multiple mapping status records are merged according to the luminaire selection set number to form effect mapping data under the same programming operation.
[0040] During project implementation, the console reads the luminaire mating data generated by S100 and displays the mated moving head lights, color-changing lights, and pattern lights in the luminaire layout window. The user selects the first group of moving head lights in the luminaire layout window on the dual touchscreens and chooses position and color effect parameters in the effect library window. The dual touchscreen interaction module associates the selection result with the luminaire number in the luminaire mating data to generate a luminaire selection set. The effect mapping module reads the luminaire channel definition of the first group of moving head lights, writes the position effect parameters into the pan-tilt channel field, writes the color effect parameters into the color channel field, and simultaneously reads the brightness parameters input from the attribute parameter window and writes them into the brightness channel field. After processing, the effect mapping module generates effect mapping data for the first group of moving head lights.
[0041] The effect mapping data output in this step includes the lamp selection set number, the selected lamp number, the lamp channel field, built-in effect library parameters, lamp attribute parameters, mapping status, and programming stage layout status identifier. This effect mapping data is written into the performance file data and used as input for the cue step encapsulation in S300. S300 reads the lamp selection set number, the selected lamp number, the lamp channel field, and parameter values from the effect mapping data, and writes the lighting state formed by the current programming operation into the cue step record.
[0042] S300. Based on the effect mapping data, lighting attribute parameters, cue time parameters, and fader binding information, perform cue step encapsulation, cue list appending, and fader replay index establishment to generate cue list data and fader replay index.
[0043] This step is executed by the cue generation module and fader playback module in the stage lighting control console. The cue generation module receives the effect mapping data generated by S200 and reads the current lighting fixture attribute parameters, cue timing parameters, and fader binding information. The lighting fixture attribute parameters include pan / tilt parameters, brightness parameters, color parameters, pattern parameters, and prism parameters. The cue timing parameters include fade-in time, fade-out time, delay time, and overlap time. The fader binding information includes fader page number and fader number. The cue generation module writes the above inputs into the same cue step record, forming cue step data that can be called by the playback fader and timecode.
[0044] The cue step in this step represents a saved lighting state record. The cue step record includes the cue list number, step sequence number, fixture selection set number, selected fixture number, effect mapping data identifier, fixture attribute parameters, cue time parameters, and step status. The cue list represents a lighting program record formed by multiple cue steps arranged according to their step sequence numbers. After receiving the cue save command, the cue generation module reads the fader page number and fader number from the fader binding information and searches the current performance file to see if a target cue list corresponding to that fader page number and fader number exists. If a target cue list exists, the cue generation module reads the existing step sequence number in the target cue list and appends a new cue step record after the existing step sequence number. If no target cue list exists, the cue generation module generates a new cue list number and writes the current cue step record into the cue list data corresponding to that cue list number.
[0045] The processing order of the cue step encapsulation is as follows: the cue generation module first reads the lamp selection set number and channel field parameters from the effect mapping data; then it reads the current lamp attribute parameters from the attribute parameter window; subsequently, it reads the cue time parameters; and finally, it writes all of the above content into the same cue step record. The fade-in time, fade-out time, delay time, and overlap time in the cue time parameters are written into the time field of the cue step record, respectively. For multiple selected lamps, the cue generation module writes the channel field parameters according to the selected lamp number and assigns the channel field parameters of multiple lamps to the same cue step record. After the cue step record is formed, the cue generation module writes the record into the target cue list, generating cue list data.
[0046] The fader replay module establishes a fader replay index after the cue list data is generated. This index represents the correspondence between fader page number, fader number, cue list number, step number, and cue time parameter. The fader replay module reads the fader page number and fader number from the fader binding information, and reads the cue list number and step number from the cue list data, writing these information into the same index record. After this index record is bound to the cue list data, the fader replay index is generated. Subsequent fader triggers, timecode triggers, or performance file restorations use the fader replay index to read the corresponding cue list data.
[0047] This step is initiated upon receiving a cue save command, a putter binding command, or a cue append command. The cue save command is generated via the touchscreen interface or physical control keys. The putter binding command indicates the binding relationship between the current cue step record and the target putter page number and putter number. The cue append command indicates that the current cue step record is appended to the target cue list. If the putter page number and putter number corresponding to the cue save command are already bound to the cue list, the cue generation module performs append, overwrite, or create processing based on the save type input by the user. During append processing, the cue generation module writes a new step number. During overwrite processing, the cue generation module retains the original cue list number and replaces the cue step record corresponding to the target step number. During create processing, the cue generation module generates a new cue list number and re-establishes the putter replay index.
[0048] In one implementation, the step number and cue timing parameter in the fader replay index are written together into the index record. When a fader is triggered, the fader replay module reads the index record corresponding to the current fader page number and fader number, and then reads the cue step record according to the cue list number and step number in the index record. If one fader number corresponds to multiple cue step records, the fader replay module reads the cue step records according to the step number and passes the cue timing parameter to the control output processing in S400. If there is a fader index conflict, the fader replay module generates a fader index conflict state and writes this state into the abnormal state area of the performance file data.
[0049] In another implementation, the cue generation module writes a version identifier to each cue step record. When a cue step with the same cue list number is overwritten, the cue generation module retains the original cue step record as a historical step record and writes the new cue step record to the current step state. This historical step record participates in the backup and recovery of the performance file but does not participate in the current playback. If there are unmapped states in the effect mapping data, the cue generation module writes the unmapped states to the cue step record and writes the mapped channel field to the current step state. The unmapped states are written back to the subsequent execution state along with the cue step record.
[0050] During project implementation, after the lighting technician completes the position and color effect mapping for the first group of moving head lights, the console receives a cue save command and reads the third fader on page 1 as fader binding information. The cue generation module writes the selected light fixture set, effect mapping data, brightness parameters, pan / tilt parameters, color parameters, and cue timing parameters into the same cue step record. Subsequently, the cue generation module writes this cue step record into the target cue list corresponding to the third fader on page 1. When the lighting technician continues to adjust the light fixture attribute parameters and triggers the cue save command again, the cue generation module appends the new cue step record to the same target cue list according to the new step sequence number. The fader replay module writes page 1, the third fader, the target cue list number, the step sequence number, and the cue timing parameters into the same index record, forming a fader replay index.
[0051] The cue list data output in this step includes cue list number, multiple cue step records, step sequence number, lighting fixture selection set number, effect mapping data identifier, lighting fixture attribute parameters, and cue time parameters. The fader playback index includes fader page number, fader number, cue list number, step sequence number, cue time parameters, and index status. The cue list data and fader playback index generated in this step are written into the performance file data and used as input for recording cue trigger events, generating timecode synchronization data, and outputting lighting control commands in S400. S400 reads the cue list number and step sequence number through the fader playback index and generates corresponding lighting control outputs according to the cue time parameters.
[0052] S400: Based on the cue list data, the fader replay index, the background music file, and the internal music playback progress, record the cue trigger event, generate timecode synchronization data, output lighting control instructions conforming to the DMX512 protocol or the Art-Net protocol, and write the execution status back to the performance file data.
[0053] This step is executed by the music timecode synchronization module, control output module, and status write-back module in the stage lighting control console. The music timecode synchronization module receives the cue list data and fader replay index generated by S300, and also receives the background music file and internal music playback progress. The background music file is loaded by the console's built-in music player. The internal music playback progress indicates the playback position of the built-in music player within the current background music file. The music timecode synchronization module uses the internal music playback progress as a time reference, records cue trigger events, and generates timecode synchronization data. The control output module reads the cue list data, fader replay index, and timecode synchronization data, and outputs lighting control commands conforming to the DMX512 or Art-Net protocol. The status write-back module writes the execution status into the performance file data.
[0054] In this step, the cue trigger event represents the event record that triggers the cue step during background music playback. The cue trigger event includes the music file identifier, playback start point, internal music playback progress, fader page number, fader number, cue list number, step number, and trigger timestamp. The timecode synchronization data represents the correspondence between the internal music playback progress and the cue trigger event. The music timecode synchronization module reads the music file identifier and playback start point of the background music file, and reads the current internal music playback progress when the user triggers the fader, cue step, or inputs in the timecode recording window. Subsequently, the music timecode synchronization module reads the fader page number, fader number, cue list number, and step number corresponding to the trigger time from the fader playback index, and writes these fields along with the trigger timestamp into the timecode synchronization data.
[0055] During recording, the music timecode synchronization module records cue trigger events according to the playback status of the background music file. When the background music file starts playing, the music timecode synchronization module establishes a timecode recording record and writes the music file identifier and playback start point. When a fader or cue step is triggered, the music timecode synchronization module reads the internal music playback progress and associates this playback progress with the index record in the fader playback index. When the background music file pauses, the music timecode synchronization module records the pause time. When the background music file resumes playback, the music timecode synchronization module continues to write cue trigger events based on the resumed internal music playback progress. When timecode recording ends, the music timecode synchronization module encapsulates multiple cue trigger events into timecode synchronization data and writes it to the performance file data.
[0056] During playback, the control output module reads the music file identifier, internal music playback progress, cue list number, and step sequence number from the timecode synchronization data. When the internal music playback progress reaches the trigger timestamp in the timecode synchronization data, the control output module reads the corresponding cue step record from the cue list data according to the cue list number and step sequence number, and generates a lighting control command based on the lamp selection set, effect mapping data, and lamp attribute parameters in the cue step record. When the lighting control command is output using the DMX512 protocol, the control output module writes the parameter values corresponding to the lamp channel field into the DMX512 data frame according to the Universe number, start address, and end address in the address occupancy table. When the lighting control command is output using the Art-Net protocol, the control output module encapsulates the Universe number and channel parameters according to the Art-Net protocol and outputs the lighting control command through the network interface.
[0057] In this step, the execution status represents the status record of cue triggering, control output, timecode recording, and exception handling in this round. The execution status includes cue execution status, fader status, timecode recording status, control output status, and exception status record. In the event of address conflict, remote addressing failure, cue save conflict, fader index conflict, timecode recording interruption, or control output exception, the status write-back module generates a corresponding exception status record. The exception status record includes the exception type, exception occurrence time, associated lighting fixture number, associated cue list number, associated step sequence number, and current processing status. The status write-back module writes the exception status record, lighting fixture connection data, cue list data, fader playback index, and timecode synchronization data into the performance file data.
[0058] In one implementation, the control output module outputs lighting control commands conforming to the DMX512 protocol. The control output module reads the start and end addresses of each luminaire according to the address occupancy table, and then writes the luminaire channel field parameters from the cue step record to the corresponding channel position. If a luminaire channel field is unmapped in the effect mapping data, the control output module retains the channel parameter value from the previous execution state and writes the unmapped state back to the execution state. If the DMX512 output interface reports a control output abnormality, the status write-back module generates a control output abnormality record and writes this record to the performance file data.
[0059] In another implementation, the control output module outputs lighting control commands conforming to the Art-Net protocol. The control output module reads the cue list number and step number from the fader playback index, then reads the channel field parameters from the cue list data, and encapsulates the network data packet according to the Art-Net protocol. After the network data packet is output, the status write-back module records the output time, Universe number, cue list number, step number, and output status. If the network interface does not return a valid output status, the status write-back module generates an output exception status record and writes this record into the performance file data.
[0060] During project implementation, the console imports the background music file and starts timecode recording. When the background music plays to 18 seconds, the lighting technician triggers the third fader on page 1. The music timecode synchronization module reads the current internal music playback progress, retrieves the page 1, the third fader, the cue list number, and the step number from the fader playback index, and generates a cue trigger event containing a trigger timestamp. When the background music plays to 36 seconds, the lighting technician triggers the next cue step on the same fader. The music timecode synchronization module continues recording new cue trigger events. After recording, the music timecode synchronization module writes the two cue trigger events into the timecode synchronization data. During playback, when the internal music playback progress reaches the trigger timestamps corresponding to 18 seconds and 36 seconds, the control output module reads the corresponding cue step records and outputs lighting control commands conforming to the DMX512 or Art-Net protocol.
[0061] The timecode synchronization data generated in this step includes the music file identifier, playback start point, internal music playback progress, fader page number, fader number, cue list number, step sequence number, and trigger timestamp. The performance file data includes lighting fixture connection data, address occupancy table, effect mapping data, cue list data, fader replay index, timecode synchronization data, execution status data, and exception status record. The performance file data is stored in the console memory and is retrieved when the performance file is subsequently opened, the cue list is modified, lighting fixtures are reconnected, timecode recording is resumed, or replay is executed. Through this performance file data, the connection relationships formed in S100, the effect mapping relationships formed in S200, the cue and fader index relationships formed in S300, and the timecode trigger relationships formed in S400 are written into the same performance file record.
[0062] Example 2: Figure 2 A structural block diagram of a dual-touchscreen stage lighting programming control system according to an embodiment of the present invention is shown. Figure 2 As shown, the structure may include: The Pairing and Address Management Module 01 is used to acquire performance file initialization instructions, lighting configuration data, and address occupancy status based on the DMX512 or Art-Net protocol. It performs lighting channel occupancy length identification, candidate address generation, and address conflict verification to generate lighting pairing data and an address occupancy table. Specifically, the Pairing and Address Management Module receives performance file initialization instructions from the stage lighting control console and reads lighting configuration data from the lighting library or lighting configuration file. The lighting configuration data includes lighting model, lighting quantity, lighting channel mode, lighting channel definition, lighting channel occupancy length, and lighting device identifier. The Pairing and Address Management Module reads the channel field order of each lighting fixture in the current lighting channel mode according to the lighting channel definition and forms the lighting channel occupancy length. Then, based on the address occupancy status based on the DMX512 or Art-Net protocol, it reads the Universe number, starting address, and occupied address segment to generate candidate address segments. When a candidate address segment overlaps with an already occupied address segment, the mating and address management module generates an address conflict status record and rereads consecutive free address segments to form a new candidate address segment. When candidate address segments do not overlap, the mating and address management module writes the luminaire number, luminaire device identifier, Universe number, start address, end address, luminaire channel mode, and mating status into the luminaire mating data and synchronously updates the address occupancy table. The luminaire mating data and the address occupancy table are passed to the dual-touchscreen effect mapping module as input objects for generating the luminaire selection set and mapping the luminaire channel field.
[0063] The dual-touchscreen effect mapping module 02, connected to the mating and address management module, is used to generate a lamp selection set based on the lamp mating data and dual-touchscreen interactive input, and map the built-in effect library parameters to the lamp channel fields to generate effect mapping data. Specifically, the dual-touchscreen effect mapping module receives the lamp mating data output by the mating and address management module and receives dual-touchscreen interactive input. The dual-touchscreen interactive input includes programming stage switching instructions, lamp layout window selection input, attribute parameter window input, effect library window input, cue list window input, and timecode recording window input. The dual-touchscreen effect mapping module reads the corresponding programming stage layout state according to the programming stage switching instructions, and associates the lamp layout window selection input with the lamp number in the lamp mating data to form a lamp selection set. The dual-touchscreen effect mapping module reads the lamp number in the lamp selection set and calls the lamp channel definition in the lamp mating data to identify the pan / tilt channel field, brightness channel field, color channel field, pattern channel field, and prism channel field. The dual-touchscreen effect mapping module reads parameters from the built-in effect library, writes position effect parameters into the gimbal channel field, color effect parameters into the color channel field, pattern effect parameters into the pattern channel field, and writes the lighting attribute parameters input from the attribute parameter window into the corresponding lighting channel field. If no matching item exists in the lighting channel field, the dual-touchscreen effect mapping module generates an unmapped state record and retains records of mapped channel fields. The effect mapping data includes the lighting selection set number, lighting number, lighting channel field, built-in effect library parameters, lighting attribute parameters, and mapping status; the effect mapping data is passed to the cue generation and fader playback module as the input object for the cue step encapsulation.
[0064] The cue generation and fader replay module 03, connected to the dual-touchscreen effect mapping module, is used to encapsulate cue steps, append cue lists, and establish fader replay indexes based on the effect mapping data, lighting attribute parameters, cue time parameters, and fader binding information, generating cue list data and fader replay indexes. Specifically, the cue generation and fader replay module receives the effect mapping data output by the dual-touchscreen effect mapping module and reads the lighting attribute parameters, cue time parameters, and fader binding information. The cue time parameters include fade-in time, fade-out time, delay time, and overlap time, and the fader binding information includes fader page number and fader number. The cue generation and fader replay module writes the lighting selection set, effect mapping data, lighting attribute parameters, and cue time parameters into the same cue step record and configures the cue list number and step sequence number for the cue step record. When the target cue list corresponding to the fader binding information exists, the cue generation and fader replay module appends the cue step record to the target cue list according to the step sequence number; when the target cue list does not exist, the cue generation and fader replay module generates a new cue list number and writes the cue step record into the new cue list data. The cue generation and fader replay module writes the fader page number, fader number, cue list number, step sequence number, and cue time parameter into the same index record, and binds the index record to the cue list data to form a fader replay index. When a cue saving conflict or a fader index conflict occurs, the cue generation and fader replay module generates a corresponding abnormal state record and registers the abnormal state record synchronously with the cue list data and the fader replay index. The cue list data and the fader replay index are transmitted to the timecode synchronization and control output module as input objects for cue trigger event recording and lighting control command output.
[0065] The timecode synchronization and control output module 04, connected to the cue generation and fader playback module, is used to record cue trigger events, generate timecode synchronization data, output lighting control commands conforming to the DMX512 or Art-Net protocol, and write the execution status back to the performance file data based on the cue list data, the fader playback index, the background music file, and the internal music playback progress. Specifically, the timecode synchronization and control output module receives the cue list data and fader playback index output by the cue generation and fader playback module, and receives the background music file and the internal music playback progress. The timecode synchronization and control output module reads the music file identifier and playback start point of the background music file, and reads the current internal music playback progress when a fader triggers, a cue step triggers, or a timecode recording window input occurs. The timecode synchronization and control output module calls the fader page number, fader number, cue list number, and step number from the fader playback index, and writes the internal music playback progress, music file identifier, playback start point, and trigger timestamp into the cue trigger event record to form timecode synchronization data. During playback, the timecode synchronization and control output module reads the cue list number and step sequence number from the timecode synchronization data and retrieves the corresponding cue step record from the cue list data. Then, based on the address field in the lighting fixture connection data and the lighting fixture channel field in the cue step record, it generates lighting control commands conforming to the DMX512 or Art-Net protocol. After the lighting control commands are output, the timecode synchronization and control output module records the cue execution status, fader status, timecode recording status, and control output status. If timecode recording is interrupted or control output is abnormal, the timecode synchronization and control output module generates a corresponding abnormal status record. The execution status, abnormal status record, cue list data, fader playback index, and timecode synchronization data are written into the performance file data, which serves as the calling object for subsequent opening of the performance file, modification of the cue list, re-execution of fader playback, or resumption of timecode recording.
Claims
1. A dual-touchscreen stage lighting programming control method, characterized in that, include: S100: Obtain the performance file initialization command, lighting configuration data and address occupancy status based on DMX512 protocol or Art-Net protocol, identify the lighting channel occupancy length, generate candidate addresses and verify address conflicts, and generate lighting connection data and address occupancy table; S200. Based on the lamp matching data and dual touch screen interactive input, generate a lamp selection set and map the built-in effect library parameters to the lamp channel field to generate effect mapping data. S300: Based on the effect mapping data, lighting attribute parameters, cue time parameters and fader binding information, perform cue step encapsulation, cue list appending and fader replay index establishment to generate cue list data and fader replay index; S400: Based on the cue list data, the fader replay index, the background music file, and the internal music playback progress, record the cue trigger event, generate timecode synchronization data, output lighting control instructions conforming to the DMX512 protocol or the Art-Net protocol, and write the execution status back to the performance file data.
2. The method according to claim 1, characterized in that, The lighting configuration data includes lighting model, number of lighting fixtures, lighting channel mode, lighting channel definition, lighting channel occupancy length, and lighting equipment identification. The candidate address generation includes: reading the occupied address segments in the address occupancy table according to the Universe number; forming candidate address segments based on the lamp channel occupancy length and starting address; and writing the candidate address segments that do not overlap with the occupied address segments into the lamp mating data.
3. The method according to claim 2, characterized in that, The generation of the lighting fixture connection data includes remote addressing feedback processing; The remote addressing feedback process includes: sending an RDM addressing command to the luminaire based on the luminaire device identifier, and receiving addressing feedback; When the addressing feedback indicates that the addressing is complete, the address occupancy table is updated; when the addressing feedback indicates that the addressing has failed, an addressing exception flag is generated and the lamp connection data is retained.
4. The method according to claim 1, characterized in that, The dual-touchscreen interactive input includes programming stage switching instructions, lamp layout window selection input, attribute parameter window input, effect library window input, cue list window input, and timecode recording window input; The generation of the lamp selection set includes: calling the programming stage layout state according to the programming stage switching instruction; Associate the lamp layout window selection input with the lamp number in the lamp mating data to obtain the lamp selection set; write the lamp selection set into the layout state of the programming stage.
5. The method according to claim 1, characterized in that, The built-in effects library parameters include position effect parameters, color effect parameters, and pattern effect parameters; The lighting channel fields include pan / tilt channel field, brightness channel field, color channel field, pattern channel field, and prism channel field; The lighting channel field mapping includes: writing the position effect parameters into the pan-tilt channel field, writing the color effect parameters into the color channel field, and writing the pattern effect parameters into the pattern channel field to form the effect mapping data.
6. The method according to claim 1, characterized in that, The cue step encapsulation includes: writing the lamp selection set, the effect mapping data, and the lamp attribute parameters and cue time parameters into the same cue step record; The cue time parameters include fade-in time, fade-out time, delay time, and overlap time; The cue list appending includes writing the cue step records into the target cue list according to the step sequence number, thereby generating the cue list data.
7. The method according to claim 6, characterized in that, The push rod binding information includes the push rod page number and the push rod number; The establishment of the putter replay index includes: writing the putter page number, the putter number, the cue list number, the step number, and the cue time parameter into the same index record; binding the index record with the cue list data to generate the putter replay index.
8. The method according to claim 7, characterized in that, The cue trigger event record includes: reading the music file identifier, playback start point, and internal music playback progress of the background music file; recording the push button page number, push button number, cue list number, step number, and trigger timestamp corresponding to the trigger time; and generating the timecode synchronization data.
9. The method according to claim 1, characterized in that, The execution status write-back includes: generating corresponding abnormal status records when there is an address conflict, remote addressing failure, cue saving conflict, fader index conflict, timecode recording interruption, or control output abnormality; and writing the abnormal status records, the lighting fixture connection data, the cue list data, the fader playback index, and the timecode synchronization data into the performance file data.
10. A dual-touchscreen stage lighting programming control system, applied to the method described in any one of claims 1 to 9, characterized in that, include: The module includes a mating and address management module, a dual touchscreen effect mapping module, a cue generation and fader playback module, and a timecode synchronization and control output module. The matching and address management module is used to obtain the performance file initialization command, lighting configuration data and address occupancy status based on DMX512 protocol or Art-Net protocol, identify the occupancy length of lighting channel, generate candidate addresses and verify address conflicts, and generate lighting matching data and address occupancy table. The dual-touchscreen effect mapping module is connected to the matching and address management module. It is used to generate a set of lamp selections based on the lamp matching data and dual-touchscreen interactive input, and to map the built-in effect library parameters to the lamp channel field to generate effect mapping data. The cue generation and fader replay module is connected to the dual-touchscreen effect mapping module. It is used to encapsulate cue steps, append cue list and establish fader replay index based on the effect mapping data, lamp attribute parameters, cue time parameters and fader binding information, and generate cue list data and fader replay index. The timecode synchronization and control output module is connected to the cue generation and fader playback module. It is used to record cue trigger events, generate timecode synchronization data, output lighting control commands that conform to the DMX512 protocol or Art-Net protocol, and write the execution status back to the performance file data based on the cue list data, the fader playback index, the background music file and the internal music playback progress.
