WO2020080099A1 - 信号処理装置および方法、並びにプログラム - Google Patents
信号処理装置および方法、並びにプログラム Download PDFInfo
- Publication number
- WO2020080099A1 WO2020080099A1 PCT/JP2019/038846 JP2019038846W WO2020080099A1 WO 2020080099 A1 WO2020080099 A1 WO 2020080099A1 JP 2019038846 W JP2019038846 W JP 2019038846W WO 2020080099 A1 WO2020080099 A1 WO 2020080099A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- signal
- silence
- virtual speaker
- audio object
- silence information
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 283
- 238000000034 method Methods 0.000 title claims abstract description 174
- 238000004364 calculation method Methods 0.000 claims abstract description 138
- 238000009877 rendering Methods 0.000 claims abstract description 87
- 230000008569 process Effects 0.000 claims description 150
- 238000001228 spectrum Methods 0.000 claims description 100
- 238000012546 transfer Methods 0.000 claims description 16
- 238000003672 processing method Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 22
- 230000005236 sound signal Effects 0.000 description 37
- 230000006870 function Effects 0.000 description 17
- 238000009499 grossing Methods 0.000 description 17
- 230000003595 spectral effect Effects 0.000 description 12
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 10
- 101100365087 Arabidopsis thaliana SCRA gene Proteins 0.000 description 6
- 101150087667 spk1 gene Proteins 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000010521 absorption reaction Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 210000005069 ears Anatomy 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 210000003454 tympanic membrane Anatomy 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/308—Electronic adaptation dependent on speaker or headphone connection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R3/00—Circuits for transducers, loudspeakers or microphones
- H04R3/04—Circuits for transducers, loudspeakers or microphones for correcting frequency response
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S3/00—Systems employing more than two channels, e.g. quadraphonic
- H04S3/008—Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/302—Electronic adaptation of stereophonic sound system to listener position or orientation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/302—Electronic adaptation of stereophonic sound system to listener position or orientation
- H04S7/303—Tracking of listener position or orientation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/307—Frequency adjustment, e.g. tone control
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0212—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2430/00—Signal processing covered by H04R, not provided for in its groups
- H04R2430/01—Aspects of volume control, not necessarily automatic, in sound systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2460/00—Details of hearing devices, i.e. of ear- or headphones covered by H04R1/10 or H04R5/033 but not provided for in any of their subgroups, or of hearing aids covered by H04R25/00 but not provided for in any of its subgroups
- H04R2460/03—Aspects of the reduction of energy consumption in hearing devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/11—Positioning of individual sound objects, e.g. moving airplane, within a sound field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/01—Enhancing the perception of the sound image or of the spatial distribution using head related transfer functions [HRTF's] or equivalents thereof, e.g. interaural time difference [ITD] or interaural level difference [ILD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/03—Application of parametric coding in stereophonic audio systems
Definitions
- the present technology relates to a signal processing device and method, and a program, and particularly relates to a signal processing device and method and a program that can reduce the amount of calculation.
- a moving sound source in addition to the conventional 2-channel stereo method and 5.1-channel multi-channel stereo method, a moving sound source is treated as an independent audio object, and the position information of the object is stored together with the audio object signal data. It can be encoded as metadata.
- playback can be performed in various viewing environments with different numbers and arrangements of speakers. Further, it is possible to easily process the sound of the specific sound source at the time of reproduction, such as adjusting the volume of the sound of the specific sound source and adding an effect to the sound of the specific sound source, which are difficult with the conventional encoding method.
- the decoding side decodes the bitstream to obtain an object signal which is an audio signal of an audio object and metadata including object position information indicating the position of the audio object in space.
- a rendering process is performed to render the object signal to each of a plurality of virtual speakers virtually arranged in the space.
- a method called three-dimensional VBAP Vector Based Amplitude Panning
- VBAP Vector Based Amplitude Panning
- HRTF Head Related Transfer Function
- object audio requires a large amount of computation for audio playback processing such as rendering processing and HRTF processing.
- the present technology has been made in view of such a situation, and makes it possible to reduce the calculation amount.
- a signal processing device is based on audio object silence information indicating whether a signal of an audio object is a silent signal, and at least one of decoding processing and rendering processing of an object signal of the audio object. Either process is performed.
- a signal processing method or program is based on audio object silence information indicating whether or not a signal of an audio object is a silence signal, of decoding processing and rendering processing of an object signal of the audio object. It includes a step of performing at least one of the processes.
- At least one of decoding processing and rendering processing of an object signal of the audio object is performed. Processing is performed.
- FIG. 19 is a diagram illustrating a configuration example of a computer.
- the present technology is capable of omitting at least a part of the processing in the silent section or outputting a predetermined value as a value corresponding to the calculation result without actually performing the calculation in the silent section.
- the calculation amount can be reduced without causing an error in the output audio signal. This makes it possible to obtain a high sense of reality while reducing the amount of calculation.
- an object signal which is an audio signal for reproducing the sound of the audio object, and metadata including object position information indicating the position of the audio object in space are obtained.
- a rendering process for rendering an object signal to a virtual speaker virtually arranged in the space is performed to reproduce the sound output from each virtual speaker.
- Virtual speaker signal of is generated.
- HRTF processing is performed based on the virtual speaker signal of each virtual speaker, and an output audio signal for outputting sound from the headphones worn by the user or the speaker arranged in the real space is generated.
- VBAP is one of the rendering methods generally called panning, and among the virtual speakers existing on the sphere surface with the user position as the origin, the three virtual speakers closest to the audio object also existing on the sphere surface are used. In contrast, rendering is performed by distributing gains.
- FIG. 2 there is a user U11 who is a listener in a three-dimensional space, and three virtual speakers SP1 to SP3 are arranged in front of the user U11.
- the position of the head of the user U11 is the origin O
- the virtual speakers SP1 to SP3 are located on the surface of the sphere having the origin O as the center.
- the gain of the audio object is distributed to the virtual speakers SP1 to SP3 around the position VSP1.
- the position VSP1 is represented by a three-dimensional vector P having the origin O as a start point and the position VSP1 as an end point.
- the vector L 1 to the vector L 3 a three-dimensional vector whose end point positions of the respective virtual speakers SP1 to virtual speaker SP3, the vector P, as shown in the following equation (1) vector It can be represented by a linear sum of L 1 to vector L 3 .
- the inverse matrix L 123 -1 can be obtained in advance. it can.
- the triangular area TR11 surrounded by three virtual speakers on the sphere surface shown in Fig. 2 is called a mesh.
- the virtual speaker signal of each virtual speaker can be obtained by performing the calculation of the following expression (3).
- G (m, n) is the object signal S (n, t) of the nth audio object to obtain the virtual speaker signal SP (m, t) for the mth virtual speaker.
- the gain to be multiplied is shown. That is, the gain G (m, n) indicates the gain distributed to the m-th virtual speaker for the n-th audio object, which is obtained by the above equation (2).
- the calculation of this formula (3) is the process with the highest calculation cost. That is, the calculation of the equation (3) is the processing with the largest calculation amount.
- FIG. 3 five virtual speakers SP11-1 to SP11-5 are arranged in a circle in a space.
- the virtual speakers SP11-1 to SP11-5 will be simply referred to as virtual speakers SP11 unless it is necessary to distinguish them.
- the user U21 who is the listener is located at a position surrounded by the five virtual speakers SP11, that is, at the center position of the circle where the virtual speakers SP11 are arranged. Therefore, in the HRTF process, an output audio signal for realizing audio reproduction as if the user U21 were listening to the sound output from each virtual speaker SP11 is generated.
- the position where the user U21 is located is set as the listening position, and the sound based on the virtual speaker signal obtained by the rendering on each of the five virtual speakers SP11 is reproduced by the headphones.
- the sound output (emitted) from the virtual speaker SP11-1 based on the virtual speaker signal reaches the eardrum of the left ear of the user U21 through the route indicated by the arrow Q11. Therefore, the characteristics of the sound output from the virtual speaker SP11-1 should change depending on the spatial transfer characteristics from the virtual speaker SP11-1 to the left ear of the user U21, the shape and reflection / absorption characteristics of the face and ears of the user U21. Is.
- the spatial transmission characteristics from the virtual speaker SP11-1 to the left ear of the user U21, the shapes of the face and ears of the user U21, and the reflection / absorption characteristics are added to the virtual speaker signal of the virtual speaker SP11-1.
- the transfer function H_L_SP11 it is possible to obtain an output audio signal that reproduces the sound from the virtual speaker SP11-1 that would be heard by the left ear of the user U21.
- the sound output from the virtual speaker SP11-1 based on the virtual speaker signal passes through the route indicated by the arrow Q12 and reaches the eardrum of the right ear of the user U21. Therefore, the spatial transmission characteristic from the virtual speaker SP11-1 to the right ear of the user U21, the shape of the face and the ear of the user U21, the reflection absorption characteristic, and the like are added to the virtual speaker signal of the virtual speaker SP11-1.
- the transfer function H_R_SP11 it is possible to obtain an output audio signal that reproduces the sound from the virtual speaker SP11-1 that would be heard by the right ear of the user U21.
- each virtual speaker signal is transmitted to the left ear of each virtual speaker signal.
- the function may be convoluted and the resulting signals may be summed together to form the left channel output audio signal.
- the transfer function for the right ear of each virtual speaker is convolved with each virtual speaker signal, and the resulting signals are added together to form the output audio signal of the right channel. Good.
- HRTF processing is also called transaural processing.
- L ( ⁇ ) be the frequency-represented left-ear output audio signal, that is, the left channel output audio signal
- R ( ⁇ ) be the frequency-expressed right-ear output audio signal, that is, the right channel output audio signal.
- L ( ⁇ ) and R ( ⁇ ) of can be obtained by calculating the following equation (4).
- ⁇ represents the frequency
- the virtual speaker signal of the frequency ⁇ of is shown.
- the virtual speaker signal SP (m, ⁇ ) can be obtained by time-frequency converting the above-described virtual speaker signal SP (m, t).
- H_L (m, ⁇ ) is multiplied by the virtual speaker signal SP (m, ⁇ ) for the m-th virtual speaker to obtain the output audio signal L ( ⁇ ) of the left channel.
- the transfer function for the left ear is shown.
- H_R (m, ⁇ ) represents the transfer function for the right ear.
- a large amount of calculation is required when the output audio signal is generated by performing the decoding process, the rendering process, and the HRTF process as described above, and the object audio is played back using headphones or a small number of real speakers. Further, the amount of calculation increases as the number of audio objects increases.
- the information amount of the audio object in the bitstream is used to reduce the calculation amount of decoding processing, rendering processing, and HRTF processing in a silent section with a small calculation amount without calculating the energy of the object signal. I made it possible.
- FIG. 4 is a diagram showing a configuration example of an embodiment of a signal processing device to which the present technology is applied.
- the signal processing device 11 shown in FIG. 4 has a decoding processing unit 21, a silence information generation unit 22, a rendering processing unit 23, and an HRTF processing unit 24.
- the decoding processing unit 21 receives and decodes (decodes) the transmitted input bitstream, and supplies the object signal and metadata of the audio object obtained as a result to the rendering processing unit 23.
- the object signal is an audio signal for reproducing the sound of the audio object
- the metadata includes at least object position information indicating the position of the audio object in the space.
- the decoding processing unit 21 supplies the silence information generating unit 22 with information regarding the spectrum in each time frame extracted from the input bit stream, and whether the silence information generating unit 22 is silent. Receives information indicating whether or not it is received. Then, the decoding processing unit 21 performs the decoding process while omitting the processing of the silent section based on the information indicating whether or not there is silence supplied from the silence information generation unit 22.
- the silence information generation unit 22 receives supply of various information from the decoding processing unit 21 and the rendering processing unit 23, generates information indicating whether or not there is silence based on the supplied information, and the decoding processing unit 21, It is supplied to the rendering processing unit 23 and the HRTF processing unit 24.
- the rendering processing unit 23 sends and receives information to and from the silence information generation unit 22, and according to the information indicating whether or not there is silence supplied from the silence information generation unit 22, the object signal supplied from the decoding processing unit 21. And a rendering process based on the metadata.
- the rendering processing unit 23 supplies the virtual speaker signal obtained by the rendering process to the HRTF processing unit 24.
- the HRTF processing unit 24 performs the HRTF processing based on the virtual speaker signal supplied from the rendering processing unit 23 according to the information indicating whether or not the sound is supplied from the silence information generating unit 22, and the result is obtained.
- the output audio signal thus obtained is output to the subsequent stage.
- the process of the silent section is omitted based on the information indicating whether or not there is silence.
- step S11 the decoding processing unit 21 generates an object signal by performing decoding processing on the supplied input bit stream while exchanging information with the silence information generation unit 22, and renders the object signal and metadata. Supply to the part 23.
- the silence information generation unit 22 generates spectrum silence information indicating whether each time frame (hereinafter, also simply referred to as a frame) is silence, and the decoding processing unit 21 generates the spectrum silence information based on the spectrum silence information.
- a decoding process is executed in which some processes are omitted.
- the silence information generation unit 22 generates audio object silence information indicating whether the object signal of each frame is a silence signal and supplies the audio object silence information to the rendering processing unit 23.
- step S12 the rendering processing unit 23 generates a virtual speaker signal by performing rendering processing based on the object signal and the metadata supplied from the decoding processing unit 21 while exchanging information with the silence information generation unit 22. And supplies it to the HRTF processing unit 24.
- the silent information generator 22 generates virtual speaker silence information indicating whether the virtual speaker signal of each frame is a silence signal.
- rendering processing is performed based on the audio object silence information and the virtual speaker silence information supplied from the silence information generation unit 22. Especially in the rendering process, the process is omitted in the silent section.
- step S13 the HRTF processing unit 24 generates an output audio signal by performing the HRTF process, which is omitted in the silent section, based on the virtual speaker silence information supplied from the silence information generating unit 22, and outputs it to the subsequent stage. To do.
- the output audio signal is output in this way, the output audio signal generation process ends.
- the signal processing device 11 generates spectral silence information, audio object silence information, and virtual speaker silence information as information indicating whether or not there is silence, and performs decoding processing and rendering based on those information. Processing and HRTF processing to generate an output audio signal.
- the spectral silence information, the audio object silence information, and the virtual speaker silence information are generated based on information obtained directly or indirectly from the input bitstream.
- processing is omitted in a silent section, and the amount of calculation can be reduced without impairing the sense of presence. In other words, it is possible to reproduce the object audio with a high sense of reality while reducing the calculation amount.
- the decoding processing unit 21 is configured as shown in FIG.
- the decoding processing unit 21 has a demultiplexing unit 51, a sub information decoding unit 52, a spectrum decoding unit 53, and an IMDCT (Inverse Modified Discrete Cosine Transform) processing unit 54.
- IMDCT Inverse Modified Discrete Cosine Transform
- the demultiplexing unit 51 demultiplexes the supplied input bitstream to extract (separate) audio object data and metadata from the input bitstream, and obtain the obtained audio object data from the sub information decoding unit 52. And the metadata to the rendering processing unit 23.
- the audio object data is data for obtaining an object signal, and includes sub information and spectrum data.
- MDCT Modified Discrete Cosine Transform
- the spectrum data is encoded by a context-based arithmetic encoding method. Then, the encoded spectrum data and the encoded sub information required for decoding the spectrum data are stored in the input bitstream as audio object data.
- the metadata includes at least object position information that is spatial position information indicating the position of the audio object in the space.
- metadata is often encoded (compressed).
- the metadata is encoded here for simplicity of description. I will continue the explanation as if not.
- the sub information decoding unit 52 decodes the sub information included in the audio object data supplied from the demultiplexing unit 51, and performs spectrum decoding on the decoded sub information and the spectrum data included in the supplied audio object data. It is supplied to the part 53.
- the audio object data including the decoded sub information and the encoded spectrum data is supplied to the spectrum decoding unit 53.
- data other than the spectrum data is used as the sub information.
- the sub-information decoding unit 52 supplies max_sfb, which is information regarding the spectrum of each frame, among the sub-information obtained by decoding, to the silence information generation unit 22.
- the sub-information is necessary for IMDCT processing and spectrum data decoding, such as information indicating the type of the conversion window selected during MDCT processing for the object signal and the number of scale factor bands for which spectrum data has been encoded. Contains information.
- max_sfb is encoded in 4 bits or 6 bits in ics_info () according to the type of conversion window selected during MDCT processing, that is, window_sequence.
- the max_sfb is information indicating the number of encoded spectrum data, that is, information indicating the number of scale factor bands in which the spectrum data is encoded.
- the audio object data includes spectrum data for the number of scale factor bands indicated by max_sfb.
- the frame is a silent frame (silent section). be able to.
- the silence information generation unit 22 generates the spectrum silence information of each audio object for each frame based on the max_sfb of each audio object for each frame supplied from the sub information decoding unit 52, and the spectrum decoding unit 53 and the IMDCT processing unit. Supply to 54.
- spectral silence information indicating that the target frame is a silent section that is, the object signal is a silent signal is generated.
- the value of max_sfb is not 0, the spectrum silence information indicating that the target frame is the voiced section, that is, the object signal is the voiced signal is generated.
- the spectrum silence information when the value of the spectrum silence information is 1, it is indicated that the spectrum silence information is in the silent section, and when the value of the spectrum silence information is 0, the spectrum silence information is in the sound section. That is, it means that it is not a silent section.
- the silence information generation unit 22 detects a silence interval (silence frame) based on the sub information max_sfb, and generates spectrum silence information indicating the detection result. In this way, the calculation of the energy of the object signal is not required, and it is determined that the value of max_sfb extracted from the input bitstream is 0, and the sound is silenced with an extremely small processing amount (calculation amount). Can be specified.
- This coding method can improve the coding efficiency by 30 to 40 bits per channel compared to the coding in the MPEG-H Part 3: 3D audio standard. You may make it apply.
- the sub-information decoding unit 52 extracts a flag included as sub-information, which indicates whether or not the frame of the audio object can be regarded as silence, that is, whether or not spectrum data has been encoded, It is supplied to the silent information generation unit 22. Then, the silence information generation unit 22 generates the spectrum silence information based on the flag supplied from the sub information decoding unit 52.
- the silence information generation unit 22 determines whether or not the frame is a silence by calculating the energy of the spectrum data, and according to the determination result. Spectral silence information may be generated.
- the spectrum decoding unit 53 decodes the spectrum data supplied from the sub information decoding unit 52, based on the sub information supplied from the sub information decoding unit 52 and the spectrum silence information supplied from the silence information generation unit 22. .
- the spectrum decoding unit 53 decodes the spectrum data by a decoding method corresponding to the context-based arithmetic coding method.
- one output coded data does not exist for one input data, but final output coded data is obtained by transition of a plurality of input data.
- the appearance frequency table used to encode input data becomes huge, or multiple appearance frequency tables are switched and used, so the ID indicating the appearance frequency table is encoded separately. Must be sent to the decryption side.
- the characteristics (contents) of the previous frame of the spectrum data of interest or the characteristics of the spectrum data of a frequency lower than the frequency of the spectrum data of interest are used as context. Desired. Then, the appearance frequency table to be used is automatically determined based on the calculation result of the context.
- the decoding side must always calculate the context, but the appearance frequency table can be made compact, and the ID of the appearance frequency table does not have to be sent separately to the decoding side. There is an advantage that you may.
- the spectrum decoding unit 53 appropriately supplies the sub information supplied from the sub information decoding unit 52.
- the context is calculated using the decoding result of the information and other spectrum data.
- the spectrum decoding unit 53 selects a value determined for the calculation result of the context, that is, the appearance frequency table indicated by the ID, and decodes the spectrum data using the appearance frequency table.
- the spectrum decoding unit 53 supplies the decoded spectrum data and the sub information to the IMDCT processing unit 54.
- the spectrum data is not obtained in this frame. Since it is 0 (zero data), the ID indicating the appearance frequency table obtained by the context calculation always has the same value. That is, the same appearance frequency table is always selected.
- the spectrum decoding unit 53 does not calculate the context when the value of the spectrum silence information is 1, and selects the appearance frequency table indicated by the ID of the predetermined specific value, and the appearance frequency table To decode the spectral data.
- the context is not calculated for the spectrum data which is considered to be the data of the silent signal.
- the value corresponding to the calculation result of the context that is, the ID of the specific value predetermined as the value indicating the calculation result of the context is used as an output to select the appearance frequency table, and the subsequent decoding process is performed. It will be.
- the context is not calculated according to the spectral silence information, that is, the calculation of the context is omitted, and a predetermined value is output as a value indicating the calculation result, so that the It is possible to reduce the calculation amount of the processing in. Moreover, in this case, as the decoding result of the spectrum data, the same result as when the context calculation is not omitted can be obtained.
- the IMDCT processing unit 54 performs IMDCT (Inverse Modified Discrete Cosine Transform) based on the spectrum data and the sub information supplied from the spectrum decoding unit 53 in accordance with the spectrum silence information supplied from the silence information generation unit 22, and The resulting object signal is supplied to the rendering processing unit 23.
- IMDCT Inverse Modified Discrete Cosine Transform
- IMDCT processing is performed according to the formula described in ⁇ INTERNATIONAL STANDARDISO / IEC23008-3 First edition edition 2015-10-15 Information technology-high efficiency coding and and media media delivery in heterogeneous environment- Part3: 3D audio. .
- the IMDCT processing section 54 performs IMDCT processing on the spectrum data. Outputs zero data without processing.
- IMDCT processing is not actually performed, and zero data is output as the result of IMDCT processing.
- “0” zero data
- 0 zero data
- the IMDCT processing unit 54 receives the time signal obtained as the processing result of the IMDCT of the current frame to be processed and the time signal obtained as the processing result of the IMDCT of the frame immediately preceding the current frame.
- the object signal of the current frame is generated and output by performing overlap synthesis of.
- the IMDCT processing unit 54 By omitting the IMDCT processing in the silent section in the IMDCT processing unit 54, it is possible to reduce the calculation amount of the entire IMDCT without causing any error in the object signal obtained as an output. That is, it is possible to obtain the same object signal as in the case where the IMDCT processing is not omitted, while reducing the calculation amount of the entire IMDCT.
- the decoding of spectrum data and IMDCT processing occupy most of the decoding processing in audio object decoding processing, so that IMDCT processing can be reduced significantly Leads to.
- the IMDCT processing unit 54 outputs the silence frame information indicating whether or not the time signal of the current frame obtained as a result of the IMDCT processing is zero data, that is, whether or not the signal is in the silent section. 22.
- the silence information generation unit 22 generates the audio object silence information based on the silence frame information of the current frame to be processed, which is supplied from the IMDCT processing unit 54, and the silence frame information of the temporally immediately preceding frame of the current frame. It is generated and supplied to the rendering processing unit 23. In other words, the silence information generation unit 22 generates the audio object silence information based on the silence frame information obtained as a result of the decoding process.
- the silence information generation unit 22 determines that the object signal of the current frame is a silence signal. Generates audio object silence information.
- the silence information generation unit 22 determines that the object signal of the current frame is present when at least one of the silence frame information of the current frame and the silence frame information of the immediately previous frame is information indicating that the signal is not a silence section signal.
- the audio object silence information indicating that it is a sound signal is generated.
- the value of the audio object silence information when the value of the audio object silence information is 1, it is said to indicate a silence signal, and when the value of the audio object silence information is 0, it is a voice signal, that is, the silence signal. It is said to indicate that it is not.
- the IMDCT processing unit 54 generates the object signal of the current frame by performing overlap synthesis with the time signal obtained as the processing result of the IMDCT of the immediately preceding frame. Therefore, since the object signal of the current frame is affected by the immediately preceding frame, it is necessary to take the result of overlap synthesis, that is, the IMDCT processing result in the immediately preceding frame, into consideration when generating the audio object silence information.
- the object signal of the current frame is silenced only when the value of max_sfb is 0 in both the current frame and the immediately preceding frame, that is, when zero data is obtained as the processing result of IMDCT. It is considered to be a signal of a section.
- step S11 in the output audio signal generation process described with reference to FIG. 5 will be described in more detail. That is, hereinafter, the object signal generation processing performed by the decoding processing unit 21 and the silence information generation unit 22 corresponding to step S11 of FIG. 5 will be described with reference to the flowchart of FIG. 7.
- step S41 the demultiplexing unit 51 demultiplexes the supplied input bitstream, supplies the resulting audio object data to the sub information decoding unit 52, and supplies the metadata to the rendering processing unit 23. .
- step S42 the sub-information decoding unit 52 decodes the sub-information included in the audio object data supplied from the demultiplexing unit 51, and outputs the decoded sub-information and the spectrum data included in the supplied audio object data. Is supplied to the spectrum decoding unit 53. Further, the sub information decoding unit 52 supplies max_sfb included in the sub information to the silence information generation unit 22.
- the silence information generation unit 22 generates spectrum silence information based on max_sfb supplied from the sub information decoding unit 52, and supplies it to the spectrum decoding unit 53 and the IMDCT processing unit 54. For example, when the value of max_sfb is 0, spectral silence information having a value of 1 is generated, and when the value of max_sfb is not 0, spectral silence information having a value of 0 is generated.
- step S44 the spectrum decoding unit 53 supplies the spectrum data supplied from the sub information decoding unit 52 based on the sub information supplied from the sub information decoding unit 52 and the spectrum silence information supplied from the silence information generating unit 22. To decrypt.
- the spectrum decoding unit 53 decodes the spectrum data by a decoding method corresponding to the context-based arithmetic coding method, but when the value of the spectrum silence information is 1, the calculation of the context at the time of decoding is omitted. Decode the spectrum data using a specific appearance frequency table.
- the spectrum decoding unit 53 supplies the decoded spectrum data and the sub information to the IMDCT processing unit 54.
- step S45 the IMDCT processing unit 54 performs IMDCT on the basis of the spectrum data and the sub information supplied from the spectrum decoding unit 53 in accordance with the spectrum silence information supplied from the silence information generation unit 22, and the result is obtained.
- the object signal is supplied to the rendering processing unit 23.
- the IMDCT processing unit 54 performs overlap synthesis using zero data without performing IMDCT processing, and generates an object signal. .
- the IMDCT processing unit 54 also generates silence frame information according to whether the IMDCT processing result is zero data and supplies the silence frame information to the silence information generation unit 22.
- the above demultiplexing, sub information decoding, spectrum data decoding, and IMDCT processing are performed as input bit stream decoding processing.
- step S46 the silence information generation unit 22 generates the audio object silence information based on the silence frame information supplied from the IMDCT processing unit 54 and supplies it to the rendering processing unit 23.
- the audio object silence information of the current frame is generated based on the silence frame information of the current frame and the frame immediately before it.
- the object signal generation process ends.
- the decoding processing unit 21 and the silence information generation unit 22 decode the input bitstream and generate an object signal.
- the calculation amount of decoding processing can be performed without causing any error in the object signal obtained as a decoding result. Can be reduced. As a result, a high degree of realism can be obtained with a small amount of calculation.
- the rendering processing unit 23 shown in FIG. 8 has a gain calculation unit 81 and a gain application unit 82.
- the gain calculation unit 81 calculates a gain corresponding to each virtual speaker for each audio object, that is, for each object signal, based on the object position information included in the metadata supplied from the demultiplexing unit 51 of the decoding processing unit 21. And supplies it to the gain application unit 82. Further, the gain calculation unit 81 outputs, as silence information, search mesh information indicating a mesh among the plurality of meshes in which the gains of the virtual speakers forming the mesh, that is, the virtual speakers at the three vertices of the mesh are all above a predetermined value. It is supplied to the generation unit 22.
- the silence information generation unit 22 generates virtual speaker silence information of each virtual speaker based on the search object mesh information supplied from the gain calculation unit 81 and the audio object silence information for each audio object, that is, for each object signal for each frame. To do.
- the value of the virtual speaker silence information is set to 1 when the virtual speaker signal is a signal in a silent section (silent signal), and when the virtual speaker signal is not a signal in a silent section, that is, a signal in a sound section (sound signal). ) Is set to 0.
- the gain application unit 82 is supplied with the audio object silence information and the virtual speaker silence information from the silence information generation unit 22, the gain is supplied from the gain calculation unit 81, and the object signal from the IMDCT processing unit 54 of the decoding processing unit 21. Is supplied.
- the gain applying unit 82 multiplies the object signal by the gain from the gain calculating unit 81 for each virtual speaker based on the audio object silence information and the virtual speaker silence information, and adds the object signal multiplied by the gain to generate the virtual signal. Generate a speaker signal.
- the gain application unit 82 does not perform arithmetic processing for generating a virtual speaker signal for a silent object signal or a silent virtual speaker signal according to the audio object silence information and the virtual speaker silence information. . That is, at least part of the calculation processing for generating the virtual speaker signal is omitted.
- the gain application unit 82 supplies the obtained virtual speaker signal to the HRTF processing unit 24.
- the gain calculation process for obtaining the gain of the virtual speaker more specifically, part of the gain calculation process described later with reference to FIG. 10 and the gain application process for generating the virtual speaker signal are performed. This process is performed as a rendering process.
- step S12 in the output audio signal generation process described with reference to FIG. 5 will be described in more detail. That is, the virtual speaker signal generation processing performed by the rendering processing unit 23 and the silence information generation unit 22 corresponding to step S12 of FIG. 5 will be described below with reference to the flowchart of FIG.
- step S71 the gain calculation unit 81 and the silence information generation unit 22 perform gain calculation processing.
- the gain calculation unit 81 calculates the gain of each virtual speaker by calculating the above-mentioned formula (2) for each object signal based on the object position information included in the metadata supplied from the demultiplexing unit 51. It is calculated and supplied to the gain application unit 82. The gain calculation unit 81 also supplies the search mesh information to the silence information generation unit 22.
- the silence information generation unit 22 generates virtual speaker silence information for each object signal based on the search mesh information supplied from the gain calculation unit 81 and the audio object silence information.
- the silence information generation unit 22 supplies the audio object silence information and the virtual speaker silence information to the gain application unit 82, and also supplies the virtual speaker silence information to the HRTF processing unit 24.
- step S72 the gain application unit 82 generates a virtual speaker signal based on the audio object silence information, the virtual speaker silence information, the gain from the gain calculation unit 81, and the object signal from the IMDCT processing unit 54.
- the gain application unit 82 does not perform at least a part of the calculation process for generating the virtual speaker signal in accordance with the audio object silence information and the virtual speaker silence information, that is, omits the calculation process of the rendering process. Reduce the amount of calculation.
- the processing in the interval where the object signal and the virtual speaker signal are silent is omitted, and as a result, the completely same virtual speaker signal as when the processing is not omitted is obtained. That is, the calculation amount can be reduced without causing an error in the virtual speaker signal.
- the above-described calculation of gain (calculation) and processing for generating a virtual speaker signal are performed by the rendering processing unit 23 as rendering processing.
- the gain application unit 82 supplies the obtained virtual speaker signal to the HRTF processing unit 24, and the virtual speaker signal generation process ends.
- the rendering processing unit 23 and the silence information generation unit 22 generate the virtual speaker silence information and the virtual speaker signal.
- the audio object silence information and the virtual speaker silence information by omitting at least a part of the calculation process for generating the virtual speaker signal, there is no error in the virtual speaker signal obtained as a result of the rendering process. It is possible to reduce the calculation amount of the rendering process without causing it. As a result, a high degree of realism can be obtained with a small amount of calculation.
- step S71 of FIG. 9 The gain calculation process performed in step S71 of FIG. 9 is performed for each audio object. That is, more specifically, the processing shown in FIG. 10 is performed as the gain calculation processing.
- the gain calculation process performed by the rendering processing unit 23 and the silence information generation unit 22 corresponding to the process of step S71 of FIG. 9 will be described below with reference to the flowchart of FIG.
- step S101 the gain calculation unit 81 and the silence information generation unit 22 initialize the value of the index obj_id indicating the audio object to be processed to 0, and the silence information generation unit 22 further sets the virtual speaker silence information of all virtual speakers.
- the value of a_spk_mute [spk_id] is initialized to 1.
- spk_id is an index indicating a virtual speaker
- a_spk_mute [spk_id] indicates virtual speaker silence information about the virtual speaker indicated by the index spk_id.
- a_spk_mute [spk_id] when the value of the virtual speaker silence information a_spk_mute [spk_id] is 1, it indicates that the virtual speaker signal corresponding to the virtual speaker is silent.
- step S101 the gain calculation unit 81 and the silence information generation unit 22 set the value of the index obj_id indicating the audio object to be processed to 0.
- the silence information generation unit 22 sets the value of the virtual speaker silence information a_spk_mute [spk_id] for each index spk_id (where 0 ⁇ spk_id ⁇ max_spk-1) to 1. That is, here, the virtual speaker signals of all the virtual speakers are assumed to be silent for the time being.
- step S102 the gain calculation unit 81 and the silence information generation unit 22 set the value of the index mesh_id indicating the mesh to be processed to 0.
- max_mesh meshes are formed by virtual speakers in the space. That is, it is assumed that the total number of meshes existing in the space is max_mesh.
- step S103 the gain calculation unit 81 calculates three virtual meshes of the index mesh_id to be processed by calculating Expression (2) above for the audio object of the index obj_id to be processed. Obtain the speaker gain.
- step S103 the object position information of the audio object with the index obj_id is used to calculate the equation (2). As a result, the gains g 1 to g 3 of the three virtual speakers are obtained.
- Step gain calculator 81 in step S104 it is determined whether the in obtained three gain g 1 to threshold value TH1 or more gain g 3 all predetermined step S103.
- the threshold value TH1 is a floating point number of 0 or less, and is a value that is determined by, for example, the calculation accuracy of the mounted device. Generally, a small value of about ⁇ 1 ⁇ 10 ⁇ 5 is often used as the threshold value TH1.
- the audio object is present (positioned) in the processing target mesh.
- the audio object to be processed does not exist (position) in the mesh to be processed.
- the gain calculation unit 81 searches for a mesh including the audio object to be processed, and determines the value of the virtual speaker silence information according to the search result.
- step S104 determines in step S105 whether the value of the index mesh_id of the mesh to be processed is less than max_mesh, that is, whether mesh_id ⁇ max_mesh. judge.
- step S105 If it is determined in step S105 that mesh_id ⁇ max_mesh is not satisfied, then the process proceeds to step S110. Note that basically, it is not assumed that mesh_id ⁇ max_mesh in step S105.
- step S105 determines whether mesh_id ⁇ max_mesh. If it is determined in step S105 that mesh_id ⁇ max_mesh, the process proceeds to step S106.
- step S106 the gain calculation unit 81 and the silence information generation unit 22 increment the value of the index mesh_id indicating the mesh to be processed by 1.
- step S106 After the process of step S106 is performed, the process returns to step S103 and the above-described process is repeated. That is, the process of calculating the gain is repeatedly performed until the mesh including the audio object to be processed is detected.
- step S104 when it is determined in step S104 that the threshold is equal to or more than TH1, the gain calculation unit 81 generates search mesh information indicating the mesh of the index mesh_id to be processed and supplies it to the silence information generation unit 22. Thereafter, the processing proceeds to step S107.
- step S107 the silence information generation unit 22 determines whether or not the value of the audio object silence information a_obj_mute [obj_id] is 0 for the object signal of the audio object having the index obj_id to be processed.
- a_obj_mute [obj_id] indicates audio object silence information of the audio object whose index is obj_id.
- a_obj_mute [obj_id] when the value of the audio object silence information a_obj_mute [obj_id] is 1, it indicates that the object signal of the audio object with the index obj_id is a silence signal.
- step S107 If it is determined in step S107 that the value of the audio object silence information a_obj_mute [obj_id] is 0, that is, if the object signal is a voice signal, the process proceeds to step S108.
- step S108 the silence information generation unit 22 sets the value of the virtual speaker silence information of the three virtual speakers forming the mesh of the index mesh_id indicated by the search mesh information supplied from the gain calculation unit 81 to 0.
- the information indicating the mesh is set as mesh information mesh_info [mesh_id].
- spk_id mesh_info [mesh_id] .spk3.
- the silence information generation unit 22 has virtual speaker silence information a_spk_mute [mesh_info [mesh_id] .spk1], virtual speaker silence information a_spk_mute [mesh_info [mesh_id] .spk2] of three virtual speakers forming the mesh of the index mesh_id, Also, each value of the virtual speaker silence information a_spk_mute [mesh_info [mesh_id] .spk3] is changed from 1 to 0.
- the silence information generation unit 22 generates virtual speaker silence information based on the calculation result (calculation result) of the gain of the virtual speaker and the audio object silence information.
- step S109 After the virtual speaker silence information is set in this way, the process proceeds to step S109.
- step S107 if it is determined in step S107 that the value of the audio object silence information a_obj_mute [obj_id] is not 0, that is, 1 is determined, the process of step S108 is not performed, and the process proceeds to step S109.
- the virtual speaker silence information a_spk_mute [mesh_info [mesh_id] .spk1] the virtual speaker silence information a_spk_mute [mesh_info [mesh_id] .spk2]
- the virtual speaker silence information a_spk_mute [mesh_info [mesh_id] .spk3] remains 1 set in step S101.
- step S109 If the process of step S108 is performed or if the value of the audio object silence information is determined to be 1 in step S107, the process of step S109 is performed.
- step S109 the gain calculation unit 81 sets the gain obtained in step S103 as the gain value of the three virtual speakers forming the mesh of the index mesh_id that is the processing target.
- the gain of the virtual speaker with index spk_id for the audio object with index obj_id is a_gain [obj_id] [spk_id].
- step S110 After the gains of the three virtual speakers forming the mesh to be processed are determined in this way, the process proceeds to step S110.
- step S105 If it is determined in step S105 that mesh_id ⁇ max_mesh is not satisfied, or if the process of step S109 is performed, the gain calculation unit 81 determines in step S110 whether obj_id ⁇ max_obj. That is, it is determined whether or not all audio objects have been processed as processing targets.
- step S110 If it is determined in step S110 that obj_id ⁇ max_obj, that is, it is determined that not all audio objects are to be processed, the process proceeds to step S111.
- step S111 the gain calculator 81 and the silence information generator 22 increment the value of the index obj_id indicating the audio object to be processed by 1.
- the process then returns to step S102, and the above-described process is repeated. That is, the gain is obtained for the audio object that is the new processing target, and the virtual speaker silence information is set.
- step S110 when it is determined in step S110 that obj_id ⁇ max_obj is not satisfied, the gain calculation process ends because all audio objects have been processed.
- the gain calculation process ends, the gain of each virtual speaker is obtained for all object signals, and the virtual speaker silence information is generated for each virtual speaker.
- the rendering processing unit 23 and the silence information generation unit 22 calculate the gain of each virtual speaker and generate the virtual speaker silence information. By thus generating the virtual speaker silence information, it is possible to correctly recognize whether or not the virtual speaker signal is silent, so that the processing can be appropriately omitted in the gain applying unit 82 and the HRTF processing unit 24 in the subsequent stage.
- step S72 of the virtual speaker signal generation process described with reference to FIG. 9 for example, the gain of each virtual speaker and the virtual speaker silence information obtained by the gain calculation process described with reference to FIG. 10 are used.
- the gain may change rapidly at the change point of the position of the audio object.
- the gain determined in step S109 of FIG. 10 is used as it is, noise is generated in the virtual speaker signal. Therefore, not only the gain of the current frame but also the gain of the immediately preceding frame is used to perform smoothing such as linear interpolation. Processing can be performed.
- the gain calculation unit 81 performs gain smoothing processing on the basis of the gain of the current frame and the gain of the immediately preceding frame, and the gain after smoothing is finally obtained for the current frame. Is supplied to the gain application unit 82.
- the silence information generation unit 22 smoothes the virtual speaker silence information of each virtual speaker by performing the smoothing process shown in FIG. 11, for example.
- the smoothing process by the silence information generation unit 22 will be described with reference to the flowchart in FIG. 11.
- step S141 the silence information generation unit 22 sets the value of the index spk_id (where 0 ⁇ spk_id ⁇ max_spk-1) indicating the virtual speaker to be processed to 0.
- the virtual speaker silence information of the current frame obtained for the virtual speaker of the processing target indicated by the index spk_id is referred to as a_spk_mute [spk_id]
- the virtual speaker silence information of the frame immediately preceding the current frame is a_prev_spk_mute [spk_id. ] Will be written.
- step S142 the silence information generation unit 22 determines whether the virtual speaker silence information of the current frame and the previous frame is 1.
- step S142 When it is determined in step S142 that the virtual speaker silence information is 1, the silence information generation unit 22 sets the final value of the virtual speaker silence information a_spk_mute [spk_id] of the current frame to 1 in step S143, and then the process Advances to step S145.
- step S142 determines whether the virtual speaker silence information is not 1, that is, if the virtual speaker silence information of at least one of the current frame and the immediately preceding frame is 0, the process proceeds to step S144.
- the virtual speaker signal is sounded in at least one of the current frame and the immediately preceding frame.
- step S144 the silence information generation unit 22 sets the final value of the virtual speaker silence information a_spk_mute [spk_id] of the current frame to 0, and then the process proceeds to step S145.
- the value of the virtual speaker silence information of the current frame is set to 0, so that the sound of the virtual speaker signal suddenly becomes silent. It is possible to prevent the sound from being interrupted and the sound of the virtual speaker signal from suddenly becoming sound.
- step S145 After the processing of step S143 or step S144 is performed, the processing of step S145 is performed thereafter.
- step S145 the silence information generation unit 22 uses the virtual speaker silence information a_spk_mute [spk_id] obtained by the gain calculation process of FIG. 10 for the current frame to be processed as the virtual speaker silence information of the frame immediately before used in the next smoothing process.
- a_prev_spk_mute [spk_id] the virtual speaker silence information a_spk_mute [spk_id] of the current frame is used as the virtual speaker silence information a_prev_spk_mute [spk_id] in the next smoothing process.
- step S146 the silence information generation unit 22 determines whether or not spk_id ⁇ max_spk. That is, it is determined whether or not all virtual speakers have been processed as processing targets.
- step S147 the silence information generation unit 22 sets the index spk_id indicating the virtual speaker to be processed. Increment the value by 1.
- step S147 After the process of step S147 is performed, the process returns to step S142 and the above-described process is repeated. That is, the process of smoothing the virtual speaker silence information a_spk_mute [spk_id] is performed for the new virtual speaker to be processed.
- step S146 if it is determined in step S146 that spk_id ⁇ max_spk is not true, the smoothing process ends because the virtual speaker silence information has been smoothed for all virtual speakers for the current frame.
- the silence information generation unit 22 performs smoothing processing on the virtual speaker silence information in consideration of the immediately preceding frame. By performing the smoothing in this way, it becomes possible to obtain an appropriate virtual speaker signal with less sudden changes and noise.
- the final virtual speaker silence information obtained in step S143 or step S144 is used in the gain applying unit 82 or the HRTF processing unit 24.
- step S72 of the virtual speaker signal generation process described with reference to FIG. 9 the virtual speaker silence information obtained by the gain calculation process of FIG. 10 or the smoothing process of FIG. 11 is used.
- the calculation of the above equation (3) is performed to obtain the virtual speaker signal. In this case, all the calculations are performed regardless of whether the object signal or the virtual speaker signal is a silent signal.
- the virtual speaker signal is obtained by the calculation of the following expression (5) by adding the audio object silence information and the virtual speaker silence information supplied from the silence information generating unit 22.
- G (m, n) is the object signal S (n, t) of the nth audio object to obtain the virtual speaker signal SP (m, t) for the mth virtual speaker.
- the gain to be multiplied is shown. That is, the gain G (m, n) is the gain of each virtual speaker obtained in step S109 of FIG.
- a_spk_mute (m) represents a coefficient determined by the virtual speaker silence information a_spk_mute [spk_id] for the m-th virtual speaker. Specifically, when the value of the virtual speaker silence information a_spk_mute [spk_id] is 1, the value of the coefficient a_spk_mute (m) is 0, and when the value of the virtual speaker silence information a_spk_mute [spk_id] is 0. , The value of the coefficient a_spk_mute (m) is set to 1.
- the gain application unit 82 does not perform the calculation on the virtual speaker signal. Specifically, the calculation for obtaining the silent virtual speaker signal SP (m, t) is not performed, and zero data is output as the virtual speaker signal SP (m, t). That is, the calculation for the virtual speaker signal is omitted, and the calculation amount is reduced.
- a_obj_mute (n) represents a coefficient determined by audio object silence information a_obj_mute [obj_id] for the object signal of the nth audio object.
- the value of the coefficient a_obj_mute (n) is 0, and when the value of the audio object silence information a_obj_mute [obj_id] is 0. ,
- the value of the coefficient a_obj_mute (n) is set to 1.
- the gain application unit 82 is configured not to perform the calculation on the object signal. Specifically, the sum of products operation of the terms of the silent object signal S (n, t) is not performed. That is, the calculation part based on the object signal is omitted, and the calculation amount is reduced.
- the gain application unit 82 reduces the amount of calculation by omitting the calculation of at least one of the part of the object signal that is a silent signal and the part of the virtual speaker signal that is a silent signal. can do. Therefore, it is not limited to the example in which the calculation of both the part of the object signal that is a silent signal and the part of the virtual speaker signal that is a silent signal is omitted, and the calculation of either one of them is omitted. You may do it.
- step S72 of FIG. 9 the gain application unit 82 supplies the audio object silence information and the virtual speaker silence information supplied from the silence information generation unit 22, the gain supplied from the gain calculation unit 81, and the IMDCT processing unit 54.
- the virtual speaker signal of each virtual speaker is obtained by performing the same calculation as the equation (5) based on the generated object signal.
- zero data is used as the calculation result in the part where the calculation is omitted. In other words, the actual calculation is not performed, and the zero data is output as the value corresponding to the calculation result.
- audio objects silenced by audio object silence information account for 30% of all audio objects, and the number of virtual speakers silenced by virtual speaker silence information accounts for 30% of all virtual speakers. Suppose there is.
- the number of calculations will be 0.7 ⁇ M ⁇ 0.7 ⁇ N ⁇ T times, which is only about 50% compared to the case in the equation (3).
- the amount of calculation can be reduced.
- the virtual speaker signals finally obtained by the equations (3) and (5) are the same, and no error occurs due to omission of a part of the calculation.
- the spatial layout of the audio objects by the content creator is likely to cause a silent audio object or a silent virtual speaker.
- a silent section of the object signal and a silent section of the virtual speaker signal are likely to occur.
- the method of omitting a part of the calculation as in Expression (5) has a greater effect of reducing the calculation amount in the case where the number of audio objects and the number of virtual speakers are large and the calculation amount is significantly increased. .
- step S13 the HRTF processing unit 24 generates an output audio signal based on the virtual speaker silence information supplied from the silence information generating unit 22 and the virtual speaker signal supplied from the gain applying unit 82.
- the output audio signal is obtained by the convolution process of the transfer function, which is the HRTF coefficient, and the virtual speaker signal, as shown in equation (4).
- the virtual speaker silence information is used, and the output audio signal is obtained by the following equation (6).
- ⁇ represents the frequency
- the virtual speaker signal of the frequency ⁇ of is shown.
- the virtual speaker signal SP (m, ⁇ ) can be obtained by time-frequency converting the virtual speaker signal which is a time signal.
- H_L (m, ⁇ ) is multiplied by the virtual speaker signal SP (m, ⁇ ) for the m-th virtual speaker to obtain the output audio signal L ( ⁇ ) of the left channel.
- the transfer function for the left ear is shown.
- H_R (m, ⁇ ) represents the transfer function for the right ear.
- a_spk_mute (m) represents a coefficient determined by the virtual speaker silence information a_spk_mute [spk_id] for the m-th virtual speaker. Specifically, when the value of the virtual speaker silence information a_spk_mute [spk_id] is 1, the value of the coefficient a_spk_mute (m) is 0, and when the value of the virtual speaker silence information a_spk_mute [spk_id] is 0. , The value of the coefficient a_spk_mute (m) is set to 1.
- the virtual speaker signal is silent (silent signal) based on the virtual speaker silence information
- the virtual speaker signal is not calculated. Specifically, the sum-of-products calculation of the term of the silent virtual speaker signal SP (m, ⁇ ) is not performed. That is, the calculation (processing) for convolving the silent virtual speaker signal and the transfer function is omitted, and the amount of calculation is reduced.
- the output audio it is possible to reduce the calculation amount without generating any signal error. That is, a high sense of reality can be obtained with a small amount of calculation.
- the average amount of processing is reduced and the power consumption of the processor is reduced, so that it is possible to continuously play content for a longer time even on mobile devices such as smartphones.
- the metadata When the metadata includes the object priority as described above, the metadata has a format shown in FIG. 12, for example.
- position_azimuth indicates the horizontal angle in the spherical coordinate system of the audio object
- position_elevation indicates the vertical angle in the spherical coordinate system of the audio object
- position_radius indicates the position from the spherical coordinate system origin to the audio object. The distance (radius) is shown.
- the information including the horizontal angle, the vertical angle, and the distance is the object position information indicating the position of the audio object.
- the object priority object_priority is 3-bit information, and can take values from low priority 0 to high priority 7. That is, the audio object having a higher value among the priorities 0 to 7 is an audio object having a high object priority.
- the decoding side cannot process all audio objects, only audio objects with a high object priority can be processed according to the resources of the decoding side.
- the processing of the audio object having the object priority of 5 is not executed, and only the audio objects having the object priority of 7 and 6 can be processed.
- the audio object to be actually processed may be selected in consideration of whether or not the signal of the audio object is silent.
- silence is excluded from the plurality of audio objects in the frame to be processed based on, for example, spectrum silence information or audio object silence information. Then, among the remaining silent audio objects that have been excluded, the audio objects to be processed are selected in order from the one having the highest object priority, the number of which is determined by the resource or the like.
- At least one of the decoding process and the rendering process is performed based on the spectral silence information or the audio object silence information, and the object priority.
- the input bitstream has audio object data of five audio objects AOB1 to AOB5, and the signal processing apparatus 11 has no room to process only three audio objects.
- the value of the spectral silence information of the audio object AOB5 is 1, and the value of the spectral silence information of other audio objects is 0. Further, it is assumed that the object priorities of the audio objects AOB1 to AOB4 are 7, 7, 6, and 5, respectively.
- the spectrum decoding unit 53 first excludes the silent audio object AOB5 from the audio objects AOB1 to AOB5. Next, the spectrum decoding unit 53 selects the audio objects AOB1 to AOB3 having a high object priority from the remaining audio objects AOB1 to AOB4.
- the spectrum decoding unit 53 decodes the spectrum data only for the finally selected audio objects AOB1 to AOB3.
- the series of processes described above can be executed by hardware or software.
- the program that constitutes the software is installed in the computer.
- the computer includes a computer incorporated in dedicated hardware and, for example, a general-purpose personal computer capable of executing various functions by installing various programs.
- FIG. 13 is a block diagram showing a configuration example of hardware of a computer that executes the series of processes described above by a program.
- a CPU Central Processing Unit
- ROM Read Only Memory
- RAM Random Access Memory
- An input / output interface 505 is further connected to the bus 504.
- An input unit 506, an output unit 507, a recording unit 508, a communication unit 509, and a drive 510 are connected to the input / output interface 505.
- the input unit 506 includes a keyboard, a mouse, a microphone, an image sensor, and the like.
- the output unit 507 includes a display, a speaker and the like.
- the recording unit 508 includes a hard disk, a non-volatile memory, or the like.
- the communication unit 509 includes a network interface or the like.
- the drive 510 drives a removable recording medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
- the CPU 501 loads the program recorded in the recording unit 508 into the RAM 503 via the input / output interface 505 and the bus 504 and executes the program to execute the above-described series of operations. Is processed.
- the program executed by the computer (CPU 501) can be provided by being recorded in a removable recording medium 511 such as a package medium, for example.
- the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be installed in the recording unit 508 via the input / output interface 505 by mounting the removable recording medium 511 on the drive 510.
- the program can be received by the communication unit 509 via a wired or wireless transmission medium and installed in the recording unit 508.
- the program can be installed in the ROM 502 or the recording unit 508 in advance.
- the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program in which processing is performed.
- the present technology may have a configuration of cloud computing in which one function is shared by a plurality of devices via a network and jointly processes.
- each step described in the above flow chart can be executed by one device or shared by a plurality of devices.
- one step includes a plurality of processes
- the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
- present technology can also be configured as below.
- a signal processing device that performs at least one of a decoding process and a rendering process of an object signal of the audio object based on audio object silence information indicating whether the signal of the audio object is a silence signal.
- the signal processing device according to (1) which outputs the obtained value.
- HRTF processing for performing HRTF processing based on a virtual speaker signal for reproducing sound by a virtual speaker and virtual speaker silence information indicating whether the virtual speaker signal is a silence signal, obtained by the rendering processing.
- a decoding processing unit that performs the decoding processing including decoding of the spectrum data of the object signal, which is encoded by a context-based arithmetic encoding method
- the decoding processing unit decodes the spectrum data by using a predetermined value as the calculation result of the context without calculating the context of the spectrum data which is determined to be a silence signal by the audio object silence information.
- the signal processing device according to (5).
- the decoding processing unit performs decoding processing including decoding of the spectrum data, and IMDCT processing for the decoded spectrum data, and the decoded spectrum is determined to be a silence signal by the audio object silence information.
- the silence information generation unit generates another audio object silence information different from the audio object silence information used in the decoding process based on the result of the decoding process,
- the signal processing device according to any one of (5) to (7), further including a rendering processing unit that performs the rendering processing based on the other audio object silence information.
- the rendering processing unit includes a gain calculation process for obtaining a gain of the virtual speaker for each of the object signals obtained by the decoding process, and a gain application process for generating the virtual speaker signal based on the gain and the object signal. Is performed as the rendering processing.
- the signal processing device according to (8).
- the rendering processing unit calculates the virtual speaker signal that is a silence signal based on the virtual speaker silence information, and determines the silence signal based on the other audio object silence information.
- the processing of at least one of the decoding processing and the rendering processing is performed based on the priority of the audio object and the audio object silence information. (1) to (11) Signal processing device.
- the signal processing device A signal processing method for performing at least one of a decoding process and a rendering process of an object signal of the audio object based on audio object silence information indicating whether or not the signal of the audio object is a silence signal.
- a process including a step of performing at least one of a decoding process and a rendering process of the object signal of the audio object based on audio object silence information indicating whether the signal of the audio object is a silence signal or not.
- 11 signal processing device 21 decoding processing unit, 22 silence information generating unit, 23 rendering processing unit, 24 HRTF processing unit, 53 spectrum decoding unit, 54 IMDCT processing unit, 81 gain calculation unit, 82 gain application unit
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Stereophonic System (AREA)
Abstract
本技術は、演算量を低減させることができるようにする信号処理装置および方法、並びにプログラムに関する。 信号処理装置は、オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う。本技術は信号処理装置に適用することができる。
Description
本技術は、信号処理装置および方法、並びにプログラムに関し、特に、演算量を低減させることができるようにした信号処理装置および方法、並びにプログラムに関する。
従来、映画やゲーム等でオブジェクトオーディオ技術が使われ、オブジェクトオーディオを扱える符号化方式も開発されている。具体的には、例えば国際標準規格であるMPEG(Moving Picture Experts Group)-H Part 3:3D audio規格などが知られている(例えば、非特許文献1参照)。
このような符号化方式では、従来の2チャネルステレオ方式や5.1チャネル等のマルチチャネルステレオ方式とともに、移動する音源等を独立したオーディオオブジェクトとして扱い、オーディオオブジェクトの信号データとともにオブジェクトの位置情報をメタデータとして符号化することが可能である。
これにより、スピーカの数や配置の異なる様々な視聴環境で再生を行うことができる。また、従来の符号化方式では困難であった特定の音源の音の音量調整や、特定の音源の音に対するエフェクトの追加など、特定の音源の音を再生時に加工することが容易にできる。
このような符号化方式では、復号側においてビットストリームに対するデコードが行われ、オーディオオブジェクトのオーディオ信号であるオブジェクト信号と、空間内におけるオーディオオブジェクトの位置を示すオブジェクト位置情報を含むメタデータとが得られる。
そして、オブジェクト位置情報に基づいて、空間内に仮想的に配置された複数の各仮想スピーカにオブジェクト信号をレンダリングするレンダリング処理が行われる。例えば非特許文献1の規格では、レンダリング処理に3次元VBAP(Vector Based Amplitude Panning)(以下、単にVBAPと称する)と呼ばれる方式が用いられる。
また、レンダリング処理により、各仮想スピーカに対応する仮想スピーカ信号が得られると、それらの仮想スピーカ信号に基づいてHRTF(Head Related Transfer Function)処理が行われる。このHRTF処理では、あたかも仮想スピーカから音が再生されているかのように実際のヘッドフォンやスピーカから音を出力させるための出力オーディオ信号が生成される。
INTERNATIONAL STANDARD ISO/IEC 23008-3 First edition 2015-10-15 Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 3: 3D audio
ところで、上述したオーディオオブジェクトについての仮想スピーカへのレンダリング処理やHRTF処理を行えば、あたかも仮想スピーカから音が再生されているかのようなオーディオ再生を実現できることから、高い臨場感を得ることができる。
しかしながら、オブジェクトオーディオではレンダリング処理やHRTF処理などのオーディオ再生のための処理に多くの演算量が必要となる。
特にスマートフォンなどのデバイスでオブジェクトオーディオを再生しようとする場合、演算量の増加は電池の消費をはやめることになってしまうため、臨場感を損なうことなく演算量を低減させることが望まれている。
本技術は、このような状況に鑑みてなされたものであり、演算量を低減させることができるようにするものである。
本技術の一側面の信号処理装置は、オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う。
本技術の一側面の信号処理方法またはプログラムは、オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行うステップを含む。
本技術の一側面においては、オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理が行われる。
以下、図面を参照して、本技術を適用した実施の形態について説明する。
〈第1の実施の形態〉
〈本技術について〉
本技術は、無音区間における少なくとも一部の処理を省略したり、無音区間において実際には演算を行わずに、その演算結果に対応する値として予め定められた所定値を出力したりすることで、出力オーディオ信号の誤差を発生させることなく、演算量を低減させることができるようにするものである。これにより、演算量を低減させつつ高い臨場感を得ることができる。
〈本技術について〉
本技術は、無音区間における少なくとも一部の処理を省略したり、無音区間において実際には演算を行わずに、その演算結果に対応する値として予め定められた所定値を出力したりすることで、出力オーディオ信号の誤差を発生させることなく、演算量を低減させることができるようにするものである。これにより、演算量を低減させつつ高い臨場感を得ることができる。
まず、MPEG-H Part 3:3D audio規格の符号化方式での符号化により得られたビットストリームに対してデコード(復号)を行い、オブジェクトオーディオの出力オーディオ信号を生成するときに行われる一般的な処理について説明する。
例えば図1に示すように、符号化により得られた入力ビットストリームが入力されると、その入力ビットストリームに対してデコード処理が行われる。
デコード処理によって、オーディオオブジェクトの音を再生するためのオーディオ信号であるオブジェクト信号と、そのオーディオオブジェクトの空間内の位置を示すオブジェクト位置情報を含むメタデータとが得られる。
続いて、メタデータに含まれるオブジェクト位置情報に基づいて、空間内に仮想的に配置された仮想スピーカにオブジェクト信号をレンダリングするレンダリング処理が行われ、各仮想スピーカから出力される音を再生するための仮想スピーカ信号が生成される。
さらに、各仮想スピーカの仮想スピーカ信号に基づいてHRTF処理が行われ、ユーザが装着するヘッドフォンや実空間に配置されたスピーカから音を出力させるための出力オーディオ信号が生成される。
このようにして得られた出力オーディオ信号に基づいて、実際のヘッドフォンやスピーカから音を出力すれば、あたかも仮想スピーカから音が再生されているかのようなオーディオ再生を実現することができる。なお、以下では、実空間に実際に配置されるスピーカを特に実スピーカとも称することとする。
このようなオブジェクトオーディオを実際に再生するにあたっては、空間内に多数の実スピーカを配置できる場合には、レンダリング処理の出力をそのまま実スピーカで再生することができる。これに対して、空間内に多数の実スピーカを配置できない場合には、HRTF処理を行ってヘッドフォンや、サウンドバーなどの少数の実スピーカによって再生を行うことになる。一般的には、ヘッドフォンや少数の実スピーカによって再生を行うことが多い。
ここで、一般的なレンダリング処理とHRTF処理について、さらに説明を行う。
例えばレンダリング時には、上述したVBAPなどの所定の方式のレンダリング処理が行われる。VBAPは一般的にパニングと呼ばれるレンダリング手法の1つで、ユーザ位置を原点とする球表面上に存在する仮想スピーカのうち、同じく球表面上に存在するオーディオオブジェクトに最も近い3個の仮想スピーカに対しゲインを分配することでレンダリングを行うものである。
例えば図2に示すように、3次元空間に受聴者であるユーザU11がおり、そのユーザU11の前方に3つの仮想スピーカSP1乃至仮想スピーカSP3が配置されているとする。
ここでは、ユーザU11の頭部の位置を原点Oとし、その原点Oを中心とする球の表面上に仮想スピーカSP1乃至仮想スピーカSP3が位置しているとする。
いま、球表面上における仮想スピーカSP1乃至仮想スピーカSP3に囲まれる領域TR11内にオーディオオブジェクトが存在しており、そのオーディオオブジェクトの位置VSP1に音像を定位させることを考えるとする。
そのような場合、VBAPではオーディオオブジェクトについて、位置VSP1の周囲にある仮想スピーカSP1乃至仮想スピーカSP3に対してゲインが分配されることになる。
具体的には、原点Oを基準(原点)とする3次元座標系において、原点Oを始点とし、位置VSP1を終点とする3次元のベクトルPにより位置VSP1を表すこととする。
また、原点Oを始点とし、各仮想スピーカSP1乃至仮想スピーカSP3の位置を終点とする3次元のベクトルをベクトルL1乃至ベクトルL3とすると、ベクトルPは次式(1)に示すようにベクトルL1乃至ベクトルL3の線形和によって表すことができる。
ここで、式(1)においてベクトルL1乃至ベクトルL3に乗算されている係数g1乃至係数g3を算出し、これらの係数g1乃至係数g3を、仮想スピーカSP1乃至仮想スピーカSP3のそれぞれから出力する音のゲインとすれば、位置VSP1に音像を定位させることができる。
例えば係数g1乃至係数g3を要素とするベクトルをg123=[g1,g2,g3]とし、ベクトルL1乃至ベクトルL3を要素とするベクトルをL123=[L1,L2,L3]とすると、上述した式(1)を変形して次式(2)を得ることができる。
このような式(2)を計算して求めた係数g1乃至係数g3をゲインとして用いて、オブジェクト信号に基づく音を各仮想スピーカSP1乃至仮想スピーカSP3から出力すれば、位置VSP1に音像を定位させることができる。
なお、各仮想スピーカSP1乃至仮想スピーカSP3の配置位置は固定されており、それらの仮想スピーカの位置を示す情報は既知であるため、逆行列であるL123
-1は事前に求めておくことができる。
図2に示した球表面上における、3個の仮想スピーカにより囲まれる三角形の領域TR11はメッシュと呼ばれている。空間内に配置された多数の仮想スピーカを組み合わせて複数のメッシュを構成することで、オーディオオブジェクトの音を空間内の任意の位置に定位させることが可能である。
このように、各オーディオオブジェクトに対して仮想スピーカのゲインが求められると、次式(3)の演算を行うことで、各仮想スピーカの仮想スピーカ信号を得ることができる。
なお、式(3)においてSP(m,t)は、M個の仮想スピーカのうちのm番目(但し、m=0,1,…,M-1)の仮想スピーカの時刻tにおける仮想スピーカ信号を示している。また、式(3)においてS(n,t)はN個のオーディオオブジェクトのうちのn番目(但し、n=0,1,…,N-1)のオーディオオブジェクトの時刻tにおけるオブジェクト信号を示している。
さらに式(3)においてG(m,n)は、m番目の仮想スピーカについての仮想スピーカ信号SP(m,t)を得るための、n番目のオーディオオブジェクトのオブジェクト信号S(n,t)に乗算されるゲインを示している。すなわち、ゲインG(m,n)は、上述した式(2)により求められた、n番目のオーディオオブジェクトについてのm番目の仮想スピーカに分配されたゲインを示している。
レンダリング処理では、この式(3)の計算が最も計算コストがかかる処理となる。すなわち、式(3)の演算が最も演算量の多い処理となる。
次に、式(3)の演算により得られた仮想スピーカ信号に基づく音をヘッドフォンまたは少数の実スピーカで再生する場合に行われるHRTF処理の例について図3を参照して説明する。なお、図3では説明を簡単にするため、2次元の水平面上に仮想スピーカが配置された例となっている。
図3では、空間内に5個の仮想スピーカSP11-1乃至仮想スピーカSP11-5が円形状に並べられて配置されている。以下、仮想スピーカSP11-1乃至仮想スピーカSP11-5を特に区別する必要のない場合、単に仮想スピーカSP11とも称することとする。
また、図3では5個の仮想スピーカSP11に囲まれる位置、すなわち仮想スピーカSP11が配置された円の中心位置に受聴者であるユーザU21が位置している。したがって、HRTF処理では、あたかもユーザU21が各仮想スピーカSP11から出力される音を聞いているかのようなオーディオ再生を実現するための出力オーディオ信号が生成される。
特に、この例ではユーザU21がいる位置を聴取位置として、5個の各仮想スピーカSP11へのレンダリングにより得られた仮想スピーカ信号に基づく音をヘッドフォンにより再生することとする。
そのような場合、例えば仮想スピーカ信号に基づて仮想スピーカSP11-1から出力(放射)された音は矢印Q11に示す経路を通り、ユーザU21の左耳の鼓膜に到達する。そのため、仮想スピーカSP11-1から出力された音の特性は、仮想スピーカSP11-1からユーザU21の左耳までの空間伝達特性、ユーザU21の顔や耳の形状や反射吸収特性などにより変化するはずである。
そこで、仮想スピーカSP11-1の仮想スピーカ信号に対して、仮想スピーカSP11-1からユーザU21の左耳までの空間伝達特性、およびユーザU21の顔や耳の形状、反射吸収特性などが加味された伝達関数H_L_SP11を畳み込めば、ユーザU21の左耳で聞こえるであろう仮想スピーカSP11-1からの音を再生する出力オーディオ信号を得ることができる。
同様に、例えば仮想スピーカ信号に基づて仮想スピーカSP11-1から出力された音は矢印Q12に示す経路を通り、ユーザU21の右耳の鼓膜に到達する。したがって、仮想スピーカSP11-1の仮想スピーカ信号に対して、仮想スピーカSP11-1からユーザU21の右耳までの空間伝達特性、およびユーザU21の顔や耳の形状、反射吸収特性などが加味された伝達関数H_R_SP11を畳み込めば、ユーザU21の右耳で聞こえるであろう仮想スピーカSP11-1からの音を再生する出力オーディオ信号を得ることができる。
これらのことから、最終的に5個の仮想スピーカSP11の仮想スピーカ信号に基づく音をヘッドフォンで再生するときには、左チャネルについては、各仮想スピーカ信号に対して、各仮想スピーカの左耳用の伝達関数を畳み込んで、その結果得られた各信号を足し合わせて左チャネルの出力オーディオ信号とすればよい。
同様に、右チャネルについては、各仮想スピーカ信号に対して、各仮想スピーカの右耳用の伝達関数を畳み込んで、その結果得られた各信号を足し合わせて右チャネルの出力オーディオ信号とすればよい。
なお、再生に用いるデバイスがヘッドフォンではなく実スピーカである場合にもヘッドフォンにおける場合と同様のHRTF処理が行われる。しかし、この場合にはスピーカからの音は空間伝搬によりユーザの左右の両耳に到達するため、クロストークが考慮された処理がHRTF処理として行われることになる。このようなHRTF処理はトランスオーラル処理とも呼ばれている。
一般的には周波数表現された左耳用、つまり左チャネルの出力オーディオ信号をL(ω)とし、周波数表現された右耳用、つまり右チャネルの出力オーディオ信号をR(ω)とすると、これらのL(ω)およびR(ω)は次式(4)を計算することで得ることができる。
なお、式(4)においてωは周波数を示しており、SP(m,ω)はM個の仮想スピーカのうちのm番目(但し、m=0,1,…,M-1)の仮想スピーカの周波数ωの仮想スピーカ信号を示している。仮想スピーカ信号SP(m,ω)は、上述した仮想スピーカ信号SP(m,t)を時間周波数変換することにより得ることができる。
また、式(4)においてH_L(m,ω)は、左チャネルの出力オーディオ信号L(ω)を得るための、m番目の仮想スピーカについての仮想スピーカ信号SP(m,ω)に乗算される左耳用の伝達関数を示している。同様にH_R(m,ω)は右耳用の伝達関数を示している。
これらのHRTFの伝達関数H_L(m,ω)や伝達関数H_R(m,ω)を時間領域のインパルス応答として表現する場合、少なくとも1秒程度の長さが必要となる。そのため、例えば仮想スピーカ信号のサンプリング周波数が48kHzである場合には、48000タップの畳み込みを行わなければならず、伝達関数の畳み込みにFFT(Fast Fourier Transform)を用いた高速演算手法を用いてもなお多くの演算量が必要となる。
以上のようにデコード処理、レンダリング処理、およびHRTF処理を行って出力オーディオ信号を生成し、ヘッドフォンや少数個の実スピーカを用いてオブジェクトオーディオを再生する場合、多くの演算量が必要となる。また、この演算量はオーディオオブジェクトの数が増えると、その分だけさらに多くなる。
ところで、ステレオのビットストリームは無音である区間が非常に少ないのに比べ、オーディオオブジェクトのビットストリームでは、一般的に全てのオーディオオブジェクトの全区間に信号が存在することは非常に稀である。
多くのオーディオオブジェクトのビットストリームでは約30%の区間が無音区間となっており、場合によっては全区間のうちの60%が無音区間となっているものもある。
そこで、本技術では、ビットストリーム中のオーディオオブジェクトが持つ情報を利用して、オブジェクト信号のエネルギを計算することなく、少ない演算量で無音区間におけるデコード処理やレンダリング処理、HRTF処理の演算量を低減できるようにした。
〈信号処理装置の構成例〉
次に、本技術を適用した信号処理装置の構成例について説明する。
次に、本技術を適用した信号処理装置の構成例について説明する。
図4は本技術を適用した信号処理装置の一実施の形態の構成例を示す図である。
図4に示す信号処理装置11はデコード処理部21、無音情報生成部22、レンダリング処理部23、およびHRTF処理部24を有している。
デコード処理部21は、送信されてきた入力ビットストリームを受信して復号(デコード)し、その結果得られたオーディオオブジェクトのオブジェクト信号およびメタデータをレンダリング処理部23に供給する。
ここで、オブジェクト信号は、オーディオオブジェクトの音を再生するためのオーディオ信号であり、メタデータには、少なくとも空間内におけるオーディオオブジェクトの位置を示すオブジェクト位置情報が含まれている。
また、より詳細には、デコード処理時にはデコード処理部21は入力ビットストリームから抽出した各時間フレームにおけるスペクトルに関する情報等を無音情報生成部22に供給するとともに、無音情報生成部22から無音であるか否かを示す情報の供給を受ける。そして、デコード処理部21は、無音情報生成部22から供給された無音であるか否かを示す情報に基づいて、無音区間の処理を省略等しながらデコード処理を行う。
無音情報生成部22は、デコード処理部21やレンダリング処理部23から各種の情報の供給を受け、供給された情報に基づいて無音であるか否かを示す情報を生成し、デコード処理部21、レンダリング処理部23、およびHRTF処理部24に供給する。
レンダリング処理部23は、無音情報生成部22と情報の授受を行い、無音情報生成部22から供給された無音であるか否かを示す情報に応じて、デコード処理部21から供給されたオブジェクト信号およびメタデータに基づくレンダリング処理を行う。
レンダリング処理では、無音であるか否かを示す情報に基づいて無音区間の処理が省略等される。レンダリング処理部23は、レンダリング処理により得られた仮想スピーカ信号をHRTF処理部24に供給する。
HRTF処理部24は、無音情報生成部22から供給された無音であるか否かを示す情報に応じて、レンダリング処理部23から供給された仮想スピーカ信号に基づいてHRTF処理を行い、その結果得られた出力オーディオ信号を後段に出力する。HRTF処理では、無音であるか否かを示す情報に基づいて無音区間の処理が省略される。
なお、ここではデコード処理、レンダリング処理、およびHRTF処理において、無音信号(無音区間)の部分について演算の省略等が行われる例について説明する。しかし、これらのデコード処理、レンダリング処理、およびHRTF処理のうちの少なくとも何れか1つの処理において演算(処理)の省略等が行われるようにすればよく、そのような場合においても全体として演算量を低減させることができる。
〈出力オーディオ信号生成処理の説明〉
次に、図4に示した信号処理装置11の動作について説明する。すなわち、以下、図5のフローチャートを参照して、信号処理装置11による出力オーディオ信号生成処理について説明する。
次に、図4に示した信号処理装置11の動作について説明する。すなわち、以下、図5のフローチャートを参照して、信号処理装置11による出力オーディオ信号生成処理について説明する。
ステップS11においてデコード処理部21は、無音情報生成部22との情報の授受を行いながら、供給された入力ビットストリームに対するデコード処理を行うことでオブジェクト信号を生成し、オブジェクト信号およびメタデータをレンダリング処理部23に供給する。
例えばステップS11では、無音情報生成部22において各時間フレーム(以下、単にフレームとも称する)が無音であるか否かを示すスペクトル無音情報が生成され、デコード処理部21では、スペクトル無音情報に基づいて一部の処理の省略等が行われるデコード処理が実行される。また、ステップS11では、無音情報生成部22において各フレームのオブジェクト信号が無音信号であるか否かを示すオーディオオブジェクト無音情報が生成されてレンダリング処理部23に供給される。
ステップS12においてレンダリング処理部23は、無音情報生成部22との情報の授受を行いながら、デコード処理部21から供給されたオブジェクト信号およびメタデータに基づいてレンダリング処理を行うことで仮想スピーカ信号を生成し、HRTF処理部24に供給する。
例えばステップS12では、各フレームの仮想スピーカ信号が無音信号であるか否かを示す仮想スピーカ無音情報が無音情報生成部22により生成される。また、無音情報生成部22から供給されたオーディオオブジェクト無音情報や仮想スピーカ無音情報に基づいてレンダリング処理が行われる。特にレンダリング処理では、無音区間では処理の省略が行われる。
ステップS13においてHRTF処理部24は、無音情報生成部22から供給された仮想スピーカ無音情報に基づいて、無音区間では処理が省略されるHRTF処理を行うことで出力オーディオ信号を生成し、後段に出力する。このようにして出力オーディオ信号が出力されると、出力オーディオ信号生成処理は終了する。
以上のようにして信号処理装置11は、無音であるか否かを示す情報としてスペクトル無音情報、オーディオオブジェクト無音情報、および仮想スピーカ無音情報を生成するとともに、それらの情報に基づいてデコード処理、レンダリング処理、およびHRTF処理を行って出力オーディオ信号を生成する。特にここではスペクトル無音情報、オーディオオブジェクト無音情報、および仮想スピーカ無音情報は、入力ビットストリームから直接または間接的に得られる情報に基づいて生成される。
このようにすることで、信号処理装置11では、無音区間では処理の省略等が行われ、臨場感を損なうことなく演算量を低減させることができる。換言すれば、演算量を低減させつつ高い臨場感でオブジェクトオーディオの再生を行うことができる。
〈デコード処理部の構成例〉
ここで、デコード処理やレンダリング処理、HRTF処理についてさらに詳細に説明する。
ここで、デコード処理やレンダリング処理、HRTF処理についてさらに詳細に説明する。
例えばデコード処理部21は図6に示すように構成される。
図6に示す例では、デコード処理部21は非多重化部51、サブ情報復号部52、スペクトル復号部53、およびIMDCT(Inverse Modified Discrete Cosine Transform)処理部54を有している。
非多重化部51は、供給された入力ビットストリームを非多重化することで、入力ビットストリームからオーディオオブジェクトデータとメタデータを抽出(分離)し、得られたオーディオオブジェクトデータをサブ情報復号部52に供給するとともに、メタデータをレンダリング処理部23に供給する。
ここで、オーディオオブジェクトデータは、オブジェクト信号を得るためのデータであり、サブ情報とスペクトルデータとからなる。
この実施の形態では、符号化側、つまり入力ビットストリームの生成側においては、時間信号であるオブジェクト信号に対してMDCT(Modified Discrete Cosine Transform)が行われ、その結果得られたMDCT係数がオブジェクト信号の周波数成分であるスペクトルデータとされる。
さらに符号化側では、スペクトルデータに対してコンテキストベースの算術符号化方式で符号化が行われる。そして符号化されたスペクトルデータと、そのスペクトルデータの復号に必要となる、符号化されたサブ情報とがオーディオオブジェクトデータとして入力ビットストリームに格納される。
また、上述したようにメタデータには、少なくとも空間内におけるオーディオオブジェクトの位置を示す空間位置情報であるオブジェクト位置情報が含まれている。
なお、一般的にはメタデータも符号化(圧縮)されていることが多い。しかし、メタデータが符号化されているか否か、すなわち圧縮されているかまたは非圧縮であるかによらず本技術は適用可能であるので、ここでは説明を簡単にするためメタデータは符号化されていないものとして説明を続ける。
サブ情報復号部52は、非多重化部51から供給されたオーディオオブジェクトデータに含まれるサブ情報を復号し、復号後のサブ情報と、供給されたオーディオオブジェクトデータに含まれるスペクトルデータとをスペクトル復号部53に供給する。
換言すれば、復号されたサブ情報と、符号化されているスペクトルデータとからなるオーディオオブジェクトデータがスペクトル復号部53に供給される。特に、ここでは一般的な入力ビットストリームに含まれる各オーディオオブジェクトのオーディオオブジェクトデータに含まれるデータのうち、スペクトルデータ以外のデータがサブ情報とされる。
また、サブ情報復号部52は、復号により得られたサブ情報のうち、各フレームのスペクトルに関する情報であるmax_sfbを無音情報生成部22に供給する。
例えばサブ情報には、オブジェクト信号に対するMDCT処理時に選択された変換窓の種類を示す情報や、スペクトルデータの符号化が行われたスケールファクタバンド数など、IMDCT処理やスペクトルデータの復号に必要となる情報が含まれている。
MPEG-H Part 3:3D audio規格では、ics_info()内において、MDCT処理時に選択された変換窓の種類、つまりwindow_sequenceに応じて4ビットまたは6ビットでmax_sfbが符号化されている。このmax_sfbは、符号化されたスペクトルデータの個数を示す情報、すなわちスペクトルデータの符号化が行われたスケールファクタバンド数を示す情報となっている。換言すれば、オーディオオブジェクトデータには、max_sfbにより示される数のスケールファクタバンドの分だけスペクトルデータが含まれている。
例えばmax_sfbの値が0である場合には、符号化されたスペクトルデータはなく、フレーム内のスペクトルデータが全て0であるとみなされるため、そのフレームは無音のフレーム(無音区間)であるとすることができる。
無音情報生成部22は、サブ情報復号部52から供給されたフレームごとの各オーディオオブジェクトのmax_sfbに基づいて、フレームごとに各オーディオオブジェクトのスペクトル無音情報を生成し、スペクトル復号部53およびIMDCT処理部54に供給する。
特にここでは、max_sfbの値が0である場合には対象となるフレームが無音区間である、つまりオブジェクト信号が無音信号であることを示すスペクトル無音情報が生成される。これに対してmax_sfbの値が0でない場合には対象となるフレームが有音区間であること、つまりオブジェクト信号が有音信号であることを示すスペクトル無音情報が生成される。
例えばスペクトル無音情報の値が1である場合、そのスペクトル無音情報は無音区間であることを示すものとされ、スペクトル無音情報の値が0である場合、そのスペクトル無音情報は有音区間であること、つまり無音区間ではないことを示すものとされる。
このように無音情報生成部22では、サブ情報であるmax_sfbに基づいて無音区間(無音フレーム)の検出が行われ、その検出結果を示すスペクトル無音情報が生成される。このようにすれば、オブジェクト信号のエネルギを求める計算を必要とせず、入力ビットストリームから抽出されたmax_sfbの値が0であるか否かを判定するという極めて少ない処理量(演算量)で無音となるフレームを特定することができる。
なお、例えば「United States Patent US9,905,232 B2, Hatanaka et al.」では、max_sfbを利用せず、あるチャネルが無音とみなせる場合には、別途フラグを付加してそのチャネルについては符号化しないという符号化方法が提案されている。
この符号化方法では、MPEG-H Part 3:3D audio規格での符号化よりもチャネルあたりで30から40ビットだけ符号化効率を向上させることができ、本技術においてもこのような符号化方法を適用するようにしてもよい。そのような場合、サブ情報復号部52はサブ情報として含まれている、オーディオオブジェクトのフレームを無音とみなせるか否か、つまりスペクトルデータの符号化が行われたか否かを示すフラグを抽出し、無音情報生成部22に供給する。そして、無音情報生成部22は、サブ情報復号部52から供給されたフラグに基づいてスペクトル無音情報を生成する。
その他、デコード処理時の演算量の増加を許容できる場合には、無音情報生成部22がスペクトルデータのエネルギを計算することにより無音のフレームであるか否かを判定し、その判定結果に応じてスペクトル無音情報を生成するようにしてもよい。
スペクトル復号部53は、サブ情報復号部52から供給されたサブ情報と、無音情報生成部22から供給されたスペクトル無音情報とに基づいて、サブ情報復号部52から供給されたスペクトルデータを復号する。ここではスペクトル復号部53では、コンテキストベースの算術符号化方式に対応する復号方式でスペクトルデータの復号が行われる。
例えばMPEG-H Part 3:3D audio規格では、スペクトルデータに対してコンテキストベースの算術符号化が行われる。
一般的に算術符号化では、1つの入力データに対して1つの出力符号化データが存在するのではなく、複数の入力データの遷移によって最終的な出力符号化データが得られる。
例えば非コンテキストベースの算術符号化では、入力データの符号化に用いる出現頻度テーブルが巨大になるか、または複数の出現頻度テーブルを切り替えて使用するため、別途、出現頻度テーブルを示すIDを符号化して復号側に送信する必要がある。
これに対して、コンテキストベースの算術符号化では、着目しているスペクトルデータの前のフレームの特性(内容)、または着目しているスペクトルデータの周波数よりも低い周波数のスペクトルデータの特性がコンテキストとして求められる。そして、コンテキストの計算結果に基づいて、使用される出現頻度テーブルが自動的に決定される。
そのため、コンテキストベースの算術符号化では、復号側でも常にコンテキストの計算を行わなければならないが、出現頻度テーブルをコンパクトにすることができ、かつ別途、出現頻度テーブルのIDを復号側に送信しなくてもよいという利点がある。
例えばスペクトル復号部53は、無音情報生成部22から供給されたスペクトル無音情報の値が0であり、処理対象のフレームが有音区間である場合、適宜、サブ情報復号部52から供給されたサブ情報や他のスペクトルデータの復号結果を用いてコンテキストの計算を行う。
そしてスペクトル復号部53は、コンテキストの計算結果に対して定まる値、つまりIDにより示される出現頻度テーブルを選択し、その出現頻度テーブルを用いてスペクトルデータを復号する。スペクトル復号部53は、復号されたスペクトルデータとサブ情報とをIMDCT処理部54に供給する。
これに対して、スペクトル無音情報の値が1であり、処理対象のフレームが無音区間(無音信号の区間)である場合、つまり上述したmax_sfbの値が0である場合、このフレームではスペクトルデータは0(ゼロデータ)であるため、コンテキストの計算により得られる出現頻度テーブルを示すIDは必ず同じ値となる。すなわち、必ず同じ出現頻度テーブルが選択されることになる。
そこで、スペクトル復号部53は、スペクトル無音情報の値が1である場合にはコンテキストの計算を行わず、予め定められた特定の値のIDにより示される出現頻度テーブルを選択し、その出現頻度テーブルを用いてスペクトルデータを復号する。この場合、無音信号のデータであるとされたスペクトルデータについては、コンテキストの計算は行われない。そして、コンテキストの計算結果に対応する値、すなわちコンテキストの計算結果を示す値として予め定められた特定の値のIDが出力として用いられて出現頻度テーブルが選択され、その後の復号の処理が行われることになる。
このようにスペクトル無音情報に応じてコンテキストの計算を行わないようにする、つまりコンテキストの計算を省略し、その計算結果を示す値として予め定められた値を出力することで、デコード(復号)時における処理の演算量を低減させることができる。しかも、この場合、スペクトルデータの復号結果として、コンテキストの計算を省略しないときと全く同じ結果を得ることができる。
IMDCT処理部54は、無音情報生成部22から供給されたスペクトル無音情報に応じて、スペクトル復号部53から供給されたスペクトルデータおよびサブ情報に基づいてIMDCT(逆修正離散コサイン変換)を行い、その結果得られたオブジェクト信号をレンダリング処理部23に供給する。
例えばIMDCTでは、「INTERNATIONAL STANDARD ISO/IEC 23008-3 First edition 2015-10-15 Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 3: 3D audio」に記載されている式に従って処理が行われる。
しかしmax_sfbの値が0であり、対象となるフレームが無音区間である場合、IMDCTの出力(処理結果)となる時間信号の各サンプルの値は全て0である。つまりIMDCTにより得られる信号はゼロデータである。
そこでIMDCT処理部54は、無音情報生成部22から供給されたスペクトル無音情報の値が1であり、対象となるフレームが無音区間(無音信号の区間)である場合には、スペクトルデータに対するIMDCTの処理を行わずにゼロデータを出力する。
すなわち、実際にはIMDCTの処理は行われず、ゼロデータがIMDCTの処理の結果として出力される。換言すれば、IMDCTの処理結果を示す値として、予め定められた値である「0」(ゼロデータ)が出力される。
より詳細には、IMDCT処理部54は処理対象の現フレームのIMDCTの処理結果として得られた時間信号と、その現フレームの時間的に直前のフレームのIMDCTの処理結果として得られた時間信号とをオーバーラップ合成することで現フレームのオブジェクト信号を生成し、出力する。
IMDCT処理部54では無音区間におけるIMDCTの処理を省略することで、出力として得られるオブジェクト信号に何ら誤差を発生させることなくIMDCT全体の演算量を削減することができる。すなわち、IMDCT全体の演算量を低減させつつ、IMDCTの処理を省略しない場合と全く同じオブジェクト信号を得ることができる。
一般的にMPEG-H Part 3:3D audio規格では、オーディオオブジェクトのデコード処理においてスペクトルデータの復号とIMDCTの処理がデコード処理の多くを占めるため、IMDCTの処理を削減できることは大幅な演算量の削減につながる。
また、IMDCT処理部54は、IMDCTの処理結果として得られた現フレームの時間信号がゼロデータであるか否か、つまり無音区間の信号であるか否かを示す無音フレーム情報を無音情報生成部22に供給する。
すると無音情報生成部22は、IMDCT処理部54から供給された処理対象の現フレームの無音フレーム情報と、その現フレームの時間的に直前のフレームの無音フレーム情報とに基づいてオーディオオブジェクト無音情報を生成し、レンダリング処理部23に供給する。換言すれば、無音情報生成部22はデコード処理の結果として得られる無音フレーム情報に基づいて、オーディオオブジェクト無音情報を生成する。
ここでは、無音情報生成部22は現フレームの無音フレーム情報および直前のフレームの無音フレーム情報がともに無音区間の信号である旨の情報である場合、現フレームのオブジェクト信号が無音信号である旨のオーディオオブジェクト無音情報を生成する。
これに対して、無音情報生成部22は現フレームの無音フレーム情報および直前のフレームの無音フレーム情報の少なくとも何れか一方が無音区間の信号でない旨の情報である場合、現フレームのオブジェクト信号が有音信号である旨のオーディオオブジェクト無音情報を生成する。
特に、この例ではオーディオオブジェクト無音情報の値が1である場合、無音信号であることを示しているとされ、オーディオオブジェクト無音情報の値が0である場合、有音信号である、つまり無音信号ではないことを示しているとされる。
上述したようにIMDCT処理部54では直前のフレームのIMDCTの処理結果として得られた時間信号とのオーバーラップ合成により、現フレームのオブジェクト信号が生成される。したがって、現フレームのオブジェクト信号は、直前のフレームの影響を受けることになるので、オーディオオブジェクト無音情報の生成時にはオーバーラップ合成の結果、つまり直前のフレームにおけるIMDCTの処理結果を加味する必要がある。
そこで、無音情報生成部22では現フレームとその直前のフレームの両方においてmax_sfbの値が0である場合、つまりIMDCTの処理結果としてゼロデータが得られた場合にのみ、現フレームのオブジェクト信号は無音区間の信号であるとされる。
このようにIMDCTの処理を考慮してオブジェクト信号が無音であるか否かを示すオーディオオブジェクト無音情報を生成することで、後段のレンダリング処理部23において処理対象のフレームのオブジェクト信号が無音であるかを正しく認識することができる。
〈オブジェクト信号生成処理の説明〉
次に、図5を参照して説明した出力オーディオ信号生成処理におけるステップS11の処理について、より詳細に説明する。すなわち、以下、図7のフローチャートを参照して、図5のステップS11に対応し、デコード処理部21および無音情報生成部22により行われるオブジェクト信号生成処理について説明する。
次に、図5を参照して説明した出力オーディオ信号生成処理におけるステップS11の処理について、より詳細に説明する。すなわち、以下、図7のフローチャートを参照して、図5のステップS11に対応し、デコード処理部21および無音情報生成部22により行われるオブジェクト信号生成処理について説明する。
ステップS41において非多重化部51は、供給された入力ビットストリームを非多重化し、その結果得られたオーディオオブジェクトデータをサブ情報復号部52に供給するとともに、メタデータをレンダリング処理部23に供給する。
ステップS42においてサブ情報復号部52は、非多重化部51から供給されたオーディオオブジェクトデータに含まれるサブ情報を復号し、復号後のサブ情報と、供給されたオーディオオブジェクトデータに含まれるスペクトルデータとをスペクトル復号部53に供給する。また、サブ情報復号部52は、サブ情報に含まれているmax_sfbを無音情報生成部22に供給する。
ステップS43において無音情報生成部22は、サブ情報復号部52から供給されたmax_sfbに基づいてスペクトル無音情報を生成し、スペクトル復号部53およびIMDCT処理部54に供給する。例えばmax_sfbの値が0である場合、値が1であるスペクトル無音情報が生成され、max_sfbの値が0でない場合、値が0であるスペクトル無音情報が生成される。
ステップS44においてスペクトル復号部53は、サブ情報復号部52から供給されたサブ情報と、無音情報生成部22から供給されたスペクトル無音情報とに基づいて、サブ情報復号部52から供給されたスペクトルデータを復号する。
このときスペクトル復号部53は、コンテキストベースの算術符号化方式に対応する復号方式でスペクトルデータの復号を行うが、スペクトル無音情報の値が1である場合には復号時におけるコンテキストの計算を省略し、特定の出現頻度テーブルを用いてスペクトルデータの復号を行う。スペクトル復号部53は、復号されたスペクトルデータとサブ情報とをIMDCT処理部54に供給する。
ステップS45においてIMDCT処理部54は、無音情報生成部22から供給されたスペクトル無音情報に応じて、スペクトル復号部53から供給されたスペクトルデータおよびサブ情報に基づいてIMDCTを行い、その結果得られたオブジェクト信号をレンダリング処理部23に供給する。
このときIMDCT処理部54は、無音情報生成部22から供給されたスペクトル無音情報の値が1であるときにはIMDCTの処理を行わずにゼロデータを用いてオーバーラップ合成を行い、オブジェクト信号を生成する。また、IMDCT処理部54は、IMDCTの処理結果がゼロデータであるか否かに応じて無音フレーム情報を生成し、無音情報生成部22に供給する。
以上の非多重化、サブ情報の復号、スペクトルデータの復号、およびIMDCTの処理が入力ビットストリームのデコード処理として行われる。
ステップS46において無音情報生成部22は、IMDCT処理部54から供給された無音フレーム情報に基づいてオーディオオブジェクト無音情報を生成し、レンダリング処理部23に供給する。
ここでは、現フレームとその直前のフレームの無音フレーム情報に基づいて、現フレームのオーディオオブジェクト無音情報が生成される。オーディオオブジェクト無音情報が生成されると、オブジェクト信号生成処理は終了する。
以上のようにしてデコード処理部21および無音情報生成部22は、入力ビットストリームをデコードし、オブジェクト信号を生成する。このとき、スペクトル無音情報を生成して、適宜、コンテキストの計算やIMDCTの処理を行わないようにすることで、デコード結果として得られるオブジェクト信号に何ら誤差を生じさせることなく、デコード処理の演算量を低減させることができる。これにより、少ない演算量でも高い臨場感を得ることができる。
〈レンダリング処理部の構成例〉
続いて、レンダリング処理部23の構成について説明する。例えばレンダリング処理部23は、図8に示すように構成される。
続いて、レンダリング処理部23の構成について説明する。例えばレンダリング処理部23は、図8に示すように構成される。
図8に示すレンダリング処理部23は、ゲイン計算部81およびゲイン適用部82を有している。
ゲイン計算部81は、デコード処理部21の非多重化部51から供給されたメタデータに含まれるオブジェクト位置情報に基づいて、オーディオオブジェクトごと、つまりオブジェクト信号ごとに各仮想スピーカに対応するゲインを算出し、ゲイン適用部82に供給する。また、ゲイン計算部81は、複数のメッシュのうち、メッシュを構成する仮想スピーカ、つまりメッシュの3個の頂点にある仮想スピーカのゲインが全て所定値以上となるメッシュを示す探索メッシュ情報を無音情報生成部22に供給する。
無音情報生成部22は、各フレームについてオーディオオブジェクトごと、つまりオブジェクト信号ごとにゲイン計算部81から供給された探索メッシュ情報と、オーディオオブジェクト無音情報とに基づいて各仮想スピーカの仮想スピーカ無音情報を生成する。
仮想スピーカ無音情報の値は、仮想スピーカ信号が無音区間の信号(無音信号)である場合には1とされ、仮想スピーカ信号が無音区間の信号でない場合、つまり有音区間の信号(有音信号)である場合には0とされる。
ゲイン適用部82には、無音情報生成部22からはオーディオオブジェクト無音情報および仮想スピーカ無音情報が供給され、ゲイン計算部81からゲインが供給され、デコード処理部21のIMDCT処理部54からはオブジェクト信号が供給される。
ゲイン適用部82は、オーディオオブジェクト無音情報および仮想スピーカ無音情報に基づいて、仮想スピーカごとにゲイン計算部81からのゲインをオブジェクト信号に乗算し、ゲインが乗算されたオブジェクト信号を加算することで仮想スピーカ信号を生成する。
このときゲイン適用部82は、オーディオオブジェクト無音情報および仮想スピーカ無音情報に応じて、無音のオブジェクト信号や無音の仮想スピーカ信号については、仮想スピーカ信号を生成するための演算処理を行わないようにする。すなわち、仮想スピーカ信号を生成する演算処理の少なくとも一部の演算が省略される。ゲイン適用部82は、得られた仮想スピーカ信号をHRTF処理部24に供給する。
このようにレンダリング処理部23では、仮想スピーカのゲインを求めるゲイン計算処理、より詳細には図10を参照して後述するゲイン計算処理の一部と、仮想スピーカ信号を生成するゲイン適用処理とからなる処理がレンダリング処理として行われる。
〈仮想スピーカ信号生成処理の説明〉
ここで、図5を参照して説明した出力オーディオ信号生成処理におけるステップS12の処理について、より詳細に説明する。すなわち、以下、図9のフローチャートを参照して、図5のステップS12に対応し、レンダリング処理部23および無音情報生成部22により行われる仮想スピーカ信号生成処理について説明する。
ここで、図5を参照して説明した出力オーディオ信号生成処理におけるステップS12の処理について、より詳細に説明する。すなわち、以下、図9のフローチャートを参照して、図5のステップS12に対応し、レンダリング処理部23および無音情報生成部22により行われる仮想スピーカ信号生成処理について説明する。
ステップS71においてゲイン計算部81および無音情報生成部22は、ゲイン計算処理を行う。
すなわち、ゲイン計算部81は非多重化部51から供給されたメタデータに含まれるオブジェクト位置情報に基づいて、オブジェクト信号ごとに上述した式(2)の計算を行うことで各仮想スピーカのゲインを算出し、ゲイン適用部82に供給する。また、ゲイン計算部81は探索メッシュ情報を無音情報生成部22に供給する。
さらに無音情報生成部22は、オブジェクト信号ごとに、ゲイン計算部81から供給された探索メッシュ情報と、オーディオオブジェクト無音情報とに基づいて仮想スピーカ無音情報を生成する。無音情報生成部22は、オーディオオブジェクト無音情報と仮想スピーカ無音情報をゲイン適用部82に供給するとともに、仮想スピーカ無音情報をHRTF処理部24に供給する。
ステップS72においてゲイン適用部82は、オーディオオブジェクト無音情報、仮想スピーカ無音情報、ゲイン計算部81からのゲイン、およびIMDCT処理部54からのオブジェクト信号に基づいて仮想スピーカ信号を生成する。
このときゲイン適用部82は、オーディオオブジェクト無音情報および仮想スピーカ無音情報に応じて、仮想スピーカ信号を生成するための演算処理の少なくとも一部を行わないようにする、つまり省略することでレンダリング処理の演算量を低減させる。
この場合、オブジェクト信号や仮想スピーカ信号が無音である区間の処理が省略されるため、結果として処理の省略を行わない場合と全く同じ仮想スピーカ信号が得られることになる。すなわち、仮想スピーカ信号の誤差を生じさせることなく、演算量を削減することができる。
以上において説明したゲインの算出(計算)と仮想スピーカ信号を生成する処理がレンダリング処理としてレンダリング処理部23により行われる。
ゲイン適用部82は、得られた仮想スピーカ信号をHRTF処理部24に供給し、仮想スピーカ信号生成処理は終了する。
以上のようにしてレンダリング処理部23および無音情報生成部22は、仮想スピーカ無音情報を生成するとともに仮想スピーカ信号を生成する。このとき、オーディオオブジェクト無音情報と仮想スピーカ無音情報に応じて、仮想スピーカ信号を生成するための演算処理の少なくとも一部を省略することで、レンダリング処理の結果として得られる仮想スピーカ信号に何ら誤差を生じさせることなく、レンダリング処理の演算量を低減させることができる。これにより、少ない演算量でも高い臨場感を得ることができる。
〈ゲイン計算処理の説明〉
また、図9のステップS71で行われるゲイン計算処理は、各オーディオオブジェクトについて行われる。すなわち、より詳細にはゲイン計算処理として図10に示す処理が行われる。以下、図10のフローチャートを参照して図9のステップS71の処理に対応し、レンダリング処理部23および無音情報生成部22により行われるゲイン計算処理について説明する。
また、図9のステップS71で行われるゲイン計算処理は、各オーディオオブジェクトについて行われる。すなわち、より詳細にはゲイン計算処理として図10に示す処理が行われる。以下、図10のフローチャートを参照して図9のステップS71の処理に対応し、レンダリング処理部23および無音情報生成部22により行われるゲイン計算処理について説明する。
ステップS101において、ゲイン計算部81および無音情報生成部22は、処理対象とするオーディオオブジェクトを示すインデックスobj_idの値を初期化して0とし、さらに無音情報生成部22は全仮想スピーカの仮想スピーカ無音情報a_spk_mute[spk_id]の値を初期化して1とする。
ここでは、入力ビットストリームから得られるオブジェクト信号の数、すなわちオーディオオブジェクトの総数はmax_objであるものとする。そしてインデックスobj_id=0により示されるオーディオオブジェクトから、インデックスobj_id=max_obj-1により示されるオーディオオブジェクトまで順番に処理対象のオーディオオブジェクトとされていくものとする。
また、spk_idは仮想スピーカを示すインデックスであり、a_spk_mute[spk_id]は、インデックスspk_idにより示される仮想スピーカについての仮想スピーカ無音情報を示している。上述したように仮想スピーカ無音情報a_spk_mute[spk_id]の値が1である場合、その仮想スピーカに対応する仮想スピーカ信号は無音であることを示している。
なお、ここでは空間内に配置される仮想スピーカの総数はmax_spk個であるとする。したがって、この例ではインデックスspk_id=0により示される仮想スピーカから、インデックスspk_id=max_spk-1により示される仮想スピーカまでの合計max_spk個の仮想スピーカが存在していることになる。
ステップS101では、ゲイン計算部81および無音情報生成部22は、処理対象とするオーディオオブジェクトを示すインデックスobj_idの値を0とする。
また、無音情報生成部22は、各インデックスspk_id(但し、0≦spk_id≦max_spk-1)についての仮想スピーカ無音情報a_spk_mute[spk_id]の値を1とする。すなわち、ここでは、とりあえず全仮想スピーカの仮想スピーカ信号は無音であるとされる。
ステップS102において、ゲイン計算部81および無音情報生成部22は、処理対象とするメッシュを示すインデックスmesh_idの値を0とする。
ここでは、空間内には仮想スピーカによりmax_mesh個のメッシュが形成されているものとする。すなわち、空間内に存在するメッシュの総数がmax_mesh個であるとする。また、ここではインデックスmesh_id=0により示されるメッシュから順番に、すなわちインデックスmesh_idの値が小さいものから順番に処理対象のメッシュとして選択されていくものとする。
ステップS103においてゲイン計算部81は、処理対象となっているインデックスobj_idのオーディオオブジェクトについて、上述した式(2)を計算することにより処理対象となっているインデックスmesh_idのメッシュを構成する3個の仮想スピーカのゲインを求める。
ステップS103ではインデックスobj_idのオーディオオブジェクトのオブジェクト位置情報が用いられて式(2)の計算が行われる。これにより3個の各仮想スピーカのゲインg1乃至ゲインg3が得られる。
ステップS104においてゲイン計算部81は、ステップS103で求めた3個のゲインg1乃至ゲインg3が全て予め定めた閾値TH1以上であるか否かを判定する。
ここで、閾値TH1は0以下の浮動小数点数であり、例えば実装された装置の演算精度によって定まる値である。一般的には閾値TH1の値として-1×10-5程度の小さな値が用いられることが多い。
例えば処理対象のオーディオオブジェクトについて、ゲインg1乃至ゲインg3が全て閾値TH1以上となる場合、そのオーディオオブジェクトは処理対象のメッシュ内に存在(位置)していることになる。これに対してゲインg1乃至ゲインg3の何れか1つでも閾値TH1未満となる場合、処理対象のオーディオオブジェクトは処理対象のメッシュ内には存在(位置)していないことになる。
処理対象のオーディオオブジェクトの音を再生しようとする場合、そのオーディオオブジェクトが含まれるメッシュを構成する3個の仮想スピーカからのみ音を出力すればよく、他の仮想スピーカの仮想スピーカ信号は無音信号とすればよい。そのため、ゲイン計算部81では処理対象のオーディオオブジェクトを含むメッシュの探索が行われ、その探索結果に応じて仮想スピーカ無音情報の値が決定される。
ステップS104において閾値TH1以上でないと判定された場合、ステップS105においてゲイン計算部81は、処理対象のメッシュのインデックスmesh_idの値がmax_mesh未満であるか否か、すなわちmesh_id<max_meshであるか否かを判定する。
ステップS105においてmesh_id<max_meshでないと判定された場合、その後、処理はステップS110へと進む。なお、基本的にはステップS105においてmesh_id<max_meshとなることは想定されていない。
これに対して、ステップS105においてmesh_id<max_meshであると判定された場合、処理はステップS106へと進む。
ステップS106においてゲイン計算部81および無音情報生成部22は、処理対象とするメッシュを示すインデックスmesh_idの値を1だけインクリメントする。
ステップS106の処理が行われると、その後、処理はステップS103に戻り、上述した処理が繰り返し行われる。すなわち、処理対象のオーディオオブジェクトを含むメッシュが検出されるまで、ゲインを計算する処理が繰り返し行われる。
一方、ステップS104において閾値TH1以上であると判定された場合、ゲイン計算部81は、処理対象となっているインデックスmesh_idのメッシュを示す探索メッシュ情報を生成して無音情報生成部22に供給し、その後、処理はステップS107に進む。
ステップS107において無音情報生成部22は、処理対象となっているインデックスobj_idのオーディオオブジェクトのオブジェクト信号について、オーディオオブジェクト無音情報a_obj_mute[obj_id]の値が0であるか否かを判定する。
ここでa_obj_mute[obj_id]は、インデックスがobj_idであるオーディオオブジェクトのオーディオオブジェクト無音情報を示している。上述したようにオーディオオブジェクト無音情報a_obj_mute[obj_id]の値が1である場合、インデックスobj_idのオーディオオブジェクトのオブジェクト信号は無音信号であることを示している。
これに対して、オーディオオブジェクト無音情報a_obj_mute[obj_id]の値が0である場合、インデックスobj_idのオーディオオブジェクトのオブジェクト信号は有音信号であることを示している。
ステップS107においてオーディオオブジェクト無音情報a_obj_mute[obj_id]の値が0であると判定された場合、すなわちオブジェクト信号が有音信号である場合、処理はステップS108に進む。
ステップS108において無音情報生成部22は、ゲイン計算部81から供給された探索メッシュ情報により示されるインデックスmesh_idのメッシュを構成する3個の仮想スピーカの仮想スピーカ無音情報の値を0とする。
例えばインデックスmesh_idのメッシュについて、そのメッシュを示す情報をメッシュ情報mesh_info[mesh_id]とする。このメッシュ情報mesh_info[mesh_id]は、インデックスmesh_idのメッシュを構成する3個の各仮想スピーカを示すインデックスspk_id=spk1,spk2,spk3をメンバ変数として有している。
特に、ここではインデックスmesh_idのメッシュを構成する1つ目の仮想スピーカを示すインデックスspk_idを特にspk_id=mesh_info[mesh_id].spk1と記すこととする。
同様に、インデックスmesh_idのメッシュを構成する2つ目の仮想スピーカを示すインデックスspk_idをspk_id=mesh_info[mesh_id].spk2と記し、インデックスmesh_idのメッシュを構成する3つ目の仮想スピーカを示すインデックスspk_idをspk_id=mesh_info[mesh_id].spk3と記すこととする。
オーディオオブジェクト無音情報a_obj_mute[obj_id]の値が0である場合、オーディオオブジェクトのオブジェクト信号は有音であるから、そのオーディオオブジェクトを含むメッシュを構成する3個の仮想スピーカから出力される音は有音となる。
そこで、無音情報生成部22は、インデックスmesh_idのメッシュを構成する3個の仮想スピーカの仮想スピーカ無音情報a_spk_mute[mesh_info[mesh_id].spk1]、仮想スピーカ無音情報a_spk_mute[mesh_info[mesh_id].spk2]、および仮想スピーカ無音情報a_spk_mute[mesh_info[mesh_id].spk3]の各値を1から0に変更する。
このように無音情報生成部22では、仮想スピーカのゲインの算出結果(計算結果)と、オーディオオブジェクト無音情報とに基づいて仮想スピーカ無音情報が生成される。
このようにして仮想スピーカ無音情報の設定が行われると、その後、処理はステップS109へと進む。
一方、ステップS107においてオーディオオブジェクト無音情報a_obj_mute[obj_id]の値が0でない、つまり1であると判定された場合、ステップS108の処理は行われず、処理はステップS109に進む。
この場合、処理対象のオーディオオブジェクトのオブジェクト信号は無音であるので、仮想スピーカの仮想スピーカ無音情報a_spk_mute[mesh_info[mesh_id].spk1]、仮想スピーカ無音情報a_spk_mute[mesh_info[mesh_id].spk2]、および仮想スピーカ無音情報a_spk_mute[mesh_info[mesh_id].spk3]の各値は、ステップS101で設定された1のままとされる。
ステップS108の処理が行われたか、またはステップS107においてオーディオオブジェクト無音情報の値が1であると判定されると、ステップS109の処理が行われる。
すなわち、ステップS109においてゲイン計算部81は、ステップS103で求めたゲインを、処理対象となっているインデックスmesh_idのメッシュを構成する3個の仮想スピーカのゲインの値とする。
例えばインデックスobj_idのオーディオオブジェクトについてのインデックスspk_idの仮想スピーカのゲインをa_gain[obj_id][spk_id]と記すとする。
また、ステップS103で求めたゲインg1乃至ゲインg3のうち、インデックスspk_id=mesh_info[mesh_id].spk1に対応する仮想スピーカのゲインがg1であるとする。同様に、インデックスspk_id=mesh_info[mesh_id].spk2に対応する仮想スピーカのゲインがg2であり、インデックスspk_id=mesh_info[mesh_id].spk3に対応する仮想スピーカのゲインがg3であるとする。
そのような場合、ゲイン計算部81はステップS103の計算結果に基づいて、仮想スピーカのゲインa_gain[obj_id][mesh_info[mesh_id].spk1]=g1とする。同様に、ゲイン計算部81はゲインa_gain[obj_id][mesh_info[mesh_id].spk2]=g2とするとともに、ゲインa_gain[obj_id][mesh_info[mesh_id].spk3]=g3とする。
このようにして処理対象のメッシュを構成する3個の仮想スピーカのゲインが定められると、その後、処理はステップS110に進む。
ステップS105においてmesh_id<max_meshでないと判定されたか、またはステップS109の処理が行われると、ステップS110においてゲイン計算部81はobj_id<max_objであるか否かを判定する。すなわち、全てのオーディオオブジェクトが処理対象として処理が行われたか否かが判定される。
ステップS110においてobj_id<max_objである、すなわち、まだ全てのオーディオオブジェクトを処理対象としていないと判定された場合、処理はステップS111へと進む。
ステップS111においてゲイン計算部81および無音情報生成部22は、処理対象とするオーディオオブジェクトを示すインデックスobj_idの値を1だけインクリメントする。ステップS111の処理が行われると、その後、処理はステップS102に戻り、上述した処理が繰り返し行われる。すなわち、新たに処理対象とされたオーディオオブジェクトについてゲインが求められるとともに仮想スピーカ無音情報の設定が行われる。
一方、ステップS110においてobj_id<max_objでないと判定された場合、全てのオーディオオブジェクトが処理対象として処理が行われたので、ゲイン計算処理は終了する。ゲイン計算処理が終了すると、全てのオブジェクト信号について各仮想スピーカのゲインが求められ、また各仮想スピーカについて仮想スピーカ無音情報が生成された状態となる。
以上のようにしてレンダリング処理部23および無音情報生成部22は、各仮想スピーカのゲインを算出するとともに仮想スピーカ無音情報を生成する。このように仮想スピーカ無音情報を生成すれば、仮想スピーカ信号が無音であるかを正しく認識することができるので、後段のゲイン適用部82やHRTF処理部24において適切に処理を省略することができるようになる。
〈スムージング処理の説明〉
図9を参照して説明した仮想スピーカ信号生成処理のステップS72では、例えば図10を参照して説明したゲイン計算処理で得られた各仮想スピーカのゲインや仮想スピーカ無音情報が用いられる。
図9を参照して説明した仮想スピーカ信号生成処理のステップS72では、例えば図10を参照して説明したゲイン計算処理で得られた各仮想スピーカのゲインや仮想スピーカ無音情報が用いられる。
しかし、例えばオーディオオブジェクトの位置が時間フレームごとに変化する場合、オーディオオブジェクトの位置の変化点でゲインが急激に変動することがある。そのような場合、図10のステップS109で定めたゲインをそのまま用いると仮想スピーカ信号にノイズが発生するため、現フレームのゲインだけでなく、その直前のフレームのゲインも用いて直線補間等のスムージング処理を行うようにすることができる。
そのような場合、ゲイン計算部81は、現フレームのゲインと、直前のフレームのゲインとに基づいてゲインのスムージング処理を行い、スムージング(平滑化)後のゲインを最終的に得られた現フレームのゲインとしてゲイン適用部82に供給する。
このようにしてゲインのスムージングが行われる場合、仮想スピーカ無音情報についても現フレームとその直前のフレームが加味されてスムージング(平滑化)を行う必要がある。この場合、無音情報生成部22は、例えば図11に示すスムージング処理を行って各仮想スピーカの仮想スピーカ無音情報を平滑化する。以下、図11のフローチャートを参照して、無音情報生成部22によるスムージング処理について説明する。
ステップS141において無音情報生成部22は、処理対象とする仮想スピーカを示すインデックスspk_id(但し、0≦spk_id≦max_spk-1)の値を0とする。
また、ここではインデックスspk_idにより示される処理対象の仮想スピーカについて得られた、現フレームの仮想スピーカ無音情報をa_spk_mute[spk_id]と記し、その現フレームの直前のフレームの仮想スピーカ無音情報をa_prev_spk_mute[spk_id]と記すこととする。
ステップS142において無音情報生成部22は、現フレームと直前のフレームの仮想スピーカ無音情報が1であるか否かを判定する。
すなわち、現フレームの仮想スピーカ無音情報a_spk_mute[spk_id]の値と、直前のフレームの仮想スピーカ無音情報a_prev_spk_mute[spk_id]の値とがともに1であるか否かが判定される。
ステップS142において仮想スピーカ無音情報が1であると判定された場合、ステップS143において無音情報生成部22は、現フレームの仮想スピーカ無音情報a_spk_mute[spk_id]の最終的な値を1とし、その後、処理はステップS145へと進む。
一方、ステップS142において仮想スピーカ無音情報が1でないと判定された場合、すなわち現フレームと直前のフレームのうちの少なくとも何れか一方の仮想スピーカ無音情報が0である場合、処理はステップS144に進む。この場合、現フレームと直前のフレームのうちの少なくとも何れか一方のフレームでは、仮想スピーカ信号が有音となっている。
ステップS144において無音情報生成部22は、現フレームの仮想スピーカ無音情報a_spk_mute[spk_id]の最終的な値を0とし、その後、処理はステップS145へと進む。
例えば現フレームと直前のフレームの少なくとも何れか一方において仮想スピーカ信号が有音である場合には、現フレームの仮想スピーカ無音情報の値を0とすることで、仮想スピーカ信号の音が急に無音となって途切れてしまったり、仮想スピーカ信号の音が急に有音となってしまったりすることを防止することができる。
ステップS143またはステップS144の処理が行われると、その後、ステップS145の処理が行われる。
ステップS145において無音情報生成部22は、処理対象の現フレームについて図10のゲイン計算処理で得られた仮想スピーカ無音情報a_spk_mute[spk_id]を、次のスムージング処理で用いる直前のフレームの仮想スピーカ無音情報a_prev_spk_mute[spk_id]とする。すなわち、現フレームの仮想スピーカ無音情報a_spk_mute[spk_id]が、次回のスムージング処理における仮想スピーカ無音情報a_prev_spk_mute[spk_id]として用いられる。
ステップS146において無音情報生成部22は、spk_id<max_spkであるか否かを判定する。すなわち、全ての仮想スピーカが処理対象として処理が行われたか否かが判定される。
ステップS146においてspk_id<max_spkであると判定された場合、まだ全ての仮想スピーカが処理対象として処理されていないので、ステップS147において無音情報生成部22は、処理対象とする仮想スピーカを示すインデックスspk_idの値を1だけインクリメントする。
ステップS147の処理が行われると、その後、処理はステップS142に戻り、上述した処理が繰り返し行われる。すなわち、新たに処理対象とされた仮想スピーカについて仮想スピーカ無音情報a_spk_mute[spk_id]をスムージングする処理が行われる。
これに対して、ステップS146においてspk_id<max_spkでないと判定された場合、現フレームについては全ての仮想スピーカについて仮想スピーカ無音情報のスムージングが行われたので、スムージング処理は終了する。
以上のようにして無音情報生成部22は直前のフレームも考慮して仮想スピーカ無音情報に対するスムージング処理を行う。このようにしてスムージングを行うことで、急激な変化やノイズが少ない適切な仮想スピーカ信号を得ることができるようになる。
図11に示したスムージング処理が行われた場合には、ステップS143やステップS144で得られた最終的な仮想スピーカ無音情報がゲイン適用部82やHRTF処理部24において用いられることになる。
また、図9を参照して説明した仮想スピーカ信号生成処理のステップS72では、図10のゲイン計算処理または図11のスムージング処理により得られた仮想スピーカ無音情報が利用される。
すなわち、一般的には上述した式(3)の計算が行われて仮想スピーカ信号が求められる。この場合、オブジェクト信号や仮想スピーカ信号が無音の信号であるか否かによらず、全ての演算が行われる。
これに対してゲイン適用部82では、無音情報生成部22から供給されたオーディオオブジェクト無音情報と仮想スピーカ無音情報が加味されて次式(5)の計算により仮想スピーカ信号が求められる。
なお、式(5)においてSP(m,t)は、M個の仮想スピーカのうちのm番目(但し、m=0,1,…,M-1)の仮想スピーカの時刻tにおける仮想スピーカ信号を示している。また、式(5)においてS(n,t)はN個のオーディオオブジェクトのうちのn番目(但し、n=0,1,…,N-1)のオーディオオブジェクトの時刻tにおけるオブジェクト信号を示している。
さらに式(5)においてG(m,n)は、m番目の仮想スピーカについての仮想スピーカ信号SP(m,t)を得るための、n番目のオーディオオブジェクトのオブジェクト信号S(n,t)に乗算されるゲインを示している。すなわち、ゲインG(m,n)は図10のステップS109で得られた各仮想スピーカのゲインである。
また、式(5)においてa_spk_mute(m)は、m番目の仮想スピーカについての仮想スピーカ無音情報a_spk_mute[spk_id]により定まる係数を示している。具体的には、仮想スピーカ無音情報a_spk_mute[spk_id]の値が1である場合には、係数a_spk_mute(m)の値は0とされ、仮想スピーカ無音情報a_spk_mute[spk_id]の値が0である場合には、係数a_spk_mute(m)の値は1とされる。
したがってゲイン適用部82では、仮想スピーカ信号が無音(無音信号)である場合には、その仮想スピーカ信号についての演算は行われないようにされる。具体的には無音である仮想スピーカ信号SP(m,t)を求める演算は行われず、仮想スピーカ信号SP(m,t)としてゼロデータが出力される。すなわち、仮想スピーカ信号についての演算が省略され、演算量が削減される。
さらに、式(5)においてa_obj_mute(n)は、n番目のオーディオオブジェクトのオブジェクト信号についてのオーディオオブジェクト無音情報a_obj_mute[obj_id]により定まる係数を示している。
具体的には、オーディオオブジェクト無音情報a_obj_mute[obj_id]の値が1である場合には、係数a_obj_mute(n)の値は0とされ、オーディオオブジェクト無音情報a_obj_mute[obj_id]の値が0である場合には、係数a_obj_mute(n)の値は1とされる。
したがってゲイン適用部82では、オブジェクト信号が無音(無音信号)である場合には、そのオブジェクト信号についての演算は行われないようにされる。具体的には無音であるオブジェクト信号S(n,t)の項の積和演算は行われない。すなわち、オブジェクト信号に基づく演算部分が省略され、演算量が削減される。
なお、ゲイン適用部82では、無音信号であるとされたオブジェクト信号の部分、および無音信号であるとされた仮想スピーカ信号の部分のうちの少なくとも何れか一方の演算を省略すれば演算量を削減することができる。したがって、無音信号であるとされたオブジェクト信号の部分、および無音信号であるとされた仮想スピーカ信号の部分の両方の演算を省略する例に限らず、それらの何れか一方の演算が省略されるようにしてもよい。
図9のステップS72では、ゲイン適用部82は、無音情報生成部22から供給されたオーディオオブジェクト無音情報および仮想スピーカ無音情報と、ゲイン計算部81から供給されたゲインと、IMDCT処理部54から供給されたオブジェクト信号とに基づいて式(5)と同様の演算を行い、各仮想スピーカの仮想スピーカ信号を求める。特にここでは、演算が省略された部分ではゼロデータが演算結果として用いられる。換言すれば、実際の演算は行われず、ゼロデータが演算結果に対応する値として出力される。
一般的に、ある時間フレームT、つまりフレーム数がTである区間において式(3)の計算を行う場合、M×N×T回の演算が必要となる。
しかし、仮にオーディオオブジェクト無音情報により無音とされたオーディオオブジェクトが全オーディオオブジェクトのうちの3割であり、また仮想スピーカ無音情報により無音とされた仮想スピーカの数が全仮想スピーカのうちの3割であるとする。
そのような場合、式(5)により仮想スピーカ信号を求めるようにすれば、演算回数は0.7×M×0.7×N×T回となり、式(3)における場合と比較して約50%分だけ演算量を削減することができる。しかもこの場合、式(3)でも式(5)でも最終的に得られる仮想スピーカ信号は同じものとなり、一部の演算を省略したことによる誤差は生じない。
一般的にオーディオオブジェクトの数が多く、また仮想スピーカの数も多い場合には、コンテンツ制作者によるオーディオオブジェクトの空間配置では、より無音のオーディオオブジェクトや無音の仮想スピーカが発生しやすい。換言すればオブジェクト信号の無音となる区間や仮想スピーカ信号の無音となる区間が発生しやすい。
そのため、式(5)のように一部の演算を省略する方法では、オーディオオブジェクト数や仮想スピーカ数が多く、演算量が大幅に増大するようなケースにおいて、より演算量の削減効果が高くなる。
さらに、ゲイン適用部82で仮想スピーカ信号が生成されてHRTF処理部24に供給されると、図5のステップS13では出力オーディオ信号が生成される。
すなわち、ステップS13ではHRTF処理部24は、無音情報生成部22から供給された仮想スピーカ無音情報と、ゲイン適用部82から供給された仮想スピーカ信号とに基づいて出力オーディオ信号を生成する。
一般的には式(4)に示したようにHRTF係数である伝達関数と仮想スピーカ信号の畳み込み処理によって出力オーディオ信号が求められる。
しかし、HRTF処理部24では仮想スピーカ無音情報が用いられて、次式(6)により出力オーディオ信号が求められる。
なお、式(6)においてωは周波数を示しており、SP(m,ω)はM個の仮想スピーカのうちのm番目(但し、m=0,1,…,M-1)の仮想スピーカの周波数ωの仮想スピーカ信号を示している。仮想スピーカ信号SP(m,ω)は、時間信号である仮想スピーカ信号を時間周波数変換することにより得ることができる。
また、式(6)においてH_L(m,ω)は、左チャネルの出力オーディオ信号L(ω)を得るための、m番目の仮想スピーカについての仮想スピーカ信号SP(m,ω)に乗算される左耳用の伝達関数を示している。同様にH_R(m,ω)は右耳用の伝達関数を示している。
さらに式(6)においてa_spk_mute(m)は、m番目の仮想スピーカについての仮想スピーカ無音情報a_spk_mute[spk_id]により定まる係数を示している。具体的には、仮想スピーカ無音情報a_spk_mute[spk_id]の値が1である場合には、係数a_spk_mute(m)の値は0とされ、仮想スピーカ無音情報a_spk_mute[spk_id]の値が0である場合には、係数a_spk_mute(m)の値は1とされる。
したがってHRTF処理部24では、仮想スピーカ無音情報により仮想スピーカ信号が無音(無音信号)である場合には、その仮想スピーカ信号についての演算は行われないようにされる。具体的には無音である仮想スピーカ信号SP(m,ω)の項の積和演算は行われない。すなわち、無音である仮想スピーカ信号と伝達関数とを畳み込む演算(処理)が省略され、演算量が削減される。
これにより、演算量が極めて多い畳み込み処理において、有音の仮想スピーカ信号のみに限定して畳み込みの演算が行われるようにすることができ、演算量を大幅に削減することができる。しかもこの場合、式(4)でも式(6)でも最終的に得られる出力オーディオ信号は同じものとなり、一部の演算を省略したことによる誤差は生じない。
以上のように本技術によれば、オーディオオブジェクトに無音の区間(無音信号)が存在する場合に、デコード処理やレンダリング処理、HRTF処理において少なくとも一部の処理を省略するなどすることで、出力オーディオ信号の誤差を一切発生させずに演算量を低減させることができる。すなわち、少ない演算量でも高い臨場感を得ることができる。
したがって本技術では、平均的な処理量が低減されてプロセッサの電力使用量が少なくなるので、スマートフォンなどの携帯機器でもコンテンツをより長時間、連続再生することができるようになる。
〈第2の実施の形態〉
〈オブジェクトプライオリティの利用について〉
ところでMPEG-H Part 3:3D audio規格では、オーディオオブジェクトの位置を示すオブジェクト位置情報とともに、そのオーディオオブジェクトの優先度をメタデータ(ビットストリーム)に含めることができる。なお、以下、オーディオオブジェクトの優先度をオブジェクトプライオリティと称することとする。
〈オブジェクトプライオリティの利用について〉
ところでMPEG-H Part 3:3D audio規格では、オーディオオブジェクトの位置を示すオブジェクト位置情報とともに、そのオーディオオブジェクトの優先度をメタデータ(ビットストリーム)に含めることができる。なお、以下、オーディオオブジェクトの優先度をオブジェクトプライオリティと称することとする。
このようにメタデータにオブジェクトプライオリティが含まれる場合、メタデータは例えば図12に示すフォーマットとされる。
図12に示す例では、「num_objects」はオーディオオブジェクトの総数を示しており、「object_priority」はオブジェクトプライオリティを示している。
また「position_azimuth」はオーディオオブジェクトの球面座標系における水平角度を示しており、「position_elevation」はオーディオオブジェクトの球面座標系における垂直角度を示しており、「position_radius」は球面座標系原点からオーディオオブジェクトまでの距離(半径)を示している。ここでは、これらの水平角度、垂直角度、および距離からなる情報がオーディオオブジェクトの位置を示すオブジェクト位置情報となっている。
また、図12ではオブジェクトプライオリティobject_priorityは3ビットの情報となっており、低優先度0から高優先度7までの値をとることができるようになっている。すなわち、優先度0から優先度7のうち、より値が大きいものがオブジェクトプライオリティが高いオーディオオブジェクトとされる。
例えば復号側において全てのオーディオオブジェクトについて処理を行うことができない場合、復号側のリソースに応じて、オブジェクトプライオリティが高いオーディオオブジェクトだけが処理されるようにすることができる。
具体的には、例えば3個のオーディオオブジェクトがあり、それらのオーディオオブジェクトのオブジェクトプライオリティが7、6、および5であったとする。また、処理装置の負荷が高く3個のオーディオオブジェクト全ての処理が困難であるとする。
そのような場合、例えばオブジェクトプライオリティが5であるオーディオオブジェクトの処理は実行せず、オブジェクトプライオリティが7および6のオーディオオブジェクトのみが処理されるようにすることができる。
これに加えて、本技術ではオーディオオブジェクトの信号が無音であるか否かも考慮して実際に処理されるオーディオオブジェクトを選択するようにしてもよい。
具体的には、例えばスペクトル無音情報またはオーディオオブジェクト無音情報に基づいて、処理対象のフレームにおける複数のオーディオオブジェクトのうちの無音のものが除外される。そして無音のオーディオオブジェクトが除外されて残ったもののなかから、オブジェクトプライオリティが高いものから順番に、リソース等により定まる数だけ処理されるオーディオオブジェクトが選択される。
換言すれば、例えばスペクトル無音情報やオーディオオブジェクト無音情報と、オブジェクトプライオリティとに基づいてデコード処理およびレンダリング処理のうちの少なくとも何れか1つの処理が行われる。
例えば入力ビットストリームにオーディオオブジェクトAOB1乃至オーディオオブジェクトAOB5の5つのオーディオオブジェクトのオーディオオブジェクトデータがあり、信号処理装置11では3個のオーディオオブジェクトしか処理する余裕がないとする。
このとき、例えばオーディオオブジェクトAOB5のスペクトル無音情報の値が1であり、他のオーディオオブジェクトのスペクトル無音情報の値が0であったとする。また、オーディオオブジェクトAOB1乃至オーディオオブジェクトAOB4のオブジェクトプライオリティがそれぞれ7、7、6、および5であったとする。
そのような場合、例えばスペクトル復号部53では、まずオーディオオブジェクトAOB1乃至オーディオオブジェクトAOB5のうちの無音であるオーディオオブジェクトAOB5が除外される。次にスペクトル復号部53では、残りのオーディオオブジェクトAOB1乃至オーディオオブジェクトAOB4のなかからオブジェクトプライオリティが高いオーディオオブジェクトAOB1乃至オーディオオブジェクトAOB3が選択される。
そして、スペクトル復号部53では、最終的に選択されたオーディオオブジェクトAOB1乃至オーディオオブジェクトAOB3についてのみスペクトルデータの復号が行われる。
このようにすることで、信号処理装置11の処理負荷が高く、全てのオーディオオブジェクトの処理が行えないような場合においても、実質的に破棄されるオーディオオブジェクトの数を減らすことができる。
〈コンピュータの構成例〉
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図13は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
バス504には、さらに、入出力インターフェース505が接続されている。入出力インターフェース505には、入力部506、出力部507、記録部508、通信部509、及びドライブ510が接続されている。
入力部506は、キーボード、マウス、マイクロフォン、撮像素子などよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記録部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインターフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体511を駆動する。
以上のように構成されるコンピュータでは、CPU501が、例えば、記録部508に記録されているプログラムを、入出力インターフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブル記録媒体511をドライブ510に装着することにより、入出力インターフェース505を介して、記録部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記録部508にインストールすることができる。その他、プログラムは、ROM502や記録部508に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、本技術は、以下の構成とすることも可能である。
(1)
オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
信号処理装置。
(2)
前記デコード処理および前記レンダリング処理のうちの少なくとも何れか一方の処理において、前記オーディオオブジェクト無音情報に応じて、少なくとも一部の演算を省略するか、または所定の演算の結果に対応する値として予め定められた値を出力する
(1)に記載の信号処理装置。
(3)
前記レンダリング処理により得られた、仮想スピーカにより音を再生するための仮想スピーカ信号と、前記仮想スピーカ信号が無音信号であるか否かを示す仮想スピーカ無音情報とに基づいてHRTF処理を行うHRTF処理部をさらに備える
(1)または(2)に記載の信号処理装置。
(4)
前記HRTF処理部は、前記HRTF処理のうち、前記仮想スピーカ無音情報により無音信号であるとされた前記仮想スピーカ信号と、伝達関数とを畳み込む演算を省略する
(3)に記載の信号処理装置。
(5)
前記オブジェクト信号のスペクトルに関する情報に基づいて前記オーディオオブジェクト無音情報を生成する無音情報生成部をさらに備える
(3)または(4)に記載の信号処理装置。
(6)
コンテキストベースの算術符号化方式により符号化された、前記オブジェクト信号のスペクトルデータの復号を含む前記デコード処理を行うデコード処理部をさらに備え、
前記デコード処理部は、前記オーディオオブジェクト無音情報により無音信号であるとされた前記スペクトルデータのコンテキストの計算を行わずに、前記コンテキストの計算結果として予め定められた値を用いて前記スペクトルデータを復号する
(5)に記載の信号処理装置。
(7)
前記デコード処理部は、前記スペクトルデータの復号、および復号された前記スペクトルデータに対するIMDCT処理を含む前記デコード処理を行い、前記オーディオオブジェクト無音情報により無音信号であるとされた、前記復号された前記スペクトルデータに対して前記IMDCT処理を行わず、ゼロデータを出力する
(6)に記載の信号処理装置。
(8)
前記無音情報生成部は、前記デコード処理の結果に基づいて、前記デコード処理に用いられる前記オーディオオブジェクト無音情報とは異なる他の前記オーディオオブジェクト無音情報を生成し、
前記他の前記オーディオオブジェクト無音情報に基づいて、前記レンダリング処理を行うレンダリング処理部をさらに備える
(5)乃至(7)の何れか一項に記載の信号処理装置。
(9)
前記レンダリング処理部は、前記デコード処理により得られた前記オブジェクト信号ごとに前記仮想スピーカのゲインを求めるゲイン計算処理と、前記ゲインおよび前記オブジェクト信号に基づいて前記仮想スピーカ信号を生成するゲイン適用処理とを前記レンダリング処理として行う
(8)に記載の信号処理装置。
(10)
前記レンダリング処理部は、前記ゲイン適用処理において、前記仮想スピーカ無音情報により無音信号であるとされた前記仮想スピーカ信号の演算、および前記他の前記オーディオオブジェクト無音情報により無音信号であるとされた前記オブジェクト信号に基づく演算のうちの少なくとも何れか一方を省略する
(9)に記載の信号処理装置。
(11)
前記無音情報生成部は、前記ゲインの計算結果、および前記他の前記オーディオオブジェクト無音情報に基づいて前記仮想スピーカ無音情報を生成する
(9)または(10)に記載の信号処理装置。
(12)
前記オーディオオブジェクトの優先度、および前記オーディオオブジェクト無音情報に基づいて、前記デコード処理および前記レンダリング処理のうちの少なくとも何れか一方の処理を行う
(1)乃至(11)の何れか一項に記載の信号処理装置。
(13)
信号処理装置が、
オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
信号処理方法。
(14)
オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
ステップを含む処理をコンピュータに実行させるプログラム。
オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
信号処理装置。
(2)
前記デコード処理および前記レンダリング処理のうちの少なくとも何れか一方の処理において、前記オーディオオブジェクト無音情報に応じて、少なくとも一部の演算を省略するか、または所定の演算の結果に対応する値として予め定められた値を出力する
(1)に記載の信号処理装置。
(3)
前記レンダリング処理により得られた、仮想スピーカにより音を再生するための仮想スピーカ信号と、前記仮想スピーカ信号が無音信号であるか否かを示す仮想スピーカ無音情報とに基づいてHRTF処理を行うHRTF処理部をさらに備える
(1)または(2)に記載の信号処理装置。
(4)
前記HRTF処理部は、前記HRTF処理のうち、前記仮想スピーカ無音情報により無音信号であるとされた前記仮想スピーカ信号と、伝達関数とを畳み込む演算を省略する
(3)に記載の信号処理装置。
(5)
前記オブジェクト信号のスペクトルに関する情報に基づいて前記オーディオオブジェクト無音情報を生成する無音情報生成部をさらに備える
(3)または(4)に記載の信号処理装置。
(6)
コンテキストベースの算術符号化方式により符号化された、前記オブジェクト信号のスペクトルデータの復号を含む前記デコード処理を行うデコード処理部をさらに備え、
前記デコード処理部は、前記オーディオオブジェクト無音情報により無音信号であるとされた前記スペクトルデータのコンテキストの計算を行わずに、前記コンテキストの計算結果として予め定められた値を用いて前記スペクトルデータを復号する
(5)に記載の信号処理装置。
(7)
前記デコード処理部は、前記スペクトルデータの復号、および復号された前記スペクトルデータに対するIMDCT処理を含む前記デコード処理を行い、前記オーディオオブジェクト無音情報により無音信号であるとされた、前記復号された前記スペクトルデータに対して前記IMDCT処理を行わず、ゼロデータを出力する
(6)に記載の信号処理装置。
(8)
前記無音情報生成部は、前記デコード処理の結果に基づいて、前記デコード処理に用いられる前記オーディオオブジェクト無音情報とは異なる他の前記オーディオオブジェクト無音情報を生成し、
前記他の前記オーディオオブジェクト無音情報に基づいて、前記レンダリング処理を行うレンダリング処理部をさらに備える
(5)乃至(7)の何れか一項に記載の信号処理装置。
(9)
前記レンダリング処理部は、前記デコード処理により得られた前記オブジェクト信号ごとに前記仮想スピーカのゲインを求めるゲイン計算処理と、前記ゲインおよび前記オブジェクト信号に基づいて前記仮想スピーカ信号を生成するゲイン適用処理とを前記レンダリング処理として行う
(8)に記載の信号処理装置。
(10)
前記レンダリング処理部は、前記ゲイン適用処理において、前記仮想スピーカ無音情報により無音信号であるとされた前記仮想スピーカ信号の演算、および前記他の前記オーディオオブジェクト無音情報により無音信号であるとされた前記オブジェクト信号に基づく演算のうちの少なくとも何れか一方を省略する
(9)に記載の信号処理装置。
(11)
前記無音情報生成部は、前記ゲインの計算結果、および前記他の前記オーディオオブジェクト無音情報に基づいて前記仮想スピーカ無音情報を生成する
(9)または(10)に記載の信号処理装置。
(12)
前記オーディオオブジェクトの優先度、および前記オーディオオブジェクト無音情報に基づいて、前記デコード処理および前記レンダリング処理のうちの少なくとも何れか一方の処理を行う
(1)乃至(11)の何れか一項に記載の信号処理装置。
(13)
信号処理装置が、
オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
信号処理方法。
(14)
オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
ステップを含む処理をコンピュータに実行させるプログラム。
11 信号処理装置, 21 デコード処理部, 22 無音情報生成部, 23 レンダリング処理部, 24 HRTF処理部, 53 スペクトル復号部, 54 IMDCT処理部, 81 ゲイン計算部, 82 ゲイン適用部
Claims (14)
- オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
信号処理装置。 - 前記デコード処理および前記レンダリング処理のうちの少なくとも何れか一方の処理において、前記オーディオオブジェクト無音情報に応じて、少なくとも一部の演算を省略するか、または所定の演算の結果に対応する値として予め定められた値を出力する
請求項1に記載の信号処理装置。 - 前記レンダリング処理により得られた、仮想スピーカにより音を再生するための仮想スピーカ信号と、前記仮想スピーカ信号が無音信号であるか否かを示す仮想スピーカ無音情報とに基づいてHRTF処理を行うHRTF処理部をさらに備える
請求項1に記載の信号処理装置。 - 前記HRTF処理部は、前記HRTF処理のうち、前記仮想スピーカ無音情報により無音信号であるとされた前記仮想スピーカ信号と、伝達関数とを畳み込む演算を省略する
請求項3に記載の信号処理装置。 - 前記オブジェクト信号のスペクトルに関する情報に基づいて前記オーディオオブジェクト無音情報を生成する無音情報生成部をさらに備える
請求項3に記載の信号処理装置。 - コンテキストベースの算術符号化方式により符号化された、前記オブジェクト信号のスペクトルデータの復号を含む前記デコード処理を行うデコード処理部をさらに備え、
前記デコード処理部は、前記オーディオオブジェクト無音情報により無音信号であるとされた前記スペクトルデータのコンテキストの計算を行わずに、前記コンテキストの計算結果として予め定められた値を用いて前記スペクトルデータを復号する
請求項5に記載の信号処理装置。 - 前記デコード処理部は、前記スペクトルデータの復号、および復号された前記スペクトルデータに対するIMDCT処理を含む前記デコード処理を行い、前記オーディオオブジェクト無音情報により無音信号であるとされた、前記復号された前記スペクトルデータに対して前記IMDCT処理を行わず、ゼロデータを出力する
請求項6に記載の信号処理装置。 - 前記無音情報生成部は、前記デコード処理の結果に基づいて、前記デコード処理に用いられる前記オーディオオブジェクト無音情報とは異なる他の前記オーディオオブジェクト無音情報を生成し、
前記他の前記オーディオオブジェクト無音情報に基づいて、前記レンダリング処理を行うレンダリング処理部をさらに備える
請求項5に記載の信号処理装置。 - 前記レンダリング処理部は、前記デコード処理により得られた前記オブジェクト信号ごとに前記仮想スピーカのゲインを求めるゲイン計算処理と、前記ゲインおよび前記オブジェクト信号に基づいて前記仮想スピーカ信号を生成するゲイン適用処理とを前記レンダリング処理として行う
請求項8に記載の信号処理装置。 - 前記レンダリング処理部は、前記ゲイン適用処理において、前記仮想スピーカ無音情報により無音信号であるとされた前記仮想スピーカ信号の演算、および前記他の前記オーディオオブジェクト無音情報により無音信号であるとされた前記オブジェクト信号に基づく演算のうちの少なくとも何れか一方を省略する
請求項9に記載の信号処理装置。 - 前記無音情報生成部は、前記ゲインの計算結果、および前記他の前記オーディオオブジェクト無音情報に基づいて前記仮想スピーカ無音情報を生成する
請求項9に記載の信号処理装置。 - 前記オーディオオブジェクトの優先度、および前記オーディオオブジェクト無音情報に基づいて、前記デコード処理および前記レンダリング処理のうちの少なくとも何れか一方の処理を行う
請求項1に記載の信号処理装置。 - 信号処理装置が、
オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
信号処理方法。 - オーディオオブジェクトの信号が無音信号であるか否かを示すオーディオオブジェクト無音情報に基づいて、前記オーディオオブジェクトのオブジェクト信号のデコード処理およびレンダリング処理のうちの少なくとも何れか一方の処理を行う
ステップを含む処理をコンピュータに実行させるプログラム。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020217009529A KR102677399B1 (ko) | 2018-10-16 | 2019-10-02 | 신호 처리 장치 및 방법, 그리고 프로그램 |
EP19873638.1A EP3869826A4 (en) | 2018-10-16 | 2019-10-02 | SIGNAL PROCESSING DEVICE AND METHOD AND PROGRAM |
US17/284,419 US11445296B2 (en) | 2018-10-16 | 2019-10-02 | Signal processing apparatus and method, and program to reduce calculation amount based on mute information |
JP2020553032A JP7447798B2 (ja) | 2018-10-16 | 2019-10-02 | 信号処理装置および方法、並びにプログラム |
CN201980066990.XA CN112823534B (zh) | 2018-10-16 | 2019-10-02 | 信号处理设备和方法以及程序 |
US17/942,663 US11743646B2 (en) | 2018-10-16 | 2022-09-12 | Signal processing apparatus and method, and program to reduce calculation amount based on mute information |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018194777 | 2018-10-16 | ||
JP2018-194777 | 2018-10-16 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/284,419 A-371-Of-International US11445296B2 (en) | 2018-10-16 | 2019-10-02 | Signal processing apparatus and method, and program to reduce calculation amount based on mute information |
US17/942,663 Continuation US11743646B2 (en) | 2018-10-16 | 2022-09-12 | Signal processing apparatus and method, and program to reduce calculation amount based on mute information |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020080099A1 true WO2020080099A1 (ja) | 2020-04-23 |
Family
ID=70283084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/038846 WO2020080099A1 (ja) | 2018-10-16 | 2019-10-02 | 信号処理装置および方法、並びにプログラム |
Country Status (6)
Country | Link |
---|---|
US (2) | US11445296B2 (ja) |
EP (1) | EP3869826A4 (ja) |
JP (1) | JP7447798B2 (ja) |
KR (1) | KR102677399B1 (ja) |
CN (1) | CN112823534B (ja) |
WO (1) | WO2020080099A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022014308A1 (ja) * | 2020-07-15 | 2022-01-20 | ソニーグループ株式会社 | 情報処理装置、情報処理方法および端末装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7447798B2 (ja) | 2018-10-16 | 2024-03-12 | ソニーグループ株式会社 | 信号処理装置および方法、並びにプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010505141A (ja) * | 2006-09-29 | 2010-02-18 | エルジー エレクトロニクス インコーポレイティド | オブジェクトベースオーディオ信号のエンコーディング/デコーディング方法及びその装置 |
JP2010516077A (ja) * | 2007-01-05 | 2010-05-13 | エルジー エレクトロニクス インコーポレイティド | オーディオ信号処理方法及び装置 |
WO2014192604A1 (ja) * | 2013-05-31 | 2014-12-04 | ソニー株式会社 | 符号化装置および方法、復号装置および方法、並びにプログラム |
JP2015194666A (ja) * | 2014-03-24 | 2015-11-05 | ソニー株式会社 | 符号化装置および方法、復号装置および方法、並びにプログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101819027B1 (ko) * | 2010-08-06 | 2018-01-17 | 삼성전자주식회사 | 오디오 재생 방법 및 그에 따른 오디오 재생 장치, 및 정보 저장 매체 |
WO2015142073A1 (ko) * | 2014-03-19 | 2015-09-24 | 주식회사 윌러스표준기술연구소 | 오디오 신호 처리 방법 및 장치 |
US10659904B2 (en) * | 2016-09-23 | 2020-05-19 | Gaudio Lab, Inc. | Method and device for processing binaural audio signal |
JP2019533404A (ja) * | 2016-09-23 | 2019-11-14 | ガウディオ・ラボ・インコーポレイテッド | バイノーラルオーディオ信号処理方法及び装置 |
JP7447798B2 (ja) | 2018-10-16 | 2024-03-12 | ソニーグループ株式会社 | 信号処理装置および方法、並びにプログラム |
-
2019
- 2019-10-02 JP JP2020553032A patent/JP7447798B2/ja active Active
- 2019-10-02 WO PCT/JP2019/038846 patent/WO2020080099A1/ja unknown
- 2019-10-02 KR KR1020217009529A patent/KR102677399B1/ko active IP Right Grant
- 2019-10-02 US US17/284,419 patent/US11445296B2/en active Active
- 2019-10-02 CN CN201980066990.XA patent/CN112823534B/zh active Active
- 2019-10-02 EP EP19873638.1A patent/EP3869826A4/en active Pending
-
2022
- 2022-09-12 US US17/942,663 patent/US11743646B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010505141A (ja) * | 2006-09-29 | 2010-02-18 | エルジー エレクトロニクス インコーポレイティド | オブジェクトベースオーディオ信号のエンコーディング/デコーディング方法及びその装置 |
JP2010516077A (ja) * | 2007-01-05 | 2010-05-13 | エルジー エレクトロニクス インコーポレイティド | オーディオ信号処理方法及び装置 |
WO2014192604A1 (ja) * | 2013-05-31 | 2014-12-04 | ソニー株式会社 | 符号化装置および方法、復号装置および方法、並びにプログラム |
US9905232B2 (en) | 2013-05-31 | 2018-02-27 | Sony Corporation | Device and method for encoding and decoding of an audio signal |
JP2015194666A (ja) * | 2014-03-24 | 2015-11-05 | ソニー株式会社 | 符号化装置および方法、復号装置および方法、並びにプログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022014308A1 (ja) * | 2020-07-15 | 2022-01-20 | ソニーグループ株式会社 | 情報処理装置、情報処理方法および端末装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112823534B (zh) | 2023-04-07 |
CN112823534A (zh) | 2021-05-18 |
EP3869826A4 (en) | 2022-03-16 |
JPWO2020080099A1 (ja) | 2021-09-09 |
JP7447798B2 (ja) | 2024-03-12 |
KR20210071972A (ko) | 2021-06-16 |
KR102677399B1 (ko) | 2024-06-24 |
US20230007396A1 (en) | 2023-01-05 |
US11445296B2 (en) | 2022-09-13 |
EP3869826A1 (en) | 2021-08-25 |
US20210352408A1 (en) | 2021-11-11 |
US11743646B2 (en) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102294767B1 (ko) | 고채널 카운트 멀티채널 오디오에 대한 멀티플렛 기반 매트릭스 믹싱 | |
RU2759160C2 (ru) | УСТРОЙСТВО, СПОСОБ И КОМПЬЮТЕРНАЯ ПРОГРАММА ДЛЯ КОДИРОВАНИЯ, ДЕКОДИРОВАНИЯ, ОБРАБОТКИ СЦЕНЫ И ДРУГИХ ПРОЦЕДУР, ОТНОСЯЩИХСЯ К ОСНОВАННОМУ НА DirAC ПРОСТРАНСТВЕННОМУ АУДИОКОДИРОВАНИЮ | |
JP4944902B2 (ja) | バイノーラルオーディオ信号の復号制御 | |
JP5081838B2 (ja) | オーディオ符号化及び復号 | |
JP6062544B2 (ja) | 基底関数係数を使用した3次元オーディオコード化のためのシステム、方法、装置、およびコンピュータ可読媒体 | |
US9071920B2 (en) | Binaural decoder to output spatial stereo sound and a decoding method thereof | |
US10764709B2 (en) | Methods, apparatus and systems for dynamic equalization for cross-talk cancellation | |
JP7459913B2 (ja) | 信号処理装置および方法、並びにプログラム | |
JP6374980B2 (ja) | サラウンドオーディオ信号処理のための装置及び方法 | |
JPWO2019078035A1 (ja) | 信号処理装置および方法、並びにプログラム | |
US11743646B2 (en) | Signal processing apparatus and method, and program to reduce calculation amount based on mute information | |
TW201603003A (zh) | 編碼之高階保真立體音響資料框表示,其包含非差分增益值係與高階保真立體音響資料框表示之資料框特定者之聲道信號相關聯 | |
TW201603000A (zh) | 判定非差分增益值表示所需最低整數位元數以用於高階保真立體音響資料框表示壓縮之方法及裝置 | |
CN108701461B (zh) | 用于具有多个反射的声源的改进的立体混响编码器 | |
US11942097B2 (en) | Multichannel audio encode and decode using directional metadata | |
WO2021261235A1 (ja) | 信号処理装置および方法、並びにプログラム | |
WO2022050087A1 (ja) | 信号処理装置および方法、学習装置および方法、並びにプログラム | |
JP2018196133A (ja) | サラウンドオーディオ信号処理のための装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19873638 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020553032 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2019873638 Country of ref document: EP Effective date: 20210517 |