Interface generation method and electronic device

CN122672793BActive Publication Date: 2026-10-27GOERTEK INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202611062896.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-07-17
Publication Date
2026-10-27
Estimated Expiration
2046-07-17

AI Technical Summary

Technical Problem

[0008]本公开实施例的一个目的是提供一种界面生成的新的技术方案,以解决相关技术中音频参数调节界面依赖人工编码进行开发,所导致的界面生成效率低下、后期参数维护需修改源代码并重新编译、布局策略无法根据参数复杂度自适应调整、以及不同算法或项目间的界面代码难以复用的问题

Benefits of technology

[0019]本公开实施例通过解析目标音频处理模块的参数配置文件提取参数配置层级结构,进而为参数配置层级结构的每一层独立生成子页面,最终将所有子页面按照层级隶属关系嵌套组合,生成完整的音频参数调节界面并输出。整个过程实现了从参数配置文件到可交互界面的全自动映射,有效提高了界面生成的效率和自适应性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122672793B_ABST
    Figure CN122672793B_ABST
Patent Text Reader

Abstract

The present disclosure relates to an interface generation method and an electronic device. The method comprises: obtaining a parameter configuration file of a target audio processing module; parsing the parameter configuration file to obtain a parameter configuration hierarchical structure of the target audio processing module, wherein the parameter configuration hierarchical structure comprises a hierarchical path relationship from a root parameter node to each leaf parameter node; starting from the root parameter node of the parameter configuration hierarchical structure, traversing each layer parameter node in the parameter configuration hierarchical structure layer by layer downwards, and determining a sub-page corresponding to a current traversal layer according to each parameter node in the current traversal layer; repeating the above steps until the leaf parameter node at the bottom layer is traversed to obtain the sub-page corresponding to each layer respectively; assembling the sub-pages corresponding to each layer respectively to generate an audio parameter adjustment interface corresponding to the target audio processing module; and outputting the audio parameter adjustment interface. The method can realize full-automatic mapping from the parameter configuration file to the interactive interface.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of human-computer interaction technology, and more specifically, to an interface generation method and an electronic device. Background Technology

[0002] In the fields of audio production, processing, and embedded audio device development, audio algorithms (such as equalizers, reverb units, and dynamic compressors) can contain a large number of audio parameters used to control sound performance. To facilitate real-time adjustments by users or sound engineers, audio processing software, plugins, or embedded device firmware need to provide corresponding graphical adjustment interfaces for these parameters.

[0003] In related technologies, the generation of audio parameter adjustment interfaces mainly relies on manual coding by developers. Developers need to pre-determine the control type (such as sliders, knobs, drop-down boxes) for each parameter based on a specific parameter list, and manually write interface layout code (such as single column, multi-column, nested tabs, etc.) to arrange these controls. Each independent audio algorithm or plugin needs to repeat the entire manual coding process described above.

[0004] However, this traditional manual coding method has the following technical drawbacks: First, the interface generation efficiency is extremely low. The average development time for each parameter configuration page is as long as 4 to 8 hours. When the algorithm iterates frequently or the number of parameters is large, the development workload increases linearly.

[0005] Secondly, the maintenance costs are high. Once the range, type, or number of parameters in the audio algorithm changes, developers must locate and modify the corresponding interface source code, and the entire software project needs to be recompiled and re-released, resulting in a long response cycle.

[0006] Third, the layout strategy is rigid and lacks adaptability. Existing solutions mostly use fixed templates and cannot dynamically adjust the arrangement (such as automatically switching between single column / multiple column / tabs) according to the complexity of the current parameter set (such as the total number of parameters, the weight of data types, and whether there is a nested structure). This results in low utilization of interface space and a poor user experience.

[0007] Fourth, UI code has poor reusability. Because the interface layout is highly coupled with the parameter metadata of specific algorithms, it is difficult to directly migrate and reuse UI code between different projects or different algorithms, resulting in a lot of repetitive work. Summary of the Invention

[0008] One objective of this disclosure is to provide a new technical solution for interface generation, which solves the problems in related technologies where audio parameter adjustment interfaces rely on manual coding for development, resulting in low interface generation efficiency, the need to modify and recompile the source code for later parameter maintenance, the inability of layout strategies to adaptively adjust according to parameter complexity, and the difficulty in reusing interface code between different algorithms or projects.

[0009] According to a first aspect of this disclosure, an interface generation method is provided to obtain a parameter configuration file of a target audio processing module, the parameter configuration file containing configuration information of at least one audio parameter; Parse the parameter configuration file to obtain the parameter configuration hierarchy of the target audio processing module, wherein the parameter configuration hierarchy includes the hierarchical path relationship from the root parameter node to each leaf parameter node; Starting from the root parameter node of the parameter configuration hierarchy, traverse the parameter nodes of each layer in the parameter configuration hierarchy layer by layer downwards, and determine the subpage corresponding to the current traversed layer based on the parameter nodes in the current traversed layer. Repeat the above steps of traversing layer by layer and generating subpages until the leaf parameter node at the bottom layer is reached, and the subpages corresponding to each layer are obtained. The subpages corresponding to each layer are assembled to generate the audio parameter adjustment interface corresponding to the target audio processing module; Output the audio parameter adjustment interface.

[0010] Optionally, determining the subpage corresponding to the current traversal layer based on each parameter node in the current traversal layer includes: Based on the attribute information of each parameter node in the current traversal layer, determine the complexity evaluation value corresponding to the current traversal layer; Detect whether each parameter node in the current traversal layer has nested child nodes, and obtain the nesting detection result; Based on the nesting detection result, the complexity evaluation value corresponding to the current traversal layer, and at least one of the number of parameter nodes in the current traversal layer, select the target layout strategy corresponding to the current traversal layer from a variety of preset layout strategies. Based on the data type of the audio parameters corresponding to each leaf parameter node in the current traversal layer, determine the audio parameter adjustment control corresponding to the audio parameter; Based on the target layout strategy corresponding to the current traversal layer, the audio parameter adjustment controls corresponding to the current traversal layer are arranged and assembled to obtain the subpage corresponding to the current traversal layer.

[0011] Optionally, the attribute information includes node type, numerical range, and nesting depth; determining the complexity evaluation value corresponding to the current traversal layer based on the attribute information of each parameter node in the current traversal layer includes: Based on the node type of each parameter node, determine the type weight value corresponding to each parameter node; Based on the numerical range of each parameter node, determine the range factor value corresponding to each parameter node; Based on the nesting depth value of each parameter node, determine the nesting depth factor value corresponding to each parameter node; The complexity evaluation value corresponding to the current traversal layer is calculated based on the type weight value, the range factor value, and the nesting depth factor value.

[0012] Optionally, the target layout strategy includes one of the following: single-column layout strategy, horizontal layout strategy, two-column layout strategy, three-column layout strategy, tab layout strategy, and scrolling layout strategy.

[0013] Optionally, selecting the target layout strategy corresponding to the current traversal layer from multiple preset layout strategies based on at least one of the nesting detection result, the complexity evaluation value corresponding to the current traversal layer, and the number of parameter nodes in the current traversal layer includes: If the nesting detection result indicates that there is a parameter node with nested child nodes in the current traversal layer and the complexity evaluation value is greater than or equal to the nesting complexity threshold, the tab layout strategy is determined as the target layout strategy. If the complexity evaluation value is less than the nesting complexity threshold, or if the nesting detection result is that there is no parameter node with nested child nodes in the current traversal layer, the target layout strategy corresponding to the current traversal layer is selected from multiple preset layout strategies based on at least one of the complexity evaluation value corresponding to the current traversal layer and the number of parameter nodes in the current traversal layer.

[0014] Optionally, selecting the target layout strategy corresponding to the current traversal layer from multiple preset layout strategies based on at least one of the complexity evaluation value corresponding to the current traversal layer and the number of parameter nodes in the current traversal layer includes: If the number of parameter nodes in the current traversal layer is equal to 1, the single-column layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than 1 and less than or equal to a first preset number, and the complexity evaluation value is less than a first preset threshold, the horizontal layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than a first preset number and less than or equal to a second preset number, and the complexity evaluation value is greater than or equal to a first preset threshold and less than a second preset threshold, then the double-column layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than the second preset number and less than or equal to the third preset number, and the complexity evaluation value is greater than or equal to the second preset threshold and less than the third preset threshold, the three-column layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than the third preset number, or if the complexity evaluation value is greater than or equal to the third preset threshold, the tab layout strategy will be determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than the third preset number and the user's preferred target presentation method is linear scrolling, then the scrolling layout strategy will be determined as the target layout strategy.

[0015] Optionally, determining the audio parameter adjustment control corresponding to each audio parameter based on the parameter data type of the audio parameter corresponding to each leaf parameter node in the current traversal layer includes: Based on the parameter data type, a target control type corresponding to the parameter data type is matched from a preset control mapping table; the preset control mapping table contains audio parameter adjustment control types corresponding to different parameter data types. According to the target control type, create an audio parameter adjustment control corresponding to the audio parameter, configure the corresponding audio parameter name and parameter value range for the audio parameter adjustment control, and establish a two-way data synchronization mechanism for the audio parameter adjustment control; the two-way data synchronization mechanism is used to synchronize the displayed value of the audio parameter adjustment control with the current value of the corresponding audio parameter in real time.

[0016] Optionally, assembling the sub-pages corresponding to each layer to generate the audio parameter adjustment interface corresponding to the target audio processing module includes: Based on the hierarchical relationship of each subpage in the parameter configuration hierarchy, determine the nesting and combination method of each subpage; Based on the nested combination method, the layout parameters of each subpage in the target interface container are determined; the layout parameters include the width of the tab column and the width of the control column of each subpage, as well as the vertical and horizontal spacing between each subpage; wherein, the width of the tab column is set to a fixed width, and the width of the control column is set to an adaptive stretch width; Based on the nesting combination method and the layout parameters, the sub-pages are nested and combined according to their hierarchical relationship to generate the audio parameter adjustment interface.

[0017] Optionally, the step of arranging and assembling the audio parameter adjustment controls corresponding to the current traversal layer according to the target layout strategy corresponding to the current traversal layer to obtain the subpage corresponding to the current traversal layer includes: Based on the target layout strategy, determine the arrangement and display area division of each audio parameter adjustment control; Based on the arrangement method, the display area division method, and the preset size of each audio parameter adjustment control, a line break is performed on each audio parameter adjustment control in the current traversal layer to obtain the line break layout result of each audio parameter adjustment control; Based on the line break layout result, the subpage corresponding to the current traversal layer is generated.

[0018] According to a second aspect of this disclosure, an electronic device is also provided, including a memory and a processor, the memory being used to store a computer program; the processor being used to execute the computer program to implement the method according to a first aspect of this disclosure.

[0019] This embodiment extracts the parameter configuration hierarchy by parsing the parameter configuration file of the target audio processing module, then generates an independent subpage for each layer of the parameter configuration hierarchy, and finally nests and combines all subpages according to their hierarchical relationship to generate and output a complete audio parameter adjustment interface. The entire process achieves fully automatic mapping from parameter configuration file to interactive interface, effectively improving the efficiency and adaptability of interface generation.

[0020] Other features and advantages of the embodiments of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0021] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the principles of the disclosure.

[0022] Figure 1 This is a schematic diagram of the structure of an electronic device to which the methods of the embodiments of this disclosure can be applied.

[0023] Figure 2 This is a flowchart illustrating an interface generation method provided in an embodiment of this disclosure.

[0024] Figure 3 This is a schematic diagram of the structure of an electronic device according to some other embodiments. Detailed Implementation

[0025] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the present disclosure.

[0026] The following description of at least one exemplary embodiment is merely illustrative and is not intended to limit the scope of this disclosure or its application or use.

[0027] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0028] In all the examples shown and discussed herein, any specific values ​​should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.

[0029] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0030] It should be noted that all data acquisition actions in this disclosure were carried out in compliance with the relevant data protection laws and policies of the country where the data is located, and with the authorization of the relevant equipment owner.

[0031] This disclosure relates to an interface generation scheme. Figure 1 This is a schematic diagram of the structure of an electronic device to which the methods of the embodiments of this disclosure can be applied.

[0032] like Figure 1 As shown, electronic device 100 can be any electronic device, such as a PC, laptop, server, etc.

[0033] Electronic device 100 may include a processor 1100, a memory 1200, an interface device 1300, a communication device 1400, a display device 1500, an input device 1600, a speaker 1700, a microphone 1800, etc. The processor 1100 may be a central processing unit (CPU), a microprocessor (MCU), etc. The memory 1200 may include, for example, ROM (Read-Only Memory), RAM (Random Access Memory), or non-volatile memory such as a hard disk. The interface device 1300 may include, for example, a USB interface, a headphone jack, etc. The communication device 1400 may be capable of wired or wireless communication. The display device 1500 may be, for example, an LCD screen, a touch screen, etc. The input device 1600 may include, for example, a touch screen, a keyboard, etc. Users can input / output voice information through the speaker 1700 and the microphone 1800.

[0034] exist Figure 1 In the illustrated electronic device, when a user needs to load an audio plugin, one possible implementation is as follows: Developers pre-determine the control types one by one for the specific parameter list of the plugin through manual coding, and manually write fixed layout code (such as a single-column vertical arrangement or a fixed two-column grid). At runtime, the processor reads the parameter configuration file, extracts the meta-information of each parameter, and instantiates each control according to the fixed template embedded in the code, populates it into the interface panel, and generates a parameter adjustment view.

[0035] However, this approach essentially relies on static coding decisions to handle dynamically changing parameter configurations, completely lacking the ability to perceive the complexity of the current parameter set. Because different plugins vary significantly in the number of parameters, data types, and nesting structures, and the fixed template is rigid and monotonous, it inevitably leads to: excessive white space and low space utilization when there are few parameters; crowded controls and fragmented logical groups when there are many parameters or deep nesting; and an inability to differentiate the arrangement of core and auxiliary controls when heterogeneous parameters coexist. Ultimately, this results in a severe mismatch between the layout structure and parameter characteristics, significantly reducing real-time parameter tuning efficiency and failing to meet the demands of audio processing scenarios for high-density, high-real-time interactive interfaces.

[0036] To address this, this embodiment extracts the parameter configuration hierarchy by parsing the parameter configuration file of the target audio processing module. It then generates independent subpages for each layer of the parameter configuration hierarchy, and finally nests and combines all subpages according to their hierarchical relationship to generate and output a complete audio parameter adjustment interface. The entire process achieves fully automatic mapping from the parameter configuration file to the interactive interface, effectively improving the efficiency and adaptability of interface generation.

[0037] The following combination Figure 1 The electronic device is described, illustrating various embodiments of the present disclosure.

[0038] <First Embodiment> Figure 2 This is a flowchart illustrating an interface generation method provided in an embodiment of this disclosure. Figure 2 As shown, the method includes the following steps S210 to S260.

[0039] Step S210: Obtain the parameter configuration file of the target audio processing module, which contains configuration information for at least one audio parameter.

[0040] In this embodiment, the target audio processing module refers to the audio algorithm unit, audio plugin, or embedded audio function module for generating the audio parameter adjustment interface.

[0041] A complete target audio processing module contains one or more functional sub-modules, each corresponding to a specific audio signal processing function.

[0042] For example, the equalizer submodule is used to adjust the gain of different frequency bands, the reverb submodule is used to simulate the reflection effect of sound in different spaces, and the dynamic compressor submodule is used to control the dynamic range of the audio signal.

[0043] Each functional submodule further includes at least one audio parameter, which is a specific controllable quantity that the user can adjust within that functional submodule.

[0044] For example, the equalizer submodule may include parameters such as low-frequency gain, mid-frequency, mid-frequency gain, and high-frequency gain, while the reverberation submodule may include parameters such as room size, decay time, pre-delay, and wet / dry mixing ratio.

[0045] The collection of all audio parameters involved in the target audio processing module constitutes the description object of the parameter configuration file. That is, the parameter configuration file is used to record the configuration information of all audio parameters contained in the target audio processing module.

[0046] The configuration information includes, but is not limited to: parameter name, parameter data type, parameter value range (including minimum and maximum values), parameter default value, parameter read and write permissions, parameter grouping information, and nested hierarchical relationships between parameters.

[0047] The parameter configuration file can be obtained in various ways, such as reading it directly from the local file system of the electronic device, downloading and updating it from a remote server, or extracting it from the internal resource package of the audio plugin. The specific method of acquisition can be determined according to the actual application scenario, and this disclosure does not limit it.

[0048] In some examples, the parameter configuration file uses Extensible Markup Language (XML) format. This format offers good readability and scalability, facilitates data exchange between different systems, and leverages mature XML parsing technology to quickly extract configuration information for each parameter, thereby improving the versatility and maintainability of the parameter configuration file. When using XML format, the parameter configuration file organizes the configuration information for each audio parameter through nested tags.

[0049] Specifically, the root tag of the parameter configuration file contains at least one module tag, each module tag corresponding to a functional sub-module in the target audio processing module (such as an equalizer sub-module, reverb sub-module, or compressor sub-module). Each module tag further contains at least one parameter tag, each parameter tag corresponding to the configuration information of an audio parameter involved in that functional sub-module. That is to say, each parameter tag does not only label the parameter name, but also records all the key information of the parameter through multiple attribute fields. For example, the name attribute records the parameter identifier, the type attribute specifies the data type (such as basic type, array type, object type, etc., corresponding to the type weight value in the subsequent complexity evaluation), the minimum and maximum value attributes limit the value range (corresponding to the range factor value in the subsequent complexity evaluation), the default value attribute sets the initial value, and the unit attribute identifies the physical dimension. For audio parameters with hierarchical relationships (such as array type or object type parameters, which also contain subordinate parameters), the parent-child nesting relationship between parameter tags is used to represent them.

[0050] After the above parsing process, the configuration information carried by each module tag and its parameter tags can be extracted from the parameter configuration file.

[0051] In other examples, the parameter configuration file can also use other structured formats such as JSON, YAML, or binary. The specific format chosen can be flexibly determined based on different requirements for readability, parsing efficiency, file size, and cross-platform compatibility in actual applications, and this disclosure does not limit this.

[0052] Step S220: Parse the parameter configuration file to obtain the parameter configuration hierarchy of the target audio processing module, wherein the parameter configuration hierarchy includes the hierarchical path relationship from the root parameter node to each leaf parameter node.

[0053] In this embodiment, the parameter configuration hierarchy is a tree-like data model constructed in memory after parsing and processing the parameter configuration file. This parameter configuration hierarchy is used to represent the subordinate relationships and hierarchical paths among the various audio parameters contained in the target audio processing module.

[0054] The parameter configuration hierarchy includes a complete hierarchical path relationship starting from the root parameter node, passing through intermediate parameter nodes at each level, and finally down to the leaf parameter nodes. The root parameter node corresponds to the target audio processing module as a whole, intermediate parameter nodes correspond to functional sub-modules or parameter groups, and leaf parameter nodes correspond to the specific audio parameters that can be adjusted by the user within each functional sub-module.

[0055] In some examples, when parsing parameter configuration files, a parser corresponding to the format of the configuration file can be used.

[0056] Taking XML-formatted parameter configuration files as an example, a Document Object Model (DOM) parser or a Simple Application Programming Interface (SAX) parser can be used to read the file content, traverse the module tags and parameter tags in the parameter configuration file, and construct the corresponding hierarchical structure in memory based on the parent-child nesting relationship between the tags.

[0057] Specifically, the parser starts from the root tag of the parameter configuration file and traverses each level of tags. For each tag, the parser extracts the attribute information it carries, including the parameter name, parameter data type, parameter value range, and other configuration information, and maps the tag and its attribute information to a parameter node in memory. Simultaneously, based on the parent-child nesting relationship between tags, the parser establishes parent-child associations between parameter nodes, mapping the root tag to the root parameter node, the module tag to intermediate-level module parameter nodes, the innermost parameter tags that no longer contain child tags to leaf parameter nodes, and parameter tags with nested relationships to node pairs with parent-child hierarchical relationships. After the above parsing process, the parameter configuration hierarchy of the target audio processing module is obtained. This hierarchy, starting from the root parameter node, completely records the entire hierarchical path relationship from the root parameter node through each level of intermediate parameter nodes to each leaf parameter node.

[0058] Step S230: Starting from the root parameter node of the parameter configuration hierarchy, traverse each layer of parameter nodes in the parameter configuration hierarchy layer by layer downwards, and determine the subpage corresponding to the current traversed layer based on each parameter node in the current traversed layer.

[0059] In this embodiment, the process traverses downwards layer by layer, starting from the root parameter node. That is, it begins at the top-level node corresponding to the entire target audio processing module, sequentially visiting the first-level child nodes (corresponding to each functional sub-module), the second-level child nodes (corresponding to parameter groups or array elements under each functional sub-module), and so on, until reaching the bottom-level leaf parameter nodes (corresponding to specific audio parameters without child nodes). At each level reached, all parameter nodes within that level are processed independently, generating the corresponding sub-page.

[0060] For each layer, each parameter node may contain different types of parameter information, and may also have different internal structures (for example, an array-type parameter node may contain multiple child elements, while an object-type parameter node may contain multiple child parameters of different types). Therefore, it is necessary to generate the corresponding sub-pages for each layer based on its specific characteristics.

[0061] In some examples, step S230 determines the subpage corresponding to the current traversal layer based on each parameter node in the current traversal layer, including steps S2311 to S2315.

[0062] Step S2311: Determine the complexity evaluation value corresponding to the current traversal layer based on the attribute information of each parameter node in the current traversal layer.

[0063] In this embodiment, the complexity evaluation value is a numerical value used to quantify the overall complexity of each parameter node in the current traversal layer. This value reflects the comprehensive complexity of the current traversal layer in terms of interface presentation and user interaction. The complexity evaluation value of the current traversal layer comprehensively considers factors such as the node type, numerical range, and nesting depth of each parameter node in the layer. The higher the complexity evaluation value, the more complex the parameters in the current traversal layer are, requiring more display space and interactive resources in the interface.

[0064] In some examples, the attribute information includes node type, numerical range and nesting depth value. Step S2311 determines the complexity evaluation value corresponding to the current traversal layer based on the attribute information of each parameter node in the current traversal layer, including: steps S2311.1 to S2311.4.

[0065] Step S2311.1: Determine the type weight value corresponding to each parameter node based on the node type of each parameter node.

[0066] In this embodiment, the node type of a parameter node is used to characterize the essential attributes of the parameter in terms of numerical storage and interaction. Based on the complexity of the data structure, node types can be divided into two main categories: basic types and complex types. Basic types include Boolean, integer, floating-point, string, and enumeration types. These parameters are characterized by not containing internal substructures and having a straightforward and simple interaction method. Complex types include mapping types, array types, and object types. In addition, there may be a more complex special structure type, whose nesting depth and internal structural complexity are higher than the aforementioned categories.

[0067] The more complex the internal structure of a node type and the more levels of sub-parameters it contains, the higher its type weight value. Specifically, basic type parameters are presented in the interface as simple controls such as switches, sliders, numeric boxes, text boxes, or dropdown lists, with clear and intuitive interaction logic, thus having the lowest type weight value. Mapped parameters in complex types organize data in key-value pairs, offering a degree of structural flexibility and potentially requiring dynamically generated controls in the interface, resulting in a slightly higher type weight value than basic types. Array parameters contain multiple elements of the same data type and need to be presented in the interface as lists or repeating controls, thus having a higher type weight value than mapped parameters. Object parameters contain multiple sub-parameters of different types, forming a clear hierarchical relationship, and need to be displayed in the interface using grouped collapses or nested panels, resulting in a higher type weight value than array parameters. Complex type parameters, on the other hand, contain deeper nested structures or highly heterogeneous parameter combinations, making their interface presentation and interaction logic the most complex, thus having the highest type weight value.

[0068] For example, when the parameter node type is Boolean, integer, floating-point, string, or enumeration, the type weight is 0.1 points. When the parameter node type is a mapping, the type weight is 0.2 points. When the parameter node type is an array, the type weight is 0.3 points. When the parameter node type is an object, the type weight is 0.4 points. When the parameter node type is a complex type, the type weight is 0.5 points.

[0069] By using the quantitative mapping relationship between different node types and different weight values, the node type characteristics of the parameters can be transformed into numerical form, thus laying the foundation for the accurate calculation of complexity evaluation values.

[0070] In some examples, a mapping table between node types and type weight values ​​can be pre-established. Based on the node type of the parameter node, the corresponding type weight value can be looked up from the mapping table. In this way, different weight values ​​can be assigned to parameter nodes according to the complexity of their node types.

[0071] Step S2311.2: Determine the range factor value corresponding to each parameter node based on the numerical range of each parameter node.

[0072] In this embodiment, the range factor value is a factor value determined based on the range of parameter values. The larger the range of parameter values, the larger the range factor value, indicating a wider adjustable space for the audio parameter and a higher complexity of the interface.

[0073] In some examples, the range factor value can be calculated based on the span of the parameter's numerical range.

[0074] Specifically, the numerical range can be divided into several intervals, each corresponding to a range factor value. For example, when the numerical range spans less than 10, the range factor value can be set to 1. When the numerical range spans between 10 and 100, the range factor value can be set to 1.5. When the numerical range spans between 100 and 1000, the range factor value can be set to 2. When the numerical range spans greater than 1000, the range factor value can be set to 2.5.

[0075] For unbounded numerical ranges, such as from negative infinity to positive infinity, a larger range factor value can be set, such as 3.

[0076] For parameters of enumeration or Boolean types, the numerical range is a finite set of discrete values. The range factor value can be determined based on the number of possible values. For example, if a Boolean type has only two possible values, the range factor value can be set to 1. If an enumeration type has 3 to 5 possible values, the range factor value can be set to 1.2.

[0077] By determining the range factor value based on the magnitude of the parameter's numerical range, the adjustable space of audio parameters can be quantified into numerical values, providing a basis for the numerical range dimension for complexity assessment.

[0078] Step S2311.3: Determine the nesting depth factor value corresponding to each parameter node based on the nesting depth value of each parameter node.

[0079] In this embodiment, the nesting depth value is used to measure the hierarchical position of the parameter node in the parameter configuration hierarchy, reflecting whether the parameter node contains child parameter nodes and the hierarchical complexity of its internal structure.

[0080] If a parameter node contains at least one child parameter node, it is said to have a nested structure with a nesting depth greater than 0. Conversely, if a parameter node does not contain any child parameter nodes, it is said to be a leaf parameter node with a nesting depth of 0.

[0081] A higher nesting depth value indicates a deeper internal structure hierarchy of the parameter node. When presented on the interface, this requires displaying each sub-parameter in a hierarchical manner using methods such as indentation, collapsible panels, or multi-level tabs within a limited space. This increases the cognitive cost for users to understand and operate the parameter. The nesting depth factor value is a numerical value determined based on the nesting depth value, used to quantify the contribution of this structural complexity to the complexity assessment. The nesting depth factor value increases with increasing nesting depth value.

[0082] In some examples, the maximum nesting depth of a parameter node can be determined by iterating through the data structure of each parameter node and recursively checking whether the parameter node contains child parameter nodes and whether the child parameter nodes further contain deeper child parameter nodes.

[0083] Specifically, if the parameter node contains no child parameter nodes, its nesting depth value is 0, and the corresponding nesting depth factor value can be set to 0. If the parameter node contains at least one level of child parameter nodes but these child parameter nodes do not contain any deeper levels of child parameter nodes, its nesting depth value is 1, and the corresponding nesting depth factor value can be set to 0.3. If the parameter node contains two levels of child parameter nodes (i.e., its child parameter nodes also contain child parameter nodes), its nesting depth value is 2, and the corresponding nesting depth factor value can be set to 0.6. If the parameter node contains three or more levels of child parameter nodes, its nesting depth value is 3 or greater, and the corresponding nesting depth factor value can be set to 0.9 or higher.

[0084] In other examples, a simpler determination method can be used, which distinguishes only whether a child parameter node is included: if the nesting depth value is 0, the nesting depth factor value is set to 0. If the nesting depth value is greater than 0, the nesting depth factor value is set to 0.3.

[0085] It should be noted that the specific values ​​in the above examples are merely illustrative. In practical applications, the factor values ​​corresponding to each level can be flexibly adjusted according to the sensitivity to nesting complexity. This disclosure does not limit this.

[0086] Using the above method, the nesting depth factor value can be determined based on the nesting depth value of each parameter node, thereby quantifying the hierarchical complexity of the parameter structure into a value that can participate in subsequent calculations, providing a quantitative basis for the structural dimension of complexity assessment.

[0087] Step S2311.4: Determine the complexity evaluation value corresponding to the current traversal layer based on the type weight value, the range factor value, and the nesting depth factor value.

[0088] In some examples, the type weight, range factor, and nesting depth factor of each parameter node can be multiplied first to obtain the single-parameter complexity evaluation value of that parameter node. That is, the single-parameter complexity evaluation value equals the type weight value multiplied by the range factor value multiplied by the nesting depth factor value. Then, the single-parameter complexity evaluation values ​​of all parameter nodes in the current traversal layer are added together to obtain the total complexity value corresponding to the current traversal layer, which is used as the complexity evaluation value for the current traversal layer.

[0089] In other examples, the type weight value, range factor value, and nesting depth factor value of each parameter node can be summed separately, and then the sums can be multiplied or weighted to obtain the complexity evaluation value corresponding to the current traversal level.

[0090] In some other examples, the complexity evaluation value can also be calculated using a weighted summation method. For instance, the complexity evaluation value of each parameter node is equal to the type weight value multiplied by the first weight coefficient, plus the range factor value multiplied by the second weight coefficient, plus the nesting depth factor value multiplied by the third weight coefficient. The first, second, and third weight coefficients can be adjusted according to actual needs. Then, the complexity evaluation values ​​of each parameter node in the current traversal layer are aggregated (e.g., summed or averaged) to obtain the complexity evaluation value corresponding to the current traversal layer.

[0091] As can be seen from the above steps S2311.1 to S2311.4, the embodiments of this disclosure can more accurately quantify the overall complexity of each layer of parameter nodes by calculating the complexity evaluation value corresponding to the current traversal layer based on the node type, numerical range, and nesting depth value of each parameter node.

[0092] Step S2312: Detect whether there are nested child nodes in each parameter node of the current traversal layer, and obtain the nesting detection result.

[0093] In this embodiment, each parameter node in the current traversal layer is traversed, and it is checked whether the parameter node has a next-level child node in the parameter configuration hierarchy. For each parameter node, if it has at least one direct child node, it is determined that the parameter node has nested child nodes. If it has no child nodes, that is, the parameter node is a leaf parameter node, it is determined that the parameter node does not have nested child nodes.

[0094] The nesting detection result indicates whether there is at least one parameter node with nested child nodes in the current traversal level. If at least one parameter node with nested child nodes exists in the current traversal level, the nesting detection result is "There is a parameter node with nested child nodes in the current traversal level". If none of the parameter nodes in the current traversal level have nested child nodes, i.e., all parameter nodes are leaf parameter nodes, the nesting detection result is "There is no parameter node with nested child nodes in the current traversal level".

[0095] Step S2313: Based on the nesting detection result, the complexity evaluation value corresponding to the current traversal layer, and at least one of the number of parameter nodes in the current traversal layer, select the target layout strategy corresponding to the current traversal layer from multiple preset layout strategies.

[0096] In this embodiment, various preset layout strategies may include single-column layout strategy, horizontal layout strategy, two-column layout strategy, three-column layout strategy, tab layout strategy, and scrolling layout strategy.

[0097] Single-column layout strategy: Presents a single audio parameter adjustment control in a single column. Horizontal layout strategy: Presents all audio parameter adjustment controls horizontally. Two-column layout strategy: Arranges all audio parameter adjustment controls in two columns. Three-column layout strategy: Arranges all audio parameter adjustment controls in three columns. Tab layout strategy: Groups audio parameters according to functional modules, with each module corresponding to a tab. Scroll layout strategy: Arranges all audio parameter adjustment controls in single or multiple columns, allowing users to browse all parameters using a scroll bar.

[0098] In some examples, step S2313 selects the target layout strategy corresponding to the current traversal layer from a variety of preset layout strategies based on the nesting detection result, the complexity evaluation value corresponding to the current traversal layer, and at least one of the number of parameter nodes in the current traversal layer, including: steps S2313.1 to S2313.2.

[0099] Step S2313.1: If the nesting detection result shows that there is a parameter node with nested child nodes in the current traversal layer and the complexity evaluation value is greater than or equal to the nesting complexity threshold, the tab layout strategy is determined as the target layout strategy.

[0100] In this embodiment, the nesting complexity threshold is a pre-set numerical threshold used to determine whether the complexity of the current traversal layer is high enough to require a tab layout strategy to present the nested structure. For example, the nesting complexity threshold can be set to 0.8.

[0101] When the nesting detection result indicates that there are parameter nodes with nested child nodes in the current traversal layer and the complexity evaluation value of the current traversal layer is greater than or equal to the nesting complexity threshold, it means that the current traversal layer not only has a nested structure, but its overall complexity has reached a level requiring a special layout. In this case, the tab layout strategy is determined as the target layout strategy, that is, using multiple tabs to group and present the parameter nodes in the current traversal layer. Parameter nodes with nested child nodes can occupy an independent tab to display their internal sub-parameters. Leaf parameter nodes without nested child nodes can be grouped into other tabs according to function or type.

[0102] The above method can provide clear grouping and convenient navigation switching capabilities for traversal layers that contain nested structures and have high complexity.

[0103] Step S2313.2: If the complexity evaluation value is less than the nesting complexity threshold, or if the nesting detection result is that there is no parameter node with nested child nodes in the current traversal layer, select the target layout strategy corresponding to the current traversal layer from multiple preset layout strategies based on at least one of the complexity evaluation value corresponding to the current traversal layer and the number of parameter nodes in the current traversal layer.

[0104] In this embodiment, the complexity assessment value is less than the nesting complexity threshold, meaning that although nested structures may exist, their overall complexity has not reached the point where a tab layout is necessary. The nesting detection result is that all parameter nodes in the current traversal layer are leaf parameter nodes, and there are no nested structures that require special grouping for display. In both cases, the process can degenerate into a conventional layout strategy selection process based on a comprehensive judgment of the complexity assessment value and the number of parameter nodes.

[0105] In some examples, step S2313.2 selects the target layout strategy corresponding to the current traversal layer from a variety of preset layout strategies based on at least one of the complexity evaluation value corresponding to the current traversal layer and the number of parameter nodes in the current traversal layer, including steps S2313.21 to S2313.26.

[0106] Step S2313.21: If the number of parameter nodes in the current traversal layer is equal to 1, the single-column layout strategy is determined as the target layout strategy.

[0107] In this embodiment, when there is only one parameter node in the current traversal layer, the interface layout is very simple; it only requires presenting the single audio parameter adjustment control in a single column. By selecting the single-column layout strategy when the number of parameter nodes in the current traversal layer is equal to 1, a concise and clear interface layout can be provided for single-parameter cases.

[0108] Step S2313.22: If the number of parameter nodes in the current traversal layer is greater than 1 and less than or equal to the first preset number, and the complexity evaluation value is less than the first preset threshold, the horizontal layout strategy is determined as the target layout strategy.

[0109] In this embodiment, the first preset quantity is a threshold for the number of parameter nodes set for the horizontal layout strategy, for example, it can be set to 3. The first preset threshold is a threshold for the complexity evaluation value set for the horizontal layout strategy, for example, it can be set to 0.3.

[0110] If the number of parameter nodes in the current traversal layer is less than or equal to the first preset number and the complexity evaluation value is less than the first preset threshold, it indicates that the number of parameter nodes in the current traversal layer is small and the overall complexity is low. At this time, the audio parameter adjustment controls can be presented in a horizontal arrangement, making the interface more compact, and users can see all parameters in one view at the same time.

[0111] Step S2313.23: If the number of parameter nodes in the current traversal layer is greater than the first preset number and less than or equal to the second preset number, and the complexity evaluation value is greater than or equal to the first preset threshold and less than the second preset threshold, the double-column layout strategy is determined as the target layout strategy.

[0112] In this embodiment, the second preset quantity is a threshold for the number of parameter nodes set for the two-column layout strategy, for example, it can be set to 6. The second preset threshold is a threshold for the complexity evaluation value set for the two-column layout strategy, for example, it can be set to 0.5.

[0113] When the number of parameter nodes in the current traversal layer is less than or equal to the second preset number and the complexity evaluation value is less than the second preset threshold, it indicates that the number of parameter nodes in the current traversal layer is moderate and the complexity is moderate. At this time, choosing the two-column layout strategy can provide a balanced and reasonable interface layout for the case where the parameters and complexity are moderate.

[0114] Step S2313.24: If the number of parameter nodes in the current traversal layer is greater than the second preset number and less than or equal to the third preset number, and the complexity evaluation value is greater than or equal to the second preset threshold and less than the third preset threshold, the three-column layout strategy is determined as the target layout strategy.

[0115] In this embodiment, the third preset quantity is a threshold for the number of parameter nodes set for the three-column layout strategy, for example, it can be set to 12. The third preset threshold is a threshold for the complexity evaluation value set for the three-column layout strategy, for example, it can be set to 0.7.

[0116] When the number of parameter nodes in the current traversal layer is less than or equal to the third preset number and the complexity evaluation value is less than the third preset threshold, it indicates that the number of parameter nodes in the current traversal layer is relatively large but the complexity is not very high. In this case, choosing the three-column layout strategy can provide an efficient and compact interface layout for situations where there are many parameters but the complexity is not very high.

[0117] Step S2313.25: If the number of parameter nodes in the current traversal layer is greater than the third preset number, or if the complexity evaluation value is greater than or equal to the third preset threshold, the tab layout strategy is determined as the target layout strategy.

[0118] In this embodiment, if the number of parameter nodes in the current traversal layer is large (exceeding the third preset number) or the overall complexity is high (reaching or exceeding the third preset threshold), a tab layout strategy is adopted. The parameter nodes in the current traversal layer are grouped according to functional modules, with each module corresponding to a tab. Users can switch between parameters of different modules by clicking on the tabs. This provides a clear grouping and convenient navigation interface layout for situations with many parameters or high complexity.

[0119] Step S2313.26: If the number of parameter nodes in the current traversal layer is greater than the third preset number and the user's preferred target presentation method is linear scrolling presentation method, then the scrolling layout strategy is determined as the target layout strategy.

[0120] In this embodiment, if the number of parameter nodes in the current traversal layer is large and the user's preferred presentation method is linear scrolling, a scrolling layout strategy can be adopted. This involves arranging the audio parameter adjustment controls in a single or multiple columns. When the interface height exceeds the visible area, all parameters can be browsed using a scroll bar. This provides a continuous and smooth interface layout for situations with many parameters and where users are accustomed to linear browsing.

[0121] User preference for the target presentation method refers to the user's preferred interface presentation style. The target presentation method can be either a tabbed presentation method or a linear scrolling presentation method. The tabbed presentation method allows users to browse parameters of different modules by switching tabs, suitable when parameters are grouped by function. The linear scrolling presentation method allows users to browse all parameters linearly using a scroll bar, suitable when parameters do not need to be grouped or when users are accustomed to linear browsing.

[0122] In some examples, the user can be asked how the target presentation should be presented before the interface is generated, and the user's choice can be obtained through a dialog box or configuration options.

[0123] In other examples, the target rendering method can also be read from the user's usage history or preferences.

[0124] As can be seen from the above steps S2313.21 to S2313.26, the present embodiment automatically selects the optimal strategy from six preset layout strategies—single column, horizontal, double column, triple column, tab, and scrolling—based on the number of parameter nodes and complexity evaluation value in the current traversal layer, thus realizing adaptive decision-making of layout strategy.

[0125] Step S2314: Based on the data type of the audio parameters corresponding to each leaf parameter node in the current traversal layer, determine the audio parameter adjustment control corresponding to each audio parameter, and obtain the audio parameter adjustment control corresponding to each audio parameter.

[0126] In this embodiment, the audio parameter adjustment control is an interface control used to present and adjust a single audio parameter. The type of the control should match the data type of the audio parameter in order to provide a suitable interaction method.

[0127] For example, for numeric parameters, slider controls or knob controls can be used. For Boolean parameters, switch controls or checkbox controls can be used. For enumerated parameters, drop-down list controls or radio button groups can be used.

[0128] In some examples, step S2314 determines the audio parameter adjustment control corresponding to the audio parameter based on the parameter data type of the audio parameter corresponding to each leaf parameter node in the current traversal layer, including steps S2314.1 to S2314.2.

[0129] Step S2314.1: Based on the parameter data type, match the target control type corresponding to the parameter data type from the preset control mapping table.

[0130] In this embodiment, the preset control mapping table is a table that records the mapping relationship between different parameter data types and corresponding audio parameter adjustment control types. This table can be pre-created and stored in the electronic device, and the preset control mapping table contains the audio parameter adjustment control types corresponding to different parameter data types.

[0131] Parameter data types can be categorized into several levels, such as basic type level, composite type level, and complex type level. Basic type level includes simple data types such as integer types, floating-point types, boolean types, and string types. Composite type level includes data types containing multiple elements such as array types and enumeration types. Complex type level includes data types with complex structures such as object types, mapping types, and complex number types.

[0132] For basic type-level parameter data types, the default control mapping table can have the following relationships: Integer types correspond to integer input box controls or integer slider controls. Floating-point types correspond to floating-point input box controls, floating-point slider controls, or knob controls. Boolean types correspond to switch controls or checkbox controls. String types correspond to text input box controls.

[0133] For parameter data types at the composite level, the preset control mapping table can have the following mapping relationship: enumeration types correspond to drop-down list controls or radio button group controls. Array types correspond to array editor controls or multi-value slider controls.

[0134] For complex-level parameter data types, the default control mapping table can have the following mapping relationships: Object types correspond to object editor controls or nested panel controls. Mapped types correspond to key-value pair editor controls. Complex number types correspond to complex number input controls or two-dimensional coordinate controls.

[0135] In some examples, the corresponding target control type can be found in a preset control mapping table based on the parameter data type. The search process can be as follows: first, determine the level to which the parameter data type belongs, and then search for a matching target control type in the mapping entries corresponding to that level. If multiple candidate control types exist, the most suitable target control type can be further filtered based on other attributes of the parameter (such as value range, precision requirements, etc.).

[0136] By establishing a mapping relationship between parameter data types and audio parameter adjustment control types through a preset control mapping table, the appropriate control type can be matched quickly and accurately for each audio parameter.

[0137] Step S2314.2: According to the target control type, create an audio parameter adjustment control corresponding to the audio parameter, configure the corresponding audio parameter name and parameter value range for the audio parameter adjustment control, and establish a two-way data synchronization binding mechanism for the audio parameter adjustment control.

[0138] In some examples, the control creation interface provided by the UI framework can be called to instantiate the corresponding audio parameter adjustment control based on the target control type. After creating the audio parameter adjustment control, the corresponding audio parameter name and parameter value range can be configured for the control.

[0139] When configuring audio parameter names, you can set the audio parameter name as the label text or tooltip text of the control, so that users can clearly know the parameter name corresponding to the control. When configuring the parameter value range, you can set the minimum value of the parameter value range as the minimum value property of the control, and set the maximum value of the parameter value range as the maximum value property of the control, thereby limiting the range of values ​​that users can adjust.

[0140] In other examples, additional properties can be configured for the audio parameter adjustment control, such as current value, step size, precision, and unit, to further enhance the control's display and interactive functionality.

[0141] The two-way data synchronization binding mechanism is used to synchronize the displayed value of the audio parameter adjustment control with the current value of the corresponding audio parameter in real time. Specifically, when a user changes the displayed value of the audio parameter adjustment control by operating it, this change is synchronized to the corresponding audio parameter in real time, updating the current value of the audio parameter. Conversely, when the current value of the audio parameter changes due to other means (such as changes in the internal state of the algorithm, preset loading, etc.), this change is also synchronized to the corresponding audio parameter adjustment control in real time, updating the display value of the control.

[0142] By establishing a two-way data synchronization binding mechanism, it can be ensured that the displayed value of the audio parameter adjustment control is always consistent with the actual value of the audio parameter, providing users with real-time and accurate parameter adjustment feedback.

[0143] As can be seen from steps S2314.1 to S2314.2 above, this embodiment of the present disclosure creates an audio parameter adjustment control according to the target control type, configures it with attributes such as audio parameter name and parameter value range, and establishes a two-way data synchronization binding mechanism. This can generate a fully functional, correctly configured, and real-time synchronized audio parameter adjustment control, providing a foundation for subsequent interface assembly.

[0144] Step S2315: According to the target layout strategy corresponding to the current traversal layer, arrange and assemble the audio parameter adjustment controls corresponding to the current traversal layer to obtain the subpage corresponding to the current traversal layer.

[0145] In this embodiment, after creating and configuring each audio parameter adjustment control, these controls need to be arranged and assembled in the display area corresponding to the current traversal layer according to the target layout strategy determined in step S2313 to generate a complete subpage. This subpage is an independent interface unit corresponding to the current traversal layer.

[0146] In some examples, step S2315 arranges and assembles the audio parameter adjustment controls corresponding to the current traversal layer according to the target layout strategy corresponding to the current traversal layer to obtain the subpage corresponding to the current traversal layer, including: steps S2315.1 to S2315.3.

[0147] Step S2315.1: Based on the target layout strategy, determine the arrangement and display area division of each audio parameter adjustment control.

[0148] In this embodiment, firstly, the arrangement and number of columns of the audio parameter adjustment controls are determined according to the target layout strategy.

[0149] For example, a single-column layout corresponds to a single vertical column arrangement. A horizontal layout corresponds to a single horizontal row arrangement. A two-column layout corresponds to a two-column grid arrangement. A three-column layout corresponds to a three-column grid arrangement. Tab layouts require each tab to have its internal arrangement and number of columns determined independently. Scrolling layouts dynamically set the number of columns based on the interface width and use a vertically continuous arrangement.

[0150] After determining the arrangement and number of columns, the available display area of ​​the interface is further divided. The division method can be equal division, meaning that the width of each column and the height of each row are equally distributed.

[0151] Alternatively, a complexity-based approach can be used, allocating larger display areas to controls with higher complexity evaluation values. This could involve assigning wider columns or taller rows to accommodate control types that may contain nested sub-controls or complex interactive elements. Furthermore, adaptive adjustments can be made based on the control's own preset size mapping.

[0152] Step S2315.2: Based on the arrangement method, the display area division method, and the preset size of each audio parameter adjustment control, perform line wrapping on each audio parameter adjustment control in the current traversal layer to obtain the line wrapping layout result of each audio parameter adjustment control.

[0153] In this embodiment, line wrapping is an operation that adjusts the position of controls in the line dimension during the arrangement of controls. During the initial arrangement of the audio parameter adjustment controls according to the arrangement method and display area division method, by detecting line wrapping trigger conditions, the audio parameter adjustment controls that need line wrapping are adjusted to the next line to optimize the overall visual effect and space utilization of the layout.

[0154] Line break handling includes at least one of the following three methods: The first line break method: If an independent line break label is detected after the current parameter node in the parameter configuration file, the audio parameter adjustment controls generated by each parameter node following the current parameter node will be moved to the next line. An independent line break label is a line break mark that appears independently in the parameter configuration file (e.g., <split / > The `` tag inserts a forced line break at its location. During parsing, when this tag is detected after the current parameter node, all controls generated based on the parameter nodes following this current parameter node will be moved to the next line during control arrangement. Independent line break tags are not bound to any specific parameter node; instead, they exist as independent layout control markers between parameter nodes in the configuration file.

[0155] The second line break method: If a line break attribute marker exists in the attribute information of the current parameter node, the audio parameter adjustment controls generated based on the current parameter node will be moved to the next line. The line break attribute marker is an attribute field directly attached to the parameter node (e.g., split="true"), indicating that the audio parameter adjustment controls corresponding to that parameter node should be on a new line. During parsing, when a parameter node's attribute information contains this line break attribute marker, the controls will be moved to the next line based on the current audio parameter adjustment controls generated by that parameter node. Unlike the first method, this line break method applies only to the controls corresponding to the parameter node itself.

[0156] The third line wrapping method: If the total width of all audio parameter adjustment controls already arranged in the current row exceeds a preset line width threshold, the currently arranged audio parameter adjustment control will be automatically moved to the next row. This method is an automatically executed intelligent line wrapping strategy, requiring no explicit markings in the parameter configuration file. During the control arrangement process, the total width of the controls already arranged in the current row is accumulated in real time. When preparing to arrange the next control, if the total width of the existing controls in the current row plus the width of the control to be arranged exceeds the preset line width threshold, the control to be arranged will be automatically moved to the next row. The preset line width threshold can be dynamically calculated based on layout constants such as the total width of the interface container, margins, and spacing. For example, it can be set to the total width of the interface container minus the left and right margins. This method can automatically adapt to the display area when there are many controls or the control widths vary greatly, preventing controls from exceeding the interface boundaries or causing horizontal scrolling.

[0157] The three line break methods described above can be used individually or in combination. When used in combination, the execution priority is as follows: independent line break tags take precedence over line break attribute tags, and line break attribute tags take precedence over automatic line breaks.

[0158] By employing the aforementioned various line break methods, this embodiment of the disclosure can flexibly control the line distribution of controls in the interface, making the generated interface layout more aesthetically pleasing, compact, and adaptable to the display requirements of different parameter configurations.

[0159] Step S2315.3: Generate the subpage corresponding to the current traversal layer based on the line break layout result.

[0160] In this embodiment, after completing the line break processing, the row number, column number, and arrangement order of each audio parameter adjustment control in that row are obtained. Based on this line break arrangement result, combined with the aforementioned arrangement method and display area division method, the specific position coordinates and size of each audio parameter adjustment control in the subpage container are determined.

[0161] Specifically, first, obtain the total width and height of the interface container, as well as layout constants such as margins and spacing. Then, calculate the width of each column based on the number of columns, column spacing, and left and right margins. Next, determine the row height based on the maximum height requirement of controls in each row or the row height allocated according to complexity, and accumulate the row spacing. Subsequently, traverse all controls, determine their row and column numbers based on their line wrapping, and calculate the horizontal and vertical coordinates of the top left corner of each control, as well as its width and height, by combining the column width, row height, spacing, and margins. For tab layout, it is also necessary to first determine the position and size of the tab container itself, and then perform the above calculations independently within each tab.

[0162] After determining the position and size of each control, the layout and control management interfaces provided by the interface framework are used to instantiate each audio parameter adjustment control and place it at the specified position within the interface container according to its corresponding coordinates and size. Simultaneously, the overall properties of the container are configured, completing the assembly and generation of the subpage corresponding to the current traversal layer. This subpage is an independent, self-contained interface unit with a complete layout structure and interactive functions, allowing users to adjust the audio parameters corresponding to the current traversal layer.

[0163] Through steps S2311 to S2315, this embodiment of the disclosure realizes the generation of the corresponding subpage for each layer in the parameter configuration hierarchy.

[0164] Step S240: Repeat the above steps of traversing layer by layer and generating subpages until the leaf parameter node at the bottom layer is reached, and the subpages corresponding to each layer are obtained.

[0165] In this embodiment, the parameter configuration hierarchy is a multi-branch tree. The root parameter node corresponds to the target audio processing module as a whole, and each level of child nodes corresponds to intermediate levels such as functional sub-modules, parameter groups or array elements. The bottom leaf parameter nodes correspond to specific audio parameters without child nodes.

[0166] The processing flow for each layer in step S230 needs to be recursively repeated. Specifically, starting from the root parameter node, the first layer is processed. After generating the corresponding subpage for the first layer, the process moves to the next layer (i.e., the layer where the child nodes of each parameter node in the first layer reside). Based on all the parameter nodes in this layer, the corresponding subpage for the second layer is generated. This process continues recursively downwards layer by layer until the bottom-level leaf parameter nodes are reached. The parameter nodes in the layer containing the bottom-level leaf parameter nodes do not contain any child parameter nodes. Therefore, the processing of this layer only involves the creation and arrangement of the audio parameter adjustment controls corresponding to the leaf parameter nodes, generating the corresponding subpage for the last layer.

[0167] The recursive traversal process ends when the lowest-level leaf parameter node is reached. At this point, each level has generated its corresponding subpage, and the hierarchical relationship between the subpages corresponds exactly to the node relationship in the parameter configuration hierarchy.

[0168] Step S250: Assemble the sub-pages corresponding to each layer to generate the audio parameter adjustment interface corresponding to the target audio processing module.

[0169] In this embodiment, the sub-pages corresponding to each layer obtained in step S240 are scattered and independent interface units. Step S250 assembles these sub-pages according to their hierarchical relationship in the parameter configuration hierarchy to form a complete and hierarchical audio parameter adjustment interface.

[0170] In some examples, step S250 assembles the sub-pages corresponding to each layer to generate the audio parameter adjustment interface corresponding to the target audio processing module, including steps S2511 to S2513.

[0171] Step S2511: Determine the nesting combination method of each subpage according to the hierarchical relationship of each subpage in the parameter configuration hierarchy.

[0172] In this embodiment, the hierarchical relationship refers to the complete path relationship from the root parameter node to the corresponding parameter node in the parameter configuration hierarchy of each subpage.

[0173] For example, if subpage A corresponds to parameter node A, and subpage B corresponds to child node B of parameter node A, then the hierarchical relationship of subpage B is "root parameter node → parameter node A → parameter node B", that is, subpage B belongs to subpage A.

[0174] Based on the hierarchical relationship of each subpage, the nesting arrangement of these subpages in the final interface can be determined. Specifically, higher-level subpages act as container pages, with lower-level subpages nested within them. For example, the first-level subpage serves as the root container page, the second-level subpage acts as a sub-panel or tab within that container page, and the third-level subpage is further nested within the second-level subpage. This nesting arrangement fully restores the tree-like hierarchy of the parameter configuration, resulting in a clearly structured interface.

[0175] Step S2512: Determine the layout parameters of each subpage in the target interface container according to the nesting combination method.

[0176] In this embodiment, the layout parameters include the width of the tab column and the width of the control column for each subpage, as well as the vertical and horizontal spacing between subpages. The tab column width is set to a fixed width, for example, a uniform 120 pixels, to ensure that the tab text on all subpages is neatly aligned. The control column width is set to an adaptive stretch width, automatically expanding based on the remaining width of the target interface container to fully utilize the display area. The vertical and horizontal spacing between subpages is controlled according to preset spacing thresholds. For example, the vertical spacing is set to 10 pixels and the horizontal spacing to 8 pixels, ensuring that the subpages are neither too crowded nor too spaced out.

[0177] By fixing the width of the tab column and adapting the width of the control column, all tab columns can be aligned uniformly after nesting and combining different layers of subpages, forming a neat and consistent visual style. At the same time, the control column can adapt to different screen sizes and window sizes, improving the adaptability of the interface in different display environments.

[0178] Step S2513: Based on the nesting combination method and layout parameters, nest and combine each subpage according to its hierarchical relationship to generate an audio parameter adjustment interface.

[0179] In this embodiment, a target interface container (e.g., a top-level window or panel) is first created as the root container for the audio parameter adjustment interface. Then, according to the hierarchical relationship from high to low levels, each sub-page is added to the target interface container layer by layer. Specifically, the first-level sub-page is added to the target interface container first, then the second-level sub-page is added as a sub-control to the corresponding area of ​​the first-level sub-page, then the third-level sub-page is added to the second-level sub-page, and so on, until all sub-pages are nested and combined into the target interface container.

[0180] During the nested arrangement process, each subpage is positioned and sized according to the layout parameters determined in step S2512, ensuring that the position, spacing, and alignment between subpages at each level meet the preset requirements. For tab layout, the activation status of each tab also needs to be determined, such as the first tab being expanded by default.

[0181] Through the above nested combination, a complete, hierarchical, and visually unified audio parameter adjustment interface corresponding to the target audio processing module is finally generated. This interface fully reflects the hierarchical relationship in the parameter configuration hierarchy, allowing users to expand and adjust each audio parameter level by level according to the hierarchical structure.

[0182] Step S260: Output the audio parameter adjustment interface.

[0183] In this embodiment, outputting the audio parameter adjustment interface means presenting the audio parameter adjustment interface corresponding to the target audio processing module generated in step S250 to the user, allowing the user to adjust various audio parameters through this interface. The output method may include displaying the interface in the main window of the audio processing software platform, displaying the interface in a separate pop-up window, or embedding the interface into the interface container of the audio plugin.

[0184] In some examples, after the audio parameter adjustment interface is output, the user's operations on each audio parameter adjustment control can be monitored. When the user adjusts a certain audio parameter adjustment control, the current value of the control is obtained through the two-way data synchronization binding mechanism established in step S2314.2, and this value is synchronously transmitted to the corresponding audio parameter in real time, thereby realizing the real-time adjustment of the audio parameters.

[0185] When outputting the interface, for tab layouts, the first tab can be expanded by default when generating the interface, or the initial active tab can be set according to the user's history preferences. For scrolling layouts, the scrollbar can be positioned at the top or the last viewed position to optimize the first-time user experience.

[0186] Through steps S230 to S260, this embodiment of the disclosure traverses the parameter configuration hierarchy layer by layer, generating a subpage for each layer independently. Finally, all subpages are nested and combined according to their hierarchical relationship to generate and output a complete audio parameter adjustment interface. The entire process achieves fully automatic mapping from parameter configuration files to interactive interfaces, effectively improving the efficiency and adaptability of interface generation.

[0187] <Third Embodiment> This embodiment provides an electronic device. Figure 3 This is a schematic diagram of the structure of an electronic device according to some other embodiments.

[0188] like Figure 3 As shown, the electronic device 100 includes a processor 1100 and a memory 1200. The memory can be used to store computer programs, and the processor can be used to retrieve the computer programs from the memory to execute any method embodiment of this disclosure. The processor can be one or more, and these processors can execute instructions individually or jointly. Similarly, the memory can be one or more, and these memories can store the aforementioned computer programs individually or jointly.

[0189] The electronic device 300 can be as follows: Figure 1 The electronic device shown.

[0190] This disclosure also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the interface generation method in any embodiment of this disclosure. Optionally, the computer-readable storage medium may be a non-transitory storage medium, but is not limited thereto; it may also be a temporary storage medium.

[0191] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.

[0192] This disclosure may be a system, method, and / or computer program product. A computer program product may include a computer-readable storage medium having a computer-readable program loaded thereon for causing a processor to implement any of the methods in the foregoing embodiments of this disclosure.

[0193] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media may include, for example, electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), compact disc-read-only memory (CD-ROM), digital versatile disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any combination thereof. The computer-readable storage medium used herein is not to be interpreted as a transient signal itself, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0194] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include one or more of copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to computer-readable storage media in the respective computing / processing device.

[0195] The computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source or object programs written in any combination of one or more programming languages, including object-oriented programming languages ​​(such as Smalltalk, C++, etc.) and conventional procedural programming languages ​​(such as the "C" language or similar programming languages). The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network (e.g., a local area network or a wide area network), or it may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays, or programmable logic arrays, can execute computer-readable program instructions to implement various aspects of the embodiments of this disclosure by utilizing state information from the computer-readable program instructions.

[0196] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus, and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0197] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0198] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0199] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions. It should be noted that implementation in hardware, implementation in software, and implementation using a combination of software and hardware are all equivalent.

[0200] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, and are not limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein. The scope of this disclosure is defined by the appended claims.

Claims

1. A method for generating an interface, characterized in that, include: Obtain the parameter configuration file of the target audio processing module, wherein the parameter configuration file contains configuration information for at least one audio parameter; Parse the parameter configuration file to obtain the parameter configuration hierarchy of the target audio processing module, wherein the parameter configuration hierarchy includes the hierarchical path relationship from the root parameter node to each leaf parameter node; Starting from the root parameter node of the parameter configuration hierarchy, traverse the parameter nodes of each layer in the parameter configuration hierarchy layer by layer downwards, and determine the subpage corresponding to the current traversed layer based on the parameter nodes in the current traversed layer. Repeat the steps of traversing the parameter configuration hierarchy layer by layer downwards and determining the subpage corresponding to the current traversed layer based on the parameter nodes in the current traversed layer, until the leaf parameter node at the bottom layer is reached, and the subpage corresponding to each layer is obtained. The subpages corresponding to each layer are assembled to generate the audio parameter adjustment interface corresponding to the target audio processing module; Output the audio parameter adjustment interface; The step of determining the subpage corresponding to the current traversal layer based on each parameter node in the current traversal layer includes: Based on the attribute information of each parameter node in the current traversal layer, determine the complexity evaluation value corresponding to the current traversal layer; Detect whether each parameter node in the current traversal layer has nested child nodes, and obtain the nesting detection result; Based on the nesting detection result, the complexity evaluation value corresponding to the current traversal layer, and at least one of the number of parameter nodes in the current traversal layer, select the target layout strategy corresponding to the current traversal layer from a variety of preset layout strategies. Based on the data type of the audio parameters corresponding to each leaf parameter node in the current traversal layer, determine the audio parameter adjustment control corresponding to the audio parameter; Based on the target layout strategy corresponding to the current traversal layer, the audio parameter adjustment controls corresponding to the current traversal layer are arranged and assembled to obtain the subpage corresponding to the current traversal layer.

2. The method according to claim 1, characterized in that, The attribute information includes node type, numerical range, and nesting depth; determining the complexity evaluation value corresponding to the current traversal layer based on the attribute information of each parameter node in the current traversal layer includes: Based on the node type of each parameter node, determine the type weight value corresponding to each parameter node; Based on the numerical range of each parameter node, determine the range factor value corresponding to each parameter node; Based on the nesting depth value of each parameter node, determine the nesting depth factor value corresponding to each parameter node; The complexity evaluation value corresponding to the current traversal layer is calculated based on the type weight value, the range factor value, and the nesting depth factor value.

3. The method according to claim 2, characterized in that, The target layout strategy includes one of the following: single-column layout strategy, horizontal layout strategy, two-column layout strategy, three-column layout strategy, tab layout strategy, and scrolling layout strategy.

4. The method according to claim 1, characterized in that, The step of selecting a target layout strategy corresponding to the current traversal layer from multiple preset layout strategies based on the nesting detection result, the complexity evaluation value corresponding to the current traversal layer, and at least one of the number of parameter nodes in the current traversal layer includes: If the nesting detection result indicates that there is a parameter node with nested child nodes in the current traversal layer and the complexity evaluation value is greater than or equal to the nesting complexity threshold, the tab layout strategy is determined as the target layout strategy. If the complexity evaluation value is less than the nesting complexity threshold, or if the nesting detection result is that there is no parameter node with nested child nodes in the current traversal layer, the target layout strategy corresponding to the current traversal layer is selected from multiple preset layout strategies based on at least one of the complexity evaluation value corresponding to the current traversal layer and the number of parameter nodes in the current traversal layer.

5. The method according to claim 4, characterized in that, The step of selecting the target layout strategy corresponding to the current traversal layer from multiple preset layout strategies based on at least one of the complexity evaluation value corresponding to the current traversal layer and the number of parameter nodes in the current traversal layer includes: If the number of parameter nodes in the current traversal layer is equal to 1, the single-column layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than 1 and less than or equal to a first preset number, and the complexity evaluation value is less than a first preset threshold, the horizontal layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than a first preset number and less than or equal to a second preset number, and the complexity evaluation value is greater than or equal to a first preset threshold and less than a second preset threshold, then the double-column layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than the second preset number and less than or equal to the third preset number, and the complexity evaluation value is greater than or equal to the second preset threshold and less than the third preset threshold, the three-column layout strategy is determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than the third preset number, or if the complexity evaluation value is greater than or equal to the third preset threshold, the tab layout strategy will be determined as the target layout strategy. If the number of parameter nodes in the current traversal layer is greater than the third preset number and the user's preferred target presentation method is linear scrolling, then the scrolling layout strategy will be determined as the target layout strategy.

6. The method according to claim 1, characterized in that, The step of determining the audio parameter adjustment control corresponding to each audio parameter based on the parameter data type of each leaf parameter node in the current traversal layer includes: Based on the parameter data type, a target control type corresponding to the parameter data type is matched from a preset control mapping table; the preset control mapping table contains audio parameter adjustment control types corresponding to different parameter data types. According to the target control type, create an audio parameter adjustment control corresponding to the audio parameter, configure the corresponding audio parameter name and parameter value range for the audio parameter adjustment control, and establish a two-way data synchronization mechanism for the audio parameter adjustment control; the two-way data synchronization mechanism is used to synchronize the displayed value of the audio parameter adjustment control with the current value of the corresponding audio parameter in real time.

7. The method according to claim 1, characterized in that, The step of assembling the sub-pages corresponding to each layer to generate the audio parameter adjustment interface corresponding to the target audio processing module includes: Based on the hierarchical relationship of each subpage in the parameter configuration hierarchy, determine the nesting and combination method of each subpage; Based on the nested combination method, the layout parameters of each subpage in the target interface container are determined; the layout parameters include the width of the tab column and the width of the control column of each subpage, as well as the vertical and horizontal spacing between each subpage; wherein, the width of the tab column is set to a fixed width, and the width of the control column is set to an adaptive stretch width; Based on the nesting combination method and the layout parameters, the sub-pages are nested and combined according to their hierarchical relationship to generate the audio parameter adjustment interface.

8. The method according to claim 1, characterized in that, The step of arranging and assembling the audio parameter adjustment controls corresponding to the current traversal layer according to the target layout strategy to obtain the subpage corresponding to the current traversal layer includes: Based on the target layout strategy, determine the arrangement and display area division of each audio parameter adjustment control; Based on the arrangement method, the display area division method, and the preset size of each audio parameter adjustment control, a line break is performed on each audio parameter adjustment control in the current traversal layer to obtain the line break layout result of each audio parameter adjustment control; Based on the line break layout result, the subpage corresponding to the current traversal layer is generated.

9. An electronic device, characterized in that, It includes a memory and a processor, the memory being used to store a computer program; the processor being used to execute the computer program to implement the method according to any one of claims 1-8.

Citation Information

Patent Citations

  • Page rendering method and device, electronic terminal and storage medium

    CN114186155A

  • Sound effect parameter adjustment method, electronic equipment and readable storage medium

    CN121983006A