首页 / 一种灯效控制方法及终端

一种灯效控制方法及终端公开 发明

技术领域

[0001] 本发明涉及设备控制技术领域,尤其涉及一种灯效控制方法及终端。

相关背景技术

[0002] 单头射灯通常适用于只需要单一光源的场景,无法满足多光源场景的使用。目前市场上的多头射灯通常是将单个射灯通过结构焊接形成多头射灯,每个射灯实质上还是保留着单独的控制系统,这种多头射灯系统的造价成本高,且控制逻辑复杂,无法满足更加丰富的灯光效果。
[0003] 此外,多头射灯的灯效控制通常需要编程人员可以根据灯效需求编写特定的控制程序,再通过控制器将指令发送给多头射灯,实现特定的灯效效果,若要更换灯效就需要重新烧写控制器,导致操作繁琐且开发门槛较高。虽然一些多头射灯能够基于APP(应用程序)控制实现灯效的自主配置,但是对于一些射灯数量较多的场景,由于APP需要下发的控制指令数量多,导致APP的控制指令从下发到多头射灯执行之间存在延时,从而造成灯效变化过程出现抖动。因此,对于灯数量较多的灯效场景下,多头射灯依然受限于预设的灯效模式,即用户只能在控制器已经烧写好的灯效模式中进行选择,无法实现灯效的个性化调整,限制了灯效的多样性。

具体实施方式

[0009] 为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
[0010] 本发明的实施例提供了一种灯效控制方法,用于控制芯片,所述控制芯片连接有一个驱动芯片,所述驱动芯片连接有多个射灯,所述方法包括:若接收到用户端发送的灯效控制指令,则解析所述灯效控制指令得到至少两个射
灯的用户颜色值;
根据所述至少两个射灯的用户颜色值确定所述用户端配置的灯效模式;
若所述灯效模式为异色模式,则根据所述至少两个射灯的用户颜色值计算平均用
户颜色值,并分别计算所述至少两个射灯的用户颜色值与所述平均用户颜色值的差值;
根据所述平均用户颜色值配置所述差值小于预设颜色值的第一射灯的目标颜色
值,以使得所述驱动芯片基于所述目标颜色值控制所述第一射灯;
根据所述用户颜色值配置所述差值不小于所述预设颜色值的第二射灯的目标颜
色值,以使得所述驱动芯片基于所述目标颜色值控制所述第二射灯。
[0011] 从上述描述可知,本发明的有益效果在于:通过控制芯片和驱动芯片来实现多个射灯的联合控制,基于软件算法分别控制每个射灯的灯效,有效简化了多头射灯的控制系统。本发明允许用户通过用户端发送灯效控制指令,以自定义至少两个射灯的颜色值,从而实现灯效的个性化配置。同时,对于异色模式下的多个射灯,计算其多个射灯的平均用户颜色值,以确定每个射灯与平均用户颜色值之间的差值。当差值小于预设颜色值,则说明这一射灯的用户颜色值与平均用户颜色值非常接近,肉眼无法区分,因此直接基于平均用户颜色值对其进行批量配置。当差值不小于预设颜色值,则说明这一射灯的用户颜色值与用户颜色值差距较大,因此需要射灯对应的用户颜色值进行单独配置。以此方式,控制芯片能够批量处理多个射灯从用户颜色值到目标颜色值之间的转换,提高用户端的灯效控制指令对驱动芯片的配置效率,从而减少用户端控制指令从下发到执行的延迟,同时对于颜色差距较大的射灯采用单独配置,以保证灯效配置的视觉效果。
[0012] 进一步地,根据所述至少两个射灯的用户颜色值确定所述用户端配置的灯效模式包括:检测所述灯效控制指令中所有所述射灯的用户颜色值是否均相同;
若是,则确定所述用户端配置的灯效模式为同色模式;
否则,确定所述用户端配置的灯效模式为异色模式。
[0013] 由上述描述可知,若射灯的用户颜色值相同,则射灯属于同色模式,因此控制芯片能够统一实现所有射灯从用户颜色值到目标颜色值之间的转换,无需进行单独转换。若射灯的用户颜色值不同,则射灯属于异色模式,因此控制芯片需要通过颜色值区分可批量转换和单独转换的射灯后再进行配置,在减少控制指令延时的同时,保证灯效的视觉效果。
[0014] 进一步地,所述用户颜色值为用户颜色模型的颜色值,所述目标颜色值为驱动颜色模型的颜色值,所述用户颜色模型的颜色字节数小于所述驱动颜色模型的颜色字节数;根据所述用户颜色值配置所述差值不小于所述预设颜色值的第二射灯的目标颜
色值,以使得所述驱动芯片基于所述目标颜色值控制所述第二射灯包括:
根据所述用户颜色模型与所述驱动颜色模型之间的转换关系计算所述用户颜色
值在所述驱动颜色模型下的第一颜色值;
将所述第二射灯的目标颜色值配置为所述第一颜色值,以使得所述驱动芯片基于
所述第一颜色值控制所述第二射灯,并将所述第一颜色值存储至预设的驱动缓存队列。
[0015] 由上述描述可知,在用户端基于用户颜色模型配置的颜色字节数小于驱动芯片基于驱动颜色模型配置的颜色字节数,能够有效减少用户端所发送的灯效控制指令的数据包长度,从而提高数据传输的效率,减少控制指令延时。在灯效的颜色值差距较大时,需要根据该射灯的用户颜色值单独配置其目标颜色值,从而保证灯效显示效果。
[0016] 进一步地,根据所述平均用户颜色值配置所述差值小于预设颜色值的第一射灯的目标颜色值,以使得所述驱动芯片基于所述目标颜色值控制所述第一射灯包括:根据所述用户颜色模型与所述驱动颜色模型之间的转换关系计算所述平均用户
颜色值在所述驱动颜色模型下的第二颜色值;
将所述第一射灯的目标颜色值配置为所述第二颜色值,以使得所述驱动芯片基于
所述第二颜色值控制所述第一射灯。
[0017] 由上述描述可知,由于用户端与驱动芯片所采用的颜色模型不同,为了保证驱动芯片能够快速解析用户端下发的控制指令,因此对于颜色差距较小的射灯,直接采用批量控制的方式进行配置调整,从而避免每个射灯独立进行转换所消耗的时间,减小灯效控制的延迟。
[0018] 进一步地,还包括:若所述颜色模式为同色模式,则在所述驱动缓存队列中查找与所述用户颜色值相
对应的第三颜色值;
若查找到,则将所述至少两个射灯的目标颜色值配置为所述第三颜色值,以使得
所述驱动芯片基于所述第三颜色值控制所述至少两个射灯;
若未查找到,则根据所述用户颜色模型与所述驱动颜色模型之间的转换关系计算
所述用户颜色值在所述驱动颜色模型下的第四颜色值,将所述至少两个射灯的目标颜色值配置为所述第四颜色值,以使得所述驱动芯片基于所述第四颜色值控制所述至少两个射灯,并将所述第四颜色值存储至所述驱动缓存队列。
[0019] 由上述描述可知,对于同色模式下射灯,可直接从驱动缓存序列中查找已经完成转换计算的颜色值,省略不同颜色模型之间的转换计算过程,避免占用过多的计算资源,以降低对控制芯片的算力要求,从而减小多射灯控制系统的设计成本。而对于未查找到对应的颜色值的情况下,可在经过一次转换计算之后,将其计算结果保存在驱动缓存队列,以供后续使用。
[0020] 进一步地,还包括:分别获取所述至少两个射灯在驱动颜色模型下的当前颜色值;
根据所述当前颜色值和所述目标颜色值确定所述至少两个射灯的渐变周期;
根据所述渐变周期确定所述至少两个射灯的颜色渐变步长;
根据所述颜色渐变步长配置所述至少两个射灯在所述渐变周期内的渐变颜色值,
以使得所述驱动芯片基于所述渐变颜色值控制所述至少两个射灯。
[0021] 由上述描述可知,基于射灯的当前颜色值和目标颜色值确定渐变周期,再根据渐变周期确定颜色渐变步长,使得射灯的颜色渐变周期能够随着其颜色值的不同而变化,从而提高颜色变化的平滑性,优化射灯的渐变效果。
[0022] 进一步地,根据所述当前颜色值和所述目标颜色值确定所述至少两个射灯的渐变周期包括:分别计算所述目标颜色值与所述当前颜色值之间相同颜色分量的分量差值;
根据最大的所述分量差值从预设场景周期表中获取标准渐变周期,并将所述至少
两个射灯的渐变周期设置为所述标准渐变周期。
[0023] 由上述描述可知,基于当前颜色值和目标颜色值之间的最大分量差值来动态选择渐变周期,使得射灯的灯效能够随着不同颜色配置而自适应调整,从而提高灯效变化的视觉效果。
[0024] 进一步地,根据所述渐变周期确定所述至少两个射灯的颜色渐变步长包括:获取默认的步长更新周期,并根据所述渐变周期和所述步长更新周期分别计算每
个所述射灯的渐变总次数;
根据所述渐变总次数和所述分量差值确定每个所述射灯的颜色渐变步长。
[0025] 由上述描述可知,若渐变周期越长,步长更新周期越短,则射灯从当前颜色值变化到目标颜色值所需要的渐变总次数越多,那么每次颜色渐变步长也会更加细腻,使得射灯的颜色渐变更加平滑。以此方式,能够有效调整射灯渐变的平滑性。
[0026] 进一步地,根据所述颜色渐变步长配置所述至少两个射灯在所述渐变周期内的渐变颜色值包括:获取每个所述射灯的当前渐变次数;
检测所述当前渐变次数是否等于所述渐变总次数;
若是,停止更新所述渐变颜色值;
否则,根据所述颜色渐变步长配置每个所述射灯在所述当前渐变次数的渐变颜色
值。
[0027] 由上述描述可知,由于每个射灯在同一个渐变周期内所需要进行渐变总次数不同,为保证所有射灯能够在渐变周期内同步完成从当前颜色值到目标颜色值的变化,因此基于渐变总次数确定射灯是否完成渐变过程,无需实时检测射灯的颜色值,提高检测效率的同时,保证灯效控制的实时性和流畅性。
[0028] 本发明另一实施例提供了一种灯效控制终端,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的一种灯效控制方法中的各个步骤。
[0029] 从上述描述可知,本发明的有益效果在于:通过控制芯片和驱动芯片来实现多个射灯的联合控制,基于软件算法分别控制每个射灯的灯效,有效简化了多头射灯的控制系统。本发明允许用户通过用户端发送灯效控制指令,以自定义至少两个射灯的颜色值,从而实现灯效的个性化配置。同时,对于异色模式下的多个射灯,计算其多个射灯的平均用户颜色值,以确定每个射灯与平均用户颜色值之间的差值。当差值小于预设颜色值,则说明这一射灯的用户颜色值与平均用户颜色值非常接近,肉眼无法区分,因此直接基于平均用户颜色值对其进行批量配置。当差值不小于预设颜色值,则说明这一射灯的用户颜色值与用户颜色值差距较大,因此需要射灯对应的用户颜色值进行单独配置。以此方式,控制芯片能够批量处理多个射灯从用户颜色值到目标颜色值之间的转换,提高用户端的灯效控制指令对驱动芯片的配置效率,从而减少用户端控制指令从下发到执行的延迟,同时对于颜色差距较大的射灯采用单独配置,以保证灯效配置的视觉效果。
[0030] 本发明上述一种灯效控制方法及终端能够适用于多射灯控制场景下,其能够有效简化多头射灯的控制系统,并减少用户端控制指令从下发到执行的延迟,从而实现灯效的个性化配置,以下通过具体实施方式进行说明:请参照图1,本发明的实施例一为:
一种灯效控制方法,用于控制芯片,所述控制芯片连接有一个驱动芯片,所述驱动
芯片连接有多个射灯。
[0031] 所述方法包括:S1、若接收到用户端发送的灯效控制指令,则解析所述灯效控制指令得到至少两
个射灯的用户颜色值。
[0032] 在一些实施例中,在步骤S1之前,还包括:将连接到同一驱动芯片的多个射灯进行映射处理。控制芯片按照射灯的连接顺序依次分配有唯一的灯码编号L[n],n表示射灯的总数量。每个射灯作为一个独立的元素,每个元素中包括开关、亮度、色温、颜色以及场景等控制属性,这些控制属性通过唯一的灯码编号L[n]进行标识。基于此,用户需要自定义灯效模式时,可在用户端选择需要控制的射灯的灯码编号L[n],在选择完成后,用户端进入详细的灯效控制界面,在灯效控制界面上,用户可自定义射灯的亮度、色温、颜色以及场景等,在自定义完成之后,基于灯码编号L[n]和用户自定义的灯效控制方案生成灯效控制指令。
[0033] 在一些实施例中,用户端与控制芯片之间基于无线方式进行远程控制,提高用户配置的便捷性。为保证数据包的传输效率,所述用户颜色值为用户颜色模型的颜色值,所述目标颜色值为驱动颜色模型的颜色值,所述用户颜色模型的颜色字节数小于所述驱动颜色模型的颜色字节数。
[0034] 在一具体场景中,用户端与控制芯片之间基于蓝牙组网实现远程控制。由于蓝牙组网的数据包大小限制为11字节,若直接传送包含灯码编号L[n]、控制命令以及目标颜色值的数据包会超出11字节。因此本发明自定义了一种数据包格式。在自定义的数据包中:灯码编号L[n]压缩为一个字节(8位),其中每一位代表一个灯;控制命令占用1个字节,用于指示具体的控制类型(开关、亮度、色温、颜色、模式设置);目标颜色值放弃了传统的RGB颜色模型进行表示,而采用HSV颜色模型进行表示。因为RGB颜色模型需要占用6个字节来存储颜色值(每个颜色分量0‑255),若采用HSV颜色模型,其中H(色相)占用2个字节(0‑359范围),S(饱和度)和V(明度)各占用一个字节,这种方式减少了数据包字节数,提高了传输效率。
[0035] 基于此,本发明中的用户颜色模型设置为HSV颜色模型,HSV颜色模型即色相(Hue)、饱和度(Saturation)、明度(Value)模型,其以色轮为基础,描述颜色的方式更直观。驱动颜色模型设置为RGB颜色模型,RGB颜色模型即红色(Red)、绿色(Green)以及蓝色(Blue),其以三原色比例描述颜色。即下述步骤中的用户颜色值均为HSV颜色值,目标颜色值均为RGB颜色值。
[0036] 需要说明的是,由于控制芯片需要快速解析用户端下发的HSV颜色值,并将其转换为RGB颜色值,才能通过驱动芯片控制对应的射灯,并且用户端具有及时性,可能会连续下发HSV颜色值,因此控制芯片必须要实时处理这些数据。对此,本发明通过以下步骤S2至步骤S5保证控制芯片能够实现处理数据。
[0037] S2、根据所述至少两个射灯的用户颜色值确定所述用户端配置的灯效模式。
[0038] 具体地,所述步骤S2包括:S21、检测所述灯效控制指令中所有所述射灯的用户颜色值是否均相同。
[0039] S22、若是,则确定所述用户端配置的灯效模式为同色模式。具体地,只有灯效控制指令中所有射灯的用户颜色值均相同时才可确定为同色模式。
[0040] S23、否则,确定所述用户端配置的灯效模式为异色模式。
[0041] S3、若所述灯效模式为异色模式,则根据所述至少两个射灯的用户颜色值计算平均用户颜色值,并分别计算所述至少两个射灯的用户颜色值与所述平均用户颜色值的差值。
[0042] 在一些实施例中,根据至少两个射灯的用户颜色值计算平均用户颜色值具体为:将每个射灯的H、S、V分量值进行相加得到一个总值SUM1HSV,例如射灯L[1]的H、S、V分量值分别为a、b、c,则射灯L[1]的总值SUM1HSV=a+b+c。然后对所有射灯的总值相加之后的和求平均值,即可得到平均用户颜色值,例如,射灯L[1]的总值为SUM1HSV,射灯L[2]的总值为SUM2HSV,那么射灯L[1]和射灯L[2]的平均用户颜色值AVGHSV=(SUM1HSV+SUM2HSV)/2。
[0043] 在一些实施例中,计算所述至少两个射灯的用户颜色值与所述平均用户颜色值的差值具体为:计算每个射灯的总值SUMHSV与平均用户颜色值AVGHSV之间的差值。
[0044] 在一些实施例中,在计算出差值之后,可直接检测差值是否小于预设颜色值,从而区分第一射灯和第二射灯,以执行步骤S4与步骤S5。
[0045] S4、根据所述平均用户颜色值配置所述差值小于预设颜色值的第一射灯的目标颜色值,以使得所述驱动芯片基于所述目标颜色值控制所述第一射灯。
[0046] 具体地,所述步骤S4包括:S41、根据所述用户颜色模型与所述驱动颜色模型之间的转换关系计算所述平均
用户颜色值在所述驱动颜色模型下的第二颜色值。
[0047] 在一些实施例中,即计算HSV颜色模型下的平均用户颜色值AVGHSV在RGB颜色模型下对应的AVGRGB,第二颜色值为AVGRGB。
[0048] S42、将所述第一射灯的目标颜色值配置为所述第二颜色值,以使得所述驱动芯片基于所述第二颜色值控制所述第一射灯。
[0049] 在一些实施例中,将差值小于预设颜色值的第一射灯的目标颜色值配置为AVGRGB,使得驱动芯片基于AVGRGB控制第一射灯进行颜色变化。
[0050] S5、根据所述用户颜色值配置所述差值不小于所述预设颜色值的第二射灯的目标颜色值,以使得所述驱动芯片基于所述目标颜色值控制所述第二射灯。
[0051] 具体地,所述步骤S5包括:S51、根据所述用户颜色模型与所述驱动颜色模型之间的转换关系计算所述用户
颜色值在所述驱动颜色模型下的第一颜色值。
[0052] 在一些实施例中,即计算HSV颜色模型下的HSV颜色值在RGB颜色模型下对应的RGB颜色值,第一颜色值为RGB颜色值。
[0053] S52、将所述第二射灯的目标颜色值配置为所述第一颜色值,以使得所述驱动芯片基于所述第一颜色值控制所述第二射灯,并将所述第一颜色值存储至预设的驱动缓存队列。
[0054] 在一些实施例中,将差值不小于预设颜色值的第二射灯的目标颜色值配置为RGB颜色值,使得驱动芯片基于RGB颜色值控制第二射灯进行颜色变化。
[0055] 在一些实施例中,在步骤S51之前,还包括:步骤S50、在驱动缓存队列中查找与第二射灯的用户颜色值相对应的第五颜色值;若查找到,则将第二射灯的目标颜色值配置为第五颜色值;若未查找到,则执行步骤S51。以此方式,来尽可能地减少颜色值的转换计算过程,从而避免占用芯片的算力资源。
[0056] 在一些实施例中,在将第一颜色值存储到驱动缓存队列之后,可同时删除该射灯上一次存储的HSV颜色值和RGB颜色值,以保证队列的更新和准确性。
[0057] 本发明的实施例二为:一种灯效控制方法,其与实施例一的不同之处在于还包括:
S6、若所述颜色模式为同色模式,则在所述驱动缓存队列中查找与所述用户颜色
值相对应的第三颜色值。
[0058] S7、若查找到,则将所述至少两个射灯的目标颜色值配置为所述第三颜色值,以使得所述驱动芯片基于所述第三颜色值控制所述至少两个射灯。以此方式,能够省略颜色值的转换计算过程,从而避免占用芯片的算力资源。
[0059] S8、若未查找到,则根据所述用户颜色模型与所述驱动颜色模型之间的转换关系计算所述用户颜色值在所述驱动颜色模型下的第四颜色值,将所述至少两个射灯的目标颜色值配置为所述第四颜色值,以使得所述驱动芯片基于所述第四颜色值控制所述至少两个射灯,并将所述第四颜色值存储至所述驱动缓存队列。以此方式,由于所有射灯的颜色值均相同,因此只需要进行一次颜色值的转换计算过程,便能够适用于其他所有射灯,提高转换效率。
[0060] 本发明的实施例三为:一种灯效控制方法,其与实施例二的不同之处在于还包括:
S9、分别获取所述至少两个射灯在驱动颜色模型下的当前颜色值。
[0061] S10、根据所述当前颜色值和所述目标颜色值确定所述至少两个射灯的渐变周期。
[0062] 具体地,所述步骤S10包括:S101、分别计算所述目标颜色值与所述当前颜色值之间相同颜色分量的分量差
值。
[0063] 在一些实施例中,所获取到的目标颜色值和当前颜色值分别为RGBtar和RGBcur。步骤S101具体为:分别计算R、G、B分量的分量差值,即目标颜色值与当前颜色值的R分量差值=Rtar‑Rcur,G分量差值=Gtar‑Gcur,B分量差值=Btar‑Bcur。
[0064] S102、根据最大的所述分量差值从预设场景周期表中获取标准渐变周期,并将所述至少两个射灯的渐变周期设置为所述标准渐变周期。
[0065] 在一些实施例中,在R分量差值、G分量差值以及B分量差值中确定最大的分量差值。其中,预设场景周期表中的标准渐变周期是根据用户所选择的场景模式调试得到。
[0066] 在另一种可选的实施方式中,步骤S10可替换为:计算当前颜色值和目标颜色值之间的颜色差值,根据灯效控制指令中的场景模式确定周期系数,根据周期系数和颜色差值设置渐变周期。具体地,若当前颜色值为Rx‑1Gx‑1Bx‑1,目标颜色值为RxGxBx,那么从Rx‑1Gx‑1Bx‑1渐变为RxGxBx需要先计算出颜色差值 。若从Rx‑1Gx‑1Bx‑1渐变为RxGxBx的场景模式的周期系数为k,那么渐变周期t=k×d。
[0067] S11、根据所述渐变周期确定所述至少两个射灯的颜色渐变步长。
[0068] 具体地,所述步骤S11包括:S111、获取默认的步长更新周期,并根据所述渐变周期和所述步长更新周期分别
计算每个所述射灯的渐变总次数。
[0069] 在一些实施例中,默认的步长更新周期为10ms。
[0070] S112、根据所述渐变总次数和所述分量差值确定每个所述射灯的颜色渐变步长。
[0071] 需要说明的是,根据渐变周期T和步长更新周期(10ms),计算每个射灯的渐变总次数,进而确定每次渐变的颜色步长,以确保渐变过程细腻且平滑。其中,在渐变周期T一定时,步长更新周期越短,渐变总次数越多,那么每次渐变的颜色步长越细腻,渐变越平滑。
[0072] S12、根据所述颜色渐变步长配置所述至少两个射灯在所述渐变周期内的渐变颜色值,以使得所述驱动芯片基于所述渐变颜色值控制所述至少两个射灯。
[0073] 具体地,所述步骤S12包括:S121、获取每个所述射灯的当前渐变次数。
[0074] S122、检测所述当前渐变次数是否等于所述渐变总次数。
[0075] 在一些实施例中,即设置有定时器,每10ms(步长更新周期)调用一次更新函数,在更新函数中遍历每个射灯,从而检测当前渐变次数是否等于渐变总次数。
[0076] S123、若是,停止更新所述渐变颜色值。
[0077] S124、否则,根据所述颜色渐变步长配置每个所述射灯在所述当前渐变次数的渐变颜色值。
[0078] 在一些实施例中,当更新函数遍历完所有射灯之后,会将每个射灯在当前渐变数的渐变颜色值传输到驱动芯片进行调光。通过这种方法,能够动态地调整渐变周期和颜色渐变步长,使得渐变效果更加平滑一致。同时,利用定时器定时更新渐变状态,确保了灯效的实时性和流畅性。
[0079] 在一些实施例中,步骤S124具体为:R(i)=Rcur+iRL、G(i)=Gcur+iGL、B(i)=Bcur+iBL。其中,R(i)、G(i)以及B(i)分别表示第i次渐变颜色值的分量,Rcur、Gcur以及Bcur分别表示当前颜色值的分量,RL、GL以及BL分别表示颜色渐变步长。
[0080] 在一些实施例中,若控制芯片同时控制L[1]至L[n]个射灯,则控制芯片传输到驱动芯片进行调光的数据序列具体为R1G1B1…Rn‑1Gn‑1Bn‑1…RnGnBn。基于上述步骤S124可得,控制芯片传输到驱动芯片总共进行i次渐变的数据序列具体为:… …
[0081] … …
[0082] … … 。
[0083] 在一具体场景中,用户端需要控制n个射灯,其中m个射灯为动态渐变灯效,n‑m个射灯为静态灯效,其中n与m均为整数。即n个射灯实现动态与静态的混合灯效。例如射灯1显示静态白光,射灯2显示动态红色、绿色、蓝色渐变切换。射灯2在动态颜色切换显示过程中,并不会影响到射灯1显示效果。在此场景下,控制芯片传输到驱动芯片总共进行i次渐变的数据序列具体为: … … 。由于射灯1是显示静态白光,所以射灯2动态渐变时,射灯1的颜色值不随着射灯2的颜色值而变化,进行变化的只有射灯2的颜色值。对此,本发明通过定时器设置了射灯状态轮询机制来控制不同的射灯显示不同灯效,在状态轮询机制下,定时器每间隔10ms查询所有射灯的工作状态,只有当射灯的工作状态为就绪状态时才能进行颜色值的转换计算,当射灯的工作状态为运行状态时才能输出数据序列到驱动芯片,以此方式保证所有射灯的调光状态同步。射灯的工作状态默认为停止状态,在接收到灯效控制指令之后,根据灯码编号L[n]确定需要进行灯效控制的目标射灯,将目标射灯的工作状态更新为就绪状态,在完成颜色值的转换计算之后更改射灯的工作状态为运行状态。其中,控制芯片会实时检测射灯的工作状态是否为运行状态,若射灯的工作状态为运行状态,则输出数据序列,数据序列输出完成之后,将射灯的工作状态更新为就绪状态或停止状态。
[0084] 请参照图2,本发明的实施例五为:一种灯效控制终端100,包括存储器101、处理器102及存储在所述存储器101上并
在所述处理器102上运行的计算机程序,所述处理器102执行所述计算机程序时实现上述实施例一至实施例三的一种灯效控制方法中的各个步骤。
[0085] 综上所述,本发明提供了一种灯效控制方法及终端,通过控制芯片和驱动芯片来实现多个射灯的联合控制,基于软件算法分别控制每个射灯的灯效,有效简化了多头射灯的控制系统。本发明允许用户通过用户端发送灯效控制指令,以自定义至少两个射灯的颜色值,从而实现灯效的个性化配置。同时,本发明在用户端采用字节数较小的颜色模型配置颜色值,从而减少控制指令的数据长度,进而提高用户端与控制芯片之间的数据传输效率。在灯效控制过程中,对于异色模式下的多个射灯,当射灯的用户颜色值与平均用户颜色值非常接近,肉眼无法区分,因此直接基于平均用户颜色值对其进行批量配置。当射灯的用户颜色值与用户颜色值差距较大,因此需要射灯对应的用户颜色值进行单独配置。控制芯片能够批量处理多个射灯从用户颜色值到目标颜色值之间的转换,以保证控制芯片能够及时处理对应的灯效控制指令,从而减少用户端控制指令从下发到执行的延迟,同时保证灯效配置的视觉效果。对于同色模式下的多个射灯,可直接从驱动缓存队列中获取对应的颜色值,从而省略转换计算过程,降低对于控制芯片的算力要求。此外,本发明根据射灯的变化颜色值动态调整整个渐变周期,从而计算出整个周期的渐变次数和每次渐变调整的颜色步长,从而优化射灯颜色渐变效果。
[0086] 以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页 第1页 第2页 第3页