A virtual machine-based car-machine Dolby sound effect rendering method and related equipment
Patent Information
- Application Number
- CN202511401204.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-28
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2045-09-28
AI Technical Summary
[0005]本申请实施例提供了一种基于虚拟机的车机杜比音效渲染方法及相关设备,可以解决用户的杜比音效体验下降的问题
在本申请的实施例中,通过利用运行于车机中的虚拟机获取虚拟音频应用的杜比音效数据流,然后对杜比音效数据流进行预处理,得到预处理后的杜比音效数据流以及杜比音效数据流的元数据,再利用车机的杜比解码功能对预处理后的杜比音效数据流进行解码,得到解码后的杜比音效数据流,最后基于元数据对解码后的杜比音效数据流进行渲染,实现杜比音效播放。其中,对杜比音效数据流进行预处理,能够保证杜比音效数据流的完整性和杜比解码所需的参数的完整性,根据元数据对完整的杜比音效数据流进行解码并渲染,在实现利用车机对杜比音效播放的同时保证杜比音效的保真度,提高用户的杜比音效体验。
Smart Images

Figure CN121281530B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of vehicle infotainment technology, and in particular to a virtual machine-based Dolby audio rendering method and related equipment for vehicle infotainment systems. Background Technology
[0002] With the development of in-vehicle intelligent systems, virtualization and containerization technologies are widely used in vehicle platforms to improve system security and resource isolation.
[0003] Existing solutions mostly employ Pulse Code Modulation (PCM) stream forwarding, where the audio stream is decoded in software within the virtual machine and then output to the host as linear PCM. However, this solution only supports basic audio data transmission and cannot fully preserve Dolby audio's multi-channel, dynamic range, and metadata information. Dolby audio requires, during decoding and playback, the preservation of metadata integrity and correct channel mapping, among other things.
[0004] Traditional solutions are unable to meet the above requirements, resulting in a decline in the user's Dolby audio experience. Summary of the Invention
[0005] This application provides a virtual machine-based Dolby audio rendering method and related equipment for in-vehicle systems, which can solve the problem of decreased Dolby audio experience for users.
[0006] In a first aspect, embodiments of this application provide a virtual machine-based Dolby audio rendering method for in-vehicle systems, the Dolby audio rendering method for in-vehicle systems including: The Dolby audio data stream for virtual audio applications is obtained using a virtual machine running in the vehicle's infotainment system. Preprocess the Dolby audio data stream to obtain the preprocessed Dolby audio data stream and the metadata of the Dolby audio data stream; The Dolby decoding function of the vehicle's infotainment system is used to decode the pre-processed Dolby audio data stream to obtain the decoded Dolby audio data stream. The decoded Dolby audio data stream is rendered based on metadata to achieve Dolby audio playback.
[0007] Optionally, metadata includes dynamic range control parameters, channel layout parameters, and spatial information parameters.
[0008] Optionally, the Dolby audio data stream is preprocessed to obtain a preprocessed Dolby audio data stream and its metadata, including: Frame alignment is performed on the Dolby audio data stream to obtain a preprocessed Dolby audio data stream. Identify and extract dynamic range control parameters, channel layout parameters, and spatial information parameters from the Dolby audio data stream; The dynamic range control parameters, channel layout parameters, and spatial information parameters are integrated into a single data set to obtain metadata.
[0009] Optionally, frame alignment is performed on the Dolby audio data stream to obtain a preprocessed Dolby audio data stream, including: Identify multiple frame headers in the Dolby audio data stream; Extract the corresponding complete frame from the Dolby audio data stream based on each frame header; All complete frames are sorted to obtain the preprocessed Dolby audio data stream.
[0010] Optionally, the preprocessed Dolby audio data stream can be decoded using the vehicle's Dolby decoding function to obtain a decoded Dolby audio data stream, including: Identify additional information in the pre-processed Dolby audio data stream; the additional information describes the channel mode of the Dolby audio data stream and whether the low-frequency effects channel is enabled. The preprocessed Dolby audio data stream is restored in the time domain to obtain the restored Dolby audio data stream. Based on the additional information, a decoded Dolby audio data stream is generated from the restored Dolby audio data stream.
[0011] Optionally, the decoded Dolby audio data stream can be rendered based on metadata, including: The vehicle speakers are allocated according to the channel layout parameters and spatial information parameters after decoding the Dolby audio data stream. The dynamic range of the decoded Dolby audio data stream is adjusted according to the dynamic range control parameters to obtain the adjusted Dolby audio data stream. The adjusted Dolby audio data stream is played using the assigned vehicle speakers.
[0012] Optionally, when the in-vehicle infotainment system does not have Dolby decoding capabilities, the Dolby sound rendering methods for the in-vehicle infotainment system also include: The pre-processed Dolby audio data stream is decoded using the vehicle's audio driver to obtain a stereo audio data stream, which is then played using the vehicle's speakers.
[0013] Secondly, embodiments of this application provide a virtual machine-based Dolby audio rendering device for in-vehicle systems, comprising: The acquisition module is used to acquire the Dolby audio data stream of the virtual audio application using a virtual machine running in the vehicle's infotainment system; The preprocessing module is used to preprocess the Dolby audio data stream to obtain the preprocessed Dolby audio data stream and the metadata of the Dolby audio data stream. The decoding module is used to decode the pre-processed Dolby audio data stream using the Dolby decoding function of the vehicle's infotainment system, and obtain the decoded Dolby audio data stream. The rendering module is used to render the decoded Dolby audio data stream based on metadata, so as to achieve Dolby audio playback.
[0014] Thirdly, embodiments of this application provide a terminal device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the aforementioned virtual machine-based Dolby audio rendering method for in-vehicle systems.
[0015] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the aforementioned virtual machine-based Dolby audio rendering method for in-vehicle systems.
[0016] The above-mentioned solution in this application has the following beneficial effects: In the embodiments of this application, a Dolby audio data stream for a virtual audio application is obtained using a virtual machine running in the vehicle's infotainment system. This Dolby audio data stream is then preprocessed to obtain a preprocessed Dolby audio data stream and its metadata. The vehicle's Dolby decoding function is then used to decode the preprocessed Dolby audio data stream, resulting in a decoded Dolby audio data stream. Finally, the decoded Dolby audio data stream is rendered based on the metadata to achieve Dolby audio playback. Preprocessing the Dolby audio data stream ensures its integrity and the completeness of the parameters required for Dolby decoding. Decoding and rendering the complete Dolby audio data stream based on the metadata ensures Dolby audio playback via the vehicle's infotainment system while maintaining Dolby audio fidelity, thus improving the user's Dolby audio experience.
[0017] Other beneficial effects of this application will be described in detail in the following detailed description section. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 A flowchart of a virtual machine-based Dolby audio rendering method for in-vehicle systems provided in an embodiment of this application; Figure 2 A flowchart of host initialization provided in an embodiment of this application; Figure 3 A flowchart illustrating a virtual machine-based Dolby audio rendering method for in-vehicle systems, as provided in an embodiment of this application. Figure 4 A schematic diagram of the structure of a virtual machine-based Dolby audio rendering device for in-vehicle systems provided in an embodiment of this application; Figure 5 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application. Detailed Implementation
[0020] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.
[0021] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.
[0022] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0023] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as meaning "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."
[0024] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0025] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0026] To address the issue of degraded Dolby audio experience for existing users, this application provides a virtual machine-based Dolby audio rendering method for in-vehicle systems. This method utilizes a virtual machine running in the in-vehicle system to acquire the Dolby audio data stream of a virtual audio application. The Dolby audio data stream is then preprocessed to obtain a preprocessed Dolby audio data stream and its metadata. The in-vehicle system's Dolby decoding function is then used to decode the preprocessed Dolby audio data stream, resulting in a decoded Dolby audio data stream. Finally, the decoded Dolby audio data stream is rendered based on the metadata to achieve Dolby audio playback. Preprocessing the Dolby audio data stream ensures its integrity and the completeness of the parameters required for Dolby decoding. Decoding and rendering the complete Dolby audio data stream based on the metadata ensures Dolby audio playback within the in-vehicle system while maintaining Dolby audio fidelity, thus improving the user's Dolby audio experience.
[0027] The following is an illustrative example of the virtual machine-based Dolby audio rendering method for in-vehicle systems provided in this application.
[0028] like Figure 1 As shown, the virtual machine-based Dolby audio rendering method for in-vehicle systems provided in this application includes the following steps: Step 11: Use the virtual machine running in the vehicle to obtain the Dolby audio data stream of the virtual audio application.
[0029] The aforementioned in-vehicle infotainment system requires Dolby audio playback. The aforementioned virtual audio application is an audio application running in a virtual machine, such as a music player.
[0030] In some embodiments of this application, Dolby audio data streams can be obtained by accessing a virtual audio application in a virtual machine.
[0031] Step 12: Preprocess the Dolby audio data stream to obtain the preprocessed Dolby audio data stream and its metadata.
[0032] The aforementioned metadata includes dynamic range control parameters, channel layout parameters, and spatial information parameters. Dynamic range control parameters describe the dynamic range of the Dolby audio data stream (the ratio of the minimum sound pressure level to the maximum sound pressure level, measured in decibels (dB). For example, if the maximum sound pressure level of a piece of music is 90dB and the minimum sound pressure level is 30dB, then the dynamic range of that music is 60dB). Channel layout parameters describe the channel information of the Dolby audio data stream (whether it is mono, stereo, or multi-channel). Spatial information parameters describe the spatial rendering information of the Dolby audio data stream (such as reverberation type, relative position of sound sources, sound field, etc.).
[0033] In some embodiments of this application, the steps of preprocessing the Dolby audio data stream to obtain the preprocessed Dolby audio data stream and its metadata include: The first step is to perform frame alignment on the Dolby audio data stream to obtain the preprocessed Dolby audio data stream.
[0034] Specifically, the process involves identifying multiple frame headers in the Dolby audio data stream; extracting the corresponding complete frame from the Dolby audio data stream based on each frame header; and sorting all the complete frames to obtain the preprocessed Dolby audio data stream.
[0035] For example, the Dolby audio data stream can be scanned to identify the frame headers. Then, based on the length field in the frame header, data of the same length as the length field can be extracted from the Dolby audio data stream to obtain the complete frame corresponding to the frame header. Based on the order of the frame headers in the Dolby audio data stream, all complete frames can be sorted to obtain the preprocessed Dolby audio data stream.
[0036] During frame alignment, any data stream segments that are not captured are discarded to ensure that a complete frame sequence is transmitted to the host.
[0037] The second step is to identify and extract the dynamic range control parameters, channel layout parameters, and spatial information parameters from the Dolby audio data stream.
[0038] Metadata is embedded in the header and side info fields of the Dolby audio data stream.
[0039] For example, the Dolby audio data stream frame header is parsed to obtain channel layout parameters, and additional information is parsed to obtain dynamic range control parameters and spatial information parameters. For instance: Channel layout parameter acquisition: Frame header parsing: Read the control fields after the syncword, such as: Fscod: sampling rate; Bsid: bitstream id; Bsmod: bitstream mode; acmod: channel mode; Lfeon: whether there is a low frequency effects (LFE) channel.
[0040] Dynamic range control parameter acquisition: The header and side info contain relevant fields: dynrng: used for dynamically adjusting loudness at the decoding end; dialnorm: adjusts and organizes the volume reference; compr: provides compression parameters for the channel.
[0041] Spatial information parameter acquisition: Parse the extended fields JOC (indicating the audio encoding method) and spatial coding (indicating the spatial encoding method) in the supplementary information to determine the spatial information parameters.
[0042] The third step is to integrate the dynamic range control parameters, channel layout parameters, and spatial information parameters into a single data set to obtain metadata.
[0043] It should be noted that this step can be run on a virtual machine. After this step, the processed Dolby audio data stream and metadata are encapsulated, and then the encapsulated data is sent to the vehicle system using the Binder interface.
[0044] Step 13: Use the Dolby decoding function of the vehicle's infotainment system to decode the preprocessed Dolby audio data stream to obtain the decoded Dolby audio data stream.
[0045] In some embodiments of this application, the steps of decoding the preprocessed Dolby audio data stream using the Dolby decoding function of the vehicle's infotainment system to obtain the decoded Dolby audio data stream include: The first step is to identify additional information in the pre-processed Dolby audio data stream.
[0046] The above additional information describes the channel mode of the Dolby audio data stream, whether the low-frequency effects channel is enabled, etc.
[0047] For example, additional information can be obtained by scanning the side info field from the preprocessed Dolby audio data.
[0048] The second step is to perform time-domain restoration on the preprocessed Dolby audio data stream to obtain the restored Dolby audio data stream.
[0049] For example, the preprocessed Dolby audio data stream can be sequentially processed by inverse quantization and inverse modified discrete cosine transform to obtain the restored Dolby audio data stream.
[0050] The third step is to generate a decoded Dolby audio data stream based on the restored Dolby audio data stream, according to the additional information.
[0051] For example, based on information such as channel mode and whether the low-frequency effect channel is enabled, a data stream of 5.1, 7.1 or more channel signals is generated, and the generated data stream is used as the decoded Dolby audio data stream.
[0052] It should be noted that the above process is the Dolby decoding function of the vehicle's infotainment system. This step can be implemented using the digital signal processing (DSP, Digital Signal Processor) decoding hardware in the vehicle's infotainment system.
[0053] When the in-vehicle infotainment system does not have Dolby decoding capabilities, the pre-processed Dolby audio data stream is decoded using the in-vehicle infotainment system's audio driver (such as the conventional audio driver MediaCodec, OpenSL ES, Audio Flinger, etc.) to obtain a stereo audio data stream. The stereo audio data stream is then played using the in-vehicle speakers (there are usually multiple in-vehicle speakers, and one speaker can be selected for playback based on the preset priority of the in-vehicle speakers).
[0054] Step 14: Render the decoded Dolby audio data stream based on metadata to achieve Dolby audio playback.
[0055] In some embodiments of this application, the steps of rendering the decoded Dolby audio data stream based on metadata to achieve Dolby audio playback include: The first step is to allocate the decoded Dolby audio data stream to the vehicle speakers based on the channel layout parameters and spatial information parameters.
[0056] For example, the vehicle speakers that need to play the Dolby audio data stream can be determined based on the channel layout parameters and spatial information parameters. For instance, if the channel layout parameters describe two channels (left and right), then the vehicle speakers playing the left channel and the right channel are selected. When physical speakers are insufficient, virtual surround sound and other technologies can be used to process the decoded Dolby audio data stream to achieve virtual surround sound. The aforementioned spatial information parameters are specifically used in the following rendering process: Speaker mapping: Instructs the renderer to map the original sound field location to the nearest physical speaker, for example: map the sound of "30° to the left front" to the driver's A-pillar speaker.
[0057] Virtual sound image localization: When the number of physical speakers is insufficient, spatial information parameters can be combined with virtual surround algorithms to reproduce the sound source at a virtual location using phase difference, delay, and equalization.
[0058] Spatial consistency maintenance: Dolby audio's data stream may contain multiple objects (such as vocals, background music, and ambient sounds). Spatial information parameters ensure that these objects maintain the correct spatial relationships when played on different speakers or virtual sound images.
[0059] Dynamic sound field adjustment: When the in-vehicle environment or seat position changes (such as the driver and passenger switching the main listening zone), the renderer can adjust the channel allocation and virtual rendering in real time based on spatial information parameters to keep the main sound source in the correct spatial orientation.
[0060] The second step is to adjust the dynamic range of the decoded Dolby audio data stream according to the dynamic range control parameters to obtain the adjusted Dolby audio data stream.
[0061] For example, the dynamic range of the decoded Dolby audio data stream is adjusted to the dynamic range described by the dynamic range control parameters to obtain the adjusted Dolby audio data stream. The dynamic range adjustment operation includes: Compression: Reduces most of the gain (to avoid popping sounds due to the small space in the carriage); Extended: Enhance the weaker sound areas to ensure details are not masked by engine noise.
[0062] The third step is to use the assigned car speakers to play the adjusted Dolby audio data stream.
[0063] For example, by using the car's sound card driver, the data of each channel in the adjusted Dolby audio data is transmitted to the corresponding car speakers and played, thus enabling the playback of the Dolby audio data stream.
[0064] It should be noted that, in order to reduce latency, the virtual machine can obtain the host's rendering status and audio playback progress in real time to ensure synchronization and low latency.
[0065] It is worth mentioning that preprocessing the Dolby audio data stream can ensure the integrity of the Dolby audio data stream and the integrity of the parameters required for Dolby decoding. The complete Dolby audio data stream is decoded and rendered based on the metadata, which can ensure the fidelity of Dolby audio while enabling Dolby audio playback through the car's infotainment system, thereby improving the user's Dolby audio experience.
[0066] The method of this application will be illustrated below with a specific example.
[0067] Before Dolby audio rendering, the host (vehicle infotainment system) performs initialization. The initialization process is as follows: Figure 2As shown, after starting the host system service, the audio driver is loaded and the sound card interface is registered, the Binder service interface is initialized, the SELinux policy is configured, cross-domain permissions are assigned, and finally the Dolby decoder or a regular decoder is registered.
[0068] Dolby audio rendering stage, such as Figure 3 As shown, the application in the virtual machine initiates an audio playback request, reads audio frame data, performs frame boundary correction, extracts Dolby metadata, encapsulates the audio stream with metadata, and sends it to the host via the Binder channel. The host processes the audio and checks its decoding capabilities to see if it supports Dolby decoding. If it does, it calls the Dolby decoder, uses hardware DSP decoding, and adjusts the multi-channel and spatial rendering dynamic range. If it does not support Dolby decoding, it calls a regular decoder, performs PCM stereo decoding, and uses a unified audio mixing module. The playback progress and status are output through the driver layer sound card and fed back to the virtual machine via shared memory. The audio is then played using the car speakers.
[0069] The present invention has the following advantages: Enhanced preprocessing: Frame boundary correction and Dolby metadata extraction are introduced on the virtual machine side to ensure the integrity of transmitted audio and the integrity of parameters required for Dolby decoding.
[0070] Dynamic path selection: Based on whether the host has Dolby decoding capabilities, dynamically select either the Dolby decoding path or the normal decoding path to ensure compatibility.
[0071] Multi-channel spatial rendering: The Dolby sound field rendering process is refined on the host side, which is different from traditional PCM stereo decoding.
[0072] Security and Isolation: Binder communication is not only used for inter-process communication, but also ensures secure isolation when the virtual machine calls the host Dolby capabilities.
[0073] The following is an exemplary description of the virtual machine-based Dolby audio rendering device for in-vehicle systems provided in this application.
[0074] like Figure 4 As shown, this application embodiment provides a virtual machine-based Dolby audio rendering device 400 for in-vehicle systems, including: The acquisition module 401 is used to acquire the Dolby audio data stream of the virtual audio application using a virtual machine running in the vehicle system; The preprocessing module 402 is used to preprocess the Dolby audio data stream to obtain the preprocessed Dolby audio data stream and the metadata of the Dolby audio data stream. The decoding module 403 is used to decode the preprocessed Dolby audio data stream using the Dolby decoding function of the vehicle's infotainment system to obtain the decoded Dolby audio data stream. Rendering module 404 is used to render the decoded Dolby audio data stream based on metadata to achieve Dolby audio playback.
[0075] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.
[0076] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0077] like Figure 5 As shown, an embodiment of this application provides a terminal device, wherein the terminal device D10 of this embodiment includes: at least one processor D100 ( Figure 5 The diagram shows only one processor, a memory D101, and a computer program D102 stored in the memory D101 and executable on the at least one processor D100, wherein the processor D100 executes the computer program D102 to implement the steps in any of the above method embodiments.
[0078] Specifically, when the processor D100 executes the computer program D102, it acquires the Dolby audio data stream of the virtual audio application using a virtual machine running in the vehicle's infotainment system. Then, it preprocesses the Dolby audio data stream to obtain a preprocessed Dolby audio data stream and its metadata. Next, it uses the vehicle's Dolby decoding function to decode the preprocessed Dolby audio data stream, obtaining a decoded Dolby audio data stream. Finally, it renders the decoded Dolby audio data stream based on the metadata, enabling Dolby audio playback. Preprocessing the Dolby audio data stream ensures its integrity and the completeness of the parameters required for Dolby decoding. Decoding and rendering the complete Dolby audio data stream based on the metadata ensures Dolby audio fidelity while enabling playback via the vehicle's infotainment system, thus improving the user's Dolby audio experience.
[0079] The processor D100 can be a central processing unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.
[0080] In some embodiments, the memory D101 may be an internal storage unit of the terminal device D10, such as a hard disk or memory of the terminal device D10. In other embodiments, the memory D101 may be an external storage device of the terminal device D10, such as a plug-in hard disk, smart media card (SMC), secure digital card (SD), flash card, etc., equipped on the terminal device D10. Furthermore, the memory D101 may include both internal and external storage units of the terminal device D10. The memory D101 is used to store the operating system, applications, bootloader, data, and other programs, such as the program code of the computer program. The memory D101 can also be used to temporarily store data that has been output or will be output.
[0081] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps described in the various method embodiments above.
[0082] This application provides a computer program product that, when run on a terminal device, enables the terminal device to implement the steps described in the various method embodiments above.
[0083] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying computer program code to a virtual machine-based Dolby audio rendering method device / terminal device, recording media, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.
[0084] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0085] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0086] The above description is the preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this invention, and these improvements and modifications should also be considered within the scope of protection of this invention.
Claims
1. A virtual machine-based Dolby audio rendering method for in-vehicle systems, characterized in that, include: The Dolby audio data stream for virtual audio applications is obtained using a virtual machine running in the vehicle's infotainment system. The virtual machine is used to preprocess the Dolby audio data stream to obtain the preprocessed Dolby audio data stream and the metadata of the Dolby audio data stream. The preprocessed Dolby audio data stream is decoded using the Dolby decoding function of the vehicle's infotainment system to obtain the decoded Dolby audio data stream. The decoded Dolby audio data stream is rendered based on the metadata to achieve Dolby audio playback.
2. The in-vehicle Dolby audio rendering method according to claim 1, characterized in that, The metadata includes dynamic range control parameters, channel layout parameters, and spatial information parameters.
3. The in-vehicle Dolby audio rendering method according to claim 2, characterized in that, The preprocessing of the Dolby audio data stream to obtain the preprocessed Dolby audio data stream and its metadata includes: Frame alignment is performed on the Dolby audio data stream to obtain a preprocessed Dolby audio data stream; Identify and extract dynamic range control parameters, channel layout parameters, and spatial information parameters from the Dolby audio data stream; The dynamic range control parameters, channel layout parameters, and spatial information parameters are integrated into a single data set to obtain metadata.
4. The in-vehicle Dolby audio rendering method according to claim 3, characterized in that, The step of performing frame alignment on the Dolby audio data stream to obtain a preprocessed Dolby audio data stream includes: Identify multiple frame headers in the Dolby audio data stream; Based on each frame header, extract the corresponding complete frame from the Dolby audio data stream; All complete frames are sorted to obtain the preprocessed Dolby audio data stream.
5. The in-vehicle Dolby audio rendering method according to claim 4, characterized in that, The process of decoding the preprocessed Dolby audio data stream using the Dolby decoding function of the vehicle's infotainment system to obtain the decoded Dolby audio data stream includes: Identify additional information in the preprocessed Dolby audio data stream; the additional information is used to describe the channel mode of the Dolby audio data stream and whether the low-frequency effects channel is enabled; The preprocessed Dolby audio data stream is restored in the time domain to obtain the restored Dolby audio data stream; Based on the additional information, a decoded Dolby audio data stream is generated from the restored Dolby audio data stream.
6. The in-vehicle Dolby audio rendering method according to claim 2, characterized in that, The rendering of the decoded Dolby audio data stream based on the metadata includes: The vehicle speakers are allocated to the decoded Dolby audio data stream according to the channel layout parameters and spatial information parameters. The dynamic range of the decoded Dolby audio data stream is adjusted according to the dynamic range control parameters to obtain the adjusted Dolby audio data stream; The adjusted Dolby audio data stream is played using the assigned vehicle speakers.
7. The in-vehicle Dolby audio rendering method according to claim 1, characterized in that, When the vehicle infotainment system does not have Dolby decoding capabilities, the vehicle infotainment system Dolby sound rendering method further includes: The preprocessed Dolby audio data stream is decoded using the vehicle's audio driver to obtain a stereo audio data stream, which is then played using the vehicle's onboard speakers.
8. A virtual machine-based Dolby audio rendering device for in-vehicle systems, characterized in that, include: The acquisition module is used to acquire the Dolby audio data stream of the virtual audio application using a virtual machine running in the vehicle's infotainment system; The preprocessing module is used to preprocess the Dolby audio data stream through the virtual machine to obtain the preprocessed Dolby audio data stream and the metadata of the Dolby audio data stream; The decoding module is used to decode the preprocessed Dolby audio data stream using the Dolby decoding function of the vehicle's infotainment system, to obtain the decoded Dolby audio data stream. The rendering module is used to render the decoded Dolby audio data stream based on the metadata, so as to achieve Dolby audio playback.
9. A terminal 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, it implements the virtual machine-based Dolby audio rendering method for in-vehicle systems as described in any one of claims 1 to 7.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the virtual machine-based Dolby audio rendering method for in-vehicle systems as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Audio data access method for Android equipment
CN112615853A
Metadata for spatial audio rendering
CN119071713A