Vehicle-mounted sadsp system graphic coding method

Through the software-formed graphic codeization method of the Sadsp system, the problem of redevelopment when replacing the DSP chip of the vehicle audio system is solved, and the platformization of sound effects and scene parameters is realized, reducing R&D costs and saving system resources.

CN119645388APending Publication Date: 2025-03-18AUTOLINK INFORMATION TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411874728.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-19
Publication Date
2025-03-18

AI Technical Summary

Technical Problem

In the prior art, the sound effects and scene selection of in-vehicle audio systems cannot be platform-based, resulting in redevelopment when replacing the DSP chip model or manufacturer, which increases R&D costs.

Method used

The graphic codeization method of the sadp system in software form is adopted. By building a sadp component library and encoder, the sound effects and scene parameters are sent to the on-board system in text format, and the decoder is used to generate processing flow code to adjust the multimedia sound effects and scene effects.

Benefits of technology

It realizes the platformization of sound effects and scene parameters, does not rely on specific hardware chips, reduces R&D costs, saves system resources, and is suitable for more scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119645388A_ABST
    Figure CN119645388A_ABST
Patent Text Reader

Abstract

According to the graphic coding method for the vehicle-mounted sadsp system, all the debugging functions supported by the audio data graphic development tool are described through the components in a software form, all the debugging functions supported by the audio data graphic development tool are recorded through the component library, the component library is constructed in the encoder, and the software form of the component library is established; and recording processing logics of all multimedia audio effects and scene effects through text codes in code formats and combined code formats on the basis of an encoder, sending the text codes to a vehicle-mounted system, and reading on the basis of a decoder. The codes are in the text format, so that compiling is not needed, meanwhile, the data in the text format occupies a small space, can be directly read, does not need to use third-party codes and does not need to be compiled, system resources are effectively saved, and the method is suitable for more scenes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of vehicle-mounted audio processing, and in particular to a vehicle-mounted sadsp system graphics coding method. Background Art

[0002] In order to improve the user experience, the existing in-vehicle multimedia system of smart vehicles will set different sound effects and scene effects for users to choose from. At present, these sound effects and scene effects are all realized through hardware digital signal processing chips, such as: ADI, NXP, AK chips are all commonly used audio processing chips. The processing flow of the existing technology is as follows Figure 1 In the embodiment shown, the technician adjusts various audio effects according to the needs based on ADI's SigmaStudio graphical development environment on the PC side. Because the adjustment process is based on the audio digital signal processing chip DSP in the car audio system, the hardware chip parameters corresponding to each sound effect and scene are sent to the car system and executed on the chip. However, because the hardware parameters are adjusted directly for the DSP chip in the car system, if the car system changes the model or manufacturer of the DSP chip, even if the car system's demand for audio effects has not changed, various sound effects and scenes must be redeveloped, increasing the R&D cost. Summary of the invention

[0003] In order to solve the problem that the sound effects and scene selection of the audio system in the vehicle system based on the hardware chip in the prior art cannot be platformized, resulting in high R&D costs when adjusting parameters in the prior art, the present application provides a vehicle-mounted SadSP system graphic coding method, which sends the sound effects and scene parameters to the vehicle-mounted system without relying on a specific hardware chip and will not lead to increased R&D costs.

[0004] The technical solution of the present application is as follows: a method for coding graphics of a vehicle-mounted sadsp system, which comprises the following steps: S1: Based on the software form, a sadsp component library is constructed, and all effects that the vehicle multimedia system needs to support are recorded through the component library; The sadsp component library includes a plurality of components, each of which implements signal processing functions of different functions based on software; The component includes: component input, component output and component parameters; The component input is connected to the external signal input terminal; the component parameter is controlled by the switch mark to be turned on or off. When the switch is on, it indicates that the signal entering from the input is processed by the corresponding component parameter. When the switch is off, it indicates that the incoming signal is not processed by the corresponding component parameter. The component output is the corresponding result after the input signal is processed by the component. S2: Construct component code rules for each of the components: S3: Construct combination code rules for scenarios where multiple components process signals in sequence: S4: constructing an encoder and integrating the encoder into an audio data graph development tool; The encoder comprises: a sadsp component library and an encoding module; The encoding module tracks the audio data graphic development tool, records each audio effect editing process based on the component code rule and the combination code rule, and outputs the corresponding code in a text format; S5: construct a decoder, and embed the decoder into the vehicle system; The decoder receives the text code sent by the encoder, generates a processing stream code based on the text code, and sends the processing stream code to a signal processing module in the vehicle-mounted system for execution.

[0005] It is further characterized by: In step S2, the component code rule constructed for the component is: [input 1, input2, ... input N]component_name[switch, component parameter 1, …, component parameter M][ output]; Among them, N means that the component includes N component inputs in total, M means that the component includes M component parameters; component_name is the component name; input and output represent the input and output of the component; In step S3, for the scenario where multiple components process signals in sequence, the combination code rule is constructed as follows: [input] compnent_name 1 [switch, component parameter set][ output component name 1][output component name 1] compnent_name2[switch, component parameter set][ output component name 2][output component name 2]...compnent_namen[switch, component parameter set][output component name n]; In the formula, the input of the next level is set to be the same as the output of the previous level, indicating that the two signal processing are connected together; n means that the combination includes n components; the component parameter set is: component parameter 1, …, component parameter M; The component code rules also include: All codes in a group are on the same line; The encoder and the decoder also include component description files; The component description file contains the component information of all legal components: The component information includes: component name, parameter list and legal range of each parameter; In step S1, a one-to-one correspondence is established between all components in the sadsp component library and the editing module in the audio data graph development tool; The communication between the encoder and the decoder is based on I 2 C. SPI or socket protocol; The text code is stored and sent based on the txt format.

[0006] The present application provides a method for coding graphics of a vehicle-mounted SadSP system, which describes all debugging functions supported by an audio data graphics development tool through a component in the form of software, records all debugging functions supported by the audio data graphics development tool through a component library, builds the component library in an encoder, records the processing logic of all multimedia audio effects and scene effects through text codes in code format and combined code format based on the encoder, sends the text code to the vehicle-mounted system, and reads it based on a decoder. Because the code is in text format, it does not need to be compiled, and the data in text format occupies less space and can be read directly, without the use of third-party code or compilation, which effectively saves system resources and is suitable for more scenarios. This method records all audio signal processing process parameters and processing logic through text format codes, and can directly generate corresponding processing flow codes based on the text. Based on the original signal processing module in the vehicle-mounted system, the adjustment of various multimedia sound effects and scene effects is realized through software, which is more versatile. BRIEF DESCRIPTION OF THE DRAWINGS

[0007] Figure 1 An example of the processing flow of sound effects and scenes of intelligent vehicles in the prior art; Figure 2 Schematic diagram of the system structure of this method; Figure 3 For example, the coding process; Figure 4 It is the structural diagram of the component; Figure 5 This is an example of a multi-component combination; Figure 6 Example 1 of the process of generating a flow for sadsp processing; Figure 7 Example 2 of the process of generating a flow for sadsp processing; Figure 8 Example 3 of the process of generating flow for sadsp processing; Fig. 9This is an example of parallel processing where multiple data streams exist simultaneously. DETAILED DESCRIPTION

[0008] In the prior art, when the sound effect adjustment parameters corresponding to the hardware chip are converted into graphics code, C code, XML or JSON format files are usually directly generated. 2 C or SPI or socket and other protocols to the vehicle system. However, in actual applications, it is found that the data in the form of C code needs to be compiled first, and the sound effect needs to be adjusted 10 times. In order to hear the effect, it needs to be compiled 10 times. The compilation time is very time-consuming and increases the R&D cost; while there are many methods for parsing XML or JSON, which are also open source and have corresponding library functions. However, relying on third-party software increases the complexity of the software and the size of the software. A large amount of memory is required to parse XML or JSON data, which occupies too much system resources and is not suitable for embedded systems with tight system resources. If an additional process is set to solve this problem, the R&D cost will be increased. In order to reduce the occupation of system resources and shorten the R&D time, this method is based on the text in txt format to transmit the code describing the sound effect and scene adjustment. The text is a universal code recognizable format, and there is no need to rely on third-party parsing. Parsing can be completed through a simple formatted input interface. At the same time, in order to avoid the limitation of hardware chips, this method implements a pure software ADSP solution, namely: sadsp (software audio digital signal processor) solution. Compared with traditional technical solutions, this technical solution is implemented in pure software, which is more conducive to platformization. This solution can be deployed on CoreDrive, Qualcomm, MTK or Rising Micro platforms.

[0009] like Figure 2 As shown, the present application includes a vehicle-mounted sadsp system graphics coding method, which includes the following steps.

[0010] S1: Build a sadsp component library, and use the component library to record all the effects that the vehicle multimedia system needs to support; The sadsp component library includes multiple components, each of which implements signal processing functions with different functions; The components include: component input, component output and component parameters; The component input is connected to the external signal input terminal; the component parameter is controlled by the switch mark to control whether it is turned on. When the switch is on, it indicates that the signal entering from the input is processed by the corresponding component parameter. When the switch is off, it indicates that the incoming signal is not processed by the corresponding component parameter; the component output is the corresponding result after the input signal is processed by the component.

[0011] In the specific implementation, a one-to-one correspondence is established between all components in the sadsp component library and the editing modules in the audio data graphic development tool to ensure that all editing effects in the audio data graphic development tool can be recorded based on the sadsp component library.

[0012] All component information is pre-defined based on the component description file and stored in the encoder and decoder to ensure the accuracy of the encoding and decoding process of the encoder and decoder; the component information includes: component name, parameter list and the legal range of each parameter.

[0013] All filters such as lowpass, highpass, allpass, bandpass, bandstop, low-cut filter, high-cut filter, peak filter, notch filter, butterworth filter, or delay, pre-scale, mixing module, etc. can be described based on the software components in this method. All components constitute a component library.

[0014] S2: Build component code rules for each component: [input 1, input2, ... input N]component_name[switch, component parameter 1, …, component parameter M][ output]; Among them, N means that the component includes N component inputs, M means that the component includes M component parameters; component_name is the component name; input and output represent the input and output of the component. Component parameters include the original parameters of the component and also support custom parameters.

[0015] like Figure 4 As shown, a component consists of three parts: input, output, and parameters. Take a Butterworth filter as an example. The Butterworth filter is often used in audio signal processing because it has the flattest frequency response. The Butterworth filter is a graphical component.

[0016] Figure 2The f in the string stands for filter. A component can have multiple inputs, multiple outputs, and multiple different parameters. Depending on the component, the inputs, outputs, and parameters may be different, and the number of them may also be different. As for the Butterworth filter component, there are multiple inputs, multiple parameters, and one output. The input represents the signal input end, and the output represents the result after the Butterworth filter is processed. The parameter switch here indicates whether the component is turned on. If it is not turned on, then the link is equivalent to not doing any processing on the signal. This is what is often called bypass in audio processing. The parameters for the Butterworth filter are: Q, quality factor, fc, cutoff frequency, fs, and sampling rate.

[0017] Then generate the following code for the Butterworth filter: [input1, input2, ...inputN]compnent_name[switch, Q, fc, fs][output] As an embodiment, assuming there is a stereo sound source, and a Butterworth low-pass filter is used to process the audio signal at the front end of an EQ, the Butterworth graph will be coded in the following form.

[0018] [inputl, inputr]bwlpf_before_PEQ[enable, 1.0, 10000, 48000][output] Inputl represents the left channel data; inputr represents the right channel data; bwlpf_before_PEQ indicates the component name; Enable means enable, disable means disable; 1.0, 10000, 48000 represent,Q,fc,fs respectively; Output represents the output after Butterworth filter processing, which can be cascaded to the next level of signal processing.

[0019] S3: Construct combination code rules for scenarios where multiple components process signals in sequence: [input] compnent_name 1 [switch, component parameter set][ output component name 1][output component name 1] compnent_name2[switch, component parameter set][ output component name 2][output component name 2]...compnent_namen[switch, component parameter set][output component name n].

[0020] In the formula, the input of the next level is set to be the same as the output of the previous level, indicating that the two signal processing are connected together; n means that the combination includes n components; the component parameter set is: component parameter 1, …, component parameter M. The component code rule also includes: all codes in the same combination are on the same line.

[0021] like Figure 5 As shown in the figure, if an audio is processed by PEQ, PEQ uses a butterworth filter, a peak filter, and a notch filter, which are marked as: bwlpf_before_PEQ, peak_PEQ, and notch_PEQ. This embodiment is for the sake of simplicity of description, and in actual applications, in order to achieve a sound effect or scene adjustment, it may be necessary to process with 9 or 16 segments of filters, but the method and logic of graphic coding itself remain unchanged.

[0022] In this method, multiple components are connected to form a combination operation to realize a sound effect or scene. When the graphics are coded, all the codes in the same combination are located in the same line; this makes it easier for the decoder to divide the code into different combinations by line after receiving the data, and then parse the text. When the decoder encounters a line break during execution, it will consider this to be another combined link. The technical solution of this application supports the simultaneous transmission of text encodings of multiple sound effects or scenes, effectively improving data transmission efficiency.

[0023] Figure 5 In the embodiment shown, the corresponding codes are as follows: [input]bwlpf_before_PEQ[enable, 1.0, 10000, 48000][output bw][outputbw]peak_PEQ[enable, 1.0, 10000, 48000, 3.0][output p][outputp]notch_PEQ[enable, 1.0, 16000, 48000, 3.0][output] When an input is the same as the output of another component, it means that the two signals are connected together and the component is the subordinate of the output component.

[0024] S4: Build an encoder and integrate the encoder into an audio data graphics development tool. The audio data graphics development tool in this application includes: a PC terminal and a mobile terminal APP. The audio data graphics development tool is implemented based on any tuning software in the prior art that adjusts the sound effect based on a graphic method, or it can be implemented by developing software by itself.

[0025] The encoder includes: a sadsp component library and an encoding module; the encoding module tracks the audio data graphic development tool, records each audio effect editing process based on component code rules and combination code rules, and outputs the corresponding code in text format.

[0026] The encoding process of the encoder is as follows Figure 2 shown.

[0027] This method uses an encoder to convert graphics codes into text. The text has more universal characteristics and does not need to rely on third-party parsing software for parsing, which is more universal. After coding, the text code is integrated into the system. The code in the system directly generates the corresponding signal processing module based on the text. The whole process does not require recompiling the code, and the efficiency of adjustment is greatly improved.

[0028] S5: Build a decoder and embed the decoder into the vehicle system.

[0029] The decoder receives the text code sent by the encoder, generates a processing stream code based on the text code, and sends the processing stream code to the signal processing module in the vehicle system for execution. The communication between the encoder and the decoder is based on I 2 C or SPI or socket protocol. The text code is stored and sent based on the txt format.

[0030] The decoder includes: a validity detection module, a decoding module and a sadsp processing flow generation module.

[0031] The validity check performed by the validity detection module includes: The format of the received text code is checked for validity according to the component code rules and combination code rules; the corresponding parameters and the legal rules of the parameters are confirmed according to the component name, and the legality of each parameter is checked; the component names corresponding to all components included in the text code must be in the preset component name definition set; all legal text codes are sent to the decoding module.

[0032] The decoding module decomposes the text code according to each component and obtains the execution data corresponding to each component.

[0033] The sadsp processing flow generation module generates executable code in the form supported by the vehicle system, forms a sadsp processing flow based on the executable code, and sends the sadsp processing flow to the signal processing module in the vehicle system for execution. The sound effects and scene effects adjusted by the tuning software are presented in the vehicle multimedia system.

[0034] Because illegal coded text input may cause program operation abnormalities, such as crash, etc., the generation system must perform legality checks on the input text. The coded text is composed of multiple components, and the code structure of each component is as follows: [input1, input2, ...inputN]compnent_name[switch, Q, fc, fs][output] It consists of input interface, component name, input parameters, and output interface. Any coded text that does not meet the legality of the component will not be processed by the system.

[0035] A component must consist of an input interface, a component name, input parameters, and an output interface. That is, the component code must consist of three complete pairs of []. The first [] is followed by the component name, and [] is a marker that separates different segments of component information. Therefore, none of the parts in [] can appear in the identifier (input interface name, component name, parameter name, output interface name). There cannot be [, and there cannot be []. The switch in the component parameter can only be enable or disable.

[0036] The legality of each input parameter must also be checked. For example, the legal range of Q is: 0-1.0, the legal range of fc is: 20-20k, and the legal range of fs is: 0-96k.

[0037] Component name validity check: The component name must contain a valid component type. The valid component types are predefined, such as bwlpf, bwhpf, bwbpf, bwspf, pf, nf, etc. If the component name does not contain a valid component type, the component name is invalid. Therefore, the processing flow cannot be instantiated.

[0038] For example, the following component coded text is illegal: Error example 1: The input interface list does not have "[": input1, input2, ...inputN]compnent_name[switch, Q, fc, fs][output]; Error example 2: The output interface list does not have "]": [input1, input2, ...inputN]compnent_name[switch, Q, fc, fs][output Error example 3: The component name contains "]": [input1, input2, ...inputN]compnent_name_][switch, Q, fc, fs][output] Error example 4: No input list: compnent_name[switch, Q, fc, fs][output] Error example 5: The switch field of the component parameter is not enable or disable: [input1, input2, ...inputN]compnent_name[switch=open, Q, fc, fs][output].

[0039] After the above processing, the legal coded text is sent to the decoding module for the next level of processing and formatting parameter input. The decoding module first reads the coded text by line and stores it in a two-dimensional data, then formats the input according to the line string, and obtains the component type based on the string matching, thereby creating different component modules. Here, the two-dimensional array line length must be careful not to overflow, and overflow detection is required.

[0040] The decoder has a built-in decoding algorithm. When the decoder receives the text code to be processed, it decodes the received text code and then generates an executable code supported by this system. The specific decoding algorithm can refer to the encoding rules of the encoder and be implemented in combination with the text analysis algorithm in the prior art. In this embodiment, the decoding of the text code is implemented based on the following method.

[0041] First, read the code line by line, record each line of code as: text code to be processed, and then analyze it according to the steps below.

[0042] a1: Traverse all the text codes to be processed and find all component names; a2: According to the component code structure, find the input, parameter and output corresponding to each component name, and record them together with the component name as: component code to be processed; a3: storing all component codes to be processed into a cache array according to their sequence in the text code to be processed; a4: confirm the input included in each component code to be processed; Find all the component codes to be processed that do not include other component names in the input, and record them as: initial input component; Assume that there are N initial input components in total; If N=1, it means that the text code to be processed includes only one complete path. The text code to be processed is recorded as: code combination to be converted, and all components included in it are recorded as: components to be converted; execute step a12; Otherwise, execute step a5; a5: Get the serial numbers of all the initial input components in the cache array and sort them in the order of arrival from the smallest to the smallest; Initialize the initial component number j=1; a6: read the jth initial input component, and assign its number in the cache array to number i; Initialize an array, recorded as: branch array; a7: Confirm the input of the i+1th component code to be processed; If the input of the i+1th component code to be processed is the same as the output of the ith component code to be processed, it means that the ith component code to be processed and the i-1th component code to be processed have a sequential relationship; execute step a8; Otherwise, it means that the segmentation of this branch code is completed, and step a10 is executed; a8: storing the i-th component code to be processed and the i+1-th code in the branch array in order; i=i+1; a9: Loop through steps a7 to a8; a10: Determine the relationship between j and N; If j is less than N, then j=j+1, and steps a6 to a9 are executed repeatedly; Otherwise, it indicates that the text code to be processed has been processed, and step a11 is executed; a11: Arrange all the branch arrays in the order of segmentation time; Assume there are M branch arrays in total; The data included in each grouping array is recorded as: code combination to be converted; Read all text codes in each code combination to be converted, find all component names, and record them as: components to be converted; a12: find the input, parameter and output corresponding to each component name according to the component code structure, and record them together with the component name as the component code to be converted; a13: Instantiate each component code to be converted according to the code format supported by the vehicle system to obtain executable code, which is recorded as: code to be processed; In this method, component actions are recorded based on the component format, which can cover all situations. After obtaining each component and its input, output and parameters, they are converted into executable codes supported by the vehicle system based on the coding protocol supported by the vehicle system, ensuring that this method is applicable to all vehicle systems. a14: Construct the output and data transmission method between components in each code combination to be converted; a15: Based on the data transmission method, the code to be processed is executed in the vehicle system.

[0043] The decoder in this method decodes the code in text format, and the processing logic is simple and clear, with a small amount of calculation. It can quickly and accurately convert the text code into executable code supported by the vehicle system, ensuring that this method is universal and applicable to various forms of vehicle systems.

[0044] Code example for component combination: [input]bwlpf_before_PEQ[enable, 1.0, 10000, 48000][output bw][outputbw]pf_PEQ[enable, 1.0, 10000, 48000, 3.0][output p][output p]nf_PEQ[enable, 1.0, 16000, 48000, 3.0][output].

[0045] All the codes in this text code are located on the same line. It can be seen that it only includes one execution branch, which corresponds to a sadsp processing flow; this sadsp processing flow contains three components, the component types are butterworth low-pass filter, a peak filter, and a notch filter, and obtains the corresponding parameters.

[0046] bwlpf_before_PEQ[enable, 1.0, 10000, 48000], pf_PEQ[enable, 1.0, 10000, 48000, 3.0], nf_PEQ[enable, 1.0, 16000, 48000, 3.0]; Adsp processing flow generation: According to the component parameters obtained above, the component is implemented.

[0047] As an example, there is the following pseudo code: Bwlpf_init(input, output, size); Peakf_init(input, output, size); Notchf_init(input, output, size); Based on the connection relationship of the above processing flow, the following is generated: Figure 6 The processing flow calling relationship is shown below: Figure 6 The following pseudo code is based on the purpose of better expressing the process of sadsp processing stream processing and the process of sadsp processing stream generation.

[0048] Bwlpf_proc(input, output bw, size); Peakf_proc(input pf, output pf, size); Notchf_proc(input nf, output nf, size).

[0049] Figure 6 The process shown in the figure involves two data copies, namely, Figure 6 In the data transmission method of execution, the output of the previous component is copied as independent data to the input of the next component.

[0050] and Figure 7 In the data transfer method shown, two spaces are applied, one for storing the initial input of the code combination to be converted, and the other for storing the output of all components. The output of the latter component overwrites the output of the former component. The input of the code is kept separately, and when other key data is processed, the data after processing the processing stream overwrites the original data, so that data copy is not required. Finally, one of the two data spaces stores the input data and the other stores the final output data.

[0051] Alternatively, apply for a space to cache the input and output of all components, and the output of each component covers its input; Figure 8 As shown, in this processing method, there is no need to copy data, and the processed data is saved in the original data location.

[0052] The specific data processing method you choose depends on the requirements for the input data, intermediate data, or output data of each execution branch in the multi-cascade system. If you only need to use the final output data of each execution branch in the multi-cascade system, then choose Figure 8If you need to use the input data of each execution branch later, you can choose Figure 7 This method defines three data processing methods to ensure that the needs of most practical application scenarios can be met.

[0053] Above Figure 6 , Figure 7 and Figure 8 , are examples of generating executable codes for the signal processing module in the vehicle system in the sadsp processing stream generation module. The specific code conversion process and details are adaptively adjusted according to the logic of the original signal processing module in the vehicle system. The specific implementation of the encoder and decoder can be developed based on the existing technology and embedded into the original software and vehicle system according to the specific support of the audio data graphics development tool and the vehicle system.

[0054] In sadsp, it is also possible to have multiple data streams in parallel. As an example, Fig. 9 The graphical code shown is a channel repair module. The main function of the channel repair module is to repair the frequency response of a stereo audio data. Each data will have several filters (components).

[0055] based on Fig. 9 It can be seen that there are 5 execution branches (sadsp processing flow) from top to bottom, each execution branch corresponds to a repair of stereo audio data; each execution branch includes two input data: ch l and ch r, representing the left and right channels respectively; each execution branch includes: 5 filters connected in sequence: filter1~filter5, each filter corresponds to a frequency point; the delay module connected after the 5 filters, the delay time defined in the delay module defines the sound delay of this channel in milliseconds and is sent to the subsequent mixing module. The delay time of the five branches is set at different times to obtain a stereo surround effect; the output of the five delay modules is sent to the switch controller CR_ON / OFF, and after passing through the switch controller, it is sent to the left channel mixing module and the right channel mixing module for mixing.

[0056] Among them, there are 5 filters for the sadsp data flow of one of the execution branches: [input]filter_level1[enable, 1.0, 400, 48000][output f1]; [input]filter_level2[enable, 1.0, 800, 48000][output f2]; [input]filter_level3[enable, 1.0, 1000, 48000][output f3]; [input]filter_level4[enable, 1.0, 1200, 48000][output f4]; [input]filter_level5[enable, 1.0, 1600, 48000][output f5]; After the filter processing, there is a delay module: [output f1]delay1[0][output d1]; [output f2]delay2[0][output d2]; [output f3]delay3[0][output d3]; [output f4]delay4[0][output d4]; [output f5]delay5[0][output d5]; In this embodiment, the ON / OFF of the switch controller is on, and all the output data of the delay module are directly sent to the mixing module for mixing processing: Mix the L output of the delay module and output it to the L channel mixing module: [output d1 L]mixer_L[0.5][output L]; [output d2 L]mixer_L[0.5][output L]; [output d3 L]mixer_L[0.5][output L]; [output d4 L]mixer_L[0.5][output L]; [output d5 L]mixer_L[0.5][output L]; Mix the R output of the delay module and output it to the R channel mixing module: [output d1 R]mixer_R[0.5][output R]; [output d2 R]mixer_R[0.5][output R]; [output d3 R]mixer_R[0.5][output R]; [output d4 R]mixer_R[0.5][output R]; [output d5 R]mixer_R[0.5][output R]; Through the above coding processing, the audio data stream of a channel repair module can be described, and more complex ADP topologies can be extended from this, thereby realizing the abstraction of ADP.

[0057] Fig. 9 This is just an example of a simple graphics code development. In fact, in audio effect development, one execution branch may include dozens of components, or may include more than a dozen execution branches. Each audio effect development can realize the textualization of graphics code development based on the encoder of this method, and send the text code to the decoder for code segmentation and conversion into executable code supported by the vehicle system. The whole process has a small amount of calculation, high execution efficiency, and versatility.

[0058] After using the technical solution of the application, the sound effects and scene effects of the multimedia system in the intelligent vehicle are adjusted based on the SadSP solution. Compared with the traditional technical solution, this technical solution is implemented by pure software, which is more conducive to platformization. It can be deployed on any platform, whether it is Core, Qualcomm, MTK, or Rising Micro. With the development of semiconductor technology and the improvement of computing power, the execution efficiency of this method is sufficient to meet the real-time requirements of intelligent vehicles. This method reduces the complexity of the system and saves system development time, and has greater market prospects and technical value.

Claims

1. A method for coding graphics of a vehicle-mounted sadsp system, comprising the following steps: S1: Based on the software form, a sadsp component library is constructed, and all effects that the vehicle multimedia system needs to support are recorded through the component library; The sadsp component library includes a plurality of components, each of which implements signal processing functions of different functions based on software; The component includes: component input, component output and component parameters; The component input is connected to the external signal input terminal; the component parameter is controlled by the switch mark to be turned on or off. When the switch is on, it indicates that the signal entering from the input is processed by the corresponding component parameter. When the switch is off, it indicates that the incoming signal is not processed by the corresponding component parameter. The component output is the corresponding result after the input signal is processed by the component. S2: Construct component code rules for each of the components: S3: Construct combination code rules for scenarios where multiple components process signals in sequence: S4: construct an encoder and integrate the encoder into an audio data graph development tool; The encoder comprises: a sadsp component library and an encoding module; The encoding module tracks the audio data graphic development tool, records each audio effect editing process based on the component code rule and the combination code rule, and outputs the corresponding code in a text format; S5: construct a decoder, and embed the decoder into the vehicle system; The decoder receives the text code sent by the encoder, generates a processing stream code based on the text code, and sends the processing stream code to a signal processing module in the vehicle-mounted system for execution.

2. According to claim 1, a vehicle-mounted sadsp system graphics coding method is characterized in that: In step S2, the component code rule constructed for the component is: [input 1, input2, ... input N]component_name[switch, component parameter 1, …, component parameter M][ output]; Among them, N means that the component includes N component inputs in total, M means that the component includes M component parameters; component_name is the component name; input and output represent the input and output of the component.

3. The method for coding graphics of a vehicle-mounted sadsp system according to claim 1, characterized in that: In step S3, for the scenario where multiple components process signals in sequence, the combination code rule is constructed as follows: [input] compnent_name 1 [switch, component parameter set][ output component name 1][output component name 1] compnent_name2[switch, component parameter set][ output component name 2][output component name 2]...compnent_name n[switch, component parameter set][output component name n]; Where the input of the next level is set to be the same as the output of the previous level, indicating that the two signal processing are connected together; n indicates that the combination includes n components; and the component parameter set is: component parameter 1, …, component parameter M.

4. The method for coding graphics of a vehicle-mounted sadsp system according to claim 1, characterized in that: The component code rules also include: All codes in a group are on the same line.

5. The method for coding graphics of a vehicle-mounted sadsp system according to claim 1, characterized in that: The encoder and the decoder also include component description files; The component description file contains the component information of all legal components: The component information includes: component name, parameter list and legal range of each parameter.

6. The method for coding graphics of a vehicle-mounted sadsp system according to claim 1, characterized in that: In step S1, a one-to-one correspondence is established between all components in the sadsp component library and the editing modules in the audio data graph development tool.

7. The method for coding graphics of a vehicle-mounted sadsp system according to claim 1, characterized in that: The communication between the encoder and the decoder is based on I 2 C. SPI or socket protocol.

8. The method for coding graphics of a vehicle-mounted sadsp system according to claim 1, characterized in that: The text code is stored and sent based on the txt format.