Data processing methods, clients and electronic devices
By adjusting the number of frames in combination with device operating parameters and model characteristics, the problems of hardware resource consumption and adaptation complexity were solved, and stable data processing and energy consumption management were achieved on different device models.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- 阿里巴巴(中国)网络技术有限公司
- Filing Date
- 2021-04-15
- Publication Date
- 2026-06-30
AI Technical Summary
Existing technologies, when processing sequence data, especially real-time acquired data, suffer from excessive consumption of hardware resources, which affects the lifespan and performance of the equipment. Furthermore, the high complexity of adapting to different equipment models leads to inconsistent data processing results.
By determining the operating parameters of the electronic equipment and the characteristics of the data processing model, the number of frames is dynamically adjusted to form subsequence data for processing. The number of frames is optimized by combining equipment capabilities and model characteristics to ensure a balance between data processing effectiveness and equipment energy consumption.
The data processing model can run stably on different equipment models, reducing the complexity of adaptation, while taking into account both data processing effect and equipment energy consumption, thereby improving equipment performance utilization.
Smart Images

Figure CN113515556B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a data processing method, a client, and an electronic device. Background Technology
[0002] Sequence data refers to data formed by elements that appear and are arranged in a certain order. An element is the smallest unit of data in sequence data. Frame sequence is a common type of sequence data. The elements in a frame sequence are frame data. Common frame sequences include audio sequence data, text sequence data, or video sequence data. The corresponding frame data can refer to audio frames, words, video frames, etc.
[0003] In practical applications, the processing of sequence data is often involved, such as noise reduction of acquired audio stream data. However, the processing of sequence data, especially sequence data formed by elements acquired and generated in real time, is often not performed on each individual element. Instead, multiple elements are usually processed together as a subsequence, that is, the sequence data is segmented.
[0004] Data processing requires the use of the device's hardware resources. As the complexity of data processing algorithms increases, more hardware resources will be consumed, affecting the device's lifespan. At the same time, the device's performance will also affect the data processing effect. Summary of the Invention
[0005] This application provides a data processing method, apparatus, client, and electronic device, while ensuring data processing effectiveness and device energy consumption.
[0006] In a first aspect, embodiments of this application provide a data processing method, including:
[0007] Determine the first equipment operating parameters of the electronic device and the model characteristics of the corresponding data processing model;
[0008] Adjust the number of frames based on the operating parameters of the first device and the characteristics of the model;
[0009] Based on the current number of frames, obtain unprocessed frame data to form subsequence data;
[0010] The data processing model is invoked to process the subsequence data.
[0011] Optionally, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0012] Based on the operating parameters of the first device, determine whether to adjust the number of frames;
[0013] If so, determine the adjustment value corresponding to the model feature;
[0014] Adjust the number of frames according to the stated adjustment value.
[0015] Optionally, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0016] Determine the first number corresponding to the operating parameters of the first device, and the second number corresponding to the model features;
[0017] Adjust the number of frames according to the first number and the second number.
[0018] Optionally, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0019] The first device operating parameters and the model features are used as input features and input into the first prediction model to obtain the first number of predictions.
[0020] Use the first predicted number as the current frame number.
[0021] Optionally, the first device operating parameters for determining the electronic device include:
[0022] The first device operating parameter of the electronic device is detected at each predetermined interval for a first predetermined duration or at each predetermined number of subsequence processing times.
[0023] Optionally, the method further includes:
[0024] Determine the second device operating parameters of the electronic device;
[0025] Input the operating parameters of the second device into the recognition model to obtain the corresponding first candidate model features;
[0026] The data processing model that matches the features of the first candidate model is configured in the electronic device.
[0027] Optionally, the method further includes:
[0028] Determine the second device operating parameters of the electronic device;
[0029] Find candidate model features corresponding to different pre-defined device operating parameters, and obtain K device operating parameters that are similar to the second device operating parameter in descending order of similarity;
[0030] Select the second candidate model feature from the candidate model features corresponding to the K device operating parameters;
[0031] The data processing model that matches the features of the second candidate model is configured in the electronic device.
[0032] Optionally, the method further includes:
[0033] Determine the number of K candidates corresponding to the candidate model features of the K device operating parameters; where K is a positive integer;
[0034] The average of the K candidate numbers is used as the initial value for the number of frames.
[0035] Optionally, the method further includes:
[0036] Based on the second device operating parameters of the electronic device and the model characteristics, a second prediction number is obtained using a second prediction model;
[0037] The second prediction number is used as the initial value for the number of frames.
[0038] Optionally, the first device operating parameters include one or more of the following parameters: processor temperature, processor frequency, device battery level, whether the device is charging, screen brightness, memory ratio, device lifespan, number of running threads, number of running processes, and processing program runtime.
[0039] Optionally, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0040] Based on the operating parameters of the first device and the model features, determine the updated value of the number of frames;
[0041] Determine whether the updated value is lower than the minimum limit or higher than the maximum limit;
[0042] If yes, adjust the number of frames according to the minimum or maximum limit value; otherwise, adjust the number of frames according to the updated value.
[0043] Optionally, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0044] Based on the operating parameters of the first device, determine whether to adjust the number of frames;
[0045] If so, determine the time interval between the current time and the last adjustment time;
[0046] If the interval duration is longer than the second predetermined duration, the number of frames is adjusted according to the model characteristics; otherwise, the number of frames remains unchanged.
[0047] If not, keep the number of frames unchanged.
[0048] Optionally, according to the current number of frames, obtaining unprocessed frame data to form subsequence data includes:
[0049] The currently generated frame data is accumulated according to the current number of frames to form subsequence data.
[0050] Optionally, obtaining unprocessed frame data according to the current frame number to form subsequence data includes:
[0051] The currently accumulated and unprocessed frame data is divided into frames according to the current number of frames to obtain at least one subsequence data.
[0052] Secondly, this application provides a data processing method applied to a client running in an electronic device, the method comprising:
[0053] Acquire audio data and generate audio frames;
[0054] The first device operating parameters of the electronic device are detected, and the model features of the audio noise reduction model corresponding to the electronic device are determined;
[0055] The number of frames is adjusted based on the operating parameters of the first device and the model features.
[0056] Accumulate the current number of audio frames to form a subsequence data;
[0057] The audio denoising model is invoked to perform audio denoising processing on the subsequence data.
[0058] Optionally, after denoising the subsequence data, the method further includes:
[0059] The subsequence data after audio noise reduction is transmitted to the receiving end.
[0060] Thirdly, this application provides a data processing apparatus, comprising:
[0061] The determination module is used to determine the operating parameters of electronic devices and the model characteristics of the corresponding data processing models;
[0062] An adjustment module is used to adjust the number of frames based on the device operating parameters and the model characteristics;
[0063] The acquisition module is used to acquire unprocessed frame data according to the current number of frames and form subsequence data;
[0064] The processing module is used to call the data processing model to process the subsequence data.
[0065] Fourthly, this application provides a client application, including:
[0066] The acquisition control is used to acquire audio data and generate audio frames;
[0067] A detection control is used to detect the first operating parameters of an electronic device.
[0068] The processing control is used to determine the model characteristics of the audio noise reduction model corresponding to the electronic device; adjust the number of frames according to the operating parameters of the first device and the model characteristics; accumulate the current number of audio frames to form subsequence data, and perform audio noise reduction processing on the subsequence data.
[0069] Fifthly, this application provides an electronic device, including a processor and a memory;
[0070] The memory stores one or more computer instructions; the one or more computer instructions are invoked and executed by the processor to implement the data processing method as described in the first aspect above.
[0071] In this embodiment, the number of frames can be adjusted according to the device operating parameters of the electronic device and the model characteristics of the corresponding data processing model; then, based on the current number of frames, unprocessed frame data is obtained to form sub-sequence data, which is then processed. By combining the device operating parameters and the model characteristics of its adapted data processing model to adjust the number of frames, the current device resources can be used to satisfy the processing of sub-sequence data while ensuring that the data processing model remains unchanged, and the data processing effect can also be taken into account, ensuring that the device energy consumption does not affect the device performance.
[0072] These or other aspects of this application will become more apparent in the following description of the embodiments. Attached Figure Description
[0073] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0074] Figure 1 A flowchart of one embodiment of a data processing method provided in this application is shown;
[0075] Figure 2 A flowchart of yet another embodiment of a data processing method provided in this application is shown;
[0076] Figure 3 A flowchart of yet another embodiment of a data processing method provided in this application is shown;
[0077] Figure 4 A flowchart of yet another embodiment of a data processing method provided in this application is shown;
[0078] Figure 5 This illustration shows an interactive scenario of the technical solution of this application in a practical application;
[0079] Figure 6 This invention provides a schematic diagram of the structure of one embodiment of a data processing apparatus.
[0080] Figure 7 This application provides a schematic diagram illustrating the structure of one embodiment of a client.
[0081] Figure 8 A schematic diagram of the structure of an embodiment of an electronic device provided in this application is shown. Detailed Implementation
[0082] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings.
[0083] In some of the processes described in the specification, claims, and accompanying drawings of this application, multiple operations appearing in a specific order are included. However, it should be clearly understood that these operations may not be executed in the order they appear herein, or may be executed in parallel. The operation numbers, such as 101, 102, etc., are merely used to distinguish different operations and do not themselves represent any execution order. Furthermore, these processes may include more or fewer operations, and these operations may be executed sequentially or in parallel. It should be noted that the descriptions such as "first," "second," etc., in this document are used to distinguish different messages, devices, modules, etc., and do not represent a chronological order, nor do they limit "first" and "second" to different types.
[0084] The technical solutions of this application are mainly applied to scenarios involving the processing of sequence data, such as the processing of real-time generated sequence data.
[0085] For ease of understanding, the technical terms that may be involved in the technical solution of this application are explained below:
[0086] Sequence data refers to a data form in which elements appear and are arranged in sequence. An element is the smallest data unit in sequence data, and it can be in the form of numbers, vectors, or matrices.
[0087] Frame sequence: A common type of sequence data. The elements in a frame sequence are frame data, which are obtained through digital sampling. The frame data in the frame sequence are arranged in order, such as in chronological order, and are placed sequentially and countable.
[0088] Subsequence data: When processing sequence data, several, dozens, or even hundreds of elements are typically processed as a subsequence. The number of elements in the subsequence data affects the data processing effect. For example, in data transmission scenarios, audio frames are captured and generated in real time. A certain number of audio frames are accumulated as a subsequence data for noise reduction processing, and then the noise-reduced subsequence data is transmitted. The number of audio frames in the subsequence data affects the latency of data transmission.
[0089] Framing: In a frame sequence, a subsequence of data formed by multiple frames is called framing.
[0090] Frame length: The number of frames in a subsequence of data.
[0091] Audio frame: The vibration intensity level sampled at a certain moment is obtained by sampling audio data, or the frequency-amplitude vector obtained by performing a short-time Fourier transform on the vibration intensity level.
[0092] A video frame is a single image; a video frame sequence refers to images arranged in chronological order.
[0093] Data processing requires hardware resources, and current methods utilize data processing models such as machine learning. As the complexity of these models increases, they inevitably consume more hardware resources, impacting device lifespan and affecting data processing efficiency. For instance, in data transmission scenarios, this can affect data transmission latency.
[0094] Especially for applications involving sequence data processing, since these applications can be installed on electronic devices with varying hardware resources, the data processing performance differs between low-end and high-end devices. The inventors discovered that to ensure data processing performance on low-end devices, the complexity of the data processing model can be reduced. However, this not only affects the processing performance but also fails to fully utilize the hardware resources of high-end devices. Alternatively, the data processing can be offloaded to the server, but while this reduces the application's computational power, the server's performance is also a significant challenge when serving a massive number of users, leading to processing delays and impacting data processing performance. Another option is to develop different data processing models for different electronic device models, but this increases development costs, complicates implementation, and results in inconsistent user experiences across different devices.
[0095] Further research by the inventors revealed that processors in current electronic devices are typically multi-core processors. Taking data transmission scenarios and frame sequences as an example, the longer the frame length of the subsequence data, the more processor cores are used for processing, resulting in lower energy consumption; conversely, the shorter the frame length, the fewer processor cores are used, leading to higher energy consumption. However, longer frame lengths also result in greater transmission latency, making them unsuitable for scenarios with high real-time requirements, such as live streaming. The inventors considered whether adjusting the frame length could ensure both data processing effectiveness and device energy consumption. Based on this, the inventors proposed the technical solution of this application. In the embodiments of this application, by determining the first device operating parameters of the electronic device and the corresponding data processing model characteristics, the number of frames can be adjusted based on the first device operating parameters and model characteristics; then, based on the current number of frames, unprocessed frame data is obtained to form subsequence data, which is then processed. By combining the operating parameters of the first device and the model characteristics of the data processing model, the number of frames is adjusted so that the current device resources can not only meet the processing of subsequence data, but also take into account the data processing effect, ensuring that the device energy consumption does not affect the device performance. It also enables the same data processing model to run stably on different device models, and different data processing models to run stably on the same device model, reducing the complexity of adaptation.
[0096] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0097] Figure 1 A flowchart of one embodiment of a data processing method provided in this application is shown. The method may include the following steps:
[0098] 101: Determine the first device operating parameters of the electronic device and the model characteristics of the corresponding data processing model.
[0099] The equipment operating parameters can represent the equipment's processing capacity. Optionally, the first equipment operating parameters may include one or more of the following parameters:
[0100] The device model, processor model, processor temperature, processor frequency, device battery level, whether the device is charging, screen brightness, memory usage percentage, device age, number of running threads, number of running processes, and processing program runtime. It should be noted that this is merely an example illustrating one or more possible parameters, and the first device operating parameters referred to in this application are not limited to the aforementioned parameters. The processing program can refer to a program in an electronic device that performs subsequence data processing; in practical applications, it can refer to an application program, i.e., a client running on the electronic device. The first device operating parameters can include fixed device operating parameters that do not change during the operation of the electronic device; of course, the first device operating parameters can also be acquired in real time and may change in real time during the operation of the electronic device. Optionally, the first device operating parameters can include real-time device operating parameters to enable real-time adjustment of the number of frames, ensuring data processing effectiveness.
[0101] Since the operating parameters of the first device may change in real time during the operation of the electronic device, in order to further ensure the data processing effect, and since parameters such as device power and screen brightness are greatly affected by the environment during the operation of the electronic device, and also to ensure the accuracy of the operating parameters of the first device, optionally, the operating parameters of the first device can be detected at a first predetermined time interval or at a predetermined number of subsequence processing intervals, and the following operations can be performed. Of course, the detection of the operating parameters of the first device can also be performed in real time.
[0102] The first predetermined duration can be, for example, t seconds, where t is a positive integer. The number of times the predetermined subsequence is processed can be set according to the actual situation.
[0103] Optionally, in response to a processing instruction, a first device operating parameter of the electronic device may be detected at intervals of a first predetermined duration or at intervals of a predetermined number of subsequences.
[0104] The processing instruction can be triggered by the user. Furthermore, when the elements in the sequence data targeted by the technical solution of this application are sampled and generated based on real-time acquired data, the processing instruction can specifically be a data acquisition instruction. For example, in an audio acquisition scenario, the processing instruction can refer to an audio acquisition instruction.
[0105] Data processing models are used to process data. In audio data processing scenarios, a data processing model can refer to an audio noise reduction model, which is used to reduce noise in the collected audio data.
[0106] Model features of a data processing model are used to represent the model complexity of the data processing model. For example, when the data processing model is a neural network model, the model features may include one or more of the following indicators: floating-point operations, number of neural network layers, number of computing nodes, number of operations, model file size, etc.
[0107] The model features can be obtained from the model file of the data processing model. Furthermore, different model features can be set for the same data processing model to achieve different processing effects. To further ensure device performance, as an optional method, a second device operating parameter of the electronic device can be determined; the second device operating parameter is input into the recognition model to obtain the corresponding first candidate model feature; and the data processing model that matches the model feature with the first candidate model feature is configured in the electronic device.
[0108] The recognition model can be pre-trained based on the operating parameters of the second sample device and the model's feature labels. This recognition model can be implemented using a decision tree algorithm, or other machine learning models; this application does not impose any specific restrictions on its implementation.
[0109] Among these methods, the data processing model corresponding to the model feature with the highest similarity can be selected and configured on the electronic device by calculating the similarity between the model feature and the first candidate model feature.
[0110] Alternatively, a second device operating parameter of the electronic device can also be determined;
[0111] Find candidate model features corresponding to different pre-defined second device operating parameters, and obtain K device operating parameters that are similar to the second device operating parameters in descending order of similarity;
[0112] From the candidate model features corresponding to the K device operating parameters, a second candidate model feature is selected; for example, the candidate model feature that appears most frequently is selected as the second candidate model feature.
[0113] The data processing model that matches the features of the second candidate model is configured in the electronic device.
[0114] This means that the K-nearest neighbor algorithm can be used to filter model features that match electronic devices, and the corresponding data processing model can be configured. Here, K is a positive integer.
[0115] This involves calculating the similarity between the model features and the features of the second candidate model, and then selecting the data processing model corresponding to the model features with the highest similarity and configuring it on the electronic device.
[0116] Similarity calculation can be achieved by first vectorizing the model features according to a unified standard, and then using the vector distance as the similarity. Of course, this application does not impose any specific restrictions on this.
[0117] 102: Adjust the number of targets based on the operating parameters of the first device and the characteristics of the model.
[0118] This target number is used to segment the sequence data to obtain subsequence data.
[0119] In this embodiment, the target number can be adjusted according to the operating parameters of the first device to ensure that the target number is more accurate and matches the current device performance of the electronic device.
[0120] The operating parameters of the first device can be collected in real time. Therefore, the target number can change dynamically during the operation of the electronic device, thus enabling dynamic adjustment of the target number.
[0121] As an optional approach, adjusting the target number based on the operating parameters of the first device and the model features can be achieved by: determining whether to adjust the target number based on the operating parameters of the first device; if so, determining the adjustment value corresponding to the model features and adjusting the target number according to the adjustment value; otherwise, keeping the target number unchanged.
[0122] The adjustment of the target number may include increasing or decreasing the target number. The adjustment value can be preset, and each adjustment can increase or decrease the target number by the adjustment value. The adjustment value can be, for example, 1. Of course, the adjustment value can also be dynamically determined according to the operating parameters of the first device.
[0123] Alternatively, an adjustment model can be used, where the model features are input into the adjustment model to obtain the corresponding adjustment values. This adjustment model can be pre-trained, for example, using sample model features and corresponding adjustment value labels.
[0124] As an alternative approach, adjusting the target number based on the first device operating parameters and the model features can be achieved by: determining a first number corresponding to the first device operating parameters and a second number corresponding to the model features; and adjusting the target number according to the first number and the second number. For example, the average of the first number and the second number can be used as the current target number.
[0125] The number of different first device operating parameters and the number of different model features can be preset in advance. By looking up the correspondence, the first number of the first device operating parameters and the second number of the model features can be obtained. Of course, the model can also be pre-trained to obtain the first number of the first device operating parameters and the second number of the model features. This application does not make any specific limitations on this.
[0126] As another optional approach, adjusting the number of targets based on the operating parameters of the first device and the model characteristics may include:
[0127] The operating parameters of the first device and the model features are used as input features to input the first prediction model to obtain the first prediction number; the first prediction number is used as the current target number.
[0128] The first prediction model can be trained in advance based on the sample input features formed by the operating parameters of the first sample device and the sample model features, as well as the corresponding prediction number labels.
[0129] The initial value of the target number can be zero, which can be determined based on the operating parameters of the first device and the characteristics of the model, or it can be a pre-configured value.
[0130] In addition, to further ensure the data processing effect, initial values corresponding to different operating parameters of the second device can be preset in advance, so as to determine the initial value based on the operating parameters of the second device; or initial values corresponding to different model features can be preset in advance, so as to determine the initial value based on the model features of the data processing model.
[0131] Furthermore, based on the preceding description, the K-nearest neighbor algorithm can be used to determine K device operating parameters similar to the second device operating parameters. Therefore, the average of the K candidate numbers corresponding to the candidate model features of the K device operating parameters can also be used as the initial value of the target number. Additionally, since second candidate model features will be selected from the candidate model features, specifically, M second candidate model features can be determined from the candidate model features corresponding to the K device operating parameters, and the average of the candidate numbers corresponding to the M second candidate model features can be used as the initial value of the target number. M is a positive integer.
[0132] Alternatively, based on the second device operating parameters of the electronic device and the model characteristics of the data processing model, a second prediction model can be used to obtain a second prediction number; the second prediction number can be used as the initial value of the number of frames.
[0133] The second prediction model can be trained in advance based on the sample input features formed by the operating parameters of the second sample device and the sample model features, as well as the corresponding prediction number labels.
[0134] The operating parameters of the second device may be the same as or different from those of the first device. For example, the operating parameters of the second device may include one or more of the following: device model, processor model, and device service life.
[0135] In one implementation, the operating parameters of the second device may only include the device model, and initial values corresponding to different device models can be preset. Since different device models have different hardware resources, in practical applications, based on hardware resources, electronic devices can be categorized into low-end, mid-range, and high-end models. Low-end electronic devices have lower hardware resource configurations; for the same data processing model, the lower the model, the greater the computational pressure. Generally, the lower the device model, the larger the initial value of the target number can be set. Processing the subsequence data formed by this initial value will result in lower device power consumption, ensuring device performance. Conversely, the higher the device model, the smaller the initial value of the target number, allowing for full utilization of device resources and ensuring data processing effectiveness.
[0136] 103: Obtain the current target number of unprocessed elements and form a subsequence data.
[0137] Optionally, step 103 can be executed when a processing instruction is detected, that is, in response to the processing instruction, the current target number of unprocessed elements are obtained to form subsequence data.
[0138] Step 103 can be continuously executed, forming subsequence data until all subsequence data is obtained, such as when element generation stops. This means that step 103 is not limited to the operational order of steps 101 and 102 in this embodiment. Steps 101 and 102 can be executed before, after, or simultaneously with the formation of subsequence data; however, the current target number is related to the adjustment operation and can be dynamically adjusted based on real-time operating parameters of the first device.
[0139] 104: Call the data processing model to process the subsequence data.
[0140] After adjusting the target number, you can continue to obtain the corresponding subsequence data according to the current target number and call the data processing model for processing.
[0141] When sequence data is obtained by accumulating elements generated in real time, the number of unprocessed elements to form a subsequence can be determined by accumulating the real-time generated elements to form a subsequence, i.e., accumulating the current target number of elements to obtain a subsequence. This process of accumulating real-time generated elements to form a subsequence can continue until no more elements are generated or the target number is adjusted again, in which case the subsequence will be formed according to the adjusted target number.
[0142] Since elements are accumulated according to the original target number before the target number is adjusted, obtaining the current target number of unprocessed elements to form the subsequence data includes:
[0143] The currently accumulated and unprocessed elements are divided according to the current target number to obtain at least one subsequence data.
[0144] Similarly, the currently generated elements will be accumulated according to the current target number to form subsequence data.
[0145] Among them, at least one subsequence data segmented from the currently accumulated and unprocessed elements may include a number of subsequences with fewer elements than the current target number. Of course, the remaining elements of the currently accumulated and unprocessed elements, after being segmented according to the current target number, that are insufficient to form a subsequence data can continue to be accumulated with the currently generated elements to form a subsequence data consisting of the current target number of elements; for example, if the target number before adjustment was 10 and the target number after adjustment is 3, assuming the currently accumulated and unprocessed elements are 8, then segmenting these 8 elements according to the target number of 3 can yield three subsequence data, with the first two subsequence data each containing 3 elements, and the last subsequence data containing 2 elements; alternatively, two subsequence data can be obtained, and the remaining 2 elements can be combined with the currently generated 1 element to form a new subsequence data.
[0146] In addition, as another implementation method, the accumulated and unprocessed elements before the target number adjustment can be directly processed as a subsequence data, or if there are already accumulated and unprocessed elements, a subsequence data can be obtained by accumulating according to the previous target number, and then a new subsequence data can be formed by accumulating elements according to the current target number.
[0147] In addition, the technical solution of this application can also process existing sequence data. The target number is used to divide the sequence data to obtain subsequence data. Therefore, obtaining the current target number of unprocessed elements to form subsequence data can also be done by dividing the current unprocessed data in the sequence data according to the current target number to obtain at least one subsequence data.
[0148] If the sequence data has already been segmented according to the previous target number, then the unprocessed data will be re-segmented according to the current target number.
[0149] In this embodiment, by detecting the first device operating parameters of the electronic device, the target number can be adjusted according to the first device operating parameters; then, based on the current target number, the number of unprocessed frame data in the current frame segment is obtained to form sub-sequence data, and then the sub-sequence data is processed. By combining the first device operating parameters and adjusting the target number, the current device resources can not only meet the processing of sub-sequence data, but also take into account the data processing effect. This also allows the data processing method provided in this application to run stably on different device models, reducing the complexity of adaptation.
[0150] Furthermore, in this embodiment, adjusting the target number based on the first device's operating parameters may include: increasing the target number when the device's processing capacity decreases, and decreasing the target number when the device's processing capacity increases. Of course, if the device's processing capacity remains unchanged, the current target number is maintained.
[0151] When the equipment's processing capacity decreases, increasing the target number can reduce the equipment's energy consumption during data processing. Conversely, when the equipment's processing capacity increases, the target number can be reduced to ensure data processing effectiveness. By combining the first equipment's operating parameters and adaptively adjusting the target number based on the equipment's processing capacity, both equipment energy consumption and data processing effectiveness can be balanced, thus ensuring both data processing effectiveness and equipment energy consumption.
[0152] Specifically, a decrease in equipment processing capacity can be determined by judging that the operating parameters of the first equipment meet the condition of increasing quantity; an increase in equipment processing capacity can be determined by judging that the operating parameters of the first equipment meet the condition of decreasing quantity; and no change in equipment processing capacity can be determined by judging that the operating parameters of the first equipment meet the condition of maintaining quantity.
[0153] Optionally, determining whether to adjust the number of frames based on the operating parameters of the first device can be achieved by determining whether the operating parameters of the first device meet the number maintenance condition. If not, then it can be determined that the target number needs to be adjusted.
[0154] Alternatively, it can be determined whether the operating parameters of the first device meet the conditions for increasing the number or decreasing the number. If so, it is considered that the target number needs to be adjusted.
[0155] Based on the above description, the first device operating parameters can include one or more of the following: processor temperature, processor frequency, device battery level, whether the device is charging, screen brightness, memory usage, device age, number of running threads, number of running processes, and processing program runtime. Several possible determination methods are listed below:
[0156] If any one or more of the following conditions are met simultaneously: processor temperature is higher than a first temperature (e.g., 85 degrees Celsius), device battery level is lower than a first battery level and not being charged (e.g., lower than 20% of total battery level and not being charged), screen brightness is higher than a first brightness (e.g., 80%), memory percentage reaches a first value (e.g., memory percentage reaches 80%), number of running threads is greater than a first number or process running data is greater than a second number, or processing program runtime is greater than a first duration (e.g., 2 hours), then the first device operating parameters meet the condition for increasing the number, and the device processing capacity decreases. In this case, the target number value can be reduced.
[0157] If one or more of the following conditions are met simultaneously: processor temperature is lower than the second temperature (e.g., 40 degrees Celsius), processor clock speed is reduced, device battery level is higher than the second battery level (e.g., higher than 80% of total battery level), device is charging, screen brightness is lower than the second brightness level, memory usage is lower than the second value (e.g., 50%), number of running threads is less than the third number, number of running processes is less than the fourth number, then the first device operating parameter can be considered to meet the condition for reducing the number, and the device processing capability is improved. At this time, the target number value can be increased.
[0158] If one or more of the following conditions are met simultaneously: processor temperature is within a certain temperature range (greater than the second temperature and less than the first temperature), device battery level is within a certain battery range (greater than the second battery level and less than the first battery level), screen brightness is within a certain brightness range (greater than the second brightness level and less than the first brightness level), memory percentage is within a certain range (greater than the second value and less than the first value), number of running threads is less than the first number and greater than the third number, number of running processes is less than the second number and greater than the fourth number, and processing program runtime is less than the first runtime, it can be considered that the first device operating parameters meet the requirement of maintaining the target number, and the device processing capability has not changed. In this case, the current target number remains unchanged.
[0159] In some embodiments, to help users understand the device performance utilization, device performance prompts may optionally be output to facilitate user understanding of device performance utilization.
[0160] The performance indicator can be generated after data processing according to the adjusted target number, etc.
[0161] In some embodiments, adjusting the number of targets based on the operating parameters of the first device and the characteristics of the model may include:
[0162] Based on the operating parameters of the first device and the characteristics of the model, determine the updated value of the target number;
[0163] Determine whether the updated value is lower than the minimum limit or higher than the maximum limit;
[0164] If so, adjust the number of frames according to the minimum or maximum limit.
[0165] If not, adjust the number of frames according to the updated values.
[0166] Limit protection with maximum and minimum limits can further ensure data processing efficiency and equipment energy consumption, keeping the target number within a controllable range. The minimum and maximum limits can be set based on actual application conditions or determined by the equipment model, etc.
[0167] In some embodiments, adjusting the number of targets based on the operating parameters of the first device and the characteristics of the model may include:
[0168] Based on the operating parameters of the first device and the characteristics of the model, determine whether to adjust the target number;
[0169] If so, determine the time interval between the current time and the last adjustment time;
[0170] If the interval duration exceeds the second predetermined duration, adjust the target number; otherwise, keep the target number unchanged.
[0171] If not, keep the target number unchanged.
[0172] By setting the interval, we can avoid the negative impact of frequent changes in the number of targets on data processing and equipment performance. In practical applications, due to environmental and other factors, the operating parameters of the first device may not be accurate enough. By determining the interval, we can also ensure data processing effectiveness and equipment energy consumption.
[0173] Specifically, if the interval duration is longer than the second predetermined duration, when adjusting the number of frames, the process can be as follows: First, determine the updated value of the target number; determine whether the updated value is lower than the minimum limit or higher than the maximum limit; if so, adjust the number of frames according to the minimum or maximum limit; if not, adjust the number of frames according to the updated value.
[0174] In addition, the number of frames can be adjusted according to the adjustment value, which can be, for example, 1. The value can be increased or decreased by 1 each time. Of course, it can also be determined according to the operating parameters of the first device. The adjustment values corresponding to different parameter values of the operating parameters of the first device can be preset. Therefore, by looking up the correspondence, the corresponding adjustment value can be determined. Alternatively, the adjustment values corresponding to different model features can be preset, or the model features can be identified by adjusting the model.
[0175] In a practical application, sequence data can refer to frame sequences, such as audio sequence data, video sequence data, etc., and the frame data within the frame sequence can be generated in real time. For example... Figure 2 As shown in the illustration, this application also provides a data processing method. This embodiment uses frame sequences as an example to introduce the technology of this application, which may include the following steps:
[0176] 201: Determine the first device operating parameters of the electronic device and the model characteristics of the corresponding data processing model.
[0177] 202: Adjust the number of frames based on the operating parameters of the first device and the characteristics of the model.
[0178] 203: Based on the current number of frames, obtain the unprocessed frame data and form subsequence data.
[0179] 204: Process the subsequence data.
[0180] This embodiment and Figure 1 The difference in the illustrated embodiment is that the sequence data targeted is a frame sequence, the target number is the number of frames, and the element is the frame data. Other identical or corresponding steps can be found in [link to documentation]. Figure 1 The embodiments shown will not be described in detail here.
[0181] In some embodiments, adjusting the number of frames based on the operating parameters of the first device and model characteristics includes:
[0182] Based on the operating parameters of the first device, determine whether to adjust the number of frames;
[0183] If so, determine the adjustment value corresponding to the model feature;
[0184] Adjust the number of frames according to the stated adjustment value.
[0185] In some embodiments, adjusting the number of frames based on the operating parameters of the first device and model characteristics includes:
[0186] Determine the first number corresponding to the operating parameters of the first device, and the second number corresponding to the model features;
[0187] Adjust the number of frames according to the first number and the second number.
[0188] In some embodiments, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0189] The first device operating parameters and the model features are used as input features and input into the first prediction model to obtain the first number of predictions.
[0190] Use the first predicted number as the current frame number.
[0191] In some embodiments, adjustment values corresponding to the model features are determined;
[0192] The model features are input into the adjustment model to obtain the corresponding adjustment values.
[0193] In some embodiments, determining the first device operating parameters of the electronic device includes:
[0194] The first device operating parameter of the electronic device is detected at each predetermined interval for a first predetermined duration or at each predetermined number of subsequence processing times.
[0195] As an optional approach, before determining the first device operating parameters of the electronic device and the model characteristics of the corresponding data processing model, the method further includes:
[0196] Determine the second device operating parameters of the electronic device;
[0197] Input the operating parameters of the second device into the recognition model to obtain the corresponding first candidate model features;
[0198] The data processing model that matches the features of the first candidate model is configured in the electronic device.
[0199] As an alternative approach, before determining the first device operating parameters of the electronic device and the model characteristics of the corresponding data processing model, the following steps are also included:
[0200] Determine the second device operating parameters of the electronic device;
[0201] Find candidate model features corresponding to different pre-defined device operating parameters, and obtain K device operating parameters that are similar to the second device operating parameter in descending order of similarity;
[0202] Select the second candidate model feature from the candidate model features corresponding to the K device operating parameters;
[0203] The data processing model that matches the features of the second candidate model is configured in the electronic device.
[0204] In some embodiments, the method may further include:
[0205] The average number of candidates corresponding to the candidate model features of the K device operating parameters is used as the initial value of the number of frames.
[0206] In some embodiments, determining the initial value of the number of frames based on the device model of the electronic device includes:
[0207] Based on the second device operating parameters of the electronic device and the model characteristics, a second prediction number is obtained using a second prediction model;
[0208] The second prediction number is used as the initial value for the number of frames.
[0209] In some embodiments, the first device operating parameters include one or more of the following: processor temperature, processor clock speed, device battery level, whether the device is charging, screen brightness, memory usage percentage, device lifespan, number of running threads, number of running processes, and processing program runtime.
[0210] In some embodiments, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0211] Based on the operating parameters of the first device and the model features, determine the updated value of the number of frames;
[0212] Determine whether the updated value is lower than the minimum limit or higher than the maximum limit;
[0213] If yes, adjust the number of frames according to the minimum or maximum limit value; otherwise, adjust the number of frames according to the updated value.
[0214] In some embodiments, adjusting the number of frames based on the operating parameters of the first device and the model features includes:
[0215] Based on the operating parameters of the first device, determine whether to adjust the number of frames;
[0216] If so, determine the time interval between the current time and the last adjustment time;
[0217] If the interval duration is longer than the second predetermined duration, the number of frames is adjusted according to the model characteristics; otherwise, the number of frames remains unchanged.
[0218] If not, keep the number of frames unchanged.
[0219] In some embodiments, obtaining unprocessed frame data to form subsequence data according to the current number of frames includes:
[0220] The currently generated frame data is accumulated according to the current number of frames to form subsequence data.
[0221] In some embodiments, obtaining unprocessed frame data according to the current frame number to form subsequence data includes:
[0222] The currently accumulated and unprocessed frame data is divided into frames according to the current number of frames to obtain at least one subsequence data.
[0223] Figure 3 This is a flowchart illustrating another embodiment of a data processing method provided by this application. This embodiment describes a specific implementation of an embodiment of this application, and the flowchart is helpful for users to understand. The method may include the following steps:
[0224] 301: Determines the initial value for the number of frames.
[0225] The initial value for the number of frames can be determined by combining at least one of the operating parameters of the electronic device and the model features of the corresponding data processing model.
[0226] 302: In response to the acquisition command, generate frame data.
[0227] Data can be acquired based on acquisition commands, and the acquired data can be sampled and processed to generate frame data. Frame data will be continuously generated, and subsequence data can be obtained by accumulating it according to the current number of frames. The current number of frames can be adjusted as follows.
[0228] 303: Accumulate the currently generated frame data according to the current number of frames to form subsequence data.
[0229] 304: Processing subsequence data.
[0230] 305: Determine whether to detect the operating parameters of the first device. If yes, proceed to step 306.
[0231] The operating parameters of the first device can be detected at intervals of a first predetermined duration or at intervals of a predetermined number of subsequence processing times. If the interval between the current time and the previous detection time reaches the first predetermined duration, or the current number of subsequence processing times reaches the predetermined number of subsequence processing times, then step 306 is executed; otherwise, the judgment can continue.
[0232] 306: Detect the first device operating parameters of the electronic device and determine the model characteristics of the data processing model corresponding to the electronic device.
[0233] 307: Based on the operating parameters of the first device and the characteristics of the model, determine whether to adjust the number of frames. If yes, proceed to step 308; otherwise, proceed to step 312.
[0234] 308: Determine whether the interval between the current time and the last adjustment time is greater than the second predetermined time. If yes, proceed to step 309; otherwise, proceed to step 312.
[0235] 309: Determine whether the updated value of the number of frames is lower than the minimum limit or higher than the maximum limit. If yes, proceed to step 310; otherwise, proceed to step 311.
[0236] The updated value can be obtained by adding or subtracting the current number of frames from the adjusted value. To increase the number of frames, the adjusted value can be increased; to decrease the number of frames, the adjusted value can be decreased.
[0237] 310: Adjust the number of frames according to the minimum or maximum limit value, and return to step 303.
[0238] 311: Adjust the number of frames according to the updated value, and return to step 303.
[0239] 312: Keep the number of frames unchanged and return to step 303.
[0240] The technical solution of this application can be applied to data transmission scenarios. After processing the subsequence data, the processed subsequence data can be transmitted, such as sent to the receiving end, so as to balance data transmission latency and device power consumption.
[0241] In a practical application, the frame sequence described in this application embodiment can specifically refer to audio sequence data, which can be applied to audio noise reduction scenarios. Audio frames can be generated based on sampling processing of real-time acquired audio data. Currently, to ensure noise reduction effectiveness, most audio noise reduction processing models employ neural network models, leading to increasing complexity and higher energy consumption. While these models may function normally on high-end electronic devices, they can cause significant power consumption on lower-end models, potentially resulting in hardware overheating, system throttling, program lag, or even crashes, thus negatively impacting data processing performance, such as causing audio transmission delays. However, the technical solution of this application dynamically adapts and adjusts energy consumption across different devices. The same noise reduction processing model can run stably on various models, improving model stability, ensuring processing effectiveness, reducing adaptation complexity, and enhancing the user experience.
[0242] The following example illustrates the technical solution of this application's embodiments, using a scenario involving noise reduction processing of real-time acquired audio data. Figure 4 As shown in the illustration, as yet another embodiment, this application also provides a data processing method. This embodiment's technical solution can be executed by a client running on an electronic device. The method may include:
[0243] 401: Acquire audio data and generate audio frames.
[0244] The audio frame is obtained by sampling the audio data in the audio data.
[0245] 402: Detect the first device operating parameters of the electronic device and determine the model features of the audio noise reduction model corresponding to the electronic device.
[0246] 403: Adjust the number of frames based on the operating parameters of the first device and the characteristics of the model.
[0247] The operations in steps 402 to 403 can be found in steps 201 to 202, and will not be repeated here.
[0248] 404: Accumulate the current number of audio frames to form a subsequence data.
[0249] Based on the current frame data, a corresponding number of audio frames can be accumulated to form subsequence data.
[0250] 405: Call the audio denoising model to perform audio denoising processing on the subsequence data.
[0251] In some embodiments, after performing audio noise reduction processing on the subsequence data, the method may further include:
[0252] The subsequence data after audio noise reduction is transmitted to the receiving end.
[0253] In one implementation scenario, the technical solution of this application can be applied to audio noise reduction processing in live streaming scenarios. Live streaming applications, i.e., the live streaming client, collect live streaming data and upload it to the server, which then distributes it to the viewing client, requiring high real-time performance. However, due to the noisy nature of live streaming scenarios, the audio data collected by the live streaming client is often mixed with noise, affecting the user's listening experience and interfering with multimedia quality. Therefore, audio noise reduction processing is necessary, which requires device resources. The technical solution of this application ensures that the same audio noise reduction processing model can run stably on different device models, improving model stability, guaranteeing processing effectiveness, reducing adaptation complexity, and minimizing program crashes caused by device performance issues. This improves the user experience. In live streaming scenarios, the client, i.e., the live streaming client, can specifically collect live streaming data and sample the audio data within the live streaming data to obtain audio frames.
[0254] For ease of understanding, see Figure 5In the interactive scenario diagram shown, the live streaming client 501 can collect live streaming data and generate audio frames. The live streaming client 501 can accumulate a corresponding number of audio frames according to the current number of frames to form subsequence data, and perform audio noise reduction processing on the subsequence data. Then, the audio noise-reduced subsequence data is transmitted to the server 502, which then sends it to the viewing client. Of course, the live streaming client will also transmit video frames through the server, which is the same as the existing method and will not be described in detail here.
[0255] The initial value of the number of frames can be determined according to the device model, and different device models can be configured with different initial values.
[0256] Furthermore, the live streaming client 501 can perform subsequence noise reduction processing a predetermined number of times at regular intervals. This involves detecting the operating parameters of the first device and adjusting the number of frames based on these parameters and the characteristics of the audio noise reduction model. This ensures that subsequence data is generated and audio noise reduction is performed according to the adjusted number of frames. By adaptively adjusting the number of frames, device power consumption can be adjusted accordingly, while maintaining audio transmission latency. This improves the stability of the audio noise reduction model across different device models, allowing each model to fully utilize its performance. It provides a consistent effect and differentiated power consumption across different device models, eliminating the need for separate audio noise reduction model development for each model and reducing development workload. This technical solution automatically balances transmission latency and device power consumption, enabling high-end devices to fully utilize computing power and enjoy a low-latency multimedia experience, while ensuring power efficiency on low-end devices to prevent program crashes.
[0257] In another implementation scenario, the technical solution of this application can be applied to IM (Instant Messaging) scenarios. Currently, in IM scenarios, the two communicating parties may send audio messages. These audio messages are often collected by one party's communication terminal and ultimately sent to the other party's communication terminal. The audio data in the audio messages, collected by the communication terminal, is often mixed with noise, affecting the user's listening experience and thus impacting information transmission and communication quality. Therefore, audio noise reduction processing is required, which consumes device resources. However, the technical solution of this application ensures that the same audio noise reduction processing model can run stably on different device models, improving model stability, guaranteeing processing effectiveness, reducing adaptation complexity, and minimizing program crashes due to device performance limitations. This enhances the user experience.
[0258] Figure 6 This application provides a schematic diagram of the structure of a data processing apparatus according to one embodiment. The apparatus may include:
[0259] The determination module 601 is used to determine the first device operating parameters of the electronic device and the model characteristics of the corresponding data processing model;
[0260] The adjustment module 602 is used to adjust the number of targets based on the operating parameters of the first device and the characteristics of the model;
[0261] The acquisition module 603 is used to acquire unprocessed frame data according to the current number of frames and form subsequence data;
[0262] Processing module 604 is used to call the data processing model to process the subsequence data.
[0263] In a practical application, an element can refer to frame data. Therefore, the acquisition module can be specifically used to acquire the number of unprocessed frame data in the current frame segment to form subsequence data.
[0264] In some embodiments, the detection module may be specifically used to detect the device operating parameters of an electronic device at intervals of a first predetermined duration or at intervals of a predetermined number of subsequences.
[0265] Figure 6 The data processing device can perform Figure 1 or Figure 2 The implementation principle and technical effects of the data processing method described in the illustrated embodiments will not be repeated here. The specific methods by which each module and unit of the data processing device in the above embodiments performs its operations have been described in detail in the embodiments related to the method, and will not be elaborated upon here.
[0266] In addition, such as Figure 7 As shown in the embodiments of this application, a client is also provided. In practical applications, this client can specifically be a live streaming application, and the client may include:
[0267] Acquisition control 701 is used to acquire audio data and generate audio frames;
[0268] The detection control 702 is used to detect the first device operating parameters of the electronic device.
[0269] The processing control 703 is used to determine the model characteristics of the audio noise reduction model corresponding to the electronic device; adjust the number of frames according to the operating parameters of the fighting device and the model characteristics; accumulate the current number of audio frames to form subsequence data, and call the audio noise reduction model to perform audio noise reduction processing on the subsequence data.
[0270] Optionally, the processing control can also be used to transmit the subsequence data after audio noise reduction to the receiving end.
[0271] This client can specifically implement, such as Figure 4The implementation principles and technical effects of the data processing method shown will not be elaborated further.
[0272] The technical solution adopted in the embodiments of this application, such as Figure 7 The client shown can be configured on electronic devices of different models. Different models of electronic devices have different hardware resources, which can balance device power consumption and data processing effect. This allows higher-end devices to make full use of computing power and enjoy a low-latency multimedia experience, while ensuring that lower-end devices do not crash due to low power consumption.
[0273] In one possible design, embodiments of this application also provide an electronic device, such as... Figure 8 As shown, the electronic device may include a memory 801 and a processor 802;
[0274] The memory 801 stores one or more computer instructions, which are called and executed by the processor 802 to implement the data processing method described in any of the preceding embodiments.
[0275] Optionally, the electronic device can be configured with, for example, Figure 6 The data processing device shown or such Figure 7 The client shown.
[0276] The processor 802 can be a multi-core processor to perform all or part of the steps in the above method. Alternatively, the processor can be implemented as one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to execute the above method.
[0277] The memory 801 is configured to store various types of data to support operations at the terminal. The storage component can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0278] Of course, electronic devices may also include other components, such as input / output interfaces and communication components. Input / output interfaces provide an interface between processing components and peripheral interface modules, which can be output devices, input devices, etc. Communication components are configured to facilitate wired or wireless communication between the computing device and other devices.
[0279] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a computer, can perform the above-described functions. Figures 1-4 Data processing method of any embodiment.
[0280] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0281] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0282] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0283] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A data processing method, characterized in that, include: Determine the second device operating parameters of the electronic device, determine the candidate model features based on the second device operating parameters, and configure the data processing model that matches the model features with the candidate model features in the electronic device; The first device operating parameters of the electronic device and the corresponding model features of the data processing model are determined; wherein, the model features of the data processing model represent the model complexity. Adjust the number of frames based on the operating parameters of the first device and the characteristics of the model; Based on the current number of frames, obtain unprocessed frame data to form subsequence data; The data processing model is invoked to process the subsequence data; The step of determining candidate model features based on the second device operating parameters and configuring a data processing model that matches the candidate model features in the electronic device includes: The operating parameters of the second device are input into the recognition model to obtain the corresponding first candidate model features; the data processing model that matches the model features with the first candidate model features is configured in the electronic device. or, Find candidate model features corresponding to different pre-defined device operating parameters, and obtain K device operating parameters that are similar to the second device operating parameter in descending order of similarity; select a second candidate model feature from the candidate model features corresponding to the K device operating parameters; configure the data processing model that matches the model feature with the second candidate model feature in the electronic device.
2. The method according to claim 1, characterized in that, The step of adjusting the number of frames based on the operating parameters of the first device and the model features includes: Based on the operating parameters of the first device, determine whether to adjust the number of frames; If so, determine the adjustment value corresponding to the model feature; Adjust the number of frames according to the stated adjustment value.
3. The method according to claim 1, characterized in that, The step of adjusting the number of frames based on the operating parameters of the first device and the model features includes: The first device operating parameters and the model features are used as input features and input into the first prediction model to obtain the first number of predictions. Use the first predicted number as the current frame number.
4. The method according to claim 1, characterized in that, Also includes: Based on the second device operating parameters of the electronic device and the model characteristics, a second prediction number is obtained using a second prediction model; The second prediction number is used as the initial value for the number of frames.
5. The method according to claim 1, characterized in that, The step of adjusting the number of frames based on the operating parameters of the first device and the model features includes: Based on the operating parameters of the first device and the model features, determine the updated value of the number of frames; Determine whether the updated value is lower than the minimum limit or higher than the maximum limit; If so, adjust the number of frames according to the minimum or maximum limit value. If not, adjust the number of frames according to the updated value.
6. A data processing method, characterized in that, Applied to a client running on an electronic device, the method includes: Determine the second device operating parameters of the electronic device, determine the candidate model features based on the second device operating parameters, and configure the audio noise reduction model that matches the model features with the candidate model features in the electronic device. Acquire audio data and generate audio frames; The first device operating parameters of the electronic device are detected, and the model features of the audio noise reduction model corresponding to the electronic device are determined; the model features of the audio noise reduction model represent the model complexity. The number of frames is adjusted based on the operating parameters of the first device and the model features. Accumulate the current number of audio frames to form a subsequence data; The audio noise reduction model is invoked to perform audio noise reduction processing on the subsequence data; The step of determining candidate model features based on the operating parameters of the second device and configuring an audio noise reduction model that matches the candidate model features in the electronic device includes: The operating parameters of the second device are input into the recognition model to obtain the corresponding first candidate model features; the audio noise reduction model that matches the model features with the first candidate model features is configured in the electronic device. or, Find candidate model features corresponding to different pre-defined device operating parameters, and obtain K device operating parameters that are similar to the second device operating parameters in descending order of similarity; select a second candidate model feature from the candidate model features corresponding to the K device operating parameters; configure the audio noise reduction model that matches the model feature with the second candidate model feature in the electronic device.
7. The method according to claim 6, characterized in that, After performing noise reduction processing on the subsequence data, the method further includes: The subsequence data after audio noise reduction is transmitted to the receiving end.
8. A client application, characterized in that, include: The acquisition control is used to acquire audio data and generate audio frames; A detection control is used to detect the first operating parameters of an electronic device. The processing control is used to determine the model features of the audio noise reduction model corresponding to the electronic device; adjust the number of frames according to the operating parameters of the first device and the model features; accumulate the current number of audio frames to form sub-sequence data, and perform audio noise reduction processing on the sub-sequence data; the model features of the audio noise reduction model represent the model complexity. The audio noise reduction model configured in the electronic device is matched with the candidate model features, and the candidate model features are determined in the following manner: The second device operating parameters of the electronic device are input into the recognition model to obtain the corresponding first candidate model features; or... Find candidate model features corresponding to different pre-defined device operating parameters, and obtain K device operating parameters that are similar to the second device operating parameter in descending order of similarity; select the second candidate model feature from the candidate model features corresponding to the K device operating parameters.
9. An electronic device, characterized in that, Including the processor and memory; The memory stores one or more computer instructions; the one or more computer instructions are invoked and executed by the processor to implement the data processing method as described in any one of claims 1 to 5.