Method and system for setting VST effector parameters across processes, equipment and medium
Through the method of setting VST effect parameters across processes, the VST effect plug-in is directly controlled by memory monitoring and hook technology, which solves the problem of complex operation interface of VST effect, and achieves the effect of simplifying the operation process and improving the user experience.
Patent Information
- Application Number
- CN202411591837.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-08
- Publication Date
- 2025-02-28
AI Technical Summary
The operating interface of the existing VST effect plug-in is complex, and it is difficult for non-professional users to adjust simple parameters in the complex VST host software interface, resulting in high learning threshold, cumbersome operation and easy to operate incorrectly.
By setting VST effect parameters across processes, the memory monitoring technology is used to obtain the memory address of the VST effect plug-in, and the hook technology is used to inject the required process to realize cross-process communication and directly control the VST effect plug-in.
It realizes the VST effect plug-in directly control across processes, simplifies user operation processes, lowers learning thresholds, improves user experience, and supports remote control and automatic scanning connections to meet more usage needs.
Smart Images

Figure CN119536681A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of audio signal processing, and in particular to a method, system, device and medium for setting VST effector parameters across processes. Background Art
[0002] VST is a software effects technology based on Steinberg. It basically exists in the form of effects plug-ins and can run on most of today's professional music software. VST plug-in effects cover almost all effects used in music production, and due to the openness of VST technology, many large and small manufacturers can use these VST effects plug-ins in music software called VST hosts, commonly used are Sample, Cubase, Wave Lab, FruityLoops, Orion, Project, Studio One, etc. VST effects plug-ins are used to process audio, so they must be loaded in the audio track for use.
[0003] With the development of audio processing needs, VST effect plug-ins are originally used in professional fields. Their adjustable parameters are all audio professional vocabulary, mostly in English, and there are many items. VST software was originally oriented to professionals such as tuners and recording engineers with audio knowledge. Its operation interface and debugging items are not friendly to general non-professional singing users. Usually, ordinary users only need to adjust one or two functional parameters, such as: reverberation size, pitch, elimination of specific parameters such as the original singer in the accompaniment, to meet almost all the requirements of users during use. However, just to adjust a few simple parameters, users need to find the VST effect plug-in containing the items to be adjusted on the complex VST host software interface, and then find the corresponding parameters to be adjusted in the VST effect plug-in to adjust them. For non-professional users, this has a learning threshold, a complicated process, many steps, poor immediacy, and easy misoperation. Once a different VST host software is changed, it is necessary to re-learn and explore the operation method of the VST host software. Summary of the invention
[0004] The purpose of the present invention is to provide a method, system, device and medium for setting VST effector parameters across processes to solve the above-mentioned method provided by the present invention.
[0005] The embodiments of the present invention are implemented by the following technical solutions:
[0006] A method for setting VST effector parameters across processes, comprising:
[0007] S101: Scan the computer memory through the file information characteristics to determine whether there is a supported VST effect plug-in, if not, end the process; if yes, obtain all VST effect plug-ins;
[0008] S102: obtaining the operation instruction of the current user and the information of the currently playing song, transmitting the information of the currently playing song to the server, and obtaining the basic data of the currently playing song through the feedback of the server;
[0009] S103: adjusting the parameters of the VST effector plug-in through the basic data and the operation instruction, generating an adjustment control signal, and outputting it to the sound effect processing module;
[0010] S104: Acquire the current audio signal, process it through the audio effect processing module, and output the processed audio signal.
[0011] In one embodiment of the present invention, the determining whether there is a supported VST effector plug-in comprises:
[0012] By scanning the computer memory, the target process where the VST host containing the VST standard effector is located is obtained;
[0013] Through the information of the target process, all VST effectors are scanned in the target process for feature code comparison. Through feature code comparison, it is determined whether there is a required remote control VST effector. If so, steps S102, S103 and S104 are injected into the VST host. If not, the injection is exited and the process is separated.
[0014] In one embodiment of the present invention, the injecting into the VST host includes:
[0015] By remotely calling the interface function, step S102, step S103 and step S104 are injected into the target process for remote control.
[0016] Through the hook function, the hook function is injected into the message processing loop of the Windows operating system.
[0017] In one embodiment of the present invention, it further includes:
[0018] Obtain the information of the VST effector that needs to be controlled in the cloud through the server, and scan the memory addresses of all VST effectors that need to be supported in the current VST host process;
[0019] The effector control parameter information obtained through the cloud is compared with the controlled parameters provided by the VST effector, and the corresponding parameters are modified.
[0020] In a second aspect, the present invention provides a system for setting VST effector parameters across processes, comprising:
[0021] The judgment module is configured to scan the computer memory through the file information characteristics to determine whether there is a supported VST effector plug-in, and if not, the process is terminated; if so, all VST effector plug-ins are obtained;
[0022] The data acquisition module is configured to acquire the operation instruction of the current user and the information of the currently playing song, transmit the information of the currently playing song to the server, and obtain the basic data of the currently playing song through the feedback of the server;
[0023] An adjustment module is configured to adjust the parameters of the VST effect plug-in through basic data and operation instructions, generate an adjustment control signal, and output it to the sound effect processing module;
[0024] The output module is configured to obtain the current audio signal, process it through the sound effect processing module, and then output the processed audio signal.
[0025] In a third aspect, the present invention provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned method for setting VST effector parameters across processes when executing the computer program.
[0026] In a fourth aspect, the present invention provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, the method for setting VST effector parameters across processes is implemented.
[0027] The technical solution of the embodiment of the present invention has at least the following advantages and beneficial effects:
[0028] The method provided by this solution mainly uses memory monitoring technology to obtain the memory address of the VST effector plug-in, uses hook technology to inject the required process, can adaptively use the effector that adopts the VST standard, accurately find the effector, and then realize cross-process direct control of the VST effector plug-in through cross-process communication. The above method of the present invention can be issued through the server algorithm, remote control and other application functions, which greatly enriches the software usage scenarios of this solution, meets more usage needs, and substantially improves the user experience. In addition, this solution can also automatically scan and automatically connect the required VST effector plug-in to support the sound effect, and the sound effect is set as the result, which can be used immediately after opening, without learning or setting. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0030] Figure 1 is a control flow chart of the present invention;
[0031] Figure 2 It is a schematic diagram of remotely controlling a VST effector according to the present invention. DETAILED DESCRIPTION
[0032] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.
[0033] The division of modules in this application is a logical division. There may be other division methods when implemented in actual applications. For example, multiple modules can be combined or integrated into another system, or some features can be ignored or not executed.
[0034] The modules or submodules described independently may be physically separated or not: they may be implemented by software or hardware, and some modules or submodules may be implemented by software, and the processor may call the software to implement the functions of these modules or submodules, and other modules or submodules may be implemented by hardware, such as by hardware circuits. In addition, some or all of the modules may be selected according to actual needs to achieve the purpose of the present application.
[0035] Please refer to Figure 1-Figure 2 , a method for setting VST effector parameters across processes, comprising:
[0036] S101: Scan the computer memory through the file information characteristics to determine whether there is a supported VST effect plug-in, if not, end the process; if yes, obtain all VST effect plug-ins;
[0037] Select a suitable scanning tool, such as Volume Framework, Management Redline, Rekall and other memory scanning tools. It is necessary to obtain the memory image of the target computer. This can be done through physical access, remote evidence collection or operation through a virtual machine, using the selected tool to load the memory image and analyze the file information features in the memory. These features may include the name, path, size, creation time, modification time, etc. of the file. In this embodiment, the feature used can be the name of the VST effector plug-in.
[0038] S102: obtaining the operation instruction of the current user and the information of the currently playing song, transmitting the information of the currently playing song to the server, and obtaining the basic data of the currently playing song through the feedback of the server;
[0039] S103: adjusting the parameters of the VST effector plug-in through the basic data and the operation instruction, generating an adjustment control signal, and outputting it to the sound effect processing module;
[0040] S104: Acquire the current audio signal, process it through the audio effect processing module, and output the processed audio signal.
[0041] Using the method provided by the present invention, in order to achieve the user's setting requirements, this solution uses memory monitoring technology to obtain the memory address of the VST effector plug-in, uses hook technology to inject the required process, can adaptively use the effector that adopts the VST standard, accurately find the effector's own control algorithm, and then realize the cross-process direct control of the VST effector plug-in method through cross-process communication. Based on this set of independent technical frameworks, it can be expanded such as: server algorithm distribution, remote control and other application functions, which greatly enriches the software usage scenarios of this solution, meets more usage needs, and substantially improves the user experience. It automatically scans and automatically connects the required VST effector plug-ins, and the sound effect is set and obtained, which truly realizes that it can be used immediately after opening, without learning or setting.
[0042] In addition, this solution also provides a method to inject the control module into a specified VST plug-in effector, retrieve the memory location of the effector's own interface, and adjust the plug-in parameters across processes. The software and the control module use an internal communication method with extremely low latency and very good timeliness.
[0043] The VST plug-in effects supported by this solution can continuously update the support range by sending new control algorithms from the server.
[0044] Specifically, this embodiment adopts L UA dynamic script to implement functional logic. The characteristic of the principle of dynamic script execution itself is that after each modification of the script itself, the next execution will be executed according to the modified logic. The script information is stored in the cloud. After the script in the cloud is updated, the next time the user starts the software, the latest execution script will be obtained from the cloud. Therefore, based on this solution, any VST standard plug-in effector can be remotely controlled.
[0045] Among them, the updated content is the new plug-in. To control its parameters, different algorithms need to be injected to support its control.
[0046] For example, currently only plugin A is supported, and the user has also put forward functional requirements for plugin B. We can then send the feature code and control interface algorithm of plugin B through the server, thereby seamlessly implementing support for plugin B.
[0047] In one embodiment of the present invention, the determining whether there is a supported VST effector plug-in comprises:
[0048] S201: Obtain a target process where a VST host containing an effector of the VST standard is located by scanning the computer memory;
[0049] Specifically, you can use the official Windows system-provided series of interfaces for scanning system processes, and combine CreateToo lhe l p32Snapshot, Process32First, Process32Next and other function functions to obtain information about the processes running in the current system, and compare it with the information of the target process that needs to be remotely controlled obtained from the cloud.
[0050] S202: Scan all VST effectors in the target process for feature code comparison based on the target process information. Determine whether there is a required remote control VST effector based on feature code comparison. If yes, inject steps S102, S103 and S104 into the VST host. If no, exit the injection and leave the process to avoid the VST host crash caused by the empty injection loop interfering with the VST host timing.
[0051] Among them, each VST effect has a specific characteristic identification code.
[0052] In one embodiment of the present invention, the injecting into the VST host includes:
[0053] By remotely calling the interface function, step S102, step S103 and step S104 are injected into the target process for remote control.
[0054] For example, through the hook function, the hook function is injected into the message processing loop of the Windows operating system.
[0055] The remote core control module is injected into the Windows operating system through hook technology (Windows hook technology is based on the concept of injecting code. Applications can use Windows API functions). We use multiple hook injection schemes, such as SetWindowsHookEx, which injects a custom hook function into the message processing loop of the Windows operating system. The remote core control module can be a separate external module.
[0056] In one embodiment of the present invention, it further includes:
[0057] S301: Obtain information about the VST effector that needs to be controlled in the cloud through the server, and scan the memory addresses of all VST effectors that need to be supported in the current VST host process;
[0058] S302: The control parameter information of the effector obtained through the cloud is compared with the controllable parameters provided by the VST effector. If the parameters are being remotely controlled by the user, the corresponding parameters are modified to achieve remote control of the VST effector. The parameter information of the VST effector is controlled, such as vocal correction, correction rate and other parameters. In theory, all the parameters of all VST effectors that provide external control can be remotely modified to remotely control the VST effector.
[0059] That is, after entering the target VST host process, the core control module obtains the VST effector information that needs to be controlled from the server cloud, and then scans the memory addresses of all VST effectors that need to be supported in the current VST host process. Through the corresponding interface algorithm, the VST effector can be remotely controlled.
[0060] The principle is briefly described as follows: Each effector follows the VST API open standard, and the standard VSTAP I on the effector is scanned to obtain the parameter interface of all control items. This solution further retrieves the memory address of the control parameter interface through the cloud database feature code comparison, and then injects the corresponding algorithm based on the interface position, thereby achieving the purpose of setting the effector parameters.
[0061] In summary, this software can remotely control all parameters of any effector that complies with the VST standard. In response to different user needs, the control algorithm of the interface that needs to support the effector can be dynamically updated through the cloud server database, and the parameters of the VST effector that needs to be remotely controlled can be configured. This will meet the personalized new demands of users.
[0062] Based on the above scheme, the present invention provides a specific example to solve and apply the above scheme.
[0063] Case 1: Remote setup
[0064] During the live broadcast, the anchor or live broadcast host may not have time to set the sound effects in front of the computer. At this time, her assistant can coordinate with the sound effects required by her live broadcast room and set them for her at any time. And her assistant does not need to be in front of her computer, but can assist her remotely through the network. The required settings can be sent to the server through the client, web page, etc., and the server forwards it to the software, and then the software performs the operation of adjusting the parameters of the VST effect plug-in across processes.
[0065] Case 2: Cross-platform settings
[0066] Since the VST effect plug-in is applied to the Windows system, users can control the VST effect plug-in running on the Windows system across platforms during use. For example, using an Apple phone or tablet, an Android phone or tablet, or other systems, you can use a browser to log in to the server, send the setting parameters to the software through the server, and then the software will perform cross-process injection to control the VST effect plug-in, so as to adjust the required parameters.
[0067] In summary, no matter how to meet the user's setting requirements, this solution uses memory monitoring technology to obtain the memory address of the VST effect plug-in, and uses hook technology to inject the control method of this solution. The control method of this solution can adapt to the effect that adopts the VST standard, accurately find the effect's own control algorithm, and then realize the cross-process direct control of the VST effect plug-in method through cross-process communication. Based on this set of independent technical frameworks, it can be expanded such as: server algorithm distribution, remote control and other application functions, which greatly enriches the software usage scenarios of this solution, meets more usage needs, and substantially improves the user experience.
[0068] In a second aspect, the present invention provides a system for setting VST effector parameters across processes, comprising:
[0069] The judgment module is configured to scan the computer memory through the file information characteristics to determine whether there is a supported VST effector plug-in, and if not, the process is terminated; if so, all VST effector plug-ins are obtained;
[0070] The data acquisition module is configured to acquire the operation instruction of the current user and the information of the currently playing song, transmit the information of the currently playing song to the server, and obtain the basic data of the currently playing song through the feedback of the server;
[0071] An adjustment module is configured to adjust the parameters of the VST effect plug-in through basic data and operation instructions, generate an adjustment control signal, and output it to the sound effect processing module;
[0072] The output module is configured to obtain the current audio signal, process it through the sound effect processing module, and then output the processed audio signal.
[0073] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0074] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. The computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods of various embodiments of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.
[0075] The above are only preferred embodiments of the present invention and are not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. A method for setting VST effector parameters across processes, characterized in that: include: S101: Scan the computer memory through file information features to determine whether there is a supported VST effector plug-in, and if not, end the process; If yes, all VST effect plug-ins are obtained, and the newly supported VST plug-in information features are sent to the client through the server. S102: Acquire the operation instruction of the current user and the information of the currently playing song, transmit the information of the currently playing song to the server, and obtain the basic data of the currently playing song through the feedback of the server; S103: adjusting the parameters of the VST effector plug-in through the basic data and the operation instruction, generating an adjustment control signal, and outputting it to the sound effect processing module; S104: Acquire the current audio signal, process it through the audio effect processing module, and output the processed audio signal.
2. A method for setting VST effector parameters across processes according to claim 1, characterized in that: The determining whether there is a supported VST effector plug-in includes: Get the target process where the VST host containing the VST standard effector is located; Through the information of the target process, all VST effectors are scanned in the target process for feature code comparison. Through feature code comparison, it is determined whether there is a required remote control VST effector. If so, step S102, step S103 and step S104 are injected into the VST host. If not, the injection is exited and the process is separated.
3. A method for setting VST effector parameters across processes according to claim 2, characterized in that: The injection into the VST host includes: By remotely calling the interface function, step S102, step S103 and step S104 are injected into the target process for remote control.
4. A method for setting VST effector parameters across processes according to claim 3, characterized in that: Also includes: Obtain the information of the VST effector that needs to be controlled in the cloud through the server, and scan the memory addresses of all VST effectors that need to be supported in the current VST host process; The effector control parameter information obtained through the cloud is compared with the controlled parameters provided by the VST effector, and the corresponding parameters are modified.
5. A system for setting VST effector parameters across processes, characterized in that: include: The judgment module is configured to scan the computer memory through the file information characteristics to determine whether there is a supported VST effector plug-in, and if not, the process is terminated; if so, all VST effector plug-ins are obtained; The data acquisition module is configured to acquire the operation instruction of the current user and the information of the currently playing song, transmit the information of the currently playing song to the server, and obtain the basic data of the currently playing song through the feedback of the server; An adjustment module is configured to adjust the parameters of the VST effect plug-in through basic data and operation instructions, generate an adjustment control signal, and output it to the sound effect processing module; The output module is configured to obtain the current audio signal, process it through the sound effect processing module, and then output the processed audio signal; The main control module is electrically connected to the judgment module, the data acquisition module, the adjustment module and the output module, and is used to execute a method for setting VST effector parameters across processes as described in any one of claims 1 to 4.
6. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, a method for setting VST effector parameters across processes as described in any one of claims 1 to 4 is implemented.
7. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method for setting VST effector parameters across processes according to any one of claims 1 to 4 is implemented.