WO2023074800A1 - 情報処理装置および方法、並びにプログラム - Google Patents

情報処理装置および方法、並びにプログラム Download PDF

Info

Publication number
WO2023074800A1
WO2023074800A1 PCT/JP2022/040170 JP2022040170W WO2023074800A1 WO 2023074800 A1 WO2023074800 A1 WO 2023074800A1 JP 2022040170 W JP2022040170 W JP 2022040170W WO 2023074800 A1 WO2023074800 A1 WO 2023074800A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
directivity
model
information
modeling
Prior art date
Application number
PCT/JP2022/040170
Other languages
English (en)
French (fr)
Inventor
隆一 難波
徹 知念
実 辻
光行 畠中
弘幸 本間
康裕 戸栗
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from PCT/JP2022/000355 external-priority patent/WO2023074009A1/ja
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Priority to AU2022375400A priority Critical patent/AU2022375400A1/en
Priority to TW111141214A priority patent/TW202325040A/zh
Publication of WO2023074800A1 publication Critical patent/WO2023074800A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control

Definitions

  • the present technology relates to an information processing device, method, and program, and more particularly to an information processing device, method, and program capable of reducing the transmission amount of directional data.
  • directivity data representing the directivity of sound from the object together with the audio data of the object
  • the user can arbitrarily select a directivity direction during recording, and during playback, the user can select a desired directivity direction other than the directivity direction at the time of recording.
  • a technique of playing back by using the sound see, for example, Patent Document 1.
  • the directional characteristics differ for each sound source, when providing audio data of an object and directional data of the object as content, the directional data must be provided for each type of sound source, that is, each type of object. need to prepare.
  • information about directivity is provided for more directions and frequencies, the amount of directivity data will increase.
  • the amount of directional data transmitted to the content distribution destination increases, which may cause transmission delays or increase the transmission rate.
  • This technology has been developed in view of such circumstances, and is capable of reducing the amount of directional data transmitted.
  • An information processing device includes an acquisition unit that acquires model data obtained by modeling directivity data representing the directivity of a sound source, and based on the model data, the directivity and a calculation unit for calculating the data.
  • An information processing method or program acquires model data obtained by modeling directivity data representing the directivity of a sound source, and based on the model data, the directivity data including the step of calculating
  • model data obtained by modeling directivity data representing directivity of a sound source is obtained, and the directivity data is calculated based on the model data.
  • An information processing apparatus includes a modeling unit that models directivity data representing the directivity of a sound source using a mixture model composed of a plurality of distributions; and a model data generation unit that generates model data including model parameters that constitute the model.
  • An information processing method or program models directivity data representing the directivity of a sound source using a mixture model composed of a plurality of distributions, and constructs the mixture model obtained by the modeling. generating model data including model parameters for
  • directivity data representing directivity of a sound source is modeled by a mixed model consisting of a plurality of distributions, and model parameters constituting the mixed model obtained by the modeling are used as Model data is generated containing
  • FIG. 4 is a diagram showing an example of directivity; It is a figure explaining a data point.
  • FIG. 4 is a diagram showing an example of model data; It is a figure explaining the relationship between a band and a bin.
  • FIG. 10 is a diagram showing an example of reducing the data amount of directivity data; It is a figure explaining the residual of directivity data. It is a figure which shows the structural example of a server. 4 is a flowchart for explaining encoding processing; It is a figure which shows the structural example of an information processing apparatus.
  • FIG. 4 is a flowchart for explaining directivity data generation processing; 4 is a flowchart for explaining output audio data generation processing; It is a figure explaining the appearance probability of difference information.
  • FIG. 4 is a diagram showing an example of model data;
  • FIG. 4 is a diagram showing an example of model data;
  • FIG. 4 is a diagram explaining transmission of a Huffman coding table;
  • FIG. 10 is a diagram showing an example of a Huffman coding table;
  • FIG. It is a figure which shows the structural example of a server.
  • 4 is a flowchart for explaining directivity data generation processing;
  • FIG. 4 is a diagram showing a configuration example of a directional data encoding unit;
  • FIG. 4 is a diagram illustrating a configuration example of a differential encoding unit; 4 is a flowchart for explaining model data generation processing; FIG. 10 is a diagram showing a configuration example of a distribution model decoding unit; FIG. 4 is a diagram showing an example of model data; FIG. 4 is a diagram showing an example arrangement of data points; It is a figure which shows the example of description of a data point.
  • FIG. 4 is a diagram showing an example of scale factors for each bin;
  • FIG. 10 is a diagram showing an example of the minimum value of each bin;
  • FIG. 4 is a diagram showing an example of model data;
  • FIG. 10 is a diagram showing an example of Syntax of SymmetricDir( ); It is a figure explaining rotation operation. It is a figure explaining symmetry operation.
  • FIG. 10 is a diagram showing an example of Syntax of NonSymmetricDir();
  • FIG. 4 is a diagram showing an example of model data;
  • FIG. 10 is a diagram showing an example of weights used to calculate the output value of the mixture model for each bin;
  • FIG. 4 is a diagram showing an example of model data;
  • FIG. 10 is a diagram showing an example of Syntax of NonSymmetricDir();
  • FIG. 10 is a diagram showing an example of Syntax of LeftRightLineSymmetricDir(); It is a figure explaining distribution according to weight. It is a figure which shows the structural example of a computer.
  • the present technology is intended to reduce the transmission amount of directional data by modeling the directional data.
  • 3D sound source audio data and directivity data are provided as content.
  • the sound of one or more audio objects is picked up (recorded) as a 3D sound source, and audio data of each object is generated.
  • directivity data representing directivity of an object (sound source), ie, directivity, is prepared for each type of object, ie, sound source type.
  • audio data for each object and directivity data for each sound source type are provided as content data. That is, the directivity data is transmitted to the reproduction side device together with the audio data of the object. Then, on the reproduction side, audio reproduction is performed in consideration of the directivity data based on the audio data and the directivity data forming the content.
  • Directivity data can be obtained, for example, by recording the sound of an object with multiple microphones.
  • the recording of directivity data may be performed at the same time as the recording of the audio data of the object, or may be performed at a timing different from the recording of the audio data of the object.
  • Directivity data is prepared for each sound source type, such as voice, musical instrument, and speaker.
  • Directivity data is data containing information on the amplitude and phase of the sound from the sound source, for each target frequency in the entire frequency band from the DC frequency to the Nyquist frequency, for example, for each position in each direction viewed from the sound source. is.
  • the direction seen from the sound source is represented by the horizontal angle seen from the sound source position, that is, the azimuth angle, and the vertical angle seen from the sound source position, that is, the elevation angle.
  • the range of azimuth angles is set to 0 degrees to 360 degrees
  • the range of elevation angles is set to -90 degrees to +90 degrees.
  • the directivity data to be modeled is obtained by appropriately discretizing and normalizing the directivity data obtained by recording or the like.
  • the directivity data to be modeled consists of gains (hereinafter referred to as directivity gains) that indicate the directivity characteristics of a plurality of discrete frequencies of a sound source at each of a plurality of data points.
  • the position of a data point is represented by coordinates (polar coordinates) in a polar coordinate system with the sound source position as the origin.
  • the distance (radius) from the sound source position may be used to represent the position of the data point.
  • the directional gain can also be obtained by normalizing the sound amplitude (sound pressure) from the sound source at the data points.
  • the directional data is modeled using vMF (von Mises Fisher) distribution on the sphere, Kent distribution, or vMF distribution and Kent distribution, which are equivalent to multivariate/univariate Gaussian distributions defined on the plane
  • vMF von Mises Fisher
  • the part indicated by arrow Q11 in Fig. 1 shows a two-dimensional Gaussian distribution.
  • Curve L13 indicates a mixed Gaussian distribution obtained by mixing the Gaussian distribution indicated by curve L11 and the Gaussian distribution indicated by curve L12.
  • the portion indicated by the arrow Q12 in FIG. 1 shows three distributions on the plane. Multiple distributions on such a plane can also be mixed.
  • the mixed Gaussian distribution is used to express the probability density distribution (pdf (Probability Density Function)) on a plane. It is possible to reduce the amount of information by expressing the desired pdf with a small number of model parameters and as few mixtures as possible.
  • pdf Probability Density Function
  • a mixed model of the vMF distribution and Kent distribution which correspond to the Gaussian distribution defined on the spherical surface, is used to model the directivity data on the spherical surface, that is, the shape (distribution) of the directivity gain.
  • a mixture model may be composed of one or more vMF distributions, may be composed of one or more Kent distributions, or may be composed of one or more vMF distributions and one or more Kent distributions. That is, the mixture model is composed of one or more distributions including at least one of the vMF distribution and the Kent distribution.
  • x be a position vector indicating the position of the spherical surface, i.e., the coordinates of the Cartesian coordinate system.
  • the distribution value f(x) can be expressed by the following equation (1).
  • indicates parameter concentration and ⁇ indicates ellipticity. Also, ⁇ 1 indicates a vector that defines the center of the mean direction distribution, ⁇ 2 indicates a major axis vector, and ⁇ 3 indicates a minor axis vector.
  • c( ⁇ , ⁇ ) is a normalization constant shown in the following equation (2).
  • indicates a gamma function
  • I indicates a modified Bessel function of the first kind.
  • the value of the vMF distribution at the position indicated by the position vector x can also be expressed by a formula similar to formula (1).
  • the value of ellipticity ⁇ in equation (1) is assumed to be zero.
  • Fig. 2 shows examples of vMF distribution and Kent distribution.
  • FIG. 2 an example of vMF distribution is shown in the portion indicated by arrow Q21.
  • vector V11 represents vector ⁇ 1 shown in equation (1).
  • the vMF distribution does not have ellipticity ⁇ , major axis vector ⁇ 2 , and minor axis vector ⁇ 3 as parameters, and is isotropically centered on the position indicated by vector V11 (vector ⁇ 1 ) on the spherical surface. It has a circular distribution that spreads out. That is, a circular distribution can be reproduced by using the vMF distribution (vMF distribution model).
  • vectors V21 through V23 represent vector ⁇ 1 , major axis vector ⁇ 2 , and minor axis vector ⁇ 3 shown in equation (1).
  • the Kent distribution is an elliptical shape centered at the position indicated by vector V21 (vector ⁇ 1 ) on the surface of the sphere, with major and minor axes ⁇ 2 and ⁇ 3 on the spherical surface. distribution. That is, by using the Kent distribution (Kent distribution model), it is possible to reproduce an elliptical distribution determined by the ellipticity ⁇ , the major axis vector ⁇ 2 , and the minor axis vector ⁇ 3 .
  • the Kent distribution has a high degree of freedom because the shape of the ellipse can be changed by parameters such as the ellipticity ⁇ , but the number of parameters is greater than the vMF distribution.
  • the output value F (x; (3) That is, the mixture model F(x; ⁇ ) can be represented by weighted addition of N Kent distributions f(x; ⁇ i ).
  • Equation (3) the Kent distribution f(x; ⁇ i ) in Equation (3) is the same as that shown in Equation (1) above, and represents the i-th Kent distribution among the N Kent distributions to be mixed. ing.
  • ⁇ i is a parameter constituting the Kent distribution f(x; ⁇ i ), more specifically, a set of parameters, and the parameter ⁇ i is the parameter concentration ⁇ , ellipticity ⁇ , vector ⁇ 1 , major axis vector ⁇ 2 , and minor axis vector ⁇ 3 .
  • a parameter ⁇ of a mixture model F(x; ⁇ ) represents a set of parameters ⁇ i of N Kent distributions f(x; ⁇ i ).
  • ⁇ i represents the weight (weight coefficient) of the i-th Kent distribution f(x; ⁇ i ) when mixing N Kent distributions, and is shown in the following equation (4).
  • the sum of weights ⁇ i of N Kent distributions f(x; ⁇ i ) is set to one.
  • the directional data used in this technology can be obtained by recording (sound pickup) with a microphone array consisting of multiple microphones placed around the object.
  • the directivity shown in Fig. 3 is observed.
  • the left side of the drawing shows the directivity of each frequency on the horizontal plane, that is, the plane where the elevation angle is 0 degrees
  • the right side of the drawing shows the directivity of each frequency on the median plane.
  • the general shape of the directivity changes depending on the frequency (pitch), and although the directivity is small at the lower frequencies, the directivity becomes larger (sharp) as the frequency increases. I know it's going to happen. For example, on the horizontal plane, at 8000 Hz, there is a maximum sound pressure difference of about 25 dB depending on the direction.
  • a plurality of data points are provided on a spherical surface centered on the sound source position.
  • one dot represents one data point, and it can be seen that there are many data points over the spherical surface.
  • the amount of directional data transmitted increases, but an increase in the amount of directional data transmitted causes transmission delays and increases the transmission rate. Therefore, in some cases, it may not be possible to reproduce the directivity according to the sound source type, frequency, object-to-listener orientation, and the like.
  • the amount of transmission of directional data can be reduced by modeling directional data using a mixed model as described above.
  • the directional data when transmitting directional data, the directional data is modeled based on a mixture model consisting of the vMF distribution and the Kent distribution. is generated. Then, the model data is transmitted to the apparatus on the content reproduction side. This eliminates the need to transmit the original directional data having a large data size. In other words, it is possible to reduce the data amount (transmission amount) at the time of transmitting directional data.
  • Fig. 5 shows an example of model data for one sound source type specified by num_sound_types_id.
  • model data for one sound source type is described as directivityConfig.
  • the model data contains the azimuth “azimuth_table[i]” and elevation “elevation_table[i]” positions of the data points in the original directivity data before modeling, with the number indicated by the number of data points "num_point_indices”. , and the radius "distance[i]".
  • the position of the data point is the azimuth “azimuth_table[i]", which is the horizontal angle of the data point seen from the sound source position, and the elevation “elevation_table[i]”, which is the vertical angle of the data point seen from the sound source position.
  • the radius “distance[i]” which is the distance from the sound source position to the data point, in a polar coordinate system with the sound source position as the origin.
  • the model data includes the number of frequency points "bin_count” and the frequency "freq[i_bin]".
  • the entire frequency band of interest is divided into frequency bins, or bins, which are the number of frequency bands (frequencies) indicated by the number of frequency points "bin_count”, and
  • the center frequency (Hz) of the i-th bin among the bins of is set as the frequency "freq[i_bin]”.
  • the original directional data before modeling contains directional gains for each of one or more bins (frequency bins) at each of the plurality of data points.
  • model data includes parameters related to the Kent distribution and vMF distribution: the number of bands to be modeled ⁇ band_count'', the number of mixtures in each band ⁇ mix_count[i_band]'', and the original orientation Bin information "bin_range_per_band[i_band]" of gender data is included.
  • the entire frequency band of interest is divided into bands, which are the number of frequency bands indicated by the number of bands "band_count", and the distribution of directional gain for each band is represented by a mixture model. be.
  • model parameters are estimated that constitute a mixture model representing the distribution of directional gain in each band.
  • the frequency band indicated by each band always includes (belongs to) the frequency indicated by one or more bins, that is, the center frequency "freq[i_bin]" of the bins.
  • the number of mixtures "mix_count[i_band]" indicates the number of distributions constituting the mixture model representing the distribution of the directional gain of the i-th band, that is, the number of Kent distributions and vMF distributions. Corresponds to N in 3).
  • the bin information "bin_range_per_band[i_band]" of the directivity data is information indicating the bin of the original directivity data before modeling, which is included in the i-th band.
  • the bin information is index information indicating the highest frequency bin belonging to the i-th band.
  • model data includes the above-mentioned weight ⁇ i , parameter concentration ⁇ , and vector ⁇ 1 is included.
  • 'weight[i_band][i_mix]' and 'kappa[i_band][i_mix]' are the weights ⁇ i and parameter concentrations of the distribution denoted by 'i_mix' for the i-th band denoted by 'i_band'. degree ⁇ .
  • ⁇ gamma1[i_band][i_mix][x]'' and ⁇ gamma1[i_band][i_mix][y]'' represent the vector ⁇ 1 of the distribution indicated by ⁇ i_mix'' for the i-th band ⁇ i_band''.
  • the constituent X component (X coordinate) and Y component (Y coordinate) are shown.
  • the model data includes a selection flag "dist_flag” indicating whether the distribution indicated by "i_mix” for the i-th band "i_band” that constitutes the mixture model is the Kent distribution or the vMF distribution.
  • the value "1" of the selection flag "dist_flag” indicates that the distribution is the Kent distribution, and the value “0" of the selection flag “dist_flag” indicates that the distribution is the vMF distribution.
  • the model data includes the above-described ellipticity ⁇ , major axis vector ⁇ 2 , and minor axis vector ⁇ 3 .
  • beta[i_band][i_mix] indicates the ellipticity ⁇ of the distribution (Kent distribution) indicated by "i_mix” for the i-th band indicated by "i_band”. Also, "gamma2[i_band][i_mix][x]” and “gamma2[i_band][i_mix][y]” are the distribution (Kent distribution) indicated by "i_mix” for the i-th band "i_band”.
  • the X component (X coordinate) and Y component (Y coordinate) that constitute the major axis vector ⁇ 2 are shown.
  • 'gamma3[i_band][i_mix][x]' and 'gamma3[i_band][i_mix][y]' are the distribution (Kent distribution) indicated by 'i_mix' for the i-th band 'i_band' shows the X component (X coordinate) and the Y component (Y coordinate) that constitute the minor axis vector ⁇ 3 of .
  • the model data contains the directional data in each bin, more specifically, the scale factor "scale_factor[i_bin]” that indicates the dynamic range of the directional gain, and the offset value of the directional data (directional gain) in each bin, i.e.
  • the minimum value "offset[i_bin]” is also included.
  • a set of parameters is also called a model parameter.
  • the model data includes the original directivity data value (directivity gain) at the data point and the directivity data value indicated by the mixed model obtained by modeling (directivity gain).
  • Difference information "diff_data[i_point]” indicating the difference between the two is also included.
  • the difference information is information indicating the difference between the directivity data before modeling and the directivity data after modeling at the data point.
  • "diff_data[i_point]" stored in the model data may be Huffman-encoded difference information.
  • the output value F(x; ⁇ ) of the mixture model at each data point is calculated based on the model data having the configuration (format) shown in FIG. be.
  • Each bin of the original directional data before modeling contains a number of bands described by the number of bands in modeling, "band_count”, determined by considering the similarity of the shape of the directional data. Belongs to one of our bands.
  • bin information "bin_range_per_band[i_band]"
  • maximum index which is index information indicating the highest frequency bin belonging to the band
  • the number of bins belonging to each band may be different for each band.
  • the first band 0 (band0), which has the lowest frequency, belongs to two bins 0 (bin0) and bin 1, the next band 1 belongs to one bin 2, and so on.
  • Two bins 3 and 4 belong to band 2 of .
  • the mixture model F'(x; ⁇ ) for each band can be obtained from the model parameters.
  • the mixture model F'(x;[theta]) corresponds to the binwise mixture model F(x;[theta]) shown in equation (3).
  • the directional data before modeling has a directional gain value for each data point bin. Therefore, the bandwise mixture model F'(x; ⁇ ) obtained from the model parameters, more specifically the mixture model output value F'(x; ⁇ ), is replaced with the original binwise mixture model F(x; ⁇ ).
  • the mixture model F'(x; ⁇ ) for each band the scale factor "scale_factor[i_bin]" for each bin, and the minimum value for each bin "offset[i_bin] , the output value F(x; ⁇ ) of the mixture model for each bin at the data point is calculated.
  • F(x; ⁇ ) F'(x; ⁇ ) x scale_factor[i_bin] + offset[i_bin] is calculated.
  • the band-by-band mixture model output values F'(x; ⁇ ) are corrected for the dynamic range of each bin.
  • the original directivity data before modeling is restored from the model data.
  • the position of each data point and the frequency of each bin are obtained from the azimuth “azimuth_table[i]", elevation “elevation_table[i]", and radius “distance[i]” stored in the model data. , and the frequency “freq[i_bin]”.
  • FIG. 7 shows the amount of model data when the directivity data is actually modeled so that the model data has the structure shown in FIG.
  • the original directional data before modeling has 2522 data points and 29 bins.
  • the number of bands "band_count” is set to "3"
  • modeling is performed with a mixed model consisting of a vMF distribution (ellipticity ⁇ , major axis vector ⁇ 2 , minor axis vector ⁇ 3 ).
  • the model data includes difference information as necessary, and the difference information is used to restore the directivity data as appropriate.
  • each of the plurality of straight lines drawn on the surface of the sphere represents vector ⁇ 1 described above.
  • vector V51 represents one vector ⁇ 1 .
  • the value (residual error) at each data point of the residual data indicated by the arrow Q43 is stored in the model data as difference information "diff_data[i_point]".
  • HOA Higher Order Ambisonics
  • Directivity generally has a more complex shape and a higher degree of convexity in the high frequencies.
  • the usefulness of phase information is relatively low in high frequencies. Therefore, when reducing the amount of directional data, it is more advantageous to adopt a method of modeling using a mixed distribution model as in this technology rather than using HOA.
  • the shape of the directivity is relatively gentle in the low frequency range, and physical phenomena such as diffraction and interference can be reproduced by recording the phase. You may make it use the method to carry out.
  • the directivity data (amplitude data) generated (restored) based on the model data has directivity only at specific discrete frequency points, that is, specific bins. Gain exists. In other words, since there are frequencies at which there is no directivity gain, rendering processing may not be possible if directivity data generated from model data is used as is.
  • the data points are also arranged discretely, if the user's viewpoint position (listening position) or the object moves and the positional relationship between the user and the object changes, the directionality data used for rendering processing will change. Data points also change. In such cases, if the spacing between adjacent data points is large, glitches (waveform discontinuities) will occur.
  • directivity gains may be obtained for more frequencies (bins) and directions (data points) by performing interpolation processing in the frequency direction and the time direction on the directivity data.
  • interpolation processing in the frequency direction it is conceivable to perform primary interpolation processing or secondary interpolation processing using directional gains of bins indicating a plurality of frequencies near a specific frequency to be obtained.
  • bilinear interpolation processing in the azimuth direction and elevation direction using the directional gain for each bin at a plurality of data points near the direction (position) to be obtained may be performed. can be considered.
  • the amount of computation when modeling directional data depends on various parameters such as the frame length of audio data (number of samples/frame), the number of mixtures in the mixture model, the model to be selected (distribution), and the number of data points.
  • the effect on sound quality changes (trade-off).
  • interpolation processing in the time direction suppresses the occurrence of waveform discontinuities, resulting in higher quality audio. Regeneration can be achieved.
  • content creators increase the number of data points of directivity data according to, for example, the shape of the directivity of a sound source (object), or cope with the small number of data points by interpolation processing during playback. You can also decide whether
  • an arbitrary code such as Huffman coding is used to express the difference information indicating the error (difference) between the original directivity data to be modeled (encoded) and the mixed model, that is, the directivity data after modeling. It may be encoded by an encoding method and transmitted.
  • a flag or the like to switch whether or not to use various types of information such as difference information and the method of using directivity data (rendering method), such as interpolation processing in the frequency direction and interpolation processing in the time direction.
  • a flag may be used to switch between low-precision parameters for low-resource reproduction devices and high-precision parameters for high-resource reproduction devices, that is, to switch parameter precision.
  • the parameters are switched according to, for example, the resources of the playback device and the network environment at the time of content distribution.
  • this technology can also be applied to texture data in video, such as color and transparency information for volumetric point cloud data.
  • FIG. 9 is a diagram illustrating a configuration example of a server to which the present technology is applied.
  • the server 11 shown in FIG. 9 is an information processing device such as a computer, and distributes content.
  • the content consists of audio data of one or more objects (object audio data), and directivity data prepared for each sound source type, representing the directivity of the sound source (object), that is, the directional characteristics.
  • Such content can be obtained, for example, by recording directivity data with the sound of a 3D sound source using a microphone array or the like. Also, the content may include video data corresponding to the audio data.
  • the server 11 has a modeling unit 21, a model data generation unit 22, an audio data encoding unit 23, and an output unit 24.
  • the modeling unit 21 models the input directivity data of each sound source type, and supplies the model parameters and difference information obtained as a result to the model data generation unit 22 .
  • the model data generation unit 22 generates model data based on the model parameters and difference information supplied from the modeling unit 21 and supplies the model data to the output unit 24 .
  • the audio data encoding unit 23 encodes the input audio data of each object and supplies the resulting encoded audio data to the output unit 24 .
  • the output unit 24 multiplexes the model data supplied from the model data generation unit 22 and the encoded audio data supplied from the audio data encoding unit 23 to generate and output an encoded bitstream.
  • model data and the encoded audio data are output at the same time
  • the model data and the encoded audio data are generated separately and output at different timings.
  • the model data and the encoded audio data may be generated by different devices.
  • step S ⁇ b>11 the modeling unit 21 models the input directivity data of each sound source type, and supplies model parameters and difference information obtained as a result to the model data generation unit 22 .
  • the modeling unit 21 models the directivity data by representing (representing) the directivity data with a mixed model consisting of a plurality of distributions shown in the above equation (3).
  • the parameter concentration ⁇ , ellipticity ⁇ , weight ⁇ i , vector ⁇ 1 , major axis vector ⁇ 2 , minor axis vector ⁇ 3 , scale factor, minimum value is obtained as a model parameter.
  • the modeling unit 21 generates information indicating the number of data points, the positions of the data points, the number of frequency points, the center frequency of the bin, etc. as information about the original directivity data before modeling.
  • the modeling unit 21 uses the residual (difference) between the modeled directivity data, that is, the directivity data represented by the mixed model and the original directivity data before modeling as difference information. Generate.
  • the difference information is obtained when a specific condition is satisfied, such as when the residual between the directivity data represented by the mixed model and the original directivity data is greater than or equal to a predetermined value, or when the content creator, etc. may be generated when generation of difference information is instructed by .
  • the modeling unit 21 supplies the model parameters obtained in this way, information on the original directivity data before modeling, and difference information to the model data generating unit 22 .
  • step S12 the model data generation unit 22 generates model data by packing the model parameters supplied from the modeling unit 21, the information on the original directivity data before modeling, and the difference information, and outputs the model data. 24.
  • the model data generation unit 22 for example, Huffman-encodes the difference information, and packs the resulting encoded difference information (hereinafter also referred to as differential encoded data), model parameters, etc., to obtain the data shown in FIG. Generate model data in the format shown in . Note that the model parameters and model data may be coded.
  • step S ⁇ b>13 the audio data encoding unit 23 encodes the input audio data of each object, and supplies the resulting encoded audio data to the output unit 24 .
  • the audio data encoding unit 23 When there is metadata for the audio data of each object, the audio data encoding unit 23 also encodes the metadata of each object (audio data), and outputs the resulting encoded metadata to the output unit 24. supply to
  • the metadata includes object position information indicating the absolute position of the object in the three-dimensional space, object direction information indicating the orientation of the object in the three-dimensional space, sound source type information indicating the type of the object (sound source), etc. include.
  • step S14 the output unit 24 multiplexes the model data supplied from the model data generation unit 22 and the encoded audio data supplied from the audio data encoding unit 23 to generate and output an encoded bitstream.
  • the output unit 24 generates an encoded bitstream including model data, encoded audio data, and encoded metadata.
  • the output unit 24 transmits the encoded bitstream to an information processing device functioning as a client (not shown). Once the encoded bitstream has been transmitted, the encoding process ends.
  • the server 11 models the directivity data and outputs an encoded bitstream containing model parameters and difference information obtained as a result. By doing so, it is possible to reduce the amount of directional data transmitted to the client, that is, the amount of directional data transmitted. As a result, occurrence of transmission delay and increase in transmission rate can be suppressed.
  • FIG. 11 An information processing apparatus that acquires an encoded bitstream output from the server 11 and generates output audio data for reproducing the sound of content is configured as shown in FIG. 11, for example.
  • the information processing device 51 shown in FIG. 11 is composed of, for example, a personal computer, a smart phone, a tablet, a game device, and the like.
  • the information processing device 51 has an acquisition unit 61 , a distribution model decoding unit 62 , an audio data decoding unit 63 , and a rendering processing unit 64 .
  • the acquisition unit 61 acquires the encoded bitstream output from the server 11 and extracts model data and encoded audio data from the encoded bitstream.
  • the acquisition unit 61 supplies the model data to the distribution model decoding unit 62 and supplies the encoded audio data to the audio data decoding unit 63 .
  • the distribution model decoding unit 62 calculates directivity data from the model data.
  • the distribution model decoding unit 62 has an unpacking unit 81 , a directivity data calculation unit 82 , a difference information decoding unit 83 , an addition unit 84 and a frequency interpolation processing unit 85 .
  • the unpacking unit 81 unpacks the model data supplied from the acquiring unit 61 to extract model parameters, information on original directivity data before modeling, and differential code data from the model data.
  • the unpacking unit 81 also supplies the model parameters and information about the original directivity data before modeling to the directivity data calculating unit 82 , and supplies the differential encoded data to the differential information decoding unit 83 .
  • the directivity data calculator 82 calculates (restores) the directivity data based on the model parameters supplied from the unpacking unit 81 and the information on the original directivity data before modeling, and supplies the directivity data to the adder 84 .
  • the directivity data calculated (restored) by the directivity data calculator 82 based on the model parameters will also be referred to as approximate directivity data.
  • the differential information decoding unit 83 decodes the encoded differential data supplied from the unpacking unit 81 using a method corresponding to Huffman coding, and adds the resulting differential information as a directional data residual. 84.
  • the addition unit 84 adds the general directivity data supplied from the directivity data calculation unit 82 and the directivity data residual (difference information) supplied from the difference information decoding unit 83 to obtain the following: , and supplies it to the frequency interpolation processing unit 85 .
  • the frequency interpolation processing unit 85 performs frequency direction interpolation processing on the directivity data supplied from the addition unit 84 and supplies the resulting directivity data to the rendering processing unit 64 .
  • the audio data decoding unit 63 decodes the encoded audio data supplied from the acquisition unit 61 and supplies the resulting audio data of each object to the rendering processing unit 64 .
  • the audio data decoding unit 63 decodes the encoded metadata supplied from the acquisition unit 61 and renders the resulting metadata. 64.
  • the rendering processing unit 64 generates output audio data based on the directivity data supplied from the frequency interpolation processing unit 85 and the audio data supplied from the audio data decoding unit 63 .
  • the rendering processing unit 64 has a directivity data storage unit 86, an HRTF (Head Related Transfer Function) data storage unit 87, a temporal interpolation processing unit 88, a directivity convolution unit 89, and an HRTF convolution unit 90.
  • HRTF Head Related Transfer Function
  • Viewpoint position information, listener direction information, object position information, and object direction information are supplied to the directivity data storage unit 86 and the HRTF data storage unit 87 in accordance with user designation, sensor measurement, and the like. .
  • the viewpoint position information is information indicating the viewpoint position (listening position) of the user (listener) viewing the content in the three-dimensional space
  • the listener direction information is the face of the user viewing the content in the three-dimensional space. This is information indicating the orientation of the viewpoint position (listening position) of the user (listener) viewing the content in the three-dimensional space
  • the object position information and the object orientation information are extracted from the metadata obtained by decoding the encoded metadata, It is supplied to the HRTF data holding unit 87 .
  • sound source type information obtained by extracting from metadata is also supplied to the directivity data holding unit 86, and a user ID indicating the user viewing the content is stored in the HRTF data holding unit 87 as appropriate. supplied.
  • the directivity data holding unit 86 holds the directivity data supplied from the frequency interpolation processing unit 85 .
  • the directivity data holding unit 86 selects directivity data corresponding to the supplied viewpoint position information, listener direction information, object position information, object direction information, and sound source type information from the held directivity data. The data is read out and supplied to the time interpolation processing section 88 .
  • the HRTF data holding unit 87 holds HRTFs for each user indicated by the user ID for each of multiple directions viewed from the user (listener).
  • the HRTF data holding unit 87 reads out HRTFs corresponding to the supplied viewpoint position information, listener direction information, object position information, object direction information, and user ID from the held HRTFs, and HRTF convolution unit 90 supply to
  • the temporal interpolation processing unit 88 performs temporal interpolation processing on the directivity data supplied from the directivity data holding unit 86 and supplies the resultant directivity data to the directivity convolution unit 89 .
  • the directional convolution unit 89 convolves the audio data supplied from the audio data decoding unit 63 and the directional data supplied from the time interpolation processing unit 88, and supplies the resulting audio data to the HRTF convolution unit 90. do. Convolution of the directional data adds the directional characteristics of the object (sound source) to the audio data.
  • the HRTF convolution unit 90 convolves the audio data supplied from the directional convolution unit 89, that is, the audio data in which the directional data is convoluted, with the HRTF supplied from the HRTF data holding unit 87, resulting in Output audio data as output audio data. By convolving the HRTF, it is possible to obtain output audio data in which the sound of the object is localized at the position of the object seen by the user (listener).
  • This directivity data generation process is started when the acquisition unit 61 receives the encoded bitstream transmitted from the server 11 and supplies the model data extracted from the encoded bitstream to the unpacking unit 81 . be.
  • step S51 the unpacking unit 81 unpacks the model data supplied from the acquiring unit 61, and outputs information about model parameters extracted from the model data and original directivity data before modeling to the directivity data calculating unit. 82.
  • step S52 the directivity data calculation unit 82 calculates (generates) approximate directivity data based on the model parameters supplied from the unpacking unit 81 and information on the original directivity data before modeling, It is supplied to the adding section 84 .
  • the directivity data calculation unit 82 includes a mixture model F'(x; ]” to calculate the binwise mixture model output value F(x; ⁇ ) at the data point. This results in approximate directivity data consisting of the directivity gain (amplitude data) for each bin at each data point.
  • step S53 the unpacking unit 81 determines whether or not the model data supplied from the acquiring unit 61 contains differential code data, that is, whether or not there is differential code data.
  • step S53 If it is determined in step S53 that differential encoded data is included, the unpacking unit 81 extracts differential encoded data from the model data and supplies the differential encoded data to the differential information decoding unit 83, after which the process proceeds to step S54. move on.
  • step S ⁇ b>54 the differential information decoding unit 83 decodes the differential encoded data supplied from the unpacking unit 81 and supplies the resulting directional data residual (difference information) to the addition unit 84 .
  • step S55 the adding unit 84 adds the directivity data residual supplied from the difference information decoding unit 83 to the general directivity data supplied from the directivity data calculating unit 82.
  • the addition unit 84 supplies the directivity data obtained by the addition to the frequency interpolation processing unit 85, after which the process proceeds to step S56.
  • step S53 if it is determined in step S53 that differential code data is not included, the processing of steps S54 and S55 is skipped, and then the processing proceeds to step S56.
  • the adder 84 supplies the general directivity data supplied from the directivity data calculator 82 to the frequency interpolation processor 85 as restored directivity data.
  • step S53 If it is determined in step S53 that differential code data is not included, or if the process of step S55 is performed, the process of step S56 is performed.
  • step S56 the frequency interpolation processing unit 85 performs interpolation processing in the frequency direction on the directivity data supplied from the addition unit 84, and supplies the directivity data obtained by the interpolation processing to the directivity data holding unit 86. to hold.
  • the audio data of an object is data in the frequency domain
  • the audio data has frequency component values for each of multiple frequency bins.
  • an interpolation process of calculating the directivity gain of the necessary bin so that the directivity data has the directivity gain for all frequency bins in which the audio data has frequency component values. is done.
  • the frequency interpolation processing unit 85 performs an interpolation process based on the directional gains of a plurality of bins (frequencies) of predetermined data points in the directional data, so that Calculate the directional gain for new frequencies (bins) at the same data points that were not Through such interpolation processing in the frequency direction, it is possible to obtain directivity data including directivity gains at more frequencies.
  • the directivity data generating process ends.
  • the information processing device 51 calculates the directivity data based on the model data. By doing so, it is possible to reduce the amount of directional data to be transmitted, that is, the amount of directional data to be transmitted. As a result, occurrence of transmission delay and increase in transmission rate can be suppressed.
  • step S81 the audio data decoding unit 63 decodes the encoded audio data supplied from the acquisition unit 61, and supplies the resulting audio data to the directional convolution unit 89. For example, decoding yields audio data in the frequency domain.
  • the audio data decoding unit 63 decodes the encoded metadata, and extracts the object position information and the object direction information included in the resulting metadata.
  • the sound source type information is supplied to the directivity data holding unit 86 and the HRTF data holding unit 87 as appropriate.
  • the directivity data holding unit 86 supplies the time interpolation processing unit 88 with directivity data corresponding to the supplied viewpoint position information, listener direction information, object position information, object direction information, and sound source type information.
  • the directivity data storage unit 86 identifies the relationship between the object in the three-dimensional space and the user's viewpoint position (listening position) from the viewpoint position information, the listener direction information, the object position information, and the object direction information. Identify data points according to results.
  • the position on the spherical surface of the mixture model in the viewpoint position direction when viewed from the center of the mixture model is specified as the target data point position. Note that there may not be an actual data point at the data point location of interest.
  • the directivity data storage unit 86 extracts the directivity gain of each bin at a plurality of data points near the specified target data point position from the directivity data of the sound source type indicated by the sound source type information.
  • the directivity data holding unit 86 performs time interpolation processing on the data consisting of the directivity gain of each bin in the plurality of extracted data points as directivity data according to the relationship between the position and direction of the object and the user (listener). 88.
  • the HRTF data holding unit 87 supplies the HRTF convolution unit 90 with HRTF corresponding to the supplied viewpoint position information, listener direction information, object position information, object direction information, and user ID.
  • the HRTF data storage unit 87 stores the relative direction of the object as viewed from the listener (user) based on the viewpoint position information, the listener direction information, the object position information, and the object direction information. Identify as Then, the HRTF data holding unit 87 supplies the HRTF in the direction corresponding to the object direction to the HRTF convolution unit 90 among the HRTFs in each direction corresponding to the user ID.
  • step S82 the time interpolation processing unit 88 performs temporal interpolation processing on the directivity data supplied from the directivity data holding unit 86, and supplies the resultant directivity data to the directivity convolution unit 89. do.
  • the time interpolation processing unit 88 calculates the directivity gain of each bin at the target data point position by interpolation processing, based on the directivity gain of each bin at a plurality of data points included in the directivity data. That is, the directivity gain at a new data point (target data point position) different from the original data point is calculated by interpolation processing.
  • the temporal interpolation processing unit 88 supplies the data of the directivity gain of each bin at the target data point position to the directivity convolution unit 89 as the directivity data obtained by interpolation processing in the time direction.
  • step S83 the directional convolution unit 89 convolves the audio data supplied from the audio data decoding unit 63 and the directional data supplied from the time interpolation processing unit 88, and applies the resulting audio data to the HRTF convolution unit. supply to 90.
  • step S84 the HRTF convolution unit 90 convolves the audio data supplied from the directional convolution unit 89 and the HRTF supplied from the HRTF data holding unit 87, and outputs the resulting output audio data.
  • step S85 the information processing device 51 determines whether or not to end the process.
  • step S85 when encoded audio data of a new frame is supplied from the acquisition unit 61 to the audio data decoding unit 63, it is determined in step S85 that the process is not to end. On the other hand, for example, when the encoded audio data of a new frame is not supplied from the acquisition unit 61 to the audio data decoding unit 63 and the output audio data of all frames of the content is generated, the process ends in step S85. be judged.
  • step S85 If it is determined in step S85 that the process has not yet ended, then the process returns to step S81 and the above-described processes are repeated.
  • step S85 the information processing device 51 terminates the operation of each unit and terminates the output audio data generation processing.
  • the information processing device 51 selects appropriate directivity data and HRTF, and convolves the directivity data and HRTF with audio data to produce output audio data. By doing so, it is possible to realize high-quality audio reproduction with a more realistic feeling by considering the directional characteristics of the object (sound source) and the relationship between the position and orientation of the object and the listener.
  • the server 11 appropriately generates difference information indicating the difference between the directivity data before modeling and the directivity data after modeling.
  • differential information is encoded by an encoding method such as Huffman encoding to obtain differential encoded data.
  • the difference information encoding method is applied on the server 11 side, that is, on the encoder side, so that appropriate encoding can be performed according to the sound source type and frequency band for encoding the difference information. You may enable it to be selected.
  • a distribution of occurrence probability is generated based on difference information for each of a plurality of bins obtained from one directional data to be coded. .
  • the horizontal axis indicates the value (dB value) of the difference information
  • the vertical axis indicates the appearance probability of each value of the difference information.
  • the appearance probability of each value of the difference information is obtained by generating a histogram from the difference information of each bin.
  • the appearance probability distribution may be obtained for each bin, may be obtained for bins included in a specific frequency band, or may be obtained for all bins. may be required or any of them may be selectable.
  • the server 11 selects an appropriate Huffman coding table from a plurality of prepared Huffman coding tables, or selects one new Huffman coding table based on the appearance probability of such difference information.
  • a conversion table is generated.
  • All bins (frequencies) in all data points of the directional data may be considered and one Huffman coding table may be selected or generated for all those bins, or One Huffman coding table may be selected or generated.
  • the Huffman coding table selected or generated in this manner is used to Huffman code the difference information.
  • the Huffman coding table is a table for converting pre-encoded data into Huffman code, showing the correspondence between pre-encoded data, that is, difference information, and Huffman code (encoded data) obtained by encoding. be.
  • a reverse lookup table corresponding to the Huffman coding table is used when decoding the difference encoded data obtained by Huffman coding the difference information.
  • the reverse lookup table is a table for converting the Huffman code into the data after decoding, showing the correspondence between the Huffman code (encoded data) and the data after decoding.
  • This reverse lookup table can be generated from a Huffman coding table.
  • both the server 11 (encoder) and the information processing device 51 (decoder) may hold Huffman-encoding tables in advance. In such a case, the server 11 notifies the information processing device 51 of ID information indicating the Huffman coding table used for Huffman coding the difference information.
  • the server 11 may store the Huffman coding table or the reverse lookup table in the coded bitstream and transmit it to the information processing device 51 .
  • the Huffman coding table is transmitted from the server 11 to the information processing device 51, and the information processing device 51 performs reverse lookup based on the Huffman coding table at the time of decoding or the like.
  • a reference table may be generated.
  • the range corresponding to the data of the narrow dynamic range including the value of the difference information with high occurrence probability such as the range of ⁇ 3 dB as the range of possible values of the difference information, was selected as the target range, and only that target range was targeted.
  • a Huffman coding table may be used.
  • the difference information of values outside the target range that is, the difference information of irregular values with a low appearance probability
  • the differential information is treated as it is as differential code data.
  • a highly efficient Huffman coding table is selected or generated according to the probability density distribution of difference information, and information about which Huffman coding table to use is encoded. By describing it in the bitstream, it is possible to efficiently encode and transmit the differential information.
  • the dynamic range can be further reduced and the encoding efficiency can be improved.
  • multistage differential encoding can be realized by combining a plurality of schemes.
  • the mode indicating the presence or absence of multi-stage differential encoding and the method is recorded as enc_mode etc. in the model data.
  • the multistage differential encoding method is recorded in the lower 4 bits and whether the target is a real number or a complex number is recorded in the upper 4 bits, the following information is stored in the model data.
  • Target data is real number
  • 0x00 No multistage differential encoding
  • 0x01 Spatial adjacent difference method
  • 0x02 Inter-frequency difference method
  • 0x03 Spatial adjacent difference method + Inter-frequency difference method (target data is complex number)
  • 0x1* Lower bits are the same as the target data real number
  • the spatial adjacent difference method when encoding the difference information of the data point to be processed, the difference information at the data point to be processed and the difference information at other data points near the data point to be processed. is obtained as spatial difference information. For example, a difference in difference information between adjacent data points is obtained as spatial difference information. Then, the obtained spatial difference information is Huffman-encoded to obtain differential encoded data.
  • the data at spatially close positions (data points) in the directivity data that is, the directivity gain and difference information, take advantage of the property that they tend to take close values.
  • the inter-frequency difference method when encoding the difference information of the bin (frequency) to be processed, the difference information in the bin to be processed and the neighboring frequencies of the bins adjacent to the bin to be processed are used. is obtained as inter-frequency difference information. Then, the obtained inter-frequency difference information is Huffman-encoded to be differential code data.
  • the data of close frequencies that is, the directivity gain and difference information, take advantage of the property that they tend to take close values.
  • the difference in spatial difference information between adjacent bins is obtained as inter-frequency difference information, and the inter-frequency difference information is Huffman encoded.
  • a difference in inter-frequency difference information between adjacent data points is obtained as spatial difference information, and the spatial difference information is Huffman-encoded.
  • the complex difference method is used when the directivity data has not only information about the amplitude described above but also information about the phase.
  • the directional data has information about amplitude and phase
  • the information about those amplitudes and phases, that is, the directional gain is expressed by a complex number.
  • the directivity data has complex number data (hereinafter also referred to as complex directivity gain) indicating the amplitude and phase for each bin for each data point, and the difference information is also complex number data.
  • the real and imaginary parts of the differential information represented by complex numbers are Huffman-encoded independently (individually), or two-dimensional data consisting of real and imaginary parts (complex directivity gain) Huffman encoding is performed.
  • the complex difference method it may be possible to select whether Huffman coding is performed on the real part and the imaginary part separately, or Huffman coding is performed on the two-dimensional data.
  • each method of encoding by combining at least one or more of the spatially adjacent differential method, the inter-frequency differential method, and the complex differential method, and the method of Huffman encoding the difference information as it is are referred to as one differential encoding method or Also referred to as differential encoding mode.
  • a differential encoding method that Huffman-encodes differential information as it is can be said to be an encoding that uses the difference, that is, a method that does not perform differential encoding.
  • the server 11 selects the most efficient one from among a plurality of differential encoding methods (differential encoding modes) based on the differential information, etc., and Huffman-encodes the differential information using the selected differential encoding method. I do.
  • the code amount (data amount) of the differential code data in each differential encoding method is obtained by calculation based on the difference information, and the differential encoding method with the smallest code amount is the most efficient. It may be selected as high.
  • an appropriate differential encoding method may be selected based on, for example, the sound source type of the directional data or the environment during recording of the directional data such as an anechoic room.
  • the HOA method for each frequency band, that is, for each bin or band, or in common for all frequency bands, at least one or more of the HOA method, the mixed method, the complex mixed method, and the difference method are combined. may be used to generate the model data.
  • directivity data is modeled by one or a plurality of different methods such as the HOA method and the mixed method, and model data including model parameters and the like obtained as a result is generated.
  • the HOA method is a method that uses HOA to model directional data consisting of complex directional gains for each data point bin. That is, the HOA method is a method of modeling directivity data by spherical harmonic expansion.
  • spherical harmonic expansion is performed on the directional data, and as a result, spherical harmonic coefficients, which are coefficients for spherical harmonic functions in each dimension, are obtained as model parameters.
  • Directivity data consisting of the complex directional gain after modeling by HOA can be obtained from the spherical harmonic coefficients in each of these dimensions.
  • the mixed method is a method of modeling using a mixed model consisting of the above-mentioned Kent distribution and vMF distribution.
  • the mixed scheme can describe the shape of the directional gain, which varies sharply at a particular orientation (direction) as seen from the sound source, ie the location of the data points.
  • the complex mixture method is a method of modeling directivity data consisting of complex directivity gain, that is, amplitude and phase data, using a mixture distribution (mixture model) corresponding to complex numbers.
  • modeling by the following two methods can be considered.
  • each of the real and imaginary parts of the complex directivity gain, or each of the amplitude and phase angle obtained from the complex directivity gain is independently calculated using a mixed model of probability density distribution for real numbers.
  • a method of modeling by describing is conceivable.
  • the directional data is modeled by a mixture model consisting of one or more complex Bingham distributions or one or more complex Watson distributions, so that the model parameters are similar to those in the mixture scheme. can get. From the model parameters thus obtained, it is possible to obtain directivity data consisting of complex directivity gains after modeling in the complex mixture method.
  • the description is performed in the format shown in the following formula (5). That is, the complex Bingham distribution value f(z) is represented by the following equation (5).
  • the complex vector z in Equation (5) corresponds to the position vector x on the spherical surface in the Kent distribution or the vMF distribution, and z* is its complex conjugate.
  • the complex matrix A is a k ⁇ k-dimensional matrix indicating the position, steepness, direction, and shape, and the normalization coefficient C(A) is given by the following equation (6).
  • ⁇ j is the eigenvalue of the complex matrix A and ⁇ 1 ⁇ 2 ⁇ 3 ⁇ . . . ⁇ k .
  • the mixture model consisting of one or more complex Bingham distributions that is, the number of mixtures and weights in the complex Bingham mixture model are common to the formulation of the mixture model consisting of the Kent distribution and the vMF distribution described above.
  • a value F(x; ⁇ ) of a mixture model using N complex Bingham distributions f(z; ⁇ i ) can be weighted and described as shown in the following equation (8).
  • the sum of the weights is 1, ⁇ is the set of all parameters, ⁇ i is the set of parameters of each complex Bingham distribution (parameters constituting the complex Bingham distribution), and ⁇ i is each complex It represents the weights for the Bingham distribution.
  • the difference method is a method that uses differences to generate model data.
  • model data is generated by combining one or more other methods such as the HOA method and the mixed method with the difference method
  • the difference method the directivity data before modeling and the one or more other methods
  • Difference information indicating the difference from the directivity data after modeling is encoded by any of the differential encoding methods described above, and differential encoded data obtained as a result is stored in the model data.
  • the difference in directivity data obtained by the difference method may be modeled by the HOA method or the like.
  • the difference method for example, at least one of the difference between spatial positions (between data points) and the difference between frequencies (between bins or bands) is obtained for the difference information, and the resulting difference is Huffman encoded. are used as differential code data.
  • the difference in the differential information to be Huffman-encoded is a complex number
  • the real part and the imaginary part of the difference may be individually Huffman-encoded, or the complex number may be directly Huffman-encoded.
  • each of the amplitude component and the phase component obtained from the difference may be individually Huffman-encoded.
  • At this time, at least one of the spatially adjacent differential method, the inter-frequency differential method, and the complex differential method, including at least one of the spatially adjacent differential method and the inter-frequency differential method, is used. That is, a difference in directivity gain between spatial positions (between data points) or between frequencies (between bins or bands) is obtained, and the difference is Huffman-encoded.
  • the difference is represented by a complex number
  • the real part and the imaginary part of the difference may be separately Huffman-encoded, or the difference (complex number) may be Huffman-encoded.
  • each of the amplitude component and the phase component obtained from the difference may be individually Huffman-encoded.
  • model data is generated that includes data composed of Huffman codes obtained by Huffman coding the differences obtained by the differential method (hereinafter also referred to as coded directivity data).
  • coded directivity data since there is no directivity data residual, the model data does not include differential code data.
  • differential code It is necessary to define the order of data when data and encoded directional data are stored in model data, and the compression ratio varies depending on the data order.
  • the differential information is calculated after applying offsets and scale factors to the average directivity and matching the dynamic range.
  • model data is generated by combining the HOA method, mixture method, complex mixture method, and difference method
  • the methods for generating model data can be categorized into the following five methods.
  • the five methods here are the band hybrid method, the additive hybrid method, the multiplicative hybrid method, the spherical harmonic coefficient modeling method, and the combination hybrid method. Each method will be described below.
  • the band hybrid method is a method for switching which method of the HOA method, the mixing method, the complex mixing method, and the differential method to generate model data for each frequency band, that is, for each bin or band.
  • low frequencies may be recorded with a complex directional gain
  • high frequencies may be recorded with a real directional gain.
  • the HOA method is used for modeling in the lower band
  • the mixed method is used for modeling in the higher band. Modeling of directional data can be performed.
  • the low-side band may be modeled by a complex mixed method using a complex Bingham distribution or the like, and the high-side band may be modeled by a mixed method.
  • additive hybrid method In the additive hybrid method, difference information indicating the difference from modeled directivity data is further modeled or encoded by a differential method.
  • additive hybrid methods include the following methods (AH1) to (AH4).
  • processing is executed in order from the method described on the left.
  • the directional data is first modeled with a mixed method.
  • difference information indicating the difference between the directivity data before modeling and the directivity data after modeling by the mixed method is encoded by the differential method to generate difference encoded data.
  • model data including model parameters obtained by modeling in the mixed method and differential code data is generated.
  • the directivity data is first modeled using the HOA method.
  • modeling in the HOA method involves spherical harmonic expansion up to low-order terms.
  • difference information indicating the difference between the directivity data before modeling and the directivity data after modeling by the HOA method is further modeled by the mixed method.
  • model data is generated that includes model parameters obtained by modeling in the HOA method and model parameters obtained by modeling differential information in the mixed method.
  • method (AH3) as in method (AH2), the HOA method is used to model up to the lower-order terms, and then the difference information obtained for modeling in the HOA method is encoded by the difference method. and differential code data is generated.
  • model data including model parameters obtained by modeling in the HOA method and differential code data is generated.
  • method (AH4) as in method (AH2), after modeling up to low-order terms with the HOA method, the differential information is further modeled with the mixed method.
  • the difference information indicating the difference between the difference information obtained for modeling by the HOA method and the difference information after modeling by the mixed method is encoded by the difference method to generate difference encoded data.
  • the difference information indicating the difference between the directivity data after modeling modeled by a combination of the HOA method and the mixed method and the directivity data before modeling is encoded by the differential method to obtain differential encoded data. is generated.
  • model data is generated that includes the model parameters obtained by modeling with the HOA method, the model parameters obtained by modeling the difference information with the mixed method, and the differential code data.
  • the difference information that is obtained is also referred to as intermediate difference information.
  • the difference information obtained by modeling in the HOA method is the intermediate difference information, and this intermediate difference information is modeled in the mixed method.
  • difference information indicating the difference between the original intermediate difference information and the intermediate difference information after modeling by the mixed method is encoded by the differential method.
  • method (AH2) cannot obtain data that completely matches the original directivity data on the decoding side, but method (AH1) and method (AH3) , and method (AH4) yields a perfect match with the original directivity data.
  • the directional data may be modeled or coded by a single method instead of the additive hybrid method. That is, for example, a model in which the directional data is modeled or coded by only one of the HOA method, the mixed method, and the differential method, and the resulting model parameters or coded directional data is included. Data may be generated.
  • multiplicative hybrid method In the multiplicative hybrid method, the directivity data is modeled by a predetermined method, and the ratio (quotient) of the directivity data after modeling and the directivity data before modeling is another method different from the predetermined method. is modeled with
  • multiplicative hybrid system examples include the following system (MH1) and system (MH2).
  • the directivity data is first modeled by the HOA method.
  • modeling in the HOA method involves spherical harmonic expansion up to low-order terms.
  • the value obtained by dividing the directivity data before modeling by the directivity data after modeling in the HOA method (hereinafter also referred to as amplitude modulation information) is further modeled in a mixed method.
  • the absolute value (amplitude component) of the complex number (complex directivity gain) that constitutes the amplitude modulation information may be modeled by the mixed method, or the amplitude component of the directivity data before and after modeling may be used. may be used as the amplitude modulation information.
  • model data including model parameters obtained by modeling in the HOA method and model parameters obtained by modeling amplitude modulation information in the mixed method is generated.
  • the directivity data calculated from the model parameters for the HOA method is multiplied by the amplitude modulation information calculated from the model parameters for the mixed method to calculate the final directivity data.
  • amplitude modulation information indicating fine amplitude fluctuations corresponding to the high frequency direction (direction from the sound source), which cannot be expressed by modeling up to the low-order terms in the HOA method, is obtained. It is modeled by a mixed method and recorded (stored) in model data. At the time of decoding, the directivity data calculated from the model parameters for the HOA method is modulated with the amplitude modulation information to obtain the directivity data with less error.
  • method (MH2) as in method (MH1), the directivity data is modeled up to the lower-order terms in the HOA method.
  • the value obtained by dividing the directivity data before modeling by the directivity data after modeling in the HOA method (hereinafter also referred to as amplitude phase modulation information) is further modeled in a mixed method.
  • the real part and imaginary part of the complex number (complex directional gain) and the amplitude component and phase component that constitute the amplitude phase modulation information are modeled by the mixed method.
  • the amplitude phase modulation information may be modeled by a complex mixing scheme.
  • model data including model parameters obtained by modeling in the HOA method and model parameters obtained by modeling the amplitude phase modulation information in the mixed method is generated.
  • the directivity data calculated from the model parameters for the HOA method is multiplied by the amplitude phase modulation information calculated from the model parameters for the mixed method to calculate the final directivity data.
  • amplitude phase modulation information that indicates rotational changes in the high-frequency phase according to the direction (direction from the sound source), which cannot be expressed by modeling down to the lower-order terms in the HOA method. is modeled by a mixed method and recorded (stored) in the model data.
  • the directivity data calculated from the model parameters for the HOA method is modulated by the amplitude phase modulation information to obtain the directivity data with less error.
  • the real and imaginary parts of the complex numbers are different or independent by the same method ( separately) may be modeled.
  • the real part may be modeled by a mixed method and the imaginary part may also be modeled by a mixed method.
  • the amplitude component and the phase component may be modeled independently (individually) by any method, and complex number data may be modeled by the complex mixture method.
  • the directivity data is modeled in two stages, the HOA method and the mixed method, in the spherical harmonic coefficient modeling method.
  • spherical harmonic coefficients are calculated based on the model parameters for the mixed method, and then directivity data (approximate directivity data) are calculated based on the spherical harmonic coefficients.
  • each of the real and imaginary parts of the spherical harmonic coefficients as model parameters, or each of the amplitude and phase components obtained from the model parameters can be modeled individually (independently) by any method such as a mixing method.
  • the spherical harmonic coefficients may be modeled by complex mixtures, such as one or more complex Bingham distributions.
  • model data is generated using a combination of at least two of the above-described band hybrid method, additive hybrid method, multiplicative hybrid method, and spherical harmonics modeling method.
  • information indicating a combination of one or more methods used to generate model data may be stored in the model data.
  • the server 11 side can appropriately select or switch between one or more methods used to generate model data.
  • the model data is configured as shown in FIGS. 15 and 16, for example. 16 shows a portion following the portion shown in FIG. 15. As shown in FIG. 15 and 16 corresponding to those shown in FIG. 5 will be omitted as appropriate.
  • FIGS. 15 and 16 are examples in which the directivity information (directivity data) of one type of sound source specified by num_sound_types_id is described as directivityConfig.
  • the vMF distribution, the Kent distribution, and the syntax when there is difference data (difference information) are shown as an example of realizing the hybrid method, and the number of bits of each information is just an example.
  • the model data shown in FIGS. 15 and 16 are basically composed of the same data as the model data shown in FIG. The number of bits and the data structure of some data are different.
  • the azimuth “azimuth_table[i]” and elevation “elevation_table[i]” are 16-bit unsigned shorts.
  • the number of bands “band_count” and the number of mixtures “mix_count[i_band]” are 8-bit unsigned chars, and the selection flag “dist_flag” is a 1-bit bool.
  • the model data includes the ID of the hybrid mode (differential encoding mode (differential encoding method)) used for encoding the differential information, that is, "mode” indicating the differential encoding mode information.
  • the model data also includes an index "table_index” indicating the Huffman coding table used for coding the difference information.
  • the model data includes "int db_resolution”, which indicates the quantization step size such as quantization every 1.0 dB.
  • int db_resolution a value of '0' indicates no quantization, a value of '1' indicates 0.01 dB, a value of '2' indicates 0.2 dB, and a value of '3' indicates 0.4 dB, the value "256" indicates 25.6 dB.
  • model data also includes a Huffman code (Huffman code) obtained by Huffman coding the difference information for each data point for each bin, that is, "diff_data[i_bin][i_point]", which is differential code data. stored.
  • Huffman code Huffman code
  • information of the configuration shown in FIG. 17 is transmitted from the server 11 to the information processing device 51, either stored in the model data or separately from the model data.
  • the information shown in FIG. 17 includes a Huffman coding table or a reverse lookup table.
  • diff_mode_count is information indicating the total number of differential encoding methods, and "int_nbits_res_data” is stored for this total number "diff_mode_count”.
  • This "int_nbits_res_data” is information indicating the maximum number of bits of the Huffman code, that is, the maximum word length of the Huffman code. can be done.
  • element_count is information indicating the number of elements in the Huffman coding table or reverse lookup table
  • “Huff_dec_table[i_element]” which is the number of elements, is stored.
  • “Huff_dec_table[i_element]” is an element of the reverse lookup table.
  • the Huffman coding table is as shown in FIG. 18, for example. That is, FIG. 18 shows a specific example of the Huffman coding table.
  • Huff_dec_table is a reverse lookup table when the maximum word length is 2 bits. 0: 0dB 1: 0dB 2: 1dB 3: 2dB
  • processing is performed in the following procedure.
  • An offset value is required for restoration.
  • ⁇ Server configuration example> When the server 11 generates model data by combining one or a plurality of methods and encodes difference information in the differential encoding mode, the server 11 is configured as shown in FIG. 19, for example.
  • the server 11 shown in FIG. 19 is an information processing device such as a computer, and functions as an encoding device as in the case of FIG.
  • the server 11 has a directional data encoding unit 201, an audio data encoding unit 23, and an output unit 24.
  • the directional data encoding unit 201 generates model data based on the supplied directional data.
  • Directivity data encoding section 201 has model parameter estimation section 211 , residual calculation section 212 , encoding method selection section 213 , Huffman encoding section 214 , and model data generation section 215 .
  • model parameter estimation unit 211 and the residual calculation unit 212 correspond to the modeling unit 21 in FIG. handle.
  • the model parameter estimating unit 211 models the supplied directivity data to be processed by at least one method such as the HOA method or the mixed method, and the residual calculating unit 212 calculates the model parameters obtained as a result for each method. It is supplied to the model data generator 215 .
  • the residual calculation unit 212 calculates difference information based on the supplied directivity data to be processed and the model parameters supplied from the model parameter estimation unit 211, and the coding method selection unit 213 and the Huffman coding unit 214.
  • the encoding method selection unit 213 selects a differential encoding mode and a Huffman encoding mode when Huffman encoding the difference information.
  • An encoding table is selected, and encoding mode information indicating the selection result is supplied to the Huffman encoding unit 214 and the model data generation unit 215 .
  • the encoding mode information consists of differential encoding mode information indicating the selected differential encoding mode (differential encoding method) and table index information indicating the selected Huffman coding table. It should be noted that only the difference information may be used when the encoding mode information is generated by the encoding method selection unit 213 .
  • the Huffman encoding unit 214 Huffman-encodes the difference information supplied from the residual calculation unit 212 based on the encoding mode information supplied from the encoding method selection unit 213, and converts the resulting encoded differential data into It is supplied to the model data generator 215 .
  • the model data generating unit 215 generates model parameters for each method supplied from the model parameter estimating unit 211 , differential encoded data supplied from the Huffman encoding unit 214 , and encoding mode supplied from the encoding scheme selecting unit 213 .
  • the model data including the information is generated and supplied to the output unit 24 .
  • the difference code data is not included in the model data when the difference information is not encoded.
  • the model data also stores information about the directivity data described above.
  • information indicating the method used to model the directivity data may be stored in the model data.
  • the server 11 performs the encoding process described with reference to FIG. However, in steps S11 and S12, in more detail, the processing described below is performed.
  • step S11 the model parameter estimation unit 211 models the supplied directivity data to be processed by at least one method, and the residual calculation unit 212 calculates difference information as necessary. be done.
  • the HOA method, the mixture method, the complex mixture method, the difference method, and the like are combined as necessary, and thereby the above-mentioned band hybrid method, additive hybrid method, multiplicative hybrid method, spherical harmonic coefficient modeling method, Model parameters and difference information are calculated by a combination hybrid method or the like.
  • step S12 the encoding method selection unit 213 selects a differential encoding mode and a Huffman encoding table, and the Huffman encoding unit 214 performs Huffman encoding as necessary. Data generation takes place.
  • the model parameter estimation unit 211 first models the directivity data by the HOA method, and as a result, the spherical harmonics as the model parameters. get the coefficients.
  • the model parameter estimating unit 211 obtains the difference between the directivity data modeled by the HOA method and the directivity data before modeling as intermediate difference information, and models the intermediate difference information by the mixing method.
  • parameter concentration ⁇ , ellipticity ⁇ , weight ⁇ i , vector ⁇ 1 , major axis vector ⁇ 2 , minor axis vector ⁇ 3 , scale factor, and minimum value are obtained as model parameters. be done.
  • the model parameter estimating unit 211 combines the model parameters obtained by modeling the directivity data by the HOA method and the model parameters obtained by modeling the intermediate difference information by the mixed method into the residual calculation unit 212 and the model data generation unit 212 . 215.
  • the residual calculator 212 generates difference information based on the model parameters supplied from the model parameter estimator 211 and the supplied directivity data.
  • This difference information is the residual difference between the directivity data after modeling, which is modeled by a combination of the HOA method and the mixed method, and the directivity data before modeling.
  • the Huffman encoding unit 214 Huffman-encodes the difference information supplied from the residual calculation unit 212 according to the encoding mode information supplied from the encoding method selection unit 213 as necessary.
  • processing is performed by the method indicated by the differential encoding mode information. That is, for example, the difference information is Huffman-encoded by one or more of the spatial adjacent difference method, the inter-frequency difference method, and the complex difference method, or the Huffman-encoding of the difference information is not performed.
  • the Huffman coding unit 214 obtains the difference of the difference information between the adjacent data points as the spatial difference information, and Huffman codes the spatial difference information. Generate differential code data.
  • the model data generation unit 215 generates model data including the HOA model parameters and the mixed method model parameters supplied from the model parameter estimation unit 211 and the encoding mode information supplied from the encoding method selection unit 213. Generate. In particular, when the difference information is Huffman-encoded, the model data generator 215 also stores the differential code data supplied from the Huffman encoder 214 in the model data.
  • model parameter estimation unit 211 uses at least one of the spatial adjacent difference method and the inter-frequency difference method based on the supplied directivity data.
  • a difference in directivity data (hereinafter also referred to as differential directivity data) is obtained.
  • This differential directivity data is the difference in directivity data, or directivity gain, between data points or between bins.
  • the encoding method selection unit 213 generates encoding mode information based on the differential directivity data supplied from the model parameter estimation unit 211 via the residual calculation unit 212 .
  • the Huffman encoding unit 214 designates the differential directivity data supplied from the model parameter estimation unit 211 via the residual calculation unit 212 based on the encoding mode information supplied from the encoding method selection unit 213. Huffman encoding is performed by the differential encoding method to generate encoded directivity data.
  • model data generation unit 215 generates model data including the coding directivity data supplied from the Huffman coding unit 214 and the coding mode information supplied from the coding scheme selection unit 213, and outputs the model data to the output unit 24. supply to
  • the information processing device 51 that has received the encoded bitstream supplied from the server 11 having the configuration shown in FIG. 19 performs, for example, the directivity data generation processing shown in FIG. The output audio data generation processing described above is performed.
  • step S111 the same processing as the processing in step S51 of FIG. 12 is performed. That is, in step S111, the unpacking unit 81 unpacks the model data, and extracts model parameters, information on original directivity data before modeling, differential code data, and the like from the model data.
  • step S112 the unpacking unit 81 determines whether or not there are model parameters that have not yet been supplied to the directivity data calculating unit 82 among the model parameters for each method extracted by the unpacking.
  • step S112 If it is determined in step S112 that there are model parameters, the unpacking unit 81 supplies the directivity data calculating unit 82 with the model parameters that have not yet been supplied to the directivity data calculating unit 82, that is, have not yet been processed. Then, the process proceeds to step S113.
  • step S113 the directivity data calculation unit 82 calculates data based on the model parameters based on the model parameters of one method supplied from the unpacking unit 81.
  • step S113 based on the model parameters for each method such as the HOA method and the mixed method, the directivity gain, the intermediate difference information, the amplitude modulation information, the amplitude phase modulation information, etc., which constitute the directivity data after modeling, are modeled. Calculated as data based on parameters.
  • step S113 After the processing of step S113 is performed, the processing returns to step S112, and the above-described processing is repeatedly performed.
  • step S112 determines whether there is no model parameter that has not been supplied to the directivity data calculation unit 82. If it is determined in step S112 that there is no model parameter that has not been supplied to the directivity data calculation unit 82, then the process proceeds to step S114.
  • step S114 the unpacking unit 81 determines whether or not the model data supplied from the acquiring unit 61 contains differential code data, that is, whether or not there is differential code data.
  • step S114 If it is determined in step S114 that differential encoded data is included, the unpacking unit 81 supplies the differential encoded data and the encoding mode information extracted from the model data to the differential information decoding unit 83. The process proceeds to step S115.
  • step S115 the differential information decoding unit 83 acquires the encoding mode information and differential code data output from the unpacking unit 81.
  • step S116 the difference information decoding unit 83 decodes the difference encoded data based on the obtained encoding mode information, and supplies the resulting difference information (directivity data residual) to the addition unit 84.
  • differential encoding mode information included in the encoding mode information specifies that encoding is being performed using the spatial adjacent differential method.
  • the difference information decoding unit 83 uses the reverse lookup table specified by the table index information included in the encoding mode information to decode the differential encoded data supplied from the unpacking unit 81. , to obtain the spatial difference information for each data point.
  • the difference information decoding unit 83 adds the difference information of other decoded data points in the vicinity of the data point to the spatial difference information of the data point to be processed, thereby obtaining the difference information of the data point to be processed.
  • step S116 If the process of step S116 has been performed, or if it is determined that there is no differential code data in step S114, then the process of step S117 is performed.
  • step S117 the directivity data calculator 82 and the adder 84 calculate the directivity data.
  • the directivity data calculation unit 82 calculates approximate directivity data based on the data obtained by the process of step S113 performed one or more times, and supplies it to the addition unit 84.
  • model parameters are calculated by the addition hybrid method (AH4) on the server 11 side.
  • step S113 post-modeling directivity data (rough directivity data) is calculated based on the model parameters of the HOA method.
  • intermediate difference information after modeling is calculated based on the model parameters of the mixed method.
  • the directivity data calculation unit 82 adds the intermediate difference information to the outline directivity data, that is, adds the intermediate difference information for each bin at each data point to the directivity gain for each bin at each data point. By doing so, the final outline directivity data is obtained.
  • the addition unit 84 adds the difference information (directivity data residual) supplied from the difference information decoding unit 83 to the final general directivity data obtained by the directivity data calculation unit 82 in this manner. Then, directivity data is calculated and supplied to the frequency interpolation processing unit 85 . If there is no difference information, the final outline directivity data is used as the directivity data.
  • model parameters are calculated by the multiplication hybrid method (MH1) on the server 11 side.
  • step S113 post-modeling directivity data (rough directivity data) is calculated based on the model parameters of the HOA method. Further, in the process of step S113 for the second time, amplitude modulation information after modeling is calculated based on the model parameters of the mixed method.
  • the directivity data calculation unit 82 multiplies the approximate directivity data by the amplitude modulation information, that is, the directivity gain for each bin at each data point is multiplied by the amplitude modulation information for each bin at each data point. to obtain the final directivity data.
  • the processing of steps S115 and S116 is not performed, and since there is no difference information, the directivity data obtained by the directivity data calculator 82 is directly supplied to the frequency interpolation processor 85 via the adder 84. .
  • model data may be generated by the difference method alone on the server 11 side.
  • the process of step S113 is not performed, and the encoded directivity data is decoded by the difference information decoding unit 83 in steps S115 and S116.
  • the difference information decoding unit 83 uses the reverse lookup table specified by the table index information included in the encoding mode information to decode the encoded directivity data supplied from the unpacking unit 81, Obtain differential directivity data.
  • step S117 the difference information decoding unit 83 calculates directivity data based on the value (difference) for each bin of each data point forming the differential directivity data.
  • the differential information decoding unit 83 adds the value (difference) for each bin of the data points to be processed to the The directional gains for each bin of the data point being processed are determined by adding the directional gains for the same bin of other reconstructed data points in the vicinity of the data point.
  • the difference information decoding unit 83 adds the value (difference) of the bin to be processed of the data point to the process at the same data point.
  • the directivity gain of the bin to be processed is obtained by adding the directivity gains of other restored bins in the vicinity of the bin of interest.
  • step S118 is performed and the directivity data generation process ends. Since it is the same, its explanation is omitted.
  • the information processing device 51 calculates the directivity data based on the model data. By doing so, it is possible to reduce the transmission amount of directional data. As a result, occurrence of transmission delay and increase in transmission rate can be suppressed.
  • the directivity data encoding unit 201 has a model parameter estimation unit 241, a calculation unit 242, a model parameter estimation unit 243, a calculation unit 244, a differential coding unit 245, and a model data generation unit 215. ing.
  • the model parameter estimator 241 through the calculator 244 correspond to the model parameter estimator 211 in FIG.
  • the model parameter estimating unit 241 models the supplied directionality data to be processed by the mixed method, supplies the model parameters obtained as a result to the model data generating unit 215, and estimates the directivity after modeling by the mixed method. Data is supplied to the calculation unit 242 .
  • the computing unit 242 calculates intermediate difference information by subtracting the modeled directivity data supplied from the model parameter estimating unit 241 (obtaining the difference) from the supplied directivity data to be processed. It is supplied to the parameter estimator 243 and the calculator 244 .
  • the model parameter estimating unit 243 models the intermediate difference information supplied from the computing unit 242 by the HOA method, supplies the model parameters obtained as a result to the model data generating unit 215, and calculates the intermediate difference information after modeling by the HOA method.
  • the difference information is supplied to the calculation unit 244 .
  • the calculation unit 244 calculates difference information by subtracting the intermediate difference information after modeling supplied from the model parameter estimation unit 243 from the intermediate difference information supplied from the calculation unit 242 (finding the difference). It is supplied to the encoding unit 245 .
  • the differential encoding unit 245 generates the encoding mode information and the differential encoded data based on the difference information supplied from the calculation unit 244 and the directivity data to be processed supplied as appropriate, and generates model data. 215.
  • model parameter estimation unit 241 performs modeling by the mixed method and the model parameter estimation unit 243 performs modeling by the HOA method has been described.
  • model parameter estimation unit 241 and the model parameter estimation unit 243 may use any method for modeling.
  • the model parameter estimation unit 241 may perform modeling by the HOA method
  • the model parameter estimation unit 243 may perform modeling by the mixed method.
  • the differential encoding unit 245 can have the configuration shown in FIG. 22, for example.
  • portions corresponding to those in FIG. 19 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
  • the differential encoding unit 245 has a residual calculating unit 212, an encoding method selecting unit 213, a multistage differential processing unit 271, and a Huffman encoding unit 214.
  • the residual calculation unit 212 calculates difference information based on the supplied directivity data to be processed, and the modeled directivity data and the intermediate difference information supplied from the model parameter estimation unit 241 and the model parameter estimation unit 243. is calculated and supplied to the encoding method selection unit 213 and the multistage difference processing unit 271 .
  • the multistage difference processing unit 271 selects the difference indicated by the encoding mode information supplied from the encoding method selection unit 213 based on either the difference information from the residual calculation unit 212 or the difference information from the calculation unit 244. Multistage differential information is generated in differential encoding mode.
  • Huffman coding when Huffman coding is performed by the spatial adjacent difference method as the differential encoding mode, spatial difference information is obtained as multistage difference information, and when Huffman coding is performed by the inter-frequency difference method as the differential encoding mode. , inter-frequency difference information is obtained as multistage difference information.
  • Huffman coding when Huffman coding is performed by the spatial adjacent difference method and the inter-frequency difference method as the differential encoding mode, Huffman coding obtained by obtaining spatial difference information and inter-frequency difference information is performed. The information becomes multilevel differential information.
  • the multistage difference processing unit 271 supplies the obtained multistage difference information to the encoding method selection unit 213 and the Huffman encoding unit 214 .
  • the encoding method selection unit 213 selects the supplied directivity data to be processed, the difference information supplied from the residual calculation unit 212 or the calculation unit 244, and the multistage difference information supplied from the multistage difference processing unit 271. Based on this, the encoding mode information is generated and supplied to the multistage difference processing unit 271 , the Huffman encoding unit 214 and the model data generation unit 215 .
  • the Huffman encoding unit 214 Huffman-encodes the multistage difference information supplied from the multistage difference processing unit 271 based on the encoding mode information supplied from the encoding method selection unit 213, and obtains differential encoded data as a result. is supplied to the model data generation unit 215 .
  • step S151 the model parameter estimating unit 241 models the supplied directionality data to be processed using the mixed method.
  • the model parameter estimation unit 241 supplies the model parameters obtained by modeling to the model data generation unit 215 and supplies the directivity data after modeling by the mixed method to the calculation unit 242 .
  • step S152 the computing unit 242 calculates intermediate difference information based on the supplied directivity data to be processed and the modeled directivity data supplied from the model parameter estimating unit 241. 243 and the calculation unit 244 .
  • step S153 the model parameter estimation unit 243 models the intermediate difference information supplied from the calculation unit 242 by the HOA method.
  • the model parameter estimation unit 243 supplies the model parameters obtained by modeling to the model data generation unit 215, and supplies the intermediate difference information after modeling by the HOA method to the calculation unit 244.
  • step S154 the computing unit 244 calculates difference information based on the intermediate difference information supplied from the computing unit 242 and the intermediate difference information after modeling supplied from the model parameter estimating unit 243, and the differential encoding unit 245.
  • step S ⁇ b>155 the differential encoding unit 245 performs differential encoding based on the differential information supplied from the computing unit 244 .
  • the encoding method selection unit 213 of the differential encoding unit 245 uses the supplied directivity data to be processed, the difference information supplied from the calculation unit 244, and the previous processing such as the previous frame to perform multistage differential processing.
  • Coding mode information is generated based on the multistage difference information supplied from the unit 271 and supplied to the multistage difference processing unit 271 , the Huffman coding unit 214 , and the model data generation unit 215 .
  • the encoding method selection unit 213 may use the difference information supplied from the residual calculation unit 212 to generate the encoding mode information.
  • the multi-stage difference processing unit 271 generates multi-stage difference information based on, for example, the difference information supplied from the calculation unit 244 and the encoding mode information supplied from the encoding method selection unit 213, and selects the encoding method. It is supplied to the unit 213 and the Huffman coding unit 214 .
  • the Huffman encoding unit 214 Huffman-encodes the multistage difference information supplied from the multistage difference processing unit 271 based on the encoding mode information supplied from the encoding method selection unit 213, and obtains differential encoded data as a result. is supplied to the model data generation unit 215 .
  • step S ⁇ b>156 the model data generation unit 215 generates model data by packing and supplies it to the output unit 24 .
  • the model data generating unit 215 generates the model parameters of the mixed method from the model parameter estimating unit 241, the model parameters of the HOA method from the model parameter estimating unit 243, and the coding mode information from the coding method selecting unit 213. , and the difference code data from the Huffman coding unit 214 are generated. When the model data is generated in this manner, the model data generation process ends.
  • the directional data encoding unit 201 generates model data by the additive hybrid method. By doing so, it is possible to reduce the transmission amount of directional data and suppress the occurrence of transmission delays and an increase in the transmission rate.
  • the distribution model decoding unit 62 of the information processing device 51 has the configuration shown in FIG. 24, for example.
  • parts corresponding to those in FIG. 11 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
  • calculation units 301 and 302 correspond to directivity data calculation unit 82 shown in FIG.
  • the calculation unit 301 calculates the directivity data (approximate directivity data) after modeling by the mixed method based on the model parameters of the mixed method supplied from the unpacking unit 81 , and supplies the calculated directivity data to the calculation unit 304 .
  • the calculation unit 302 calculates intermediate difference information after modeling by the HOA method based on the model parameters of the HOA method supplied from the unpacking unit 81 , and supplies it to the calculation unit 303 .
  • the differential information decoding unit 83 calculates differential information (directivity data residual) based on the encoding mode information and the differential encoded data supplied from the unpacking unit 81 and supplies it to the computing unit 303 .
  • the calculation unit 303 adds (synthesizes) the difference information supplied from the difference information decoding unit 83 and the intermediate difference information supplied from the calculation unit 302, and supplies the addition result (difference information) to the calculation unit 304. .
  • the calculation unit 304 adds the directivity data (approximate directivity data) supplied from the calculation unit 301 and the addition result (difference information) supplied from the calculation unit 303, and obtains the resulting directivity data. is supplied to the frequency interpolation processing unit 85 .
  • the directivity data (rough directivity data) is calculated by the calculating unit 301 in the first step S113 in the directivity data generation process of FIG. be. Also, in the second step S113, the calculation unit 302 calculates the intermediate difference information.
  • the difference information decoding unit 83 performs the processing of steps S115 and S116 to generate difference information, and in step S117, addition processing is performed by the calculation units 303 and 304 to generate directivity data.
  • the configuration of the model data described above is not limited to the configuration shown in FIG. 5 and the configurations shown in FIGS. 15 and 16, but can also be the configuration shown in FIG.
  • bslbf indicates bit string, left bit first, that is, left bit first.
  • uimsbf denotes unsigned integer most significant bit first, that is, an unsigned integer with the most significant bit first.
  • the model data shown in FIG. 25 includes the number of frequency points "bin_count” indicating the number of frequency bins, and the frequency "bin_freq[i]" at the center of the frequency bin is equal to the number of frequency points "bin_count”. is stored.
  • the mixture number “mix_count[j]” indicating the number of distributions that make up the mixture model in each band and the bin information "bin_range_per_band[j]” indicating the bins included in the band ” is stored.
  • parameter concentration ⁇ concentration of mixtures “mix_count[k]”.
  • weight ⁇ i weight of mixtures “mix_count[k]”.
  • selection flag “dist_flag” selection flag “dist_flag” are stored as model parameters for the number of mixtures “mix_count[k]”.
  • "kappa[j][k]” indicates parameter concentration ⁇
  • "weight[j][k]” indicates weight ⁇ i
  • "gamma_x[j][k]”, “gamma_y[j][k]”, and “gamma_z[j][k]” are the X component (X coordinate) and Y component ( Y coordinate), and the Z component (Z coordinate).
  • the selection flag “dist_flag” is “1”, that is, when the distribution is the Kent distribution, the ellipticity ⁇ , the major axis vector ⁇ 2 and the minor axis vector ⁇ 3 are also stored.
  • 'beta[j][k]' denotes the ellipticity ⁇
  • 'gamma2_x[j][k]', 'gamma2_y[j][k]' and 'gamma2_z[j][k]' indicates the X, Y and Z components that make up the major axis vector ⁇ 2
  • ⁇ gamma3_x[j][k]'', ⁇ gamma3_y[j][k]'' and ⁇ gamma3_z[j][k]'' represent the X, Y and Z components of the minor axis vector ⁇ 3 . showing.
  • the model data contains the scale factor ⁇ scale_factor[i]'' that indicates the dynamic range of the directional gain and the offset value of the directional data in each bin, that is, the minimum value ⁇ offset[i ]” is also included.
  • model data also contains information for identifying the position of each data point.
  • the information processing device 51 uses the decoded directivity data when performing rendering processing. However, what is required in this case is not only the value (directivity gain) at the data point described in the original directivity data, but also the directivity gain at the position (azimuth) used during rendering processing. is.
  • data directivity gain
  • grid data arrangement data arrangement in which data points are arranged at grid points obtained by equally dividing the latitude and longitude on the surface of a sphere
  • grid data arrangement data arrangement in which data points are arranged at grid points obtained by equally dividing the latitude and longitude on the surface of a sphere
  • the uniform data arrangement referred to here is a data arrangement in which a plurality of data points are uniformly arranged on the surface of a sphere centered on the sound source position, as shown in FIG. 26, for example.
  • uniform data placement places the data points at a constant density over any area on the surface of the sphere.
  • each point on the spherical surface represents a data point, and the data points are arranged at a constant density in any direction as viewed from the sound source position. directional data) are recorded.
  • Recording directivity data with such a uniform data arrangement is particularly effective when the direction of the listener (user) seen from the sound source changes evenly over time.
  • non-uniform data arrangement is data arrangement in which multiple data points are non-uniformly arranged on a spherical surface centered on the sound source position.
  • non-uniform data placement places the data points at different densities in different regions on the surface of the sphere. Therefore, it can be said that the cross-cut data arrangement is one example of non-uniform data placement, but the non-uniform data placement does not include the cross-cut data arrangement below. .
  • non-uniform data arrangement for example, the area corresponding to the front direction of the sound source, which is important for hearing, on the surface of a sphere centered on the sound source position, and the possibility that the user's viewpoint and the sound source are close to each other as a positional relationship. It is conceivable to place a high density of data points in regions corresponding to high orientations of . In non-uniform data placement, it is also conceivable to place data points densely in areas of high directional gain.
  • data points i.e., directional gains
  • areas areas where the amount of change in directional gain is large as a whole or in important areas on a spherical surface centered on the sound source position.
  • the priority of the directivity data may be determined based on the priority of the sound source type of the object in the content in which the directivity data is used.
  • the description of the directivity data for that sound source type will be more bits are allocated. That is, it is conceivable that more data points are provided for the directivity data of the sound source type with higher priority, and the directivity data is recorded with high definition.
  • FIG. 27 shows an example of a description format (Syntax) of information for specifying the position of each data point.
  • each data point is arranged on the surface of a sphere centered at the sound source position.
  • the present invention is not limited to this, and the distance from the sound source position to the data point may be different for each data point.
  • position_type is information indicating the arrangement format (arrangement method) of data points, that is, the coordinate recording method.
  • the value of the coordinate recording method "position_type" is "0x000".
  • the value of the coordinate recording method "position_type” is "0x001"
  • the coordinate The value of the recording method "position_type” is set to "0x010”.
  • Priority_index is the priority of directional data, more specifically, priority information indicating the priority of directional data. For example, since the directivity data is prepared for each type of object, that is, for each sound source type, it can be said that the priority information indicates the priority of the directivity data for each type of sound source (object). This priority may change over time.
  • the directivity data can be processed without reducing the spatial resolution in the information processing device 51, which is the decoding side, before modeling (before encoding). data points may be recovered (decoded).
  • the distribution model decoding unit 62 based on the model data, directivity data having the same positions and the same number of data points as before modeling may be calculated. good.
  • the density (number) of data points forming the directional data may be determined, for example, according to the priority of the directional data.
  • azimuth_interval indicates the angle (difference in azimuth angle) indicating the azimuth direction interval between data points adjacent to each other in the azimuth direction on the surface of the sphere.
  • the elevation angle interval "elevation_interval” indicates an angle (elevation angle difference) that indicates the elevation angle interval between data points that are adjacent to each other in the elevation direction on the surface of the sphere.
  • At least one reference position such as the position in the front direction viewed from the sound source position, is known as the data point arrangement position on the information processing device 51 side. Therefore, from these azimuth and elevation spacings and predetermined reference positions, all data points can be located.
  • the arrangement position of each data point is known for each number of data points, and the positions of all data points can be specified from the number of data points.
  • position_type is "0x010", i.e. non-uniform data arrangement, the number of mandatory data points "num_mandatory_point” and the positions of the mandatory data points for that number of mandatory data points azimuth_table[i] and elevation data "elevation_table[i]" are described (stored).
  • the resolution of the arrangement of data points in other words, the resolution for arranging data points ⁇ gain_resolution'' that indicates the arrangement density of data points is also described (stored is being used).
  • the data point placement resolution “gain_resolution” is a decibel value that indicates the amount of variation in data (directivity gain).
  • data points are set for each variation amount of the directional gain indicated by the data point arrangement resolution "gain_resolution”. That is, the number of data points in the directivity data obtained by decoding changes according to the data point arrangement resolution.
  • the data points that always exist (are arranged) regardless of the data point arrangement resolution, that is, the data points that are always restored at the time of decoding are regarded as essential data points.
  • a mandatory data point number “num_mandatory_point” indicating the number of mandatory data points is described.
  • azimuth angle data "azimuth_table[i]” and the elevation angle data “elevation_table[i]” are the azimuth angle and elevation angle indicating the positions (coordinates) of the required data points in the azimuth direction and elevation direction, respectively.
  • azimuth data "azimuth_table[i]” and elevation data “elevation_table[i]” can be used to specify the arrangement position of each essential data point.
  • azimuth and elevation data are not limited to coordinates, i.e., azimuth and elevation, but may be any other information, such as an index from which azimuth and elevation can be obtained, as long as they are information that can specify the location of the required data points.
  • Information such as
  • the placement positions of the data points other than the required data points in the directional data are the placement positions of the required data points and the data point placement resolution "gain_resolution ” is identified based on
  • a mixture model F(x; ⁇ ) for each bin is obtained based on model data, more specifically model parameters.
  • This mixture model F(x; ⁇ ) gives the value of directivity gain at any position on the spherical surface surrounding the sound source position.
  • non-essential data points (hereinafter also referred to as non-essential data points) on the surface of the sphere is placed.
  • the positions of the non-essential data points are such that the directional gain values dictated by the mixture model F(x; ⁇ ) are different from the directional gain values at the essential data points on the spherical surface, e.g. is the position where the value is changed by the amount of variation indicated by .
  • non-mandatory data points may be set.
  • the non-essential data points may be arranged at intervals corresponding to the amount of variation indicated by the data point arrangement resolution with respect to the essential data points.
  • a number of non-essential data points corresponding to the data point placement resolution may be arranged at equal intervals between essential data points adjacent to each other in the azimuth and elevation directions.
  • the arrangement positions of all the data points that make up the directional data in the non-uniform arrangement that is, the arrangement positions of all the essential data points and the non-essential data points are identified.
  • the decoding side information processing device 51
  • the spatial resolution of the directional data ie the number of data points
  • the number of data points changes according to the value of the priority "priority_index”.
  • the spatial resolution of the directional data that is, the data amount of the directional data obtained by decoding, for example, the value of the priority "priority_index” is multiplied by the azimuth direction interval “azimuth_interval” or the elevation direction interval "elevation_interval". I can think of a way.
  • a method of multiplying the number of data points "uniform_dist_point_count” by the reciprocal of the value of the priority "priority_index”, or a method of multiplying the value of the priority "priority_index” to the data point placement resolution " gain_resolution” can also be considered.
  • the information processing device 51 can obtain directivity data with an appropriate spatial resolution. That is, the spatial resolution (number of data points) of the directional data can be adjusted appropriately.
  • the information for specifying the position of each data point is the configuration shown in FIG. (hereinafter also referred to as data point position information) may be stored.
  • model data includes data point position information configured as shown in FIG. 27, in step S12 of the encoding process described with reference to FIG. Generate model data that includes each piece of information. That is, model data including data point position information is generated.
  • model data including data point position information may be generated by the model data generation unit 215 .
  • difference information is obtained for each data point of the directional data after decoding, that is, for each data point specified by the data point position information.
  • Each information such as is calculated.
  • step S52 of the directivity data generation process described with reference to FIG. generate gender data.
  • the directivity data calculation unit 82 identifies the data point arrangement format (coordinate recording system) based on the data point position information included in the model data, and determines the arrangement position of each data point in the directivity data. Identify. At this time, the directivity data calculator 82 also uses the priority information of the directivity data to identify the arrangement positions of the data points as necessary.
  • the directivity data calculation unit 82 calculates a mixture model F′(x; Calculate the mixture model output value F(x; ⁇ ) for each bin at the data point, based on the minimum value for each bin. This results in approximate directivity data consisting of the directivity gain for each bin at each data point.
  • model data includes data point position information
  • directivity data generation process described with reference to FIG. Results are used as appropriate.
  • the spatial adjacent difference method and the inter-frequency difference method have been described as the differential encoding methods.
  • the difference information and directivity gain difference between adjacent bins, that is, between adjacent frequencies are obtained.
  • the directivity gain values are close between adjacent frequencies (bins), that is, the shape of the directivity data is close.
  • the difference information and directivity gain difference between adjacent data points that is, between adjacent positions are obtained.
  • the directivity data has a characteristic that the difference in directivity gain between spatially close positions is small. That is, in the directivity data, the directivity gain on the surface of the sphere often changes continuously, and the closer the positions (azimuths), the closer the directivity gain values are.
  • HRTF Head-Related Transfer Function
  • SOFA spatialally Oriented Format for Acoustics
  • data points are arranged at adjacent longitude positions along the circumference. At this time, the data points are arranged, for example, at regular intervals around the circle.
  • the data points are arranged at each longitude position on the circumference corresponding to the latitude while sequentially changing the latitude value. , data points are provided on the surface of the sphere.
  • directivity data of a method such as grid data arrangement can be obtained.
  • the data density ie, the density of data points
  • increases around the poles such as the south and north poles.
  • directivity gain when actually recording directivity data (directivity gain) as described above, it is important to ensure that the data (data points) are dense in important directions where it is necessary to record changes in directivity gain with high precision. , or with a data distribution that is uniform (uniform distribution) as a whole.
  • the important azimuth here is, for example, the frontal direction, a direction that is often used during rendering, a direction of a position with a large directivity gain value, and the like.
  • differential encoding may be performed by sorting (arrangement) as follows.
  • Method DE1 Differential encoding with data points sorted by a given criterion
  • Method DE2 Differential encoding with directivity gain decibel values sorted in ascending or descending order
  • Methodhod DE3 High priority Differential encoding by sorting from orientation
  • data points that is, differential information and directional gains at data points
  • a predetermined order for data arrangements such as grid data arrangement, uniform data arrangement, and non-uniform data arrangement ( sorted).
  • the difference information and the directivity gain difference are obtained between the data points adjacent to each other after sorting.
  • the order of sorting is known on the decoding side, that is, on the information processing device 51 side.
  • the data points are sorted in ascending or descending order of the values (decibel values (dB values)) for which differences such as differential information and directional gain are to be calculated at those data points.
  • dB values decibel values
  • differential information and directivity gain differences are obtained between mutually adjacent data points after sorting. By doing so, the difference information and the difference in directivity gain between data points can be made smaller.
  • information indicating the sorting order of data points after sorting is stored in the model data so that the sorting order can be specified on the decoding side (information processing device 51 side).
  • the data point position information shown in FIG. 27 may store information indicating the arrangement order of the data points after sorting.
  • the information indicating the sort order of the data points after sorting may be anything, such as information obtained by arranging the indexes indicating each data point in sort order.
  • each data point is sorted in order from the azimuth with the highest priority, such as the azimuth in front or the azimuth with a large directivity gain. Differential information and directivity gain differences are obtained between data points adjacent to each other. As a result, the amount of data such as difference information that has undergone differential encoding can be contained within a predetermined number of bits.
  • method DE3 as in method DE2, information indicating the order of data points after sorting is stored in the model data.
  • the differential information and directional gains are sorted in a predetermined order of data points and frequencies (bins), and the difference between adjacent differential information and directional gains after sorting, i.e. Differences between data points and between bins are determined. Note that after sorting is performed in a predetermined order, differences may be obtained both between data points and between bins, or differences may be obtained only between bins.
  • the difference between adjacent difference information and directional gains that is, between data points or the difference between bins.
  • the differential information and directional data in the bins of each data point are sorted according to the priority of the data points and frequencies (bins). , i.e. the difference between data points or between bins.
  • the data points or bins are sorted in order of priority.
  • Sorting may be performed by groups of one or more bins or data points, such as by .
  • each variable (information) in the encoded bitstream such as in model data, may be tabulated, and only the index indicating the value of the variable after tabulation may be transmitted.
  • variable value in the floating-point format for recording variable values, it is possible to take any value within the float (32-bit) format as the variable value.
  • the syntax may be written in the following manner.
  • variable values (parameters) to be described often take specific values or can be represented by specific values
  • the values actually used that is, the variable values to be described are tabulated. Then, only indexes obtained by tabulation are described in the coded bitstream such as model data, that is, in the Syntax.
  • the table itself is transmitted to the decoding side separately from the encoded bitstream.
  • the variable value can be described with a small number of bits, and the data amount (transmission amount) of the encoded bitstream can be reduced.
  • variable values such as only the range of 0.0 to 0.1 or only the range of 0.9 to 1.0 of the variable values. be done.
  • the actual variable value is stored in the model data or the like and transmitted.
  • F'(x; ⁇ ) is the output value of the mixture model for each band.
  • scale factor "scale_factor[i]” is the sum of the vMF distribution and Kent distribution (model data sum), that is, the sum of the values (directivity gain) at each data point of the mixture model F'(x; ⁇ ), It is the ratio of the sum of the values at each data point of the original directional data before modeling in the bin indicated by index i, i.e. the i-th bin.
  • This scale factor is a float value that represents the dynamic range.
  • model data sum is the sum of values (directivity gain) defined on the spherical surface and is ideally 1, but it is not 1 because it is actually discretized.
  • original directivity data before modeling is dB scale data, and is offset in the positive direction when calculating the scale factor.
  • the minimum value "offset[i]" is the original directional data before modeling in the i-th bin, i.e. the minimum value of the directional gain (dB value), expressed as a float value. .
  • the output values of the mixture model can be corrected and restored according to the dynamic range of each bin.
  • scale factors and minimum values for the number of bins are required. If the frequency resolution of the directional data is made high-definition, the amount of information required to record the scale factors and minimum values, that is, the number of bits, is proportional to the number of bins. It becomes many.
  • the amount of information (number of bits) required to record the scale factor and minimum value may be reduced by parametrically expressing the scale factor and minimum value.
  • values shown in FIGS. 28 and 29 are obtained as scale factors and minimum values (offset values) for directivity data of six sound source types.
  • FIG. 28 shows scale factors for each of the six sound source types.
  • the vertical axis indicates the value of the scale factor, which is a dimensionless ratio
  • the horizontal axis indicates the bin index i.
  • the scale factor fluctuates greatly between adjacent bins, and the scale factor fluctuates less between adjacent bins.
  • FIG. 29 shows the minimum value (offset value) for each of the six sound source types.
  • the vertical axis indicates the minimum value (offset value) in dB
  • the horizontal axis indicates the bin index i.
  • the minimum value fluctuates greatly between adjacent bins and fluctuates less depending on the sound source type.
  • the model data generation unit 22 and the model data generation unit 215 may change the scale factor or the minimum value of each bin if the variation between bins is large and the encoding efficiency cannot be improved by the parametric expression of the scale factor or the minimum value. is stored (described) in the model data as it is.
  • model data generation unit 22 and the model data generation unit 215 parametricize the scale factor or the minimum value and store it in the model data (description )do.
  • the model data generation unit 22 and the model data generation unit 215 generate function approximation parameters for obtaining an approximation function corresponding to the graph representing the scale factor or minimum value of each bin by curve fitting or the like. Then, the model data generation unit 22 and the model data generation unit 215 store the function approximation parameter in the model data instead of the scale factor or minimum value of each bin.
  • the directivity data calculation unit 82 and the calculation unit 301 obtain the scale factor or minimum value in each bin from the approximate function based on the function approximation parameter and the bin index i, and use it as a model parameter.
  • function approximation instead of having to store the scale factors and minimum values of all bins in the model data, only the function approximation parameters need to be described, and the amount of data can be compressed.
  • function approximation arbitrary approximation such as approximation by a linear function, n-th order function (n ⁇ 2), polynomial approximation, etc. can be performed.
  • pre-processing for function approximation includes taking the logarithm of the scale factor and minimum value, and converting the scale factor and minimum value using a nonlinear function. By doing so, the dynamic range may be compressed.
  • examples of methods for generating model data by combining the HOA method, the mixture method, the complex mixture method, and the difference method include the band hybrid method, additive hybrid method, multiplicative hybrid method, and spherical harmonic coefficient modeling. A method and a combined hybrid method have been described.
  • any of the above-mentioned HOA method, mixing method, complex mixing method, difference method, band hybrid method, additive hybrid method, etc. You may make it generate
  • horizontal plane data that is, data on the equator (directivity gain) is most likely to be used frequently, while data near the poles is likely to be used less frequently. Therefore, by switching the method for each area, it is possible to appropriately reduce the number of bits of model data.
  • the horizontal plane here is a plane including a plurality of positions where the latitude, that is, the elevation angle, is 0 degrees as viewed from the sound source position.
  • the HOA method and the mixed method more specifically, the method of modeling with the vMF distribution.
  • the degree of spherical harmonic expansion in the HOA method may be set to the first order, and the combination of the HOA method and the mixed method may be used or only the mixed method may be used for each region (orientation).
  • data points near the horizontal plane are recorded with high precision using a method that models directivity data by circular harmonic function expansion instead of spherical harmonic function expansion, and data points other than near the horizontal plane are recorded in any other way. It is also conceivable to sparsely record the directional gain by the method of .
  • the shape of a speaker as a sound source is symmetrical, and the directivity data of the speaker is also symmetrical.
  • the data are not vertically symmetrical.
  • regular dodecahedral loudspeakers and the like have also been commercialized, and regular dodecahedral loudspeakers have symmetry with respect to 12 directions.
  • regular dodecahedral loudspeakers have symmetry with respect to 12 directions.
  • in the case of a cubic full-range speaker not only left-right symmetry but also up-down symmetry may be established.
  • humans also have a laterally symmetrical external shape, and although lateral symmetry is established to some extent, the top and bottom are not symmetrical with the head, torso, and legs, and the directivity is not vertically symmetrical.
  • the syntax of the model data will be as shown in Fig. 30, for example.
  • the model data shown in FIG. 30 includes the number of frequency points “bin_count” indicating the number of bins, and the center frequencies “bin_freq[i]” of the bins are stored for the number of frequency points “bin_count”. ing.
  • values "4", “3", “2”, “1”, and “0" of the symmetry information "use_symmetry” indicate that vertical and horizontal symmetry, horizontal and vertical symmetry, and vertical and horizontal symmetry, respectively. , exploit any symmetry and rotation, and do not perform any symmetry or rotation operations.
  • the directivity data is described by a model such as the above-mentioned vMF distribution or Kent distribution, that is, a mixed model, etc. for the directivity gain in all directions. be. Also, the values "5" to "7" of the symmetry information "use_symmetry" are reserved.
  • the model data stores operation-related information for rotation or symmetry operations according to the value of the symmetry information "use_symmetry".
  • the model data When the value of the symmetry information "use_symmetry” is "4", the model data describes operation-related information “LeftRightVerticalLineSymmetricDir()" for vertically and horizontally symmetrical operations. When the value of the symmetry information “use_symmetry” is “3”, the model data describes operation-related information “LeftRightLineSymmetricDir( )” for left-right symmetry operation.
  • model data describes operation-related information "VerticalLineSymmetricDir()" for vertical symmetrical operations.
  • model data When the value of the symmetry information "use_symmetry" is "1", the model data describes operation-related information "SymmetricDir()" for arbitrary symmetrical or rotational operations.
  • Fig. 31 shows the syntax of "SymmetricDir()".
  • model data "SymmetricDir()" contains the mixture number "mix_count[j]", the bin information "bin_range_per_band[j]", and the model parameters "kappa[j ][k]", "weight[j][k]”, “gamma_x[j][k]”, “gamma_y[j][k]”, and “gamma_z[j][k]” and selection flags "dist_flag[j][k]” is stored.
  • the operation count information "sym_operation_count” performs a rotation operation, which is an operation to rotate and copy, or a symmetric operation, which is an operation to copy to a symmetrical position, for one distribution (distribution model) such as vMF distribution or Kent distribution. This is information indicating the number of times.
  • the operation flag "sym_operation_flag” is flag information indicating whether to perform a rotation operation or a symmetrical operation. For example, when the value of the operation flag "sym_operation_flag" is "1", it indicates that a rotation operation is to be performed, and when the value is "0", it indicates that a symmetrical operation is to be performed.
  • the operation flag "sym_operation_flag" is included for the number of times indicated by the operation count information "sym_operation_count", and the information necessary for the operation is stored according to the value of the operation flag.
  • the rotation axis azimuth angle "sym_azi” and the rotation axis elevation angle “sym_elev” are the azimuth angle and elevation angle that indicate the direction of the rotation axis as seen from the sound source position when performing the rotation operation. That is, the rotation axis is determined by these rotation axis azimuth angle and rotation axis elevation angle. Also, the rotation angle “sym_rotation” is the angle when rotating around the rotation axis in the rotation operation.
  • FIGS. 32 and 33 are examples in which a rotation operation and a symmetrical operation are performed on the Kent distribution.
  • FIG. 32 shows an example of rotating the Kent distribution.
  • the directivity gain on the sphere SP11 is represented by the Kent distribution
  • vectors V81 to V83 represent vector ⁇ 1 , major axis vector ⁇ 2 , and minor axis vector ⁇ 3 of the Kent distribution.
  • These vectors V81 through V83 are the model parameters stored in the model data, that is, "gamma_x[j][k]” through “gamma_z[j][k]” and “gamma2_x[j][k]” through It is obtained by "gamma2_z[j][k]”.
  • the directivity data calculation unit 82 of the information processing device 51 obtains the rotation axis RS11 based on the rotation axis azimuth angle "sym_azi” and the rotation axis elevation angle "sym_elev” read from the model data.
  • the directivity data calculator 82 uses the vectors V81 to V83 to find the Kent distribution f(x; ⁇ i ).
  • the directivity data calculator 82 obtains the Kent distribution f(x; ⁇ i ) using the vectors V′81 to V′83.
  • vector V'81 through vector V'83 are rotated vectors obtained by rotating vector V81 through vector V83 by the rotation angle "sym_rotation" stored in the model data about the rotation axis RS11. is.
  • vectors V'81 to V'83 are used as the Kent distribution vector ⁇ 1 , major axis vector ⁇ 2 , and minor axis vector ⁇ 3 .
  • the directivity data calculation unit 82 calculates rotated model parameters by performing a rotation operation on the model parameters such as the vector ⁇ 1 of the Kent distribution based on the rotation axis azimuth angle and the like. Then, the directivity data calculation unit 82 obtains a Kent distribution based on each of the pre-rotation model parameters and the rotated (post-rotation) model parameters. That is, directivity data (directivity gain) is calculated. In other words, one distribution is obtained by synthesizing the Kent distribution obtained from the model parameters before the rotation operation and the Kent distribution obtained from the model parameters after the rotation operation. Desired.
  • the two Kent distributions may be used as they are to calculate the mixture model, or only a partial region of each of the two Kent distributions, such as the right half or the left half, may be used to calculate the mixture model. This applies not only to rotational operations but also to symmetrical operations.
  • Fig. 33 shows an example of performing symmetrical operations on the Kent distribution.
  • portions corresponding to those in FIG. 32 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
  • the directivity data calculation unit 82 obtains the cross section SF11 of the sphere SP11, which is the plane of symmetry, based on the yaw angle "sym_yaw”, pitch angle “sym_pitch”, and roll angle "sym_roll” read from the model data.
  • This cross section SF11 is a plane that includes the center (sound source position) of the sphere SP11.
  • the directivity data calculator 82 uses the vectors V81 to V83 to find the Kent distribution f(x; ⁇ i ).
  • the directivity data calculator 82 obtains the Kent distribution f(x; ⁇ i ) using the vectors V''81 to V''83.
  • the vectors V''81 to V''83 are vectors obtained by folding back (symmetrically moving) the vectors V81 to V83 with the cross section SF11 as the plane of symmetry. That is, the vectors V''81 to V''83 and the vectors V81 to V83 are symmetrical (plane symmetrical) with respect to the cross section SF11.
  • vectors V''81 to V''83 are used as vector ⁇ 1 , major axis vector ⁇ 2 , and minor axis vector ⁇ 3 of the Kent distribution.
  • the directivity data calculation unit 82 calculates symmetrically moved (symmetrically operated) model parameters by performing symmetrical operations on model parameters such as vector ⁇ 1 of the Kent distribution based on the yaw angle and the like. . Then, the directivity data calculation unit 82 obtains a Kent distribution based on each of the model parameters before the symmetrical movement and the model parameters after the symmetrical movement (after the symmetrical movement). Then, the directivity data (directivity gain) is calculated.
  • FIG. 34 shows an example syntax of information "NonSymmetricDir()" for obtaining directivity data in the model data shown in FIG.
  • scale factors "scale_factor[i]” and minimum values “offset[i]” are also stored for the number of frequency points "bin_count”.
  • the model data since no rotation or symmetry operations are performed, the model data describes the model parameters that make up all the distributions.
  • the directivity data calculator 82 performs a symmetrical operation when decoding the directivity data.
  • the directivity data calculation unit 82 calculates the distribution corresponding to the model parameters described in the model data with respect to the front median plane. Perform left-right symmetry operations to obtain new vMF distributions and Kent distributions.
  • the left-right symmetrical operation performed in this case is a symmetrical operation in which the front median plane (median plane) seen from the sound source is the cross section SF11 shown in FIG.
  • the left-right symmetrical operation is realized by performing the symmetrical operation described with reference to FIG. 33 with the median plane as the cross section SF11.
  • synthesizing the distribution obtained from the model parameters before the left-right symmetry operation and the distribution obtained from the model parameters after the left-right symmetry operation one distribution that is left-right symmetric when viewed from the sound source can be obtained.
  • the directivity data calculation unit 82 performs a vertically symmetrical operation on the distribution corresponding to the model parameter described in the model data with respect to the front horizontal plane. to obtain new vMF distributions and Kent distributions.
  • the vertical symmetrical operation performed in this case is a symmetrical operation in which the front horizontal plane (horizontal plane) seen from the sound source is the cross section SF11 shown in FIG.
  • the vertical symmetrical operation is realized by performing the symmetrical operation described with reference to FIG. 33 with the horizontal plane as the cross section SF11.
  • synthesizing the distribution obtained from the model parameters before the vertical symmetry operation and the distribution obtained from the model parameters after the vertical symmetry operation one distribution that is vertically symmetrical when viewed from the sound source can be obtained.
  • the directivity data calculation unit 82 performs vertical and horizontal symmetrical operations on the distribution corresponding to the model parameters described in the model data with respect to the front. to obtain a new distribution.
  • the vertically and horizontally symmetrical operation is an operation to obtain a vertically and horizontally symmetrical distribution by performing a vertically and horizontally symmetrical operation on the distribution to be operated.
  • vMF distributions and Kent distributions that have undergone symmetrical operations including left-right symmetrical operations and vertical symmetrical operations are effective over the entire spherical surface where directivity data are defined during decoding (during restoration).
  • a boundary may be defined in the distribution of the operation target or the distribution obtained by the operation, and the directivity gain may be discontinuous at the boundary.
  • Fig. 35 shows an example of model data syntax for cross-fading.
  • a crossfade flag "fade_flag” and upper limit bin index "bin_range_per_band_fadein[j]" are stored (included).
  • the crossfade flag "fade_flag" for each band is stored for the number of bands "band_count”.
  • the crossfade flag ⁇ fade_flag'' is the crossfade between adjacent bands in calculating the mixture model F(x; ⁇ ) for each bin, that is, the weighted addition of the mixture model F'(x; ⁇ ) for each band. is flag information indicating whether or not to perform
  • crossfading between bands is performed, and when the value is "0”, crossfading between bands is not performed. Note that cross-fading between bands is used in the second and higher bands.
  • the upper limit bin index "bin_range_per_band_fadein[j]" is an index indicating the upper limit bin for crossfading between bands, that is, the bin with the highest frequency among the bins within the band for crossfading between bands.
  • the directivity data calculation unit 82 calculates the output value F'(x; ⁇ ) of the mixture model obtained for a predetermined band and the mixture model weighted addition with the output value F'(x; ⁇ ) of .
  • the directivity data calculator 82 multiplies the output value obtained by the weighted addition by the scale factor, and further adds the minimum value (offset value) to the multiplication result to obtain the Let F(x; ⁇ ) be the output value of the mixture model at the bin of interest.
  • the target of crossfading is each bin from the lowest frequency bin in the other band to the upper bin indicated by the upper bin index "bin_range_per_band_fadein[j]" in the other band. There is no crossfade in bins.
  • the output value F(x; ⁇ ) of the mixture model is obtained from the output value F'(x; ⁇ ) of the mixture model in the band to which the bin belongs, the scale factor, and the minimum value.
  • the calculation of the directional data involves weighting the output values of the reconstructed mixture model between adjacent bands before applying the scale factor and minimum value.
  • An additional step is to take the sum (weighted addition value) as the output value of the mixture model for the final band.
  • Fig. 36 shows a conceptual diagram of crossfade between bands.
  • the vertical axis indicates weights used during cross-fading, and the horizontal axis indicates frequencies. Also, a case where the number of bands is three is shown here as an example.
  • the left side shows the weight during weighted addition when cross-fading between bands is not performed.
  • Lines L51 to L53 represent the output of the mixture model for each band of the bands “bin_range_per_band[0]” to “bin_range_per_band[2]”, which are used to calculate the output value F(x; ⁇ ) of the mixture model for each bin. It shows the weight of the value F'(x; ⁇ ).
  • the ranges of the straight lines L51 to L53 in the frequency direction do not overlap each other, and the weight of the output value F'(x; ⁇ ) of the mixture model for each band for each bin (frequency) is 1. It's becoming Therefore, it can be seen that there is substantially no cross-fade between bands.
  • the right side of the figure shows the weights during weighted addition when cross-fading between bands is performed.
  • Lines L61 to L63 represent the output of the mixture model for each band of the bands "bin_range_per_band[0]" to "bin_range_per_band[2]", which are used to calculate the output value F(x; ⁇ ) of the mixture model for each bin. It shows the weight of the value F'(x; ⁇ ).
  • the right end of the polygonal line L61 indicating the weight of the mixture model output value F'(x; ⁇ ) for the band "bin_range_per_band[0]" corresponds to the frequency position.
  • the frequency (bin) at the right end of the polygonal line L61 is a bin within the band "bin_range_per_band[1]" adjacent to the band “bin_range_per_band[0]”, and this bin is the upper limit bin “bin_range_per_band_fadein[ 1]”.
  • the bins between the lowest frequency bin and the upper bin “bin_range_per_band_fadein[1]” are cross-faded between the bands. It can be seen that the output value F(x; ⁇ ) of the mixture model for each bin is determined. In this case, the weights are calculated so that the sum of the weights used to calculate the output value F(x; ⁇ ) of the mixture model is 1 for each bin.
  • the bins with frequencies higher than the upper limit bin have a weight value of 1 indicated by the polygonal line L62. It can be seen that there is no crossfade between.
  • the weight model_weight i_band-1 [i_bin] of the output value of the mixture model for the lower frequency side band "i_band-1" for a given bin "i_bin” is given by the following equation ( 10).
  • weight model_weight i_band [i_bin] of the output value of the mixture model of the higher frequency band "i_band” for the predetermined bin “i_bin” can be obtained by the following equation (11).
  • scale_factor[i_bin] and offset[i_bin] in equation (12) indicate the scale factor and minimum value (offset value) of the bin "i_bin”.
  • the directivity data calculation unit 82 calculates the output value of the mixture model for each bin, that is, the directivity gain for each data point for each bin, by calculating Equation (12). By doing so, the amount of model data can be reduced.
  • model data syntax is as shown in Fig. 37, for example.
  • the model data shown in FIG. 37 includes the number of frequency points “bin_count” indicating the number of bins, and the center frequencies “bin_freq[i]” of the bins are stored for the number of frequency points “bin_count”. ing.
  • model data also stores the number of bands "band_count”. A number “mix_count[j]” and bin information “bin_range_per_band[j]” are stored.
  • the symmetry information "use_symmetry[j]” is similar to the symmetry information "use_symmetry” shown in FIG. ” is used without being marked as reserved as described later.
  • the number of mixtures "mix_count[j]” and the bin information “bin_range_per_band[j]” are the same as those shown in FIG. This is information indicating bins for the original directivity data.
  • the number of mixtures "mix_count[j]” and bin information "bin_range_per_band[j]" are stored for each piece of operation-related information. However, since the number of mixtures and the bin information are the same, in the example of FIG. 37, the number of mixtures and the bin information are stored outside the operation-related information in the model data.
  • the value of the symmetry information "use_symmetry[j]" for each band is any value from “0" to "7".
  • Values “7”, “6”, and “5” of the symmetry information “use_symmetry[j]” indicate performing vertical and forward/backward symmetrical operations, performing front/back/left/right symmetrical operations, and performing front/backward and backward symmetrical operations. ing.
  • the model data stores the crossfade flag "fade_flag" for each band.
  • This crossfade flag “fade_flag” is the same as described with reference to FIG. That is, when the value of the crossfade flag “fade_flag” is “1”, crossfading between bands is performed, and when the value is “0”, crossfading between bands is not performed.
  • the model data stores the upper limit bin index "bin_range_per_band_fadein[j]" for the band.
  • model data stores the start bin "start_bin”.
  • the bins with low frequencies may not contain substantially any data. That is, the directivity gain of the low frequency bin may be zero.
  • start bin "start_bin” is information indicating the lowest frequency bin containing non-zero directional gain as data among the bins indicated by the frequency "bin_freq[i]".
  • model data stores operation-related information for rotation operation or symmetry operation according to the value of the symmetry information "use_symmetry[j]".
  • the model data When the value of the symmetry information "use_symmetry[j]" is “7”, the model data describes operation-related information “FrontBackVerticalSymmetricDir()" for vertical and forward-backward symmetrical operations. When the value of the symmetry information “use_symmetry[j]” is “6”, the model data describes operation-related information “FrontBackLeftRightSymmetricDir( )” for front-rear and left-right symmetrical operations.
  • the model data describes operation-related information "FrontBackSymmetricDir()" for front-back symmetrical operations.
  • the model data When the value of the symmetry information "use_symmetry[j]” is "4", the model data describes the operation-related information “LeftRightVerticalLineSymmetricDir()". When the value of the symmetry information “use_symmetry[j]” is “3”, the model data describes operation-related information “LeftRightLineSymmetricDir( )”.
  • the model data describes the operation-related information "VerticalLineSymmetricDir()".
  • the model data describes the operation-related information "SymmetricDir()".
  • the value of the symmetry information "use_symmetry[j]" is "0"
  • the information "NonSymmetricDir()" is described in the model data.
  • model data contains information about the dynamic range "DynamicRangeForDir()".
  • This information 'DynamicRangeForDir()' contains a scale factor 'scale_factor[i]' and a minimum value 'offset[i] ” is stored.
  • FIG. 38 shows an example syntax of information "NonSymmetricDir()" for obtaining directivity data in the model data shown in FIG.
  • gamma_azi[j][k] and “gamma_elev[j][k]” indicate the horizontal angle (azimuth) and vertical angle (elevation) indicating the direction of the vector ⁇ 1 .
  • the vector ⁇ 1 is represented by "gamma_x[j][k]", “gamma_y[j][k]”, and “gamma_z[j][k]", but in FIG.
  • the azimuth and elevation angles represent the vector ⁇ 1 .
  • gamma1_azi[j][k] is a horizontal angle (rotation angle) indicating the relative direction of the major axis vector ⁇ 2 and the minor axis vector ⁇ 3 when viewed from the vector ⁇ 1 .
  • the major axis vector ⁇ 2 and the minor axis vector ⁇ 3 can be obtained from the vector ⁇ 1 and the angle "gamma1_azi[j][k]".
  • FIG. 39 shows a syntax example of the operation-related information "LeftRightLineSymmetricDir()".
  • the operation-related information "LeftRightLineSymmetricDir()" contains the number of mixtures "mix_count[k]” for each distribution (mixture) such as the Kent distribution or vMF distribution that constitutes the mixture model representing the distribution of the directional gain in the band. "sym_flag[k]" of is stored.
  • “sym_flag[k]” is flag information indicating whether or not to perform operations such as symmetry and rotation on the target distribution. For example, the flag information “sym_flag[k]” value "00" indicates that operations such as symmetry and rotation are not performed, and the flag information “sym_flag[k]” value "01" indicates that symmetric operations are performed. is shown.
  • the flag information "sym_flag[k]" in each piece of operation-related information is flag information indicating whether or not to perform an operation corresponding to that piece of operation-related information.
  • the rotation axis azimuth angle “sym_azi”, the rotation axis elevation angle “sym_elev”, the rotation angle “sym_rotation”, the yaw angle “sym_yaw”, the pitch angle “sym_pitch”, and the The roll angle "sym_roll” is stored in the operation-related information as appropriate. Then, according to the value of the flag information “sym_flag[k]”, rotation operation and symmetry operation are performed for each distribution constituting the mixture model.
  • the operation-related information "SymmetricDir()" has the same configuration as the example shown in Fig. 31, and the operation count information “sym_operation_count” and the operation flag “sym_operation_flag” define whether or not to execute a rotation operation or a symmetrical operation. You may make it
  • the model data stores operation-related information "FrontBackVerticalSymmetricDir()", “FrontBackLeftRightSymmetricDir()”, or “FrontBackSymmetricDir()", that is, if the value of the symmetry information "use_symmetry[j]" is "7", If it is "6” or "5", the directivity data calculator 82 performs a symmetrical operation when decoding the directivity data.
  • the directivity data calculation unit 82 calculates Perform vertical and forward/backward symmetrical operations to obtain new distributions.
  • the directivity data calculation unit 82 calculates the directivity data (directivity gain) from the new distribution and the like. Further, after that, crossfade between bands is also appropriately performed according to the value of the crossfade flag “fade_flag” for each band.
  • a vertically symmetrical operation is an operation to obtain a vertically symmetrical distribution by performing a vertically symmetrical operation and a frontally symmetrical operation on the distribution to be operated.
  • the vertical symmetrical operation performed in this case is a symmetrical operation in which the front horizontal plane (horizontal plane) seen from the sound source is the cross section SF11 shown in FIG.
  • the vertical symmetrical operation is realized by performing the symmetrical operation described with reference to FIG. 33 with the horizontal plane as the cross section SF11.
  • the front-rear symmetrical operation is a symmetrical operation in which the plane obtained by rotating the front median plane (median plane) seen from the sound source by 90 degrees in the horizontal direction is the cross section SF11 shown in FIG.
  • the front-back symmetrical operation is realized by performing the symmetrical operation described with reference to FIG. 33 with the plane obtained by rotating the front median plane horizontally by 90 degrees as the cross section SF11.
  • the directivity data calculation unit 82 performs front-rear and left-right symmetrical operations on the distribution whose flag information “sym_flag[k]” has a value of “01”. Then, a new distribution is obtained, and the directivity data is calculated using the obtained distribution.
  • Front-back and left-right symmetry operations are operations that obtain front-rear and left-right symmetrical distributions by performing front-rear and left-right symmetric operations on the distribution to be manipulated.
  • the left-right symmetrical operation performed in this case is a symmetrical operation in which the front median plane (median plane) seen from the sound source is the cross section SF11 shown in FIG.
  • the directivity data calculation unit 82 calculates the symmetric distribution for the distribution whose flag information “sym_flag[k]” has the value “01”. The operation is performed to obtain a new distribution, and the obtained distribution is used to calculate directivity data.
  • Distributions such as the vMF distribution and the Kent distribution that have undergone symmetrical operations including left-right symmetrical operations, vertical symmetrical operations, and front-back symmetrical operations are valid over the entire spherical surface where the directivity data are defined at the time of decoding (reconstruction). Become.
  • a boundary may be defined in the distribution of the operation target or the distribution obtained by the operation, and the directivity gain may be discontinuous at the boundary.
  • the symmetry and rotation operations specified by the symmetry information "use_symmetry[j]” for each band Flag information “sym_flag[k]” defines whether or not to actually perform symmetry and rotation operations.
  • the 1-bit symmetry information "use_symmetry" is flag information indicating whether or not to perform operations such as symmetry and rotation.
  • the directivity data calculation unit 82 performs an operation according to the value of the flag information "sym_flag[k]" to obtain a new distribution.
  • the directivity data calculation unit 82 calculates a plurality of distributions that make up the mixture model, such as the Kent distribution, the vMF distribution, and the complex Bingham distribution obtained from the model parameters, using the weights ⁇ i of these distributions, that is, the weights described above.
  • Mixture model F'(x; ⁇ ) (directivity data) is calculated by weighted addition using [j][k] and weight[i_band][i_mix].
  • the value of the weight ⁇ i of each distribution is determined so that the sum of the weights ⁇ i of the multiple distributions that make up the mixture model is 1.
  • the value of each weight ⁇ i may be a positive value. , may be negative.
  • the weight ⁇ i of one distribution such as the Kent distribution or the vMF distribution that constitutes the mixture model is set to a positive value
  • the distribution after the multiplication of the weight ⁇ i is, for example, As indicated by arrow Q101 in FIG.
  • the horizontal direction indicates a predetermined direction on the spherical surface in a distribution such as the Kent distribution defined on the spherical surface
  • the vertical direction indicates the value at each position of the distribution, that is, the directivity gain. ing.
  • the degree of freedom can be increased by appropriately determining the weights ⁇ i of each distribution including negative values. , it becomes possible to express mixture models with more diverse shapes.
  • the series of processes described above can be executed by hardware or by software.
  • a program that constitutes the software is installed in the computer.
  • the computer includes, for example, a computer built into dedicated hardware and a general-purpose personal computer capable of executing various functions by installing various programs.
  • FIG. 41 is a block diagram showing a hardware configuration example 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 consists of a keyboard, mouse, microphone, imaging device, and the like.
  • the output unit 507 includes a display, a speaker, and the like.
  • a recording unit 508 is composed of a hard disk, a nonvolatile memory, or the like.
  • a communication unit 509 includes a network interface and the like.
  • a drive 510 drives a removable recording medium 511 such as a magnetic disk, optical disk, magneto-optical disk, or 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 above-described series of programs. is processed.
  • the program executed by the computer (CPU 501) can be provided by being recorded on a removable recording medium 511 such as package media, for example. Also, 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 loading the removable recording medium 511 into the drive 510 . Also, the program can be received by the communication unit 509 and installed in the recording unit 508 via a wired or wireless transmission medium. In addition, 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 chronological order according to the order described in this specification, or may be executed in parallel or at a necessary timing such as when a call is made. It may be a program in which processing is performed.
  • this technology can take the configuration of cloud computing in which one function is shared by multiple devices via a network and processed jointly.
  • each step described in the flowchart above can be executed by a single device, or can be shared by a plurality of devices.
  • one step includes multiple processes
  • the multiple processes included in the one step can be executed by one device or shared by multiple devices.
  • this technology can also be configured as follows.
  • an acquisition unit that acquires model data obtained by modeling directivity data representing directivity of a sound source; an information processing apparatus comprising: a calculator that calculates the directivity data based on the model data.
  • the model data includes model parameters that constitute the mixture model obtained by modeling the directional data with a mixture model consisting of one or more distributions. processing equipment.
  • the one or more distributions include at least one of a vMF distribution and a Kent distribution.
  • the directional data includes a directional gain for each of a plurality of frequency bins; (2) or ( The information processing device according to 3).
  • model data includes a scale factor indicating a dynamic range of the directional gain in the frequency bin and a minimum value of the directional gain in the frequency bin.
  • model data includes difference information indicating a difference between the directivity data before modeling and the directivity data after modeling;
  • the information processing apparatus according to any one of (1) to (5), further comprising an addition unit that adds the difference information to the directivity data calculated by the calculation unit.
  • the difference information is Huffman-encoded.
  • the directional data includes a directional gain for each of a plurality of frequency bins; Any one of (1) to (7), further comprising an interpolation processing unit that calculates the directivity gain of the new frequency bin by performing interpolation processing based on the directivity data calculated by the calculation unit.
  • the information processing device according to item 1. the directional data includes a directional gain at each of a plurality of data points; Any one of (1) to (8), further comprising an interpolation processing unit that calculates the directivity gain at the new data point by performing interpolation processing based on the directivity data calculated by the calculation unit.
  • model data includes model parameters obtained by modeling the directivity data by one or a plurality of methods different from each other.
  • the method includes at least one of a method of modeling by a mixture model consisting of one or more distributions and a method of modeling by spherical harmonic expansion.
  • the model data further includes difference information indicating a difference between the directivity data after modeling by the one or more methods and the directivity data before modeling. ).
  • the difference information is Huffman-encoded.
  • each of the real part and the imaginary part of the difference information is individually Huffman-encoded.
  • the model data includes, among spatial positions and frequencies of difference information indicating a difference between the directivity data after modeling by the one or more methods and the directivity data before modeling, The information processing device according to (14) or (15), wherein differential code data obtained by Huffman-encoding at least one of the differences is included.
  • the model data includes the difference code data obtained by separately Huffman-encoding a real part and an imaginary part of the difference information.
  • the model data includes the model parameters obtained by modeling the directivity data by a predetermined method, the directivity data after modeling by the predetermined method, and the directivity data before modeling.
  • the information processing apparatus according to (14) or (15), wherein another model parameter obtained by modeling the difference between is included by a method different from the predetermined method.
  • the model data includes the model parameters obtained by modeling the directivity data by a predetermined method, the directivity data after modeling by the predetermined method, and the directivity data before modeling.
  • the information processing apparatus according to (14) or (15) which includes other model parameters obtained by modeling the ratio of , using a method different from the predetermined method.
  • the information according to (14) or (15), wherein the model data includes model parameters obtained by further modeling the model parameters obtained by modeling the directivity data.
  • model data includes the model parameters obtained by modeling the directivity data using a different method for each frequency band. processing equipment.
  • the directional data includes a directional gain at each of a plurality of data points;
  • the model data includes information indicating an arrangement method of the data points and information for specifying an arrangement position of the data points. processing equipment.
  • the model data includes priority information indicating a priority of the directivity data for each type of the sound source.
  • the number of data points varies according to the priority;
  • the information processing device identifies the arrangement position of the data point using the priority information.
  • the directional data includes a directional gain for each frequency bin at each of a plurality of data points;
  • the model data includes the directivity gain of the directivity data after modeling by the one or more methods and the directivity gain of the directivity data before modeling after rearranging the difference information.
  • the information processing apparatus according to (19), wherein the difference code data of at least one of the difference between the data points of the difference information and the difference between the frequency bins is included.
  • the model data includes a parameter obtained by parametricizing at least one of a scale factor indicating a dynamic range of the directional gain in each frequency bin and a minimum value of the directional gain in each frequency bin.
  • the information processing device according to (4). (31) the model data includes operation-related information for rotational or symmetrical operations;
  • the calculation unit calculates the rotated or symmetrically moved model parameters by performing the rotation operation or the target operation on the model parameters based on the operation-related information, and calculates the rotated or symmetrically moved model parameters.
  • the information processing apparatus according to any one of (2) to (5), wherein the directivity data is calculated using the distribution obtained from the model parameters.
  • the calculation unit performs weighted addition of the output value of the mixture model of the predetermined band and the output value of the mixture model of the other band adjacent to the predetermined band, thereby obtaining the predetermined frequency
  • the information processing device according to (4) or (5), wherein the directivity gain of the bin is calculated.
  • the calculation unit calculates the directivity data by weighted addition of the plurality of distributions obtained from the model parameters using a weight including a negative value.
  • the information processing device according to the item.
  • the information processing device Acquiring model data obtained by modeling directivity data representing the directivity of a sound source, An information processing method for calculating the directivity data based on the model data.
  • Acquiring model data obtained by modeling directivity data representing the directivity of a sound source A program that causes a computer to execute a process of calculating the directivity data based on the model data.
  • a modeling unit that models directivity data representing the directivity of a sound source using a mixed model consisting of one or more distributions; and a model data generation unit that generates model data including model parameters that constitute the mixture model obtained by the modeling.
  • the information processing device Directivity data representing the directivity of a sound source is modeled by a mixture model consisting of one or more distributions, An information processing method for generating model data including model parameters constituting the mixture model obtained by the modeling. (38) Directivity data representing the directivity of a sound source is modeled by a mixture model consisting of one or more distributions, A program that causes a computer to execute a process of generating model data including model parameters that constitute the mixture model obtained by the modeling.
  • directivity data representing the directivity of a sound source, the directivity data consisting of directivity gains for each of a plurality of frequency bins at each of a plurality of data points; an acquisition unit that acquires differential directivity data obtained by finding a difference between at least one of an information processing apparatus comprising: a calculator that calculates the directivity data based on the differential directivity data.
  • the differential directivity data is Huffman-encoded, The information processing device according to (39), wherein the calculation unit decodes the Huffman-encoded differential directivity data. (41) (40), wherein the real part and the imaginary part of the differential directivity data are individually Huffman-encoded.
  • the information processing apparatus according to any one of items.
  • the sorting is sorting in a predetermined order, the order of priority of the data points or the frequency bins, the ascending order of the directional gains, or the descending order of the directional gains.
  • Information processing equipment (44) The information processing device for directivity data representing directivity of a sound source, the directivity data comprising directivity gains for each of a plurality of frequency bins at each of a plurality of data points; obtaining differential directivity data obtained by determining the difference between at least one of An information processing method, wherein the directivity data is calculated based on the differential directivity data.
  • directivity data representing directivity of a sound source
  • the directivity data comprising directivity gains for each of a plurality of frequency bins at each of a plurality of data points; obtaining differential directivity data obtained by determining the difference between at least one of A program that causes a computer to execute a process of calculating the directivity data based on the differential directivity data.

Abstract

本技術は、指向性データの伝送量を低減させることができるようにする情報処理装置および方法、並びにプログラムに関する。 情報処理装置は、音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得する取得部と、モデルデータに基づいて、指向性データを算出する算出部とを備える。本技術は情報処理装置に適用することができる。

Description

情報処理装置および方法、並びにプログラム
 本技術は、情報処理装置および方法、並びにプログラムに関し、特に、指向性データの伝送量を低減させることができるようにした情報処理装置および方法、並びにプログラムに関する。
 従来、音源の指向性を考慮することで、より臨場感の高いオーディオ再生を実現できることが知られている。
 例えば、オブジェクトのオーディオデータとともに、オブジェクトからの音の指向性を表す指向性データを用意すれば、オーディオデータと指向性データとを用いて、オブジェクトの指向特性に基づくオーディオ再生を行うことが可能である。
 また、指向性に関する技術として、例えば録音時においてユーザが指向性方向を任意に選択して録音でき、かつ再生時においてユーザが録音時の指向性方向とは別に所望の指向性の方向を選択して再生する技術が提案されている(例えば、特許文献1参照)。
特開2021-100209号公報
 ところで、音源ごとに指向特性(指向性)は異なるため、コンテンツとして、オブジェクトのオーディオデータと、そのオブジェクトの指向性データとを提供する場合、音源の種別、すなわちオブジェクトの種別ごとに指向性データを用意する必要がある。また、より多くの方向および周波数について指向性に関する情報をもたせようとすると、指向性データのデータ量が多くなってしまう。
 そうすると、コンテンツの配信先に対する指向性データの伝送量が多くなってしまい、伝送遅延が発生したり、伝送レートが増大したりするおそれがある。
 本技術は、このような状況に鑑みてなされたものであり、指向性データの伝送量を低減させることができるようにするものである。
 本技術の第1の側面の情報処理装置は、音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得する取得部と、前記モデルデータに基づいて、前記指向性データを算出する算出部とを備える。
 本技術の第1の側面の情報処理方法またはプログラムは、音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得し、前記モデルデータに基づいて、前記指向性データを算出するステップを含む。
 本技術の第1の側面においては、音源の指向性を表す指向性データをモデル化することにより得られたモデルデータが取得され、前記モデルデータに基づいて、前記指向性データが算出される。
 本技術の第2の側面の情報処理装置は、音源の指向性を表す指向性データを、複数の分布からなる混合モデルによりモデル化するモデル化部と、前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成するモデルデータ生成部とを備える。
 本技術の第2の側面の情報処理方法またはプログラムは、音源の指向性を表す指向性データを、複数の分布からなる混合モデルによりモデル化し、前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成するステップを含む。
 本技術の第2の側面においては、音源の指向性を表す指向性データが、複数の分布からなる混合モデルによりモデル化され、前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータが生成される。
混合ガウス分布について説明する図である。 vMF分布とKent分布について説明する図である。 指向性の例を示す図である。 データポイントについて説明する図である。 モデルデータの例を示す図である。 バンドとビンの関係について説明する図である。 指向性データのデータ量の低減例を示す図である。 指向性データの残差について説明する図である。 サーバの構成例を示す図である。 符号化処理を説明するフローチャートである。 情報処理装置の構成例を示す図である。 指向性データ生成処理を説明するフローチャートである。 出力オーディオデータ生成処理を説明するフローチャートである。 差分情報の出現確率について説明する図である。 モデルデータの例を示す図である。 モデルデータの例を示す図である。 ハフマン符号化テーブルの伝送について説明する図である。 ハフマン符号化テーブルの例を示す図である。 サーバの構成例を示す図である。 指向性データ生成処理を説明するフローチャートである。 指向性データ符号化部の構成例を示す図である。 差分符号化部の構成例を示す図である。 モデルデータ生成処理を説明するフローチャートである。 分布モデル復号部の構成例を示す図である。 モデルデータの例を示す図である。 データポイントの配置例を示す図である。 データポイントの記述例を示す図である。 各ビンのスケールファクタの例を示す図である。 各ビンの最小値の例を示す図である。 モデルデータの例を示す図である。 SymmetricDir()のSyntax例を示す図である。 回転操作について説明する図である。 対称操作について説明する図である。 NonSymmetricDir()のSyntax例を示す図である。 モデルデータの例を示す図である。 各ビンの混合モデルの出力値の算出に用いる重みの例を示す図である。 モデルデータの例を示す図である。 NonSymmetricDir()のSyntax例を示す図である。 LeftRightLineSymmetricDir()のSyntax例を示す図である。 重みに応じた分布について説明する図である。 コンピュータの構成例を示す図である。
 以下、図面を参照して、本技術を適用した実施の形態について説明する。
〈第1の実施の形態〉
〈本技術について〉
 本技術は、指向性データをモデル化することで、指向性データの伝送量を低減させることができるようにするものである。
 本技術では、例えばコンテンツとして、3D音源のオーディオデータと指向性データが提供される。
 具体的には、例えば3D音源として1または複数のオーディオオブジェクト(以下、単にオブジェクトと称する)の音が収音(収録)されて、各オブジェクトのオーディオデータが生成される。また、オブジェクトの種別、すなわち音源種別ごとに、オブジェクト(音源)の指向特性、すなわち指向性を表す指向性データが用意される。
 さらに、各オブジェクトのオーディオデータと、音源種別ごとの指向性データとがコンテンツのデータとして提供される。すなわち、オブジェクトのオーディオデータとあわせて指向性データが再生側の装置へと伝送される。そして、再生側では、コンテンツを構成するオーディオデータと指向性データとに基づいて、指向性データを考慮したオーディオ再生が行われる。
 指向性データは、例えばオブジェクトの音を複数のマイクロホンで収録することで得ることができる。なお、指向性データの収録は、オブジェクトのオーディオデータの収録と同時に行われてもよいし、オブジェクトのオーディオデータの収録とは異なるタイミングで行われてもよい。
 指向性データは、例えば音声や楽器、スピーカなどの音源種別ごとに用意される。また、指向性データは、例えば音源から見た各方向にある位置について、DCとなる周波数からナイキスト周波数までの全周波数帯域における対象周波数ごとに、音源からの音の振幅と位相の情報をもつデータである。
 例えば音源から見た方向は、音源位置から見た水平方向の角度、すなわち方位角と、音源位置から見た垂直方向の角度、すなわち仰角とにより表される。このとき、例えば方位角の範囲は0度乃至360度の範囲とされ、仰角の範囲は-90度乃至+90度の範囲とされる。
 本技術では、このような指向性データを離散化および圧縮するにあたり、直接、データが圧縮されるのではなく、モデル化によるパラメトリック圧縮が行われる。
 なお、本技術では、モデル化の対象とされる指向性データは、収録等により得られた指向性データを適宜、離散化および正規化することにより得られたものとされる。
 以下では、モデル化の対象とされる指向性データは、複数の各データポイントにおける、音源の複数の離散的な各周波数の指向特性を示すゲイン(以下、指向性ゲインと称する)からなるものとして説明を行う。
 例えばデータポイントとなる位置は、音源位置を原点とする極座標系の座標(極座標)、すなわち音源位置から見た水平方向の位置を示す方位角と、音源位置から見た垂直方向の位置を示す仰角によって表すことができる。なお、データポイントの位置を表すのに音源位置からの距離(半径)が用いられるようにしてもよい。また、指向性ゲインは、データポイントにおける音源からの音の振幅(音圧)を正規化することにより得ることができる。
(音源の指向性データの記録方式について)
 音源種別ごとの指向性データの記録方式について説明する。
 本技術では、指向性データのモデル化には、平面上で定義される多変量/単変量のガウス分布に相当する、球面上のvMF(von Mises Fisher)分布、Kent分布、またはvMF分布とKent分布の少なくとも何れかからなる混合モデルが用いられる。
 なお、vMF分布やKent分布、混合モデルについては、例えば「John T. Kent (1982). The Fisher-Bingham Distribution on the Sphere」などに詳細に記載されている。
 まず、一般的な混合ガウス分布について説明する。
 例えば図1の矢印Q11に示す部分には、2次元のガウス分布が示されている。この例では、直線上に2つのガウス分布が存在している。すなわち、曲線L11は1つのガウス分布を示しており、曲線L12は他の1つのガウス分布を示している。
 また、曲線L13は、曲線L11に示すガウス分布と、曲線L12に示すガウス分布とを混合することにより得られる混合ガウス分布を示している。
 一方、図1における矢印Q12に示す部分には、平面上における3つの分布が示されている。このような平面上の複数の分布を混合することもできる。
 通常、混合ガウス分布は、平面上における確率密度分布(pdf(Probability Density Function))を表現するのに利用される。所望のpdfを少ないモデルパラメータ、かつなるべく少ない混合数で表現することで情報量の削減が可能となる。
 本技術では、球表面上で定義されるガウス分布に相当するvMF分布やKent分布の混合モデルが用いられて、球表面上の指向性データ、すなわち指向性ゲインの形状(分布)がモデル化される。
 混合モデルは、1または複数のvMF分布により構成されてもよいし、1または複数のKent分布により構成されてもよいし、1以上のvMF分布と1以上のKent分布により構成されてもよい。つまり、混合モデルは、vMF分布とKent分布の少なくとも何れかを含む1または複数の分布により構成される。
 球表面の位置を示す位置ベクトル、すなわち直交座標系(デカルト座標系)の座標をxとすると、位置ベクトルxに対応するKent分布の値f(x)、すなわち位置ベクトルxにより示される位置におけるKent分布の値f(x)は、次式(1)により表すことができる。
Figure JPOXMLDOC01-appb-M000001
 なお、式(1)において、κはパラメータ集中度を示しており、βは楕円率を示している。また、γはmean direction分布の中心を規定するベクトルを示しており、γはmajor軸ベクトルを示しており、γはminor軸ベクトルを示している。
 さらに、c(κ,β)は次式(2)に示す正規化定数である。なお、式(2)においてΓはガンマ関数を示しており、Iは第一種変形ベッセル関数を示している。
Figure JPOXMLDOC01-appb-M000002
 また、位置ベクトルxにより示される位置におけるvMF分布の値も式(1)と同様の式により表すことができる。そのような場合、式(1)における楕円率βの値は0とされる。
 図2にvMF分布とKent分布の例を示す。
 図2では、矢印Q21に示す部分にはvMF分布の例が示されている。特に、ベクトルV11は、式(1)に示したベクトルγを表している。
 vMF分布は、楕円率β、major軸ベクトルγ、およびminor軸ベクトルγをパラメータとしてもたず、球表面上において、ベクトルV11(ベクトルγ)により示される位置を中心として等方的に広がっていく円形状の分布となっている。すなわち、vMF分布(vMF分布モデル)を用いれば、円形状の分布を再現することができる。
 これに対して、矢印Q22に示す部分にはKent分布の例が示されている。特に、ベクトルV21乃至ベクトルV23は、式(1)に示したベクトルγ、major軸ベクトルγ、およびminor軸ベクトルγを表している。
 Kent分布は、球表面上において、ベクトルV21(ベクトルγ)により示される位置を中心とし、球表面上のmajor軸ベクトルγおよびminor軸ベクトルγを長軸および短軸とする楕円形状の分布となっている。すなわち、Kent分布(Kent分布モデル)を用いれば、楕円率β、major軸ベクトルγ、およびminor軸ベクトルγにより定まる楕円形状の分布を再現することができる。
 Kent分布は、楕円率βなどのパラメータにより楕円の形状を変化させることができるので自由度は高いが、パラメータ数はvMF分布よりも多くなってしまう。
 本技術では、vMF分布やKent分布を混合して得られる混合モデルが用いられて指向性データが表される(モデル化される)。
 例えば、式(1)における場合と同様の位置ベクトルxにより示される位置における、N個のKent分布f(x;θi)を用いた混合モデルの出力値F(x;Θ)は、次式(3)により表すことができる。すなわち、混合モデルF(x;Θ)は、N個のKent分布f(x;θi)の重みづけ加算により表記することができる。
Figure JPOXMLDOC01-appb-M000003
 なお、式(3)においてKent分布f(x;θi)は、上述の式(1)に示したものと同様であり、混合するN個のKent分布のうちのi番目のKent分布を示している。
 また、θiはKent分布f(x;θi)を構成するパラメータ、より詳細にはパラメータの集合であり、パラメータθiは、式(1)におけるパラメータ集中度κ、楕円率β、ベクトルγ、major軸ベクトルγ、およびminor軸ベクトルγからなる。混合モデルF(x;Θ)のパラメータΘは、N個のKent分布f(x;θi)のパラメータθiの集合を表している。
 さらに式(3)において、φiはN個のKent分布を混合するときのi番目のKent分布f(x;θi)の重み(重み係数)を表しており、次式(4)に示すように、N個のKent分布f(x;θi)の重みφiの総和は1とされる。
Figure JPOXMLDOC01-appb-M000004
 本技術で用いられる指向性データは、オブジェクトの周囲に配置された複数のマイクロホンからなるマイクアレイで収録(収音)を行うことにより得ることができる。
 一例として、トランペットの演奏音を収録すると、図3に示す指向性が観測される。特に、図中、左側には水平面、すなわち仰角が0度となる面における各周波数の指向性が示されており、図中、右側には正中面における各周波数の指向性が示されている。
 この例では、水平面および正中面の両方において、周波数(ピッチ)によって指向性の概形が変化し、低域側の周波数では指向性は小さいが、周波数が高くなるにつれて指向性が大きく(鋭く)なっていくことが分かる。例えば水平面では、8000Hzにおいて方向によっては最大で25dB程度の音圧差が生じている。
 ところで、モデル化対象となる指向性データでは、例えば図4に示すように音源位置を中心とする球表面上に複数のデータポイントが設けられる。図4の例では、1つの点が1つのデータポイントを表しており、球表面全体に多数のデータポイントが存在することが分かる。
 ここで、例えば方位角方向に2度の間隔(2度刻み)で、かつ仰角方向にも2度の間隔でデータポイントを設けるとすると、球表面全体には16022個のデータポイントが設けられることになる。また、そのような場合に、各データポイントについて19Hz乃至20kHzを対象とした512個のビン(周波数ビン)における指向性ゲイン(音圧)を伝送しようとすると、1音源の指向性データは約31MBとなる。
 このように、音源種別ごとの指向性データはデータサイズが大きいため、伝送量が多くなってしまう。
 また、音声にも母音と子音などがあり、楽器も演奏方法によって指向性が異なるなど、音源種別の多様性が非常に大きいため、音源種別ごとに指向性データを用意しようとすると、多数の指向性データが必要となる。
 これらのことから、指向性データの伝送量が多くなってしまうが、指向性データの伝送量の増加は伝送遅延の発生や伝送レートの増大の要因となる。そのため、場合によっては音源種別や周波数、オブジェクトと受聴者の向きなどに応じた指向性の再現ができなくなってしまうことがある。
 そこで、本技術では、上述のように混合モデルを用いて指向性データをモデル化することで、指向性データの伝送量を低減できるようにした。
〈モデルデータの例〉
 ここで、指向性データをモデル化することで得られるモデルデータの具体的な例について説明する。
 本技術では、指向性データの伝送時に、vMF分布やKent分布からなる混合モデルに基づく指向性データのモデル化が行われ、その結果得られた、混合モデルを構成するモデルパラメータ等を含むモデルデータが生成される。そして、そのモデルデータがコンテンツの再生側の装置へと伝送される。これにより、データサイズの大きいもとの指向性データの伝送が不要となる。換言すれば、指向性データの伝送時のデータ量(伝送量)を低減させることができる。
 ここで、num_sound_types_idで指定される1つの音源種別のモデルデータの例を図5に示す。この例では1つの音源種別のモデルデータがdirectivityConfigとして記述されている。
 モデルデータには、データポイント数「num_point_indices」により示される数だけ、モデル化前のもとの指向性データにおけるデータポイントの位置を示す方位角「azimuth_table[i]」、仰角「elevation_table[i]」、および半径「distance[i]」が含まれている。
 データポイントの位置は、音源位置から見たデータポイントの水平方向の角度である方位角「azimuth_table[i]」、音源位置から見たデータポイントの垂直方向の角度である仰角「elevation_table[i]」、および音源位置からデータポイントまでの距離である半径「distance[i]」からなる、音源位置を原点とする極座標系の座標により表される。
 また、モデルデータには、周波数ポイント数「bin_count」と周波数「freq[i_bin]」が含まれている。モデル化前のもとの指向性データでは、対象となる周波数帯域全体が周波数ポイント数「bin_count」により示される数の周波数帯域(周波数)である周波数ビン、すなわちビン(bin)に分割され、それらのビンのうちのi番目のビンの中心周波数(Hz)が周波数「freq[i_bin]」とされる。
 したがって、モデル化前のもとの指向性データには、複数の各データポイントにおける1または複数の各ビン(周波数ビン)の指向性ゲインが含まれている。
 さらにモデルデータには、Kent分布やvMF分布に関するパラメータとして、モデル化するバンド数「band_count」、各バンドでの混合数「mix_count[i_band]」、各バンドに含まれるモデル化前のもとの指向性データのビン情報「bin_range_per_band[i_band]」が含まれている。
 例えばモデル化では、対象となる周波数帯域全体がバンド数「band_count」により示される数の周波数帯域であるバンド(band)に分割され、それらのバンドごとに指向性ゲインの分布が混合モデルにより表される。換言すれば、各バンドにおける指向性ゲインの分布を表す混合モデルを構成するモデルパラメータが推定される。なお、各バンド(band)により示される周波数帯域には、必ず1または複数のビンにより示される周波数、つまりビンの中心周波数「freq[i_bin]」が含まれている(属している)。
 混合数「mix_count[i_band]」は、i番目のバンドの指向性ゲインの分布を表す混合モデルを構成する分布の数、すなわちKent分布やvMF分布の数を示しており、この混合数は式(3)におけるNに対応する。
 指向性データのビン情報「bin_range_per_band[i_band]」は、i番目のバンドに含まれている、モデル化前のもとの指向性データについてのビン(bin)を示す情報である。例えばビン情報は、i番目のバンドに属す最も大きい周波数のビンを示すインデックス情報などとされる。ビン情報「bin_range_per_band[i_band]」を参照すれば、モデル化前のもとの指向性データについてのビン(周波数ビン)が、モデル化後のどのバンドに含まれているかを特定することができる。
 また、モデルデータには、Kent分布やvMF分布に関するパラメータとして、各バンドについて、混合モデルを構成する分布(Kent分布またはvMF分布)ごとに、上述した重みφi、パラメータ集中度κ、およびベクトルγが含まれている。
 この例では、「weight[i_band][i_mix]」および「kappa[i_band][i_mix]」が「i_band」により示されるi番目のバンドについての「i_mix」により示される分布の重みφiおよびパラメータ集中度κを示している。
 また、「gamma1[i_band][i_mix][x]」および「gamma1[i_band][ i_mix][y]」は、i番目のバンド「i_band」についての「i_mix」により示される分布のベクトルγを構成するX成分(X座標)およびY成分(Y座標)を示している。
 モデルデータには、混合モデルを構成するi番目のバンド「i_band」についての「i_mix」により示される分布がKent分布とvMF分布の何れの分布であるかを示す選択フラグ「dist_flag」が含まれている。
 選択フラグ「dist_flag」の値「1」は分布がKent分布であることを示しており、選択フラグ「dist_flag」の値「0」は分布がvMF分布であることを示している。
 選択フラグ「dist_flag」の値が「1」である場合、モデルデータには上述した楕円率β、major軸ベクトルγ、およびminor軸ベクトルγが含まれている。
 「beta[i_band][i_mix]」は「i_band」により示されるi番目のバンドについての「i_mix」により示される分布(Kent分布)の楕円率βを示している。また、「gamma2[i_band][i_mix][x]」および「gamma2[i_band][i_mix][y]」は、i番目のバンド「i_band」についての「i_mix」により示される分布(Kent分布)のmajor軸ベクトルγを構成するX成分(X座標)およびY成分(Y座標)を示している。
 同様に、「gamma3[i_band][i_mix][x]」および「gamma3[i_band][i_mix][y]」は、i番目のバンド「i_band」についての「i_mix」により示される分布(Kent分布)のminor軸ベクトルγを構成するX成分(X座標)およびY成分(Y座標)を示している。
 モデルデータには、各ビンにおける指向性データ、より詳細には指向性ゲインのダイナミックレンジを示すスケールファクタ「scale_factor[i_bin]」と、各ビンにおける指向性データ(指向性ゲイン)のオフセット値、すなわち最小値「offset[i_bin]」も含まれている。
 以下では、モデルデータに含まれている楕円率β、パラメータ集中度κ、重みφi、ベクトルγ、major軸ベクトルγ、minor軸ベクトルγ、スケールファクタ、および最小値(オフセット値)からなるパラメータ集合をモデルパラメータとも称することとする。
 モデルデータには、データポイントにおける、モデル化前のもとの指向性データの値(指向性ゲイン)と、モデル化により得られた混合モデルにより示される指向性データの値(指向性ゲイン)との差分を示す差分情報「diff_data[i_point]」も含まれている。換言すれば、差分情報は、データポイントにおける、モデル化前の指向性データと、モデル化後の指向性データとの差分を示す情報である。
 なお、差分情報が格納されるか否かを選択できるようにしてもよい。また、モデルデータに格納される「diff_data[i_point]」は、ハフマン符号化された差分情報であってもよい。
 再生側(復号側)の装置では、例えば図5に示した構成(フォーマット)のモデルデータに基づいて、各データポイントにおける混合モデルの出力値F(x;Θ)、すなわち指向性ゲインが算出される。
 モデル化前のもとの指向性データの各ビンは、指向性データの形状の類似性を考慮して決定されるモデル化時のバンド数「band_count」により記述される数のバンド(band)のうちの何れかのバンドに属す。
 また、各ビンとバンドの対応関係は、ビン情報「bin_range_per_band[i_band]」により記述され、そのビン情報として、バンドに属す最も大きい周波数のビンを示すインデックス情報である最大インデックスが書き込まれている。
 この場合、例えば図6に示すように各バンドに属すビンの数はバンドごとに異なっていてもよい。
 この例では、最も周波数が低い最初のバンド0(band0)には2つのビン0(bin0)とビン1が属しており、次のバンド1には1つのビン2が属しており、さらにその次のバンド2には2つのビン3とビン4が属している。
 したがって、バンド0のビン情報「bin_range_per_band[i_band]」の値は、ビン1を示す値「1」、すなわち「bin_range_per_band[0]=1」とされる。同様に、バンド1のビン情報の値は「2」、すなわち「bin_range_per_band[1]=2」とされ、バンド2のビン情報の値は「4」、すなわち「bin_range_per_band[2]=4」とされる。
 モデルデータにはモデルパラメータが含まれているため、そのモデルパラメータから各バンドについての混合モデルF’(x;Θ)を得ることができる。ここで、混合モデルF’(x;Θ)は、式(3)に示したビンごとの混合モデルF(x;Θ)に対応する。
 モデル化前の指向性データは、各データポイントのビンごとに指向性ゲインの値を有している。そのため、モデルパラメータから得られるバンドごとの混合モデルF’(x;Θ)、より詳細には混合モデルの出力値F’(x;Θ)を、もとのビンごとの混合モデルF(x;Θ)に変換する必要がある。
 そこで、再生側(復号側)の装置では、バンドごとの混合モデルF’(x;Θ)と、ビンごとのスケールファクタ「scale_factor[i_bin]」と、ビンごとの最小値「offset[i_bin]」とに基づいて、データポイントにおけるビンごとの混合モデルの出力値F(x;Θ)が算出される。
 すなわち、F(x;Θ)=F’(x;Θ)×scale_factor[i_bin]+offset[i_bin]が計算される。この計算では、バンドごとの混合モデルの出力値F’(x;Θ)が各ビンのダイナミックレンジに合わせて補正される。
 さらに、差分圧縮を併用している場合、すなわちモデルデータにデータポイントごとの差分情報「diff_data[i_point]」が含まれている場合には、計算により得られた出力値F(x;Θ)に差分情報が加算され、最終的な出力値F(x;Θ)とされる。
 以上の計算により、モデルデータから、モデル化前のもとの指向性データが復元されたことになる。なお、再生側では、各データポイントとなる位置や各ビンの周波数は、モデルデータに格納されている方位角「azimuth_table[i]」、仰角「elevation_table[i]」、半径「distance[i]」、および周波数「freq[i_bin]」から特定することが可能である。
 実際に、モデルデータが図5に示した構成となるように指向性データをモデル化したときのモデルデータのデータ量を図7に示す。
 この例では、モデル化前のもとの指向性データにおけるデータポイント数は2522個であり、ビン数は29個となっている。また、モデル化時には、バンド数「band_count」が「3」とされ、vMF分布(楕円率β、major軸ベクトルγ、minor軸ベクトルγなし)からなる混合モデルでのモデル化が行われている。
 図7のモデル化では、モデル化前はデータ量が306KBであったもとの指向性データが、データ量が0.85KBのモデルパラメータに変換されており、データ量が約1/360に圧縮されていることが分かる。
 また、図5の例では、必要に応じてモデルデータに差分情報が含まれており、適宜、差分情報が用いられて指向性データの復元が行われる。
 すなわち、例えば聴覚心理の観点で差分が知覚できる場合には、本技術のモデル化と合わせて差分符号化が併用され、知覚不可能な程度まで指向性データが復元される。
 例えば図8の矢印Q41に示す指向性データが対象とされてモデル化が行われたとする。なお、図8において各球表面における色の濃淡は指向性ゲインの大きさを示している。
 この例では、矢印Q41に示す指向性データをモデル化した結果、矢印Q42に示す混合モデル、より詳細には混合モデルにより表される指向性データが得られたとする。
 なお、矢印Q42に示す部分において、球表面に描かれた複数の各直線は上述のベクトルγを表している。例えばベクトルV51は1つのベクトルγを表している。
 このような矢印Q41に示す指向性データと、矢印Q42に示す混合モデルとが得られた場合、それらの指向性データと混合モデルとの差分を求めると、矢印Q43に示す残差のデータが差分情報として得られる。
 図5に示した例では、矢印Q43に示す残差のデータの各データポイントにおける値(残差)が差分情報「diff_data[i_point]」としてモデルデータに格納される。
 なお、指向性の表現方式でHOA(Higher Order Ambisonics)と呼ばれる方式が存在する。HOAでは、振幅だけでなく位相の情報も記録できるという利点があるが、指向性の形状が複雑になるほど高次の項が必要となりデータ量が多くなる。また、HOAでは係数が発散してしまうため、使用することのできない禁止周波数も存在する。
 指向性は、一般的に高域の方が、より形状が複雑になり凸度が高くなる。また、高域では位相の情報の利用価値が相対的に低下する。そのため、指向性データのデータ量を低減させる場合に、HOAを利用するよりも、本技術のように混合分布モデルによりモデル化する方式を採用することのメリットが大きい。なお、低域では指向性の形状が比較的緩やかで、位相を記録することにより回折、干渉等の物理現象を再現できるため、低域ではHOAを利用し、高域では混合分布モデルによりモデル化する方式を利用するようにしてもよい。
 ところで、モデルデータを再生側(復号側)に伝送した場合、そのモデルデータに基づき生成(復元)される指向性データ(振幅データ)では、特定の離散周波数ポイント、すなわち特定のビンにおいてのみ指向性ゲインが存在する。換言すれば、指向性ゲインが存在しない周波数があるため、モデルデータから生成された指向性データをそのまま用いたのではレンダリング処理ができない場合がある。
 また、データポイントも離散的に配置されているため、ユーザの視点位置(受聴位置)やオブジェクトが移動して、それらのユーザとオブジェクトの位置関係が変化すると、レンダリング処理に利用する指向性データのデータポイントも変化する。そのような場合に、互いに隣接するデータポイント間の間隔が広いとglitch(波形不連続)が発生してしまう。
 そこで、指向性データに対して周波数方向や時間方向の補間処理を行うことで、より多くの周波数(ビン)や方向(データポイント)について指向性ゲインが得られるようにしてもよい。
 例えば周波数方向の補間処理として、得ようとする特定周波数近傍の複数の周波数を示すビンの指向性ゲインを用いた1次補間処理や2次補間処理などを行うことが考えられる。
 また、例えば時間方向の補間処理として、得ようとする方向(位置)近傍の複数のデータポイントにおけるビンごとの指向性ゲインを用いた、方位角方向や仰角方向の双一次補間処理などを行うことが考えられる。
 なお、オーディオデータのフレーム長(サンプル数/フレーム)、混合モデルでの混合数や選択するモデル(分布)、データポイント数などの各種のパラメータ等により、指向性データのモデル化時の計算量と音質への影響が変化する(トレードオフ)。
 すなわち、例えばオーディオデータの1フレームごとにユーザ(受聴者)やオブジェクトの位置と向きが変化する場合、時間方向の補間処理を行うことで、波形不連続の発生を抑制し、より高品質なオーディオ再生を実現することができる。
 また、例えば再生側で、より高精度な指向性データを得るために混合モデルの混合数を増やすかや、vMF分布よりもパラメータ数は多いが、より表現能力の高いKent分布を使用するかなどを適切に決定することで、計算量と音質のバランスを調整することができる。
 さらに、コンテンツの制作者等は、例えば音源(オブジェクト)の指向性の形状に応じて、指向性データのデータポイント数を増やすか、または再生時の補間処理によりデータポイント数の少なさに対処するかなどを決定することもできる。
 その他、モデル化(符号化)の対象となるもとの指向性データと、混合モデル、すなわちモデル化後の指向性データとの誤差(差分)を示す差分情報をハフマン符号化などの任意の符号化方式により符号化し、伝送してもよい。
 また、例えば周波数方向の補間処理や時間方向の補間処理など、指向性データの利用方式(レンダリング方式)や、差分情報等の各種の情報を使用するか否かをフラグ等により切り替えることができるようにしてもよい。
 例えばフラグにより、低リソース再生機器向け等の低精度用のパラメータと、高リソース再生機器向け等の高精度用のパラメータとの切り替え、すなわちパラメータ精度の切り替えを行うことができるようにしてもよい。そのような場合、例えば再生機器のリソースやコンテンツ配信時のネットワーク環境などに応じてパラメータが切り替えられる。
 なお、以上においては本技術を指向性データに適用する例について説明したが、その他、本技術は、映像におけるテスクチャデータ、例えばvolumetric点群データに対する色や、透明度情報などにも適用可能である。
 さらに、本技術では、例えば微細構造の再現が重要な場合には、コンテンツの制作者等がマニュアル(手動)で混合モデルの混合数の追加や、モデルパラメータ等の各種のパラメータの調整を行うことができるようにしてもよい。
〈サーバの構成例〉
 図9は、本技術を適用したサーバの構成例を示す図である。
 図9に示すサーバ11は、例えばコンピュータなどからなる情報処理装置であり、コンテンツの配信を行う。
 例えばコンテンツは、1または複数の各オブジェクトのオーディオデータ(オブジェクトオーディオデータ)と、音源種別ごとに用意された、音源(オブジェクト)の指向性、すなわち指向特性を表す指向性データとから構成される。
 このようなコンテンツは、例えば3D音源の音とともに指向性データをマイクロホンアレイ等により収録することで得ることができる。また、コンテンツにオーディオデータに対応する映像データが含まれていてもよい。
 サーバ11は、モデル化部21、モデルデータ生成部22、オーディオデータ符号化部23、および出力部24を有している。
 モデル化部21は、入力された各音源種別の指向性データをモデル化し、その結果得られたモデルパラメータや差分情報をモデルデータ生成部22に供給する。
 モデルデータ生成部22は、モデル化部21から供給されたモデルパラメータや差分情報に基づいてモデルデータを生成し、出力部24に供給する。
 オーディオデータ符号化部23は、入力された各オブジェクトのオーディオデータを符号化し、その結果得られた符号化オーディオデータを出力部24に供給する。
 出力部24は、モデルデータ生成部22から供給されたモデルデータと、オーディオデータ符号化部23から供給された符号化オーディオデータとを多重化することで符号化ビットストリームを生成し、出力する。
 なお、ここでは説明を簡単にするため、モデルデータと符号化オーディオデータとが同時に出力される例について説明するが、これらのモデルデータと符号化オーディオデータは個別に生成され、互いに異なるタイミングで出力されるようにしてもよい。また、モデルデータと符号化オーディオデータは、互いに異なる装置により生成されてもよい。
〈符号化処理の説明〉
 次に、サーバ11の動作について説明する。すなわち、以下、図10のフローチャートを参照して、サーバ11による符号化処理について説明する。
 ステップS11においてモデル化部21は、入力された各音源種別の指向性データをモデル化し、その結果得られたモデルパラメータや差分情報をモデルデータ生成部22に供給する。
 例えばモデル化部21は、指向性データを上述した式(3)に示した、複数の分布からなる混合モデルで表す(表現する)ことで、指向性データをモデル化する。
 これにより、式(3)に示した混合モデルを構成するパラメータ集中度κや、楕円率β、重みφ、ベクトルγ、major軸ベクトルγ、minor軸ベクトルγ、スケールファクタ、最小値がモデルパラメータとして得られる。
 また、モデル化部21は、モデル化前のもとの指向性データに関する情報として、データポイント数やデータポイントの位置、周波数ポイント数、ビンの中心周波数を示す情報などを生成する。
 さらに、例えばモデル化部21は、モデル化された指向性データ、すなわち混合モデルで表された指向性データと、モデル化前のもとの指向性データとの残差(差分)を差分情報として生成する。
 なお、差分情報は、例えば混合モデルで表された指向性データと、もとの指向性データとの残差が所定値以上であるなど、特定の条件が満たされる場合や、コンテンツの制作者等により差分情報の生成が指示された場合などに生成されるようにしてもよい。
 モデル化部21は、このようにして得られたモデルパラメータや、モデル化前のもとの指向性データに関する情報、差分情報をモデルデータ生成部22に供給する。
 ステップS12においてモデルデータ生成部22は、モデル化部21から供給されたモデルパラメータや、モデル化前のもとの指向性データに関する情報、差分情報をパッキングすることでモデルデータを生成し、出力部24に供給する。
 このとき、モデルデータ生成部22は、例えば差分情報をハフマン符号化し、その結果得られた符号化後の差分情報(以下、差分符号データとも称する)やモデルパラメータ等をパッキングすることで、図5に示したフォーマットのモデルデータを生成する。なお、モデルパラメータやモデルデータの符号化が行われるようにしてもよい。
 ステップS13においてオーディオデータ符号化部23は、入力された各オブジェクトのオーディオデータを符号化し、その結果得られた符号化オーディオデータを出力部24に供給する。
 なお、各オブジェクトのオーディオデータに対してメタデータがあるときには、オーディオデータ符号化部23は、各オブジェクト(オーディオデータ)のメタデータも符号化し、その結果得られた符号化メタデータを出力部24に供給する。
 例えばメタデータには、そのオブジェクトの3次元空間における絶対的な位置を示すオブジェクト位置情報や、3次元空間におけるオブジェクトの向きを示すオブジェクト方向情報、オブジェクト(音源)の種別を示す音源種別情報などが含まれている。
 ステップS14において出力部24は、モデルデータ生成部22から供給されたモデルデータと、オーディオデータ符号化部23から供給された符号化オーディオデータとを多重化して符号化ビットストリームを生成し、出力する。なお、オブジェクトにメタデータがあるときには、出力部24は、モデルデータ、符号化オーディオデータ、および符号化メタデータを含む符号化ビットストリームを生成する。
 例えば出力部24は、図示せぬクライアントとして機能する情報処理装置に符号化ビットストリームを送信する。符号化ビットストリームが送信されると、符号化処理は終了する。
 以上のようにしてサーバ11は、指向性データをモデル化し、その結果得られたモデルパラメータや差分情報が含まれる符号化ビットストリームを出力する。このようにすることで、クライアントへと伝送する指向性データのデータ量、すなわち指向性データの伝送量を低減させることができる。これにより、伝送遅延の発生や伝送レートの増大を抑制することができる。
〈情報処理装置の構成例〉
 サーバ11から出力された符号化ビットストリームを取得し、コンテンツの音を再生するための出力オーディオデータを生成する情報処理装置は、例えば図11に示すように構成される。図11に示す情報処理装置51は、例えばパーソナルコンピュータやスマートフォン、タブレット、ゲーム機器などからなる。
 情報処理装置51は、取得部61、分布モデル復号部62、オーディオデータ復号部63、およびレンダリング処理部64を有している。
 取得部61は、サーバ11から出力された符号化ビットストリームを取得するとともに、符号化ビットストリームからモデルデータおよび符号化オーディオデータを抽出する。取得部61は、モデルデータを分布モデル復号部62に供給するとともに、符号化オーディオデータをオーディオデータ復号部63に供給する。
 分布モデル復号部62は、モデルデータから指向性データを算出する。分布モデル復号部62は、アンパッキング部81、指向性データ算出部82、差分情報復号部83、加算部84、および周波数補間処理部85を有している。
 アンパッキング部81は、取得部61から供給されたモデルデータのアンパッキングを行うことで、モデルデータからモデルパラメータやモデル化前のもとの指向性データに関する情報、差分符号データを抽出する。また、アンパッキング部81は、モデルパラメータやモデル化前のもとの指向性データに関する情報を指向性データ算出部82に供給し、差分符号データを差分情報復号部83に供給する。
 指向性データ算出部82は、アンパッキング部81から供給されたモデルパラメータやモデル化前のもとの指向性データに関する情報に基づいて指向性データを算出(復元)し、加算部84に供給する。なお、以下、指向性データ算出部82によりモデルパラメータに基づき算出(復元)された指向性データを概形指向性データとも称する。
 差分情報復号部83は、アンパッキング部81から供給された差分符号データに対して、ハフマン符号化に対応する方式での復号を行い、その結果得られた差分情報を指向性データ残差として加算部84に供給する。
 加算部84は、指向性データ算出部82から供給された概形指向性データと、差分情報復号部83から供給された指向性データ残差(差分情報)とを加算することで、よりもとの指向性データに近い指向性データを生成し、周波数補間処理部85に供給する。
 周波数補間処理部85は、加算部84から供給された指向性データに対して周波数方向の補間処理を行い、その結果得られた指向性データをレンダリング処理部64に供給する。
 オーディオデータ復号部63は、取得部61から供給された符号化オーディオデータに対する復号を行い、その結果得られた各オブジェクトのオーディオデータをレンダリング処理部64に供給する。
 また、符号化ビットストリームに符号化メタデータが含まれている場合、オーディオデータ復号部63は、取得部61から供給された符号化メタデータを復号し、その結果得られたメタデータをレンダリング処理部64に供給する。
 レンダリング処理部64は、周波数補間処理部85から供給された指向性データと、オーディオデータ復号部63から供給されたオーディオデータとに基づいて出力オーディオデータを生成する。
 レンダリング処理部64は、指向性データ保持部86、HRTF(Head Related Transfer Function)データ保持部87、時間補間処理部88、指向性畳み込み部89、およびHRTF畳み込み部90を有している。
 指向性データ保持部86およびHRTFデータ保持部87には、ユーザ等の指定やセンサ等による測定などに応じて、視点位置情報、受聴者方向情報、オブジェクト位置情報、およびオブジェクト方向情報が供給される。
 例えば視点位置情報は、コンテンツを視聴するユーザ(受聴者)の3次元空間における視点位置(受聴位置)を示す情報であり、受聴者方向情報は、3次元空間における、コンテンツを視聴するユーザの顔の向きを示す情報である。
 また、符号化ビットストリームに符号化メタデータが含まれている場合、オブジェクト位置情報およびオブジェクト方向情報は、符号化メタデータの復号により得られたメタデータから抽出され、指向性データ保持部86とHRTFデータ保持部87に供給される。
 その他、指向性データ保持部86には、メタデータから抽出されるなどして得られた音源種別情報も供給され、HRTFデータ保持部87には、適宜、コンテンツを視聴するユーザを示すユーザIDが供給される。
 指向性データ保持部86は、周波数補間処理部85から供給された指向性データを保持する。また、指向性データ保持部86は、保持している指向性データのなかから、供給された視点位置情報、受聴者方向情報、オブジェクト位置情報、オブジェクト方向情報、および音源種別情報に応じた指向性データを読み出して時間補間処理部88に供給する。
 HRTFデータ保持部87は、ユーザIDにより示される各ユーザについて、ユーザ(受聴者)から見た複数の方向ごとにHRTFを保持している。
 HRTFデータ保持部87は、保持しているHRTFのなかから、供給された視点位置情報、受聴者方向情報、オブジェクト位置情報、オブジェクト方向情報、およびユーザIDに応じたHRTFを読み出してHRTF畳み込み部90に供給する。
 時間補間処理部88は、指向性データ保持部86から供給された指向性データに対して、時間方向の補間処理を行い、その結果得られた指向性データを指向性畳み込み部89に供給する。
 指向性畳み込み部89は、オーディオデータ復号部63から供給されたオーディオデータと、時間補間処理部88から供給された指向性データとを畳み込み、その結果得られたオーディオデータをHRTF畳み込み部90に供給する。指向性データの畳み込みにより、オーディオデータに対して、オブジェクト(音源)が有する指向特性が付加される。
 HRTF畳み込み部90は、指向性畳み込み部89から供給されたオーディオデータ、すなわち指向性データが畳み込まれたオーディオデータと、HRTFデータ保持部87から供給されたHRTFとを畳み込み、その結果得られたオーディオデータを出力オーディオデータとして出力する。HRTFの畳み込みにより、ユーザ(受聴者)から見たオブジェクトの位置に、そのオブジェクトの音が定位する出力オーディオデータを得ることができる。
〈指向性データ生成処理の説明〉
 次に、情報処理装置51の動作について説明する。
 まず、情報処理装置51が各音源種別の指向性データを生成するときに行われる指向性データ生成処理について説明する。すなわち、以下、図12のフローチャートを参照して、情報処理装置51による指向性データ生成処理について説明する。
 この指向性データ生成処理は、サーバ11から送信されてきた符号化ビットストリームを取得部61が受信し、取得部61が符号化ビットストリームから抽出したモデルデータをアンパッキング部81に供給すると開始される。
 ステップS51においてアンパッキング部81は、取得部61から供給されたモデルデータのアンパッキングを行い、モデルデータから抽出したモデルパラメータやモデル化前のもとの指向性データに関する情報を指向性データ算出部82に供給する。
 ステップS52において指向性データ算出部82は、アンパッキング部81から供給されたモデルパラメータやモデル化前のもとの指向性データに関する情報に基づいて、概形指向性データを算出(生成)し、加算部84に供給する。
 例えば指向性データ算出部82は、モデルパラメータにより得られる各バンドの混合モデルF’(x;Θ)と、ビンごとのスケールファクタ「scale_factor[i_bin]」と、ビンごとの最小値「offset[i_bin]」とに基づいて、データポイントにおけるビンごとの混合モデルの出力値F(x;Θ)を算出する。これにより、各データポイントにおけるビンごとの指向性ゲイン(振幅データ)からなる概形指向性データが得られる。
 ステップS53においてアンパッキング部81は、取得部61から供給されたモデルデータに差分符号データが含まれているか否か、すなわち差分符号データがあるか否かを判定する。
 ステップS53において差分符号データが含まれていると判定された場合、アンパッキング部81は、モデルデータから差分符号データを抽出して差分情報復号部83に供給し、その後、処理はステップS54へと進む。
 ステップS54において差分情報復号部83は、アンパッキング部81から供給された差分符号データに対する復号を行い、その結果得られた指向性データ残差(差分情報)を加算部84に供給する。
 ステップS55において加算部84は、指向性データ算出部82から供給された概形指向性データに、差分情報復号部83から供給された指向性データ残差を加算する。
 加算部84は、加算により得られた指向性データを周波数補間処理部85に供給し、その後、処理はステップS56へと進む。
 これに対して、ステップS53において差分符号データが含まれていないと判定された場合、ステップS54およびステップS55の処理はスキップされ、その後、処理はステップS56へと進む。この場合、加算部84は、指向性データ算出部82から供給された概形指向性データを、そのまま復元された指向性データとして周波数補間処理部85に供給する。
 ステップS53において差分符号データが含まれていないと判定されたか、またはステップS55の処理が行われると、ステップS56の処理が行われる。
 ステップS56において周波数補間処理部85は、加算部84から供給された指向性データに対して周波数方向の補間処理を行い、補間処理により得られた指向性データを指向性データ保持部86に供給して保持させる。
 例えばオブジェクトのオーディオデータが周波数領域のデータであり、オーディオデータが複数の周波数ビンごとに周波数成分値を有しているとする。そのような場合、周波数方向の補間処理では、例えば指向性データが、オーディオデータが周波数成分値を有する全周波数ビンについて指向性ゲインを有するように、必要なビンの指向性ゲインを算出する補間処理が行われる。
 具体的には、例えば周波数補間処理部85は、指向性データにおける所定のデータポイントの複数のビン(周波数)の指向性ゲインに基づく補間処理を行うことで、もとの指向性データには存在していなかった、同じデータポイントにおける新たな周波数(ビン)の指向性ゲインを算出する。このような周波数方向の補間処理により、より多くの周波数における指向性ゲインを含む指向性データを得ることができる。
 周波数方向の補間処理が行われ、指向性データ保持部86に補間処理後の指向性データが保持されると、指向性データ生成処理は終了する。
 以上のようにして情報処理装置51は、モデルデータに基づいて指向性データを算出する。このようにすることで、伝送される指向性データのデータ量、すなわち指向性データの伝送量を低減させることができる。これにより、伝送遅延の発生や伝送レートの増大を抑制することができる。
〈出力オーディオデータ生成処理の説明〉
 続いて、図13のフローチャートを参照して、情報処理装置51により行われる出力オーディオデータ生成処理について説明する。この出力オーディオデータ生成処理は、図12を参照して説明した指向性データ生成処理が行われた後の任意のタイミングで行われる。
 ステップS81においてオーディオデータ復号部63は、取得部61から供給された符号化オーディオデータの復号を行い、その結果得られたオーディオデータを指向性畳み込み部89に供給する。例えば復号により、周波数領域のオーディオデータが得られる。
 なお、取得部61から符号化メタデータが供給された場合、オーディオデータ復号部63は、符号化メタデータを復号し、その結果得られたメタデータに含まれているオブジェクト位置情報、オブジェクト方向情報、音源種別情報を、適宜、指向性データ保持部86やHRTFデータ保持部87に供給する。
 また、指向性データ保持部86は、供給された視点位置情報、受聴者方向情報、オブジェクト位置情報、オブジェクト方向情報、および音源種別情報に応じた指向性データを時間補間処理部88に供給する。
 例えば指向性データ保持部86は、視点位置情報、受聴者方向情報、オブジェクト位置情報、およびオブジェクト方向情報から、3次元空間におけるオブジェクトとユーザの視点位置(受聴位置)の関係を特定し、その特定結果に応じたデータポイントを特定する。
 一例として、例えばオブジェクトから視点位置へと向かう方向を視点位置方向とすると、混合モデルの中心から見て視点位置方向にある、混合モデルの球表面上の位置が対象データポイント位置として特定される。なお、対象データポイント位置に実際のデータポイントがない場合もある。
 指向性データ保持部86は、音源種別情報により示される音源種別の指向性データから、特定された対象データポイント位置近傍にある複数のデータポイントにおける各ビンの指向性ゲインを抽出する。
 そして指向性データ保持部86は、抽出した複数のデータポイントにおける各ビンの指向性ゲインからなるデータを、オブジェクトとユーザ(受聴者)の位置や方向の関係に応じた指向性データとして時間補間処理部88に供給する。
 さらに、HRTFデータ保持部87は、供給された視点位置情報、受聴者方向情報、オブジェクト位置情報、オブジェクト方向情報、およびユーザIDに応じたHRTFをHRTF畳み込み部90に供給する。
 具体的には、例えばHRTFデータ保持部87は、視点位置情報、受聴者方向情報、オブジェクト位置情報、およびオブジェクト方向情報に基づき、受聴者(ユーザ)から見たオブジェクトの相対的な方向をオブジェクト方向として特定する。そしてHRTFデータ保持部87は、ユーザIDに対応する各方向のHRTFのうち、オブジェクト方向に対応する方向のHRTFをHRTF畳み込み部90に供給する。
 ステップS82において時間補間処理部88は、指向性データ保持部86から供給された指向性データに対して時間方向の補間処理を行い、その結果得られた指向性データを指向性畳み込み部89に供給する。
 例えば時間補間処理部88は、指向性データに含まれる複数のデータポイントにおける各ビンの指向性ゲインに基づいて、上述の対象データポイント位置における各ビンの指向性ゲインを補間処理により算出する。すなわち、もとのデータポイントとは異なる新たなデータポイント(対象データポイント位置)における指向性ゲインが補間処理により算出される。
 時間補間処理部88は、対象データポイント位置における各ビンの指向性ゲインからなるデータを、時間方向の補間処理により得られた指向性データとして指向性畳み込み部89に供給する。
 ステップS83において指向性畳み込み部89は、オーディオデータ復号部63から供給されたオーディオデータと、時間補間処理部88から供給された指向性データとを畳み込み、その結果得られたオーディオデータをHRTF畳み込み部90に供給する。
 ステップS84においてHRTF畳み込み部90は、指向性畳み込み部89から供給されたオーディオデータと、HRTFデータ保持部87から供給されたHRTFとを畳み込み、その結果得られた出力オーディオデータを出力する。
 ステップS85において情報処理装置51は、処理を終了するか否かを判定する。
 例えば取得部61からオーディオデータ復号部63に新たなフレームの符号化オーディオデータが供給された場合、ステップS85において処理を終了しないと判定される。これに対して、例えば取得部61からオーディオデータ復号部63に新たなフレームの符号化オーディオデータが供給されず、コンテンツの全フレームの出力オーディオデータが生成された場合、ステップS85において処理を終了すると判定される。
 ステップS85において、まだ処理を終了しないと判定された場合、その後、処理はステップS81に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS85において処理を終了すると判定された場合、情報処理装置51は各部の動作を終了させ、出力オーディオデータ生成処理は終了する。
 以上のようにして情報処理装置51は、適切な指向性データとHRTFを選択し、それらの指向性データとHRTFをオーディオデータに畳み込んで出力オーディオデータとする。このようにすることで、オブジェクト(音源)の指向特性や、オブジェクトと受聴者の位置や向きの関係を考慮して、より臨場感のある高品質なオーディオ再生を実現することができる。
〈第2の実施の形態〉
〈差分情報の符号化について〉
 ところで、指向性データは、音源種別ごとや周波数帯域ごとに異なる指向性形状を有している。
 また、サーバ11では、モデル化前の指向性データと、モデル化後の指向性データとの差分を示す差分情報が適宜生成される。上述の例では、差分情報がハフマン符号化などの符号化方式で符号化され、差分符号データが得られると説明した。
 Kent分布やvMF分布によるモデル化だけでなく、差分情報の符号化についても音源種別や周波数帯域に応じて適切な符号化を行えるようにサーバ11側、すなわちエンコーダ側で差分情報の符号化手法を選択できるようにしてもよい。
 ここでは、例として差分情報がハフマン符号化される場合について説明する。
 ハフマン符号化では、例えば図14に示すように、符号化の対象となる1つの指向性データから得られた複数のビンごとの差分情報に基づき出現確率の分布(確率密度分布)が生成される。
 なお、図14において横軸は差分情報の値(dB値)を示しており、縦軸は差分情報の各値の出現確率を示している。
 例えば、指向性データの全データポイントにおける全てのビン(周波数)が対象とされ、それらの各ビンの差分情報からヒストグラムを生成することで、差分情報の各値の出現確率が求められる。なお、出現確率の分布(確率密度分布)は、ビンごとに求められてもよいし、特定の周波数帯域に含まれるビンが対象とされて求められてもよいし、全ビンが対象とされて求められてもよく、それらの何れかを選択可能であってもよい。
 サーバ11では、このような差分情報の出現確率に基づいて、予め用意された複数のハフマン符号化テーブルのなかから適切な1つのハフマン符号化テーブルが選択されるか、または1つの新規のハフマン符号化テーブルが生成される。
 指向性データの全データポイントにおける全てのビン(周波数)が対象とされ、それらの全てのビンに対して1つのハフマン符号化テーブルが選択または生成されてもよいし、1または複数のビンごとに1つのハフマン符号化テーブルが選択または生成されてもよい。
 このようにして選択または生成されたハフマン符号化テーブルが用いられて差分情報のハフマン符号化が行われる。
 ハフマン符号化テーブルは、符号化前のデータ、すなわち差分情報と、符号化により得られるハフマンコード(符号データ)との対応を示す、符号化前のデータをハフマンコードへと変換するためのテーブルである。
 また、差分情報をハフマン符号化することで得られる差分符号データの復号時には、ハフマン符号化テーブルに対応する逆引テーブルが用いられる。
 逆引テーブルは、ハフマンコード(符号データ)と復号後のデータとの対応を示す、ハフマンコードを復号後のデータへと変換するためのテーブルである。この逆引テーブルは、ハフマン符号化テーブルから生成することができる。
 差分情報をハフマン符号化する場合には、予めサーバ11(エンコーダ)と情報処理装置51(デコーダ)の双方でハフマン符号化テーブルを保持している状態となるようにしてもよい。そのような場合、サーバ11から情報処理装置51に対して、差分情報のハフマン符号化に用いたハフマン符号化テーブルを示すID情報が通知される。
 また、サーバ11がハフマン符号化テーブルまたは逆引テーブルを符号化ビットストリームに格納し、情報処理装置51へと伝送するようにしてもよい。
 特に、逆引テーブルのサイズ(データ量)は大きいので、サーバ11から情報処理装置51へとハフマン符号化テーブルを伝送しておき、情報処理装置51が復号時等にハフマン符号化テーブルに基づき逆引テーブルを生成するようにしてもよい。
 また、出現確率の分布(確率密度分布)では、出現確率(出現頻度)が低い差分情報の値と出現確率が高い差分情報の値がある。そこで、例えば差分情報の取り得る値の範囲として±3dBの範囲など、出現確率の高い差分情報の値を含む狭いダイナミックレンジのデータに対応する範囲を対象範囲とし、その対象範囲のみを対象としたハフマン符号化テーブルを用いるようにしてもよい。
 そのような場合、対象範囲外の値の差分情報、すなわち出現確率の低いイレギュラーな値の差分情報については、差分情報をそのままモデルデータに格納するようにしてもよい。換言すれば、差分情報がそのまま差分符号データとして扱われる。
 以上のようにして、差分情報の確率密度分布に応じて、高効率となるハフマン符号化テーブルを選択したり生成したりし、どのようなハフマン符号化テーブルを利用するかに関する情報等を符号化ビットストリームに記述することで、効率よく差分情報を符号化および伝送することができる。
 また、差分情報を符号化するにあたっては、1または複数の方式を組み合わせて用いることで、さらにダイナミックレンジを小さくし、符号化効率を向上させることができる。特に、複数の方式を組み合わせることで、多段差分符号化を実現することができる。
 例えば多段差分符号化では、空間隣接差分方式、周波数間差分方式、および複素差分方式のうちの少なくとも2以上を組み合わせて符号化を行うことが考えられる。
 また、例えば多段差分符号化の有無や方式を示すmodeがモデルデータにおいてenc_mode等として記録される。このとき、例えば下位4bitに多段差分符号化の方式を記録し、上位4bitに対象が実数または複素数の何れであるかを記録した場合、以下のような情報がモデルデータに格納される。
(対象データが実数)
 0x00:多段差分符号化無し
 0x01:空間隣接差分方式
 0x02:周波数間差分方式
 0x03:空間隣接差分方式+周波数間差分方式
(対象データが複素数)
 0x1*:下位ビットは対象データ実数の場合と同じ
 空間隣接差分方式は、処理対象のデータポイントの差分情報の符号化を行うときに、その処理対象のデータポイントにおける差分情報と、処理対象のデータポイントの近傍にある他のデータポイントにおける差分情報との差分が空間差分情報として求められる。例えば、互いに隣接するデータポイント間の差分情報の差分が空間差分情報として求められる。そして、得られた空間差分情報がハフマン符号化されて差分符号データとされる。
 空間隣接差分方式では、指向性データにおける空間的に近い位置(データポイント)のデータ、すなわち指向性ゲインや差分情報は、近い値を取りやすいという性質が利用されている。
 周波数間差分方式は、処理対象のビン(周波数)の差分情報の符号化を行うときに、その処理対象のビンにおける差分情報と、処理対象のビンに隣接するビンなどの近傍の周波数である他のビンにおける差分情報との差分が周波数間差分情報として求められる。そして、得られた周波数間差分情報がハフマン符号化されて差分符号データとされる。
 周波数間差分方式では、近い周波数(ビン)のデータ、すなわち指向性ゲインや差分情報は、近い値を取りやすいという性質が利用されている。
 例えば空間隣接差分方式と周波数間差分方式を組み合わせて用いる場合には、互いに近接するビン間の空間差分情報の差分が周波数間差分情報として求められ、その周波数間差分情報がハフマン符号化されるか、または互いに近接するデータポイント間の周波数間差分情報の差分が空間差分情報として求められ、その空間差分情報がハフマン符号化される。
 複素差分方式は、指向性データが上述した振幅に関する情報だけでなく、位相に関する情報も有する場合に用いられる。
 例えば指向性データが振幅と位相に関する情報を有する場合、それらの振幅と位相に関する情報、つまり指向性ゲインは複素数により表現される。すなわち、指向性データは、データポイントごとに、各ビンについての振幅と位相を示す複素数のデータ(以下、複素指向性ゲインとも称する)を有することになり、差分情報も複素数のデータとなる。
 複素差分方式では、複素数により表現される差分情報の実部と虚部がそれぞれ独立(個別)にハフマン符号化されるか、または実部と虚部からなる2次元データ(複素指向性ゲイン)に対するハフマン符号化が行われる。なお、複素差分方式では、実部と虚部のそれぞれに対して個別にハフマン符号化を行うか、または2次元データに対するハフマン符号化を行うかを選択できるようにしてもよい。
 以下では、空間隣接差分方式、周波数間差分方式、および複素差分方式のうちの少なくとも1以上を組み合わせて符号化する各方式や、差分情報をそのままハフマン符号化する方式を1つの差分符号化方式または差分符号化モードとも称することとする。特に、差分情報をそのままハフマン符号化する差分符号化方式は、差分を用いる符号化、すなわち差分符号化を行わない方式であるといえる。
 例えばサーバ11は、差分情報等に基づいて、複数の差分符号化方式(差分符号化モード)のなかから最も効率の高いものを選択し、その選択した差分符号化方式で差分情報のハフマン符号化を行う。
 具体的には、例えば各差分符号化方式における差分符号データの符号量(データ量)が差分情報に基づく演算により求められ、差分符号化方式のなかから最も符号量が少ないものが、最も効率の高いものとして選択されるようにしてもよい。
 その他、例えば指向性データの音源種別や、無響室等の指向性データの収録時の環境などに基づいて、適切な差分符号化方式が選択されるようにしてもよい。
〈指向性データの表現方式について〉
 以上においては、主に指向性データがKent分布やvMF分布からなる混合モデル(混合分布モデル)によりモデル化される例について説明した。
 また、例えば低域、つまり低い周波数のビンではHOAにより指向性データをモデル化して位相に関する情報も記録し、位相の重要度が相対的に低い高域、つまり高い周波数のビンではKent分布やvMF分布からなる混合モデルにより指向性データをモデル化してもよいと説明した。この場合、例えば1.5kHz乃至2kHzの近傍の所定の周波数で混合モデルによるモデル化とHOAによるモデル化とを切り替えることが考えられる。例えばオーディオコーデック等で位相の情報を利用しないIntensity stereoが上記の帯域以上で用いられている。このようにHOAと混合モデルを組み合わせる手法は、例えばホイッスルやトランペットなど、鋭い正面指向性を持つ場合に有効と考えられる。
 なお、これに限らず、周波数帯域ごと、すなわちビンやバンドごとに、または全周波数帯域で共通して、HOA方式、混合方式、複素混合方式、および差分方式のうちの少なくとも1以上の方式を組み合わせてモデルデータを生成するようにしてもよい。そのような場合、例えばHOA方式や混合方式などの互いに異なる1または複数の方式により指向性データがモデル化され、その結果得られたモデルパラメータ等を含むモデルデータが生成される。
 HOA方式は、各データポイントのビンごとの複素指向性ゲインからなる指向性データを、HOAを利用してモデル化する方式である。すなわち、HOA方式は指向性データを球面調和関数展開によりモデル化する方式である。
 具体的には、HOA方式では指向性データに対して球面調和関数展開が行われ、その結果、各次元の球面調和関数についての係数である球面調和係数がモデルパラメータとして得られる。これらの各次元の球面調和係数から、HOAによるモデル化後の複素指向性ゲインからなる指向性データを得ることができる。
 上述のように、HOA方式でのモデル化では、位相を含めた表現が可能であるが、微細な表現を行うためには球面調和関数展開の次数を上げる、すなわち高次の項まで球面調和係数を求める必要があり、そのような場合にはモデルデータのデータ量が多くなってしまう。特にHOA方式でのモデル化では、特定の方位(方向)のみ振幅や位相の分布の微細な表現を行うことができない。
 逆に、低次の項のみ球面調和係数を求める場合には、比較的緩やかな振幅や位相の変化のみを記述可能となる。
 混合方式は、上述したKent分布やvMF分布からなる混合モデルによりモデル化を行う方式である。混合方式では、音源から見た特定の方位(方向)、すなわちデータポイントの位置において変化の激しい指向性ゲインの形状を記述可能である。
 複素混合方式は、複素指向性ゲインからなる指向性データ、すなわち振幅と位相のデータを、複素数に対応した混合分布(混合モデル)を用いてモデル化する方式である。
 複素混合方式の例として、例えば以下に示す2つの方法によるモデル化が考えられる。
 まず、1つ目の方法として、複素指向性ゲインの実部と虚部のそれぞれ、または複素指向性ゲインから求まる振幅と位相角のそれぞれを独立に実数を対象とした確率密度分布の混合モデルで記述することによりモデル化を行う方法が考えられる。
 2つ目の方法として、複素数に対応した複素Bingham分布混合モデルや、複素watson分布混合モデル等を用いて指向性データ(複素指向性ゲインの分布)を記述することによりモデル化を行う方法が考えられる。
 この場合、例えば指向性データが1または複数の複素Bingham分布からなる混合モデルや、1または複数の複素watson分布からなる混合モデルによりモデル化され、その結果、混合方式における場合と同様のモデルパラメータが得られる。このようにして得られたモデルパラメータから、複素混合方式でのモデル化後の複素指向性ゲインからなる指向性データを得ることができる。
 一例として対象とする複素数データの分布をそのまま複素Bingham分布で記述する場合、以下の式(5)に示す形式で記述が行われる。すなわち、複素Bingham分布の値f(z)は次式(5)により表される。
Figure JPOXMLDOC01-appb-M000005
 式(5)における複素数ベクトルzは、Kent分布やvMF分布における球表面の位置ベクトルxに対応し、z*はその複素共役となる。複素行列Aは位置、急峻さ、方向、形状を示すk×k次元の行列であり、正規化係数C(A)は次式(6)の通りである。
Figure JPOXMLDOC01-appb-M000006
 ここでaの定義は以下の式(7)の通りである。λは複素行列Aの固有値であり、λ<λ<λ<…λである。
Figure JPOXMLDOC01-appb-M000007
 1または複数の複素Bingham分布からなる混合モデル、すなわち複素Bingham混合モデルにおける混合数および重みは、上述のKent分布やvMF分布からなる混合モデルの定式化と共通である。N個の複素Bingham分布f(z;θi)を用いた混合モデルの値F(x;Θ)は以下の式(8)の通り、重みづけ記述が可能である。なお、式(9)に示すように重みの総和は1であり、Θは全パラメータ集合、θiは各複素Bingham分布のパラメータ集合(複素Bingham分布を構成するパラメータ)、φiはそれぞれの複素Bingham分布に対する重みを表している。
Figure JPOXMLDOC01-appb-M000008
Figure JPOXMLDOC01-appb-M000009
 差分方式は、差分を利用してモデルデータを生成する方式である。
 例えばHOA方式や混合方式などの1または複数の他の方式と差分方式とを組み合わせてモデルデータを生成する場合、差分方式では、モデル化前の指向性データと、1または複数の他の方式によるモデル化後の指向性データとの差分を示す差分情報が、上述の任意の差分符号化方式により符号化され、その結果得られた差分符号データがモデルデータに格納される。なお、差分方式により求められた指向性データの差分がHOA方式等によりモデル化されてもよい。
 差分方式では、例えば差分情報について空間上の位置間(データポイント間)の差分と周波数間(ビン間またはバンド間)の差分の少なくとも何れかが求められ、その結果得られた差分がハフマン符号化されて差分符号データとされる。このとき、ハフマン符号化の対象となる差分情報の差分が複素数である場合には、その差分の実部と虚部のそれぞれが個別にハフマン符号化されてもよいし、複素数がそのままハフマン符号化されてもよいし、差分から求まる振幅成分と位相成分のそれぞれが個別にハフマン符号化されてもよい。
 これに対して、差分方式のみが用いられて、すなわち差分方式単独でモデルデータが生成される場合、上述の任意の差分符号化方式と同様にして指向性データに対する符号化(ハフマン符号化)が行われる。
 このとき、空間隣接差分方式と周波数間差分方式のうちの少なくとも1つを含む、空間隣接差分方式、周波数間差分方式、および複素差分方式のうちの少なくとも1以上の方式が用いられる。すなわち、空間上の位置間(データポイント間)や周波数間(ビン間またはバンド間)における指向性ゲインの差分が求められ、その差分がハフマン符号化される。なお、差分が複素数で表現されるときには、差分の実部と虚部のそれぞれが個別にハフマン符号化されてもよいし、差分(複素数)がハフマン符号化されてもよい。また、差分から求まる振幅成分と位相成分のそれぞれが個別にハフマン符号化されてもよい。
 さらに、差分方式により得られた差分に対するハフマン符号化により得られたハフマンコードからなるデータ(以下、符号化指向性データとも称する)が含まれるモデルデータが生成される。この場合、指向性データの残差は生じないので、モデルデータに差分符号データは含まれていない。
 なお、差分方式では、可逆圧縮が可能であるが、データ次第で圧縮率が変動する。また、空間隣接差分方式や周波数間差分方式などの複数の方式を組み合わせて多段の差分を求める、すなわち差分を求める処理を複数回行う場合には、1次元のデータの場合とは異なり、差分符号データや符号化指向性データをモデルデータに格納する際のデータ順の定義が必要となり、このデータ順によって圧縮率が変動する。
 指向性データからモデルデータを生成するにあたっては、指向性データのビンごとやバンドごとの指向性ゲインの平均値、すなわち平均指向特性をモデル化することも考えられる。そのような場合、差分情報は、平均指向特性にオフセットとスケールファクタを適用し、ダイナミックレンジを合わせてから計算される。
 以上のようにHOA方式や混合方式、複素混合方式、差分方式を組み合わせてモデルデータを生成する場合、モデルデータを生成する方式として主に以下に示す5つの方式への類型化が考えられる。
 ここでいう5つの方式とは、帯域ハイブリッド方式、加算ハイブリッド方式、乗算ハイブリッド方式、球面調和係数モデル化方式、および組み合わせハイブリッド方式である。以下、各方式について説明する。
(帯域ハイブリッド方式)
 帯域ハイブリッド方式は、周波数帯域ごと、すなわちビンごとやバンドごとにHOA方式、混合方式、複素混合方式、および差分方式のうちの何れの方式を用いてモデルデータを生成するかを切り替える方式である。この場合、例えば低域では複素指向性ゲインでの記録が行われ、高域では実数の指向性ゲインでの記録が行われるようにしてもよい。
 具体的な例として、例えば低域側のバンドではHOA方式でのモデル化が行われ、高域側のバンドでは混合方式でのモデル化が行われるなど、バンド(周波数帯域)ごとに異なる方式で指向性データのモデル化が行われるようにすることができる。
 また、例えば低域側のバンドでは複素Bingham分布等による複素混合方式でのモデル化が行われ、高域側のバンドでは混合方式でのモデル化が行われるようにしてもよい。
(加算ハイブリッド方式)
 加算ハイブリッド方式では、モデル化後の指向性データとの差分を示す差分情報が、さらにモデル化されたり、差分方式により符号化されたりする。
 加算ハイブリッド方式の具体的な例として、例えば以下に示す方式(AH1)乃至方式(AH4)などが考えられる。特に、以下に示す例では左側に記述されている方式から順番に処理が実行されていく。
 方式(AH1):混合方式+差分方式
 方式(AH2):HOA方式(低次)+混合方式
 方式(AH3):HOA方式(低次)+差分方式
 方式(AH4):HOA方式(低次)+混合方式+差分方式
 方式(AH1)では、まず指向性データが混合方式でモデル化される。次に、モデル化前の指向性データと、混合方式でのモデル化後の指向性データとの差分を示す差分情報が差分方式により符号化され、差分符号データが生成される。
 そして、混合方式でのモデル化により得られたモデルパラメータと、差分符号データとが含まれるモデルデータが生成される。
 方式(AH2)では、まず指向性データがHOA方式でモデル化される。特に、HOA方式でのモデル化では、低次の項までの球面調和関数展開が行われる。次に、モデル化前の指向性データと、HOA方式でのモデル化後の指向性データとの差分を示す差分情報が、さらに混合方式でモデル化される。
 そして、HOA方式でのモデル化により得られたモデルパラメータと、混合方式での差分情報のモデル化により得られたモデルパラメータとが含まれるモデルデータが生成される。
 方式(AH3)では、方式(AH2)における場合と同様に、HOA方式で低次の項までのモデル化が行われ、その後、HOA方式でのモデル化について得られる差分情報が差分方式により符号化され、差分符号データが生成される。
 そして、HOA方式でのモデル化により得られたモデルパラメータと、差分符号データとが含まれるモデルデータが生成される。
 方式(AH4)では、方式(AH2)における場合と同様に、HOA方式で低次の項までのモデル化後、さらに混合方式での差分情報のモデル化が行われる。
 次にHOA方式でのモデル化について得られた差分情報と、混合方式でのモデル化後の差分情報との差分を示す差分情報が差分方式により符号化され、差分符号データが生成される。換言すれば、HOA方式および混合方式の組み合わせによりモデル化されたモデル化後の指向性データと、モデル化前の指向性データとの差分を示す差分情報が差分方式により符号化され、差分符号データが生成される。
 そして、HOA方式でのモデル化により得られたモデルパラメータと、混合方式での差分情報のモデル化により得られたモデルパラメータと、差分符号データとが含まれるモデルデータが生成される。
 以下では、所定の方式での指向性データのモデル化後に、さらにモデル化対象とされる差分情報と、差分方式での符号化対象とされる差分情報とを区別するため、モデル化対象とされる差分情報を、特に中間差分情報とも称することとする。
 例えば方式(AH4)では、HOA方式でのモデル化により得られる差分情報が中間差分情報であり、この中間差分情報が混合方式でモデル化される。そして、その後、もとの中間差分情報と、混合方式でのモデル化後の中間差分情報との差分を示す差分情報が差分方式により符号化される。
 以上の方式(AH1)乃至方式(AH4)のうち、方式(AH2)では復号側においてもとの指向性データと完全に一致するものを得ることができないが、方式(AH1)、方式(AH3)、および方式(AH4)ではもとの指向性データと完全に一致するものが得られる。
 また、加算ハイブリッド方式ではなく、指向性データが単独の方式でモデル化または符号化されるようにしてもよい。すなわち、例えばHOA方式、混合方式、および差分方式のうちの何れか1つの方式のみで指向性データがモデル化または符号化され、その結果得られたモデルパラメータまたは符号化指向性データが含まれるモデルデータが生成されるようにしてもよい。
(乗算ハイブリッド方式)
 乗算ハイブリッド方式では、所定の方式で指向性データがモデル化され、モデル化後の指向性データと、モデル化前の指向性データとの比(商)がさらに所定の方式とは異なる他の方式でモデル化される。
 乗算ハイブリッド方式の具体的な例として、例えば以下に示す方式(MH1)および方式(MH2)などが考えられる。
 方式(MH1):HOA方式(低次)×振幅変調(混合方式)
 方式(MH2):HOA方式(低次)×振幅位相変調(混合方式)
 方式(MH1)では、まず指向性データがHOA方式でモデル化される。特に、HOA方式でのモデル化では、低次の項までの球面調和関数展開が行われる。
 次に、モデル化前の指向性データを、HOA方式でのモデル化後の指向性データで除算して得られる値(以下、振幅変調情報とも称する)が、さらに混合方式でモデル化される。このとき、例えば振幅変調情報を構成する複素数(複素指向性ゲイン)の絶対値(振幅成分)が混合方式でのモデル化の対象とされてもよいし、モデル化前後の指向性データの振幅成分の比が振幅変調情報とされてもよい。そして、HOA方式でのモデル化により得られたモデルパラメータと、混合方式での振幅変調情報のモデル化により得られたモデルパラメータとが含まれるモデルデータが生成される。
 復号時には、HOA方式についてのモデルパラメータから算出された指向性データに対して、混合方式についてのモデルパラメータから算出された振幅変調情報が乗算されて、最終的な指向性データが算出される。
 このような方式(MH1)では、HOA方式での低次の項までのモデル化では表現しきれない、高域の方位(音源からの方向)に応じた細かい振幅の揺れを示す振幅変調情報が混合方式でモデル化されてモデルデータに記録(格納)される。そして復号時には、HOA方式についてのモデルパラメータから算出された指向性データに対して、振幅変調情報により変調がかけられ、より誤差の少ない指向性データが求められる。
 方式(MH2)では、方式(MH1)における場合と同様に、指向性データに対してHOA方式での低次の項までのモデル化が行われる。
 次に、モデル化前の指向性データを、HOA方式でのモデル化後の指向性データで除算して得られる値(以下、振幅位相変調情報とも称する)が、さらに混合方式でモデル化される。このとき、例えば振幅位相変調情報を構成する複素数(複素指向性ゲイン)の実部と虚部や振幅成分と位相成分が混合方式でのモデル化の対象とされる。なお、振幅位相変調情報が複素混合方式によりモデル化されてもよい。そして、HOA方式でのモデル化により得られたモデルパラメータと、混合方式での振幅位相変調情報のモデル化により得られたモデルパラメータとが含まれるモデルデータが生成される。
 復号時には、HOA方式についてのモデルパラメータから算出された指向性データに対して、混合方式についてのモデルパラメータから算出された振幅位相変調情報が乗算されて、最終的な指向性データが算出される。
 このような方式(MH2)では、HOA方式での低次の項までのモデル化では表現しきれない、方位(音源からの方向)に応じた高域の位相の回転変化を示す振幅位相変調情報が混合方式でモデル化されてモデルデータに記録(格納)される。そして復号時には、HOA方式についてのモデルパラメータから算出された指向性データに対して、振幅位相変調情報により変調がかけられ、より誤差の少ない指向性データが求められる。
 乗算ハイブリッド方式や他の方式において、複素数により表現される指向性ゲイン(複素指向性ゲイン)や中間差分情報をモデル化する場合、複素数の実部と虚部とでそれぞれ異なるまたは同じ方式により独立(個別)にモデル化が行われてもよい。例えば実部が混合方式によりモデル化され、虚部も混合方式によりモデル化されてもよい。
 同様に、振幅成分と位相成分がそれぞれ独立(個別)に任意の方式によりモデル化されてもよいし、複素数のデータが複素混合方式によりモデル化されてもよい。
(球面調和係数モデル化方式)
 球面調和係数モデル化方式では、指向性データがHOA方式でモデル化され、その結果得られたモデルパラメータ、すなわち球面調和係数がさらに混合方式でモデル化され、その結果得られたモデルパラメータがモデルデータに格納される。
 したがって、球面調和係数モデル化方式では、指向性データがHOA方式と混合方式の二段階でモデル化されるということができる。復号時には、まず混合方式についてのモデルパラメータに基づいて球面調和係数が算出され、さらに球面調和係数に基づいて指向性データ(概形指向性データ)が算出される。
 その他、例えばモデルパラメータとしての球面調和係数の実部と虚部のそれぞれ、またはモデルパラメータから求まる振幅成分と位相成分のそれぞれが個別(独立)に混合方式などの任意の方式でモデル化されるようにしてもよい。また、球面調和係数が複素混合方式、すなわち1または複数の複素Bingham分布等によりモデル化されてもよい。
(組み合わせハイブリッド方式)
 組み合わせハイブリッド方式では、上述した帯域ハイブリッド方式、加算ハイブリッド方式、乗算ハイブリッド方式、および球面調和係数モデル化方式のうちの少なくとも2以上のものの組み合わせが用いられてモデルデータが生成される。
 また、例えばHOA方式や混合方式など、モデルデータの生成に用いられた1または複数の方式の組み合わせを示す情報がモデルデータに格納されるようにしてもよい。そのような場合、サーバ11側においてモデルデータの生成に用いる1または複数の方式の組み合わせを適切に選択したり切り替えたりすることができる。
 以上のようにして指向性データがモデル化される場合、モデルデータは、例えば図15および図16に示す構成とされる。なお、図16には図15に示した部分に続く部分が示されている。また、図15および図16において図5に示した場合と対応する部分については、その説明は適宜省略する。
 図15および図16に示す例は、num_sound_types_idで指定される1種類の音源の指向性情報(指向性データ)をdirectivityConfigとして記述した例となっている。特にここでは、ハイブリッド方式を実現する一例としてvMF分布とKent分布、差分データ(差分情報)が存在する場合のSyntaxが示されており、各情報のビット数はあくまで一例である。
 図15および図16に示すモデルデータは、基本的には図5に示したモデルデータと同じデータから構成されているが、図15および図16の例と図5の例とでは、それらのデータのうちのいくつかのデータのビット数とデータ構成が異なっている。
 具体的には、図15および図16に示す例においては、方位角「azimuth_table[i]」および仰角「elevation_table[i]」が16ビットのunsigned shortとされている。
 また、バンド数「band_count」および混合数「mix_count[i_band]」が8ビットのunsigned charとされており、選択フラグ「dist_flag」が1ビットのboolとされている。
 さらに、この例ではモデルデータには、差分情報の符号化に用いられたハイブリッドのモード(差分符号化モード(差分符号化方式))のID、すなわち差分符号化モード情報を示す「mode」が含まれている。また、モデルデータには差分情報の符号化に用いられたハフマン符号化テーブルを示すインデックス「table_index」も含まれている。
 さらにモデルデータには、1.0dBごとの量子化などの量子化ステップサイズを示す「int db_resolution」が含まれている。例えば「int db_resolution」について、値「0」は量子化なしを示しており、値「1」は0.01dBを示しており、値「2」は0.2dBを示しており、値「3」は0.4dBを示しており、値「256」は25.6dBを示している。
 その他、モデルデータには、各ビンについて、データポイントごとに差分情報をハフマン符号化することで得られたハフマンコード(ハフマン符号)、すなわち差分符号データである「diff_data[i_bin][i_point]」も格納されている。
 また、サーバ11から情報処理装置51には、モデルデータに格納されるか、またはモデルデータとは別に図17に示す構成の情報が伝送される。図17に示す情報には、ハフマン符号化テーブルまたは逆引きテーブルが含まれている。
 図17に示す例では、「diff_mode_count」は差分符号化方式の総数を示す情報であり、この総数「diff_mode_count」の分だけ「int_nbits_res_data」が格納されている。
 この「int_nbits_res_data」は、ハフマンコードの最大ビット数、すなわちハフマンコードの最大語長を示す情報であり、例えば1.0dBきざみの場合には7ビットなどとされ、0dBから128dBまでの範囲を表現することができる。
 「element_count」はハフマン符号化テーブルまたは逆引きテーブルの要素数を示す情報であり、その要素数分だけ要素である「Huff_dec_table[i_element]」が格納されている。特に、この例では「Huff_dec_table[i_element]」は、逆引きテーブルの要素となっている。
 また、ハフマン符号化テーブルは、例えば図18に示すようになる。すなわち、図18は、ハフマン符号化テーブルの具体的な一例を示している。
 例えば、具体的な例として図16においてint db_resolution=1dBとした場合、以下のように符号化が行われる。
 0:0dB
 10:+1dB
 11:+2dB
 element_count=4;
 int_nbits_res_data=2;// huffman decodeテーブル(indexからdataを得る逆引きテーブル)の最大語長
 Huff_dec_table[4]={0,0,1,2};
 Huff_dec_tableは最大語長2bitの場合の逆引きテーブルとなる。
 0:0dB
 1:0dB
 2:1dB
 3:2dB
 また、復号時には、以下の手順で処理が行われる。
 (1)最大語長でbitstreamからビット列を取得
 (2)ビット列をi_element(huffman codeを最大語長で記録したものと等価)としてhuff_dec_tableを参照
 (3)i_elementの要素が復元されたデータを得る
 (4)上記データをdb_resolutionを元に復元し、dB値を得る
 なお、復元にはオフセット値が必要である。
 また、元データの音圧(dB値)は、Db=Huff_dec_table[code] * db_resolutionにより得ることができる。
〈サーバの構成例〉
 サーバ11において、1または複数の方式を組み合わせてのモデルデータの生成や差分符号化モードでの差分情報の符号化が行われる場合、例えばサーバ11は図19に示すように構成される。
 なお、図19において図9における場合と対応する部分には同一の符号を付してあり、その説明は適宜、省略する。
 図19に示すサーバ11は、コンピュータなどからなる情報処理装置であり、図9における場合と同様に符号化装置として機能する。
 サーバ11は、指向性データ符号化部201、オーディオデータ符号化部23、および出力部24を有している。
 指向性データ符号化部201は、供給された指向性データに基づいてモデルデータを生成する。指向性データ符号化部201は、モデルパラメータ推定部211、残差算出部212、符号化方式選択部213、ハフマン符号化部214、およびモデルデータ生成部215を有している。
 特に、この例ではモデルパラメータ推定部211および残差算出部212が図9のモデル化部21に対応し、符号化方式選択部213乃至モデルデータ生成部215が図9のモデルデータ生成部22に対応する。
 モデルパラメータ推定部211は、供給された処理対象の指向性データをHOA方式や混合方式など、少なくとも1以上の方式によりモデル化し、その結果得られた方式ごとのモデルパラメータを残差算出部212およびモデルデータ生成部215に供給する。
 残差算出部212は、供給された処理対象の指向性データと、モデルパラメータ推定部211から供給されたモデルパラメータとに基づいて差分情報を算出し、符号化方式選択部213およびハフマン符号化部214に供給する。
 符号化方式選択部213は、供給された処理対象の指向性データと、残差算出部212から供給された差分情報とに基づいて、差分情報をハフマン符号化するときの差分符号化モードとハフマン符号化テーブルを選択し、その選択結果を示す符号化モード情報をハフマン符号化部214およびモデルデータ生成部215に供給する。
 符号化モード情報は、選択された差分符号化モード(差分符号化方式)を示す差分符号化モード情報と、選択されたハフマン符号化テーブルを示すテーブルインデックス情報とからなる。なお、符号化方式選択部213での符号化モード情報の生成にあたっては、差分情報のみが用いられるようにしてもよい。
 ハフマン符号化部214は、符号化方式選択部213から供給された符号化モード情報に基づいて、残差算出部212から供給された差分情報をハフマン符号化し、その結果得られた差分符号データをモデルデータ生成部215に供給する。
 モデルデータ生成部215は、モデルパラメータ推定部211から供給された方式ごとのモデルパラメータと、ハフマン符号化部214から供給された差分符号データと、符号化方式選択部213から供給された符号化モード情報とを含むモデルデータを生成し、出力部24に供給する。なお、差分情報の符号化が行われない場合には、モデルデータには差分符号データは含まれない。また、より詳細には、モデルデータには、上述した指向性データに関する情報も格納される。その他、指向性データのモデル化に用いられた方式を示す情報がモデルデータに格納されてもよい。
 サーバ11が図19に示した構成とされる場合においても、サーバ11では図10を参照して説明した符号化処理が行われる。但し、ステップS11およびステップS12では、より詳細には、以下において説明する処理が行われる。
 すなわち、ステップS11では、モデルパラメータ推定部211において少なくとも1以上の方式により、供給された処理対象の指向性データのモデル化が行われるとともに、残差算出部212において必要に応じて差分情報が算出される。
 換言すれば、例えばHOA方式や混合方式、複素混合方式、差分方式などが必要に応じて組み合わせられ、これにより上述の帯域ハイブリッド方式や、加算ハイブリッド方式、乗算ハイブリッド方式、球面調和係数モデル化方式、組み合わせハイブリッド方式などによりモデルパラメータと差分情報が算出される。
 また、ステップS12では符号化方式選択部213における差分符号化モードとハフマン符号化テーブルの選択、およびハフマン符号化部214におけるハフマン符号化が必要に応じて行われるとともに、モデルデータ生成部215によるモデルデータの生成が行われる。
 具体的には、例えば加算ハイブリッド方式の方式(AH4)によりモデルパラメータが算出される場合、まずモデルパラメータ推定部211は、指向性データをHOA方式でモデル化し、その結果、モデルパラメータとしての球面調和係数を得る。
 また、モデルパラメータ推定部211は、HOA方式によるモデル化後の指向性データと、モデル化前の指向性データとの差分を中間差分情報として求めるとともに、中間差分情報を混合方式によりモデル化する。混合方式による中間差分情報のモデル化によって、パラメータ集中度κや楕円率β、重みφ、ベクトルγ、major軸ベクトルγ、minor軸ベクトルγ、スケールファクタ、最小値がモデルパラメータとして得られる。
 モデルパラメータ推定部211は、HOA方式による指向性データのモデル化により得られたモデルパラメータと、混合方式による中間差分情報のモデル化により得られたモデルパラメータとを残差算出部212およびモデルデータ生成部215に供給する。
 すると、残差算出部212は、モデルパラメータ推定部211から供給されたモデルパラメータと、供給された指向性データとに基づいて差分情報を生成する。この差分情報は、HOA方式および混合方式の組み合わせによりモデル化されたモデル化後の指向性データと、モデル化前の指向性データとの残差である。
 また、ハフマン符号化部214は、符号化方式選択部213から供給された符号化モード情報に従って、残差算出部212から供給された差分情報を必要に応じてハフマン符号化する。
 このとき、差分符号化モード情報により示される方式で処理が行われる。すなわち、例えば空間隣接差分方式、周波数間差分方式、および複素差分方式のうちの1以上の方式により差分情報がハフマン符号化されたり、差分情報に対するハフマン符号化が行われなかったりする。
 例えば空間隣接差分方式によりハフマン符号化が行われる場合、ハフマン符号化部214は、互いに隣接するデータポイント間における差分情報の差分を空間差分情報として求め、その空間差分情報をハフマン符号化することで差分符号データを生成する。
 モデルデータ生成部215は、モデルパラメータ推定部211から供給された、HOA方式のモデルパラメータおよび混合方式のモデルパラメータと、符号化方式選択部213から供給された符号化モード情報とを含むモデルデータを生成する。特に、差分情報のハフマン符号化が行われた場合には、モデルデータ生成部215は、ハフマン符号化部214から供給された差分符号データもモデルデータに格納する。
 なお、差分方式単独でモデルデータが生成される場合、モデルパラメータ推定部211は、供給された指向性データに基づいて、空間隣接差分方式と周波数間差分方式のうちの少なくとも1以上の方式により指向性データの差分(以下、差分指向性データとも称する)を求める。この差分指向性データは、データポイント間やビン間における指向性データ、すなわち指向性ゲインの差分である。
 この場合、符号化方式選択部213は、残差算出部212を介してモデルパラメータ推定部211から供給された差分指向性データに基づいて符号化モード情報を生成する。また、ハフマン符号化部214は、符号化方式選択部213から供給された符号化モード情報に基づいて、残差算出部212を介してモデルパラメータ推定部211から供給された差分指向性データを指定された差分符号化方式によりハフマン符号化し、符号化指向性データを生成する。
 そしてモデルデータ生成部215は、ハフマン符号化部214から供給された符号化指向性データと、符号化方式選択部213から供給された符号化モード情報とを含むモデルデータを生成し、出力部24に供給する。
〈指向性データ生成処理の説明〉
 図19に示した構成のサーバ11から符号化ビットストリームの供給を受けた情報処理装置51は、例えば図20に示す指向性データ生成処理を行うとともに、その後、任意のタイミングで図13を参照して説明した出力オーディオデータ生成処理を行う。
 以下、図20のフローチャートを参照して、復号装置として機能する情報処理装置51により行われる指向性データ生成処理について説明する。
 なお、ステップS111では図12のステップS51の処理と同様の処理が行われる。すなわち、ステップS111ではアンパッキング部81は、モデルデータのアンパッキングを行い、モデルパラメータやモデル化前のもとの指向性データに関する情報、差分符号データなどをモデルデータから抽出する。
 ステップS112においてアンパッキング部81は、アンパッキングにより抽出された方式ごとのモデルパラメータのなかに、まだ指向性データ算出部82に供給していないモデルパラメータがあるか否かを判定する。
 ステップS112においてモデルパラメータがあると判定された場合、アンパッキング部81は、まだ指向性データ算出部82に供給していない、すなわちまだ処理を行っていないモデルパラメータを指向性データ算出部82に供給し、処理はステップS113へと進む。
 ステップS113において指向性データ算出部82は、アンパッキング部81から供給された1つの方式のモデルパラメータに基づいて、モデルパラメータに基づくデータを算出する。
 例えばステップS113では、HOA方式や混合方式など、方式ごとのモデルパラメータに基づいて、モデル化後の指向性データを構成する指向性ゲインや中間差分情報、振幅変調情報、振幅位相変調情報などがモデルパラメータに基づくデータとして算出される。
 ステップS113の処理が行われると、その後、処理はステップS112に戻り、上述した処理が繰り返し行われる。
 また、ステップS112において、指向性データ算出部82に供給していないモデルパラメータがないと判定された場合、その後、処理はステップS114へと進む。
 ステップS114においてアンパッキング部81は、取得部61から供給されたモデルデータに差分符号データが含まれているか否か、すなわち差分符号データがあるか否かを判定する。
 ステップS114において差分符号データが含まれていると判定された場合、アンパッキング部81は、モデルデータから抽出した符号化モード情報および差分符号データを差分情報復号部83に供給し、その後、処理はステップS115へと進む。
 ステップS115において差分情報復号部83は、アンパッキング部81から出力された符号化モード情報および差分符号データを取得する。
 ステップS116において差分情報復号部83は、取得した符号化モード情報に基づいて差分符号データの復号を行い、その結果得られた差分情報(指向性データ残差)を加算部84に供給する。
 例えば符号化モード情報に含まれている差分符号化モード情報によって、空間隣接差分方式による符号化が行われていることが特定されたとする。
 そのような場合、差分情報復号部83は、符号化モード情報に含まれているテーブルインデックス情報により特定される逆引テーブルを用いて、アンパッキング部81から供給された差分符号データに対する復号を行い、各データポイントの空間差分情報を得る。
 そして差分情報復号部83は、処理対象のデータポイントの空間差分情報に、そのデータポイントの近傍にある復号済みの他のデータポイントの差分情報を加算することで、処理対象のデータポイントの差分情報を求める。
 ステップS116の処理が行われたか、またはステップS114において差分符号データがないと判定された場合、その後、ステップS117の処理が行われる。
 ステップS117において指向性データ算出部82および加算部84は、指向性データを算出する。
 すなわち、指向性データ算出部82は、1または複数回行われたステップS113の処理により得られたデータに基づいて概形指向性データを算出し、加算部84に供給する。
 具体的な例として、例えばサーバ11側において、加算ハイブリッド方式の方式(AH4)によりモデルパラメータが算出されたとする。
 そのような場合、1回目のステップS113の処理では、HOA方式のモデルパラメータに基づいてモデル化後の指向性データ(概形指向性データ)が算出される。また、2回目のステップS113の処理では、混合方式のモデルパラメータに基づいてモデル化後の中間差分情報が算出される。
 そこで、指向性データ算出部82は、概形指向性データに中間差分情報を加算することで、すなわち各データポイントにおけるビンごとの指向性ゲインに、各データポイントにおけるビンごとの中間差分情報を加算することで、最終的な概形指向性データを求める。
 加算部84は、このようにして指向性データ算出部82で得られた最終的な概形指向性データに、差分情報復号部83から供給された差分情報(指向性データ残差)を加算することで指向性データを算出し、周波数補間処理部85に供給する。なお、差分情報がない場合には、最終的な概形指向性データがそのまま指向性データとされる。
 また、例えばサーバ11側において、乗算ハイブリッド方式の方式(MH1)によりモデルパラメータが算出されたとする。
 そのような場合、1回目のステップS113の処理では、HOA方式のモデルパラメータに基づいてモデル化後の指向性データ(概形指向性データ)が算出される。また、2回目のステップS113の処理では、混合方式のモデルパラメータに基づいてモデル化後の振幅変調情報が算出される。
 そこで、指向性データ算出部82は、概形指向性データに振幅変調情報を乗算することで、すなわち各データポイントにおけるビンごとの指向性ゲインに、各データポイントにおけるビンごとの振幅変調情報を乗算することで、最終的な指向性データを求める。この場合、ステップS115およびステップS116の処理は行われず、差分情報がないので、指向性データ算出部82で得られた指向性データがそのまま加算部84を介して周波数補間処理部85に供給される。
 なお、例えばサーバ11側において差分方式単独でモデルデータが生成されることもある。そのような場合、ステップS113の処理は行われず、ステップS115およびステップS116において差分情報復号部83により符号化指向性データの復号が行われる。
 すなわち、差分情報復号部83は、符号化モード情報に含まれているテーブルインデックス情報により特定される逆引テーブルを用いて、アンパッキング部81から供給された符号化指向性データに対する復号を行い、差分指向性データを得る。
 そしてステップS117では、差分情報復号部83は、差分指向性データを構成する各データポイントのビンごとの値(差分)に基づいて、指向性データを算出する。
 具体的には、例えばサーバ11側において、空間隣接差分方式により差分指向性データが算出されている場合、差分情報復号部83は、処理対象のデータポイントのビンごとの値(差分)に、そのデータポイントの近傍にある復元済みの他のデータポイントの同じビンの指向性ゲインを加算することで、処理対象のデータポイントのビンごとの指向性ゲインを求める。
 また、例えばサーバ11側において、周波数間差分方式により差分指向性データが算出されている場合、差分情報復号部83は、データポイントの処理対象のビンの値(差分)に、同じデータポイントにおける処理対象のビンの近傍にある復元済みの他のビンの指向性ゲインを加算することで、処理対象のビンの指向性ゲインを求める。
 このように、符号化指向性データがモデルデータに格納されるようにする場合であっても、指向性データの伝送量を低減させることができる。
 ステップS117の処理が行われ、指向性データが算出されると、その後、ステップS118の処理が行われて指向性データ生成処理は終了するが、ステップS118の処理は図12のステップS56の処理と同様であるので、その説明は省略する。
 以上のようにして情報処理装置51は、モデルデータに基づいて指向性データを算出する。このようにすることで指向性データの伝送量を低減させることができる。これにより、伝送遅延の発生や伝送レートの増大を抑制することができる。
〈加算ハイブリッド方式の具体例〉
〈指向性データ符号化部の構成例〉
 ところで、サーバ11において固定的に加算ハイブリッド方式でモデルデータが生成される場合、図19に示したサーバ11における指向性データ符号化部201の構成は、例えば図21に示す構成とすることができる。なお、図21において図19における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
 図21の例では、指向性データ符号化部201は、モデルパラメータ推定部241、演算部242、モデルパラメータ推定部243、演算部244、差分符号化部245、およびモデルデータ生成部215を有している。
 モデルパラメータ推定部241乃至演算部244は、図19のモデルパラメータ推定部211に対応している。
 モデルパラメータ推定部241は、供給された処理対象の指向性データを混合方式によりモデル化し、その結果得られたモデルパラメータをモデルデータ生成部215に供給するとともに、混合方式によるモデル化後の指向性データを演算部242に供給する。
 演算部242は、供給された処理対象の指向性データから、モデルパラメータ推定部241から供給されたモデル化後の指向性データを減算する(差分を求める)ことで中間差分情報を算出し、モデルパラメータ推定部243および演算部244に供給する。
 モデルパラメータ推定部243は、演算部242から供給された中間差分情報をHOA方式によりモデル化し、その結果得られたモデルパラメータをモデルデータ生成部215に供給するとともに、HOA方式によるモデル化後の中間差分情報を演算部244に供給する。
 演算部244は、演算部242から供給された中間差分情報から、モデルパラメータ推定部243から供給されたモデル化後の中間差分情報を減算する(差分を求める)ことで差分情報を算出し、差分符号化部245に供給する。
 差分符号化部245は、演算部244から供給された差分情報と、適宜、供給される処理対象の指向性データ等とに基づいて、符号化モード情報および差分符号データを生成し、モデルデータ生成部215に供給する。
 なお、ここではモデルパラメータ推定部241において混合方式によるモデル化を行い、モデルパラメータ推定部243においてHOA方式によるモデル化を行う例について説明した。
 しかし、これに限らず、モデルパラメータ推定部241やモデルパラメータ推定部243においてどのような方式でモデル化が行われるようにしてもよい。例えば、モデルパラメータ推定部241においてHOA方式によるモデル化が行われ、モデルパラメータ推定部243において混合方式によるモデル化が行われてもよい。
〈差分符号化部の構成例〉
 また、差分符号化部245は、例えば図22に示す構成とすることができる。なお、図22において図19における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
 図22の例では、差分符号化部245は残差算出部212、符号化方式選択部213、多段差分処理部271、およびハフマン符号化部214を有している。
 残差算出部212は、供給された処理対象の指向性データと、モデルパラメータ推定部241およびモデルパラメータ推定部243から供給されたモデル化後の指向性データおよび中間差分情報とに基づいて差分情報を算出し、符号化方式選択部213および多段差分処理部271に供給する。
 多段差分処理部271は、残差算出部212からの差分情報、または演算部244からの差分情報のうちの何れかに基づいて、符号化方式選択部213から供給される符号化モード情報により示される差分符号化モードで多段差分情報を生成する。
 例えば差分符号化モードとして、空間隣接差分方式でハフマン符号化が行われる場合には空間差分情報が多段差分情報として得られ、差分符号化モードとして、周波数間差分方式でハフマン符号化が行われる場合には周波数間差分情報が多段差分情報として得られる。同様に、差分符号化モードとして、空間隣接差分方式と周波数間差分方式でハフマン符号化が行われる場合には、空間差分情報や周波数間差分情報を求めることで得られるハフマン符号化の対象となる情報が多段差分情報となる。
 多段差分処理部271は、得られた多段差分情報を符号化方式選択部213およびハフマン符号化部214に供給する。
 符号化方式選択部213は、供給された処理対象の指向性データと、残差算出部212または演算部244から供給された差分情報と、多段差分処理部271から供給された多段差分情報とに基づいて符号化モード情報を生成し、多段差分処理部271、ハフマン符号化部214、およびモデルデータ生成部215に供給する。
 ハフマン符号化部214は、符号化方式選択部213から供給された符号化モード情報に基づいて、多段差分処理部271から供給された多段差分情報をハフマン符号化し、その結果得られた差分符号データをモデルデータ生成部215に供給する。
〈モデルデータ生成処理の説明〉
 指向性データ符号化部201が図21に示した構成とされる場合、指向性データ符号化部201では、図10のステップS11およびステップS12に対応する処理として、図23に示すモデルデータ生成処理が行われる。
 すなわち、ステップS151においてモデルパラメータ推定部241は、供給された処理対象の指向性データに対して混合方式によるモデル化を行う。
 モデルパラメータ推定部241は、モデル化により得られたモデルパラメータをモデルデータ生成部215に供給するとともに、混合方式によるモデル化後の指向性データを演算部242に供給する。
 ステップS152において演算部242は、供給された処理対象の指向性データと、モデルパラメータ推定部241から供給されたモデル化後の指向性データとに基づいて中間差分情報を算出し、モデルパラメータ推定部243および演算部244に供給する。
 ステップS153においてモデルパラメータ推定部243は、演算部242から供給された中間差分情報に対してHOA方式によるモデル化を行う。
 モデルパラメータ推定部243は、モデル化により得られたモデルパラメータをモデルデータ生成部215に供給するとともに、HOA方式によるモデル化後の中間差分情報を演算部244に供給する。
 ステップS154において演算部244は、演算部242から供給された中間差分情報と、モデルパラメータ推定部243から供給されたモデル化後の中間差分情報とに基づいて差分情報を算出し、差分符号化部245に供給する。
 ステップS155において差分符号化部245は、演算部244から供給された差分情報に基づいて差分符号化を行う。
 すなわち、例えば差分符号化部245の符号化方式選択部213は、供給された処理対象の指向性データと、演算部244から供給された差分情報と、前フレーム等の前回の処理で多段差分処理部271から供給された多段差分情報とに基づいて符号化モード情報を生成し、多段差分処理部271、ハフマン符号化部214、およびモデルデータ生成部215に供給する。なお、符号化方式選択部213が残差算出部212から供給された差分情報を用いて符号化モード情報を生成してもよい。
 また、多段差分処理部271は、例えば演算部244から供給された差分情報と、符号化方式選択部213から供給される符号化モード情報とに基づいて多段差分情報を生成し、符号化方式選択部213およびハフマン符号化部214に供給する。
 ハフマン符号化部214は、符号化方式選択部213から供給された符号化モード情報に基づいて、多段差分処理部271から供給された多段差分情報をハフマン符号化し、その結果得られた差分符号データをモデルデータ生成部215に供給する。
 ステップS156においてモデルデータ生成部215は、パッキングを行うことでモデルデータを生成し、出力部24に供給する。
 具体的には、モデルデータ生成部215は、モデルパラメータ推定部241からの混合方式のモデルパラメータ、モデルパラメータ推定部243からのHOA方式のモデルパラメータ、符号化方式選択部213からの符号化モード情報、およびハフマン符号化部214からの差分符号データを含むモデルデータを生成する。このようにしてモデルデータが生成されると、モデルデータ生成処理は終了する。
 以上のようにして指向性データ符号化部201は、加算ハイブリッド方式によりモデルデータを生成する。このようにすることで、指向性データの伝送量を低減させ、伝送遅延の発生や伝送レートの増大を抑制することができる。
〈分布モデル復号部の構成例〉
 また、指向性データ符号化部201が図21に示した構成とされる場合、情報処理装置51の分布モデル復号部62は、例えば図24に示す構成とされる。なお、図24において図11における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
 図24に示す分布モデル復号部62は、アンパッキング部81、計算部301、計算部302、差分情報復号部83、演算部303、演算部304、および周波数補間処理部85を有している。この例では計算部301および計算部302が図11に示した指向性データ算出部82に対応する。
 計算部301は、アンパッキング部81から供給される混合方式のモデルパラメータに基づいて、混合方式によるモデル化後の指向性データ(概形指向性データ)を算出し、演算部304に供給する。計算部302は、アンパッキング部81から供給されるHOA方式のモデルパラメータに基づいて、HOA方式によるモデル化後の中間差分情報を算出し、演算部303に供給する。
 差分情報復号部83は、アンパッキング部81から供給される符号化モード情報および差分符号データに基づいて差分情報(指向性データ残差)を算出し、演算部303に供給する。演算部303は、差分情報復号部83から供給された差分情報と、計算部302から供給された中間差分情報とを加算(合成)し、その加算結果(差分情報)を演算部304に供給する。
 演算部304は、計算部301から供給された指向性データ(概形指向性データ)と、演算部303から供給された加算結果(差分情報)とを加算し、その結果得られた指向性データを周波数補間処理部85に供給する。
 分布モデル復号部62が図24に示す構成とされる場合、上述した図20の指向性データ生成処理における1回目のステップS113では計算部301により指向性データ(概形指向性データ)が算出される。また、2回目のステップS113では計算部302により中間差分情報が算出される。
 そして、差分情報復号部83によりステップS115およびステップS116の処理が行われて差分情報が生成され、ステップS117では演算部303および演算部304により加算処理が行われ、指向性データが生成される。
〈データポイントの配置について〉
 ところで、上述したモデルデータの構成は、図5に示した構成や、図15および図16に示した構成に限らず、図25に示す構成とすることもできる。
 なお、図25において図5に示した場合と対応する部分については、その説明は適宜省略する。図25においてbslbfはbit string、left bit first、すなわち左ビットが先頭であることを示している。また、uimsbfはunsigned integer most significant bit first、すなわち最上位ビットが先頭である符号無し整数を示している。
 図25に示すモデルデータには、周波数ビンの数を示す周波数ポイント数「bin_count」が含まれており、その周波数ポイント数「bin_count」の分だけ、周波数ビンの中心の周波数「bin_freq[i]」が格納されている。
 また、バンド数「band_count」の分だけ、各バンドにおける混合モデルを構成する分布の数を示す混合数「mix_count[j]」と、バンドに含まれているビンを示すビン情報「bin_range_per_band[j]」とが格納されている。
 さらに、各バンドについて、混合数「mix_count[k]」の分だけ、モデルパラメータとしてのパラメータ集中度κ、重みφi、およびベクトルγと、選択フラグ「dist_flag」とが格納されている。
 この例では、「kappa[j][k]」はパラメータ集中度κを示しており、「weight[j][k]」は重みφiを示している。また、「gamma_x[j][k]」、「gamma_y[j][k]」、および「gamma_z[j][k]」は、ベクトルγを構成するX成分(X座標)、Y成分(Y座標)、およびZ成分(Z座標)を示している。
 選択フラグ「dist_flag」が「1」である場合、すなわち分布がKent分布である場合には、さらに楕円率β、major軸ベクトルγ、およびminor軸ベクトルγが格納されている。
 ここでは、「beta[j][k]」は楕円率βを示しており、「gamma2_x[j][k]」、「gamma2_y[j][k]」、および「gamma2_z[j][k]」は、major軸ベクトルγを構成するX成分、Y成分、およびZ成分を示している。「gamma3_x[j][k]」、「gamma3_y[j][k]」、および「gamma3_z[j][k]」は、minor軸ベクトルγを構成するX成分、Y成分、およびZ成分を示している。
 モデルデータには、周波数ポイント数「bin_count」の分だけ、指向性ゲインのダイナミックレンジを示すスケールファクタ「scale_factor[i]」と、各ビンにおける指向性データのオフセット値、すなわち最小値「offset[i]」も含まれている。
 その他、モデルデータには、各データポイントの位置を特定するための情報も含まれている。
 上述した指向性の記録手法においては、元データ(もとの指向性データ)で定義されていたデータポイントにおける指向性データの値、すなわち指向性ゲインをなるべく正確に復元することを前提としたものとなっている。
 情報処理装置51においては、レンダリング処理を行う際に、復号された指向性データが利用される。しかし、この場合に必要となるのは、もとの指向性データで記述されていたデータポイントにおける値(指向性ゲイン)とは限らず、レンダリング処理時に利用される位置(方位)における指向性ゲインである。
 そのため、例えば球表面上の緯度、経度を等間隔で分割した格子点にデータ(指向性ゲイン)、すなわちデータポイントを配置するようなデータ配置(以下、碁盤目データ配置と称する)だけでなく、様々なデータ配置で指向性データを記録する必要がある。換言すれば、データポイントの座標情報を可能な限り効率良く記録するためのSyntaxが必要である。
 指向性データにおけるデータポイントの配置方式として、例えば以下の方式(配置)が考えられる。
 ・碁盤目データ配置
 ・一様データ配置
 ・非一様データ配置
 ここでいう一様データ配置とは、例えば図26に示すように音源位置を中心とする球表面上に複数のデータポイントが一様に配置されるデータ配置である。換言すれば、一様データ配置では、球表面上のどの領域においても一定の密度でデータポイントが配置される。
 図26の例では、球表面上の各点がデータポイントを表しており、音源位置から見てどの方位においても一定の密度でデータポイントが配置されている、すなわち一定の密度で指向性ゲイン(指向性データ)が記録されることが分かる。
 このような一様データ配置による指向性データの記録は、音源から見た受聴者(ユーザ)の方向が時間とともにまんべんなく変化する場合などに特に有効である。
 また、非一様データ配置とは、音源位置を中心とする球表面上に複数のデータポイントが非一様に配置されるデータ配置である。換言すれば、非一様データ配置では、球表面上の領域ごとに異なる密度でデータポイントが配置される。したがって、碁盤目データ配置は、非一様データ配置の1つの配置例であるということができるが、以下では、非一様データ配置には、碁盤目データ配置は含まれないこととして説明を続ける。
 非一様データ配置の具体的な例として、例えば音源位置を中心とする球表面上における、聴感上重要な音源の正面方位に対応する領域や、位置関係としてユーザの視点と音源が近づく可能性の高い方位に対応する領域にデータポイントを高密度に配置することが考えられる。また、非一様データ配置では、指向性ゲインが大きい領域にデータポイントを高密度に配置することも考えられる。
 非一様データ配置の他の例として、音源位置を中心とする球表面上における、全体として指向性ゲインの変化量の大きい部位(領域)や重要な領域にデータポイント、すなわち指向性ゲインを密に配置し、重要度が低い領域にはデータポイントを粗く配置することも考えられる。
 以上の碁盤目データ配置、一様データ配置、および非一様データ配置の何れにおいても、指向性データの優先度等を決定するにあたり、オブジェクトの優先度と連携させることなどが考えられる。例えば、指向性データの優先度が、その指向性データが活用されるコンテンツにおけるオブジェクトの音源種別の優先度に基づき決定されるようにしてもよい。
 オブジェクトの優先度との連携の例として、例えばコンテンツにおいて複数のオブジェクトが存在する場合に、音楽のコンテンツであれば、ボーカルに対応するオブジェクトの優先度が高くなるようにすることが考えられる。
 また、例えば音楽コンテンツにおけるボーカルや、映画コンテンツにおける音声など、優先度の高い音源種別、つまり優先度の高いオブジェクト音源がある場合には、その音源種別の指向性データの記述に対して、より多くのビットが配分されるようにすることが考えられる。すなわち、より優先度の高い音源種別の指向性データでは、より多くのデータポイントが設けられ、高精細に指向性データが記録されるようにすることが考えられる。
 以上のようなデータ配置でデータポイントの配置位置等を記録する場合、図25に示した情報を含むモデルデータに、例えば図27に示す情報をさらに記述するようにしてもよい。すなわち、図27は、各データポイントの位置を特定するための情報等の記述形式(Syntax)の例を示している。
 なお、ここでは、音源位置(音源中心)から各データポイントまでの距離は一定であるものとする。すなわち、各データポイントが音源位置を中心とする球の表面上に配置される例について説明する。しかし、これに限らず、音源位置からデータポイントまでの距離がデータポイントごとに異なるようにしてもよい。
 図27の例では、「position_type」は、データポイントの配置形式(配置方式)、すなわち座標記録方式を示す情報である。
 例えばデータポイントの配置が碁盤目データ配置である場合には、座標記録方式「position_type」の値は「0x000」とされる。
 また、例えばデータポイントの配置が一様データ配置である場合には、座標記録方式「position_type」の値は「0x001」とされ、データポイントの配置が非一様データ配置である場合には、座標記録方式「position_type」の値は「0x010」とされる。
 「priority_index」は、指向性データの優先度、より詳細には指向性データの優先度を示す優先度情報である。例えば指向性データは、オブジェクトの種別ごと、すなわち音源種別ごとに用意されるため、優先度情報は、音源(オブジェクト)の種別ごとの指向性データの優先度を示しているといえる。この優先度は時間とともに変化してもよい。
 具体的には、例えば優先度「priority_index」の値が「0x000」である場合、すなわち優先度を示す値が最小である場合、指向性データの優先度が最大であることを示している。ここでは、指向性データの優先度が高いほど、優先度を示す値が小さくなる。
 また、指向性データの優先度が最大である場合には、例えばその指向性データについては、復号側である情報処理装置51において空間解像度を落とすことなく、モデル化前(符号化前)の全てのデータポイントが復元(復号)されるようにしてもよい。
 すなわち、情報処理装置51、より詳細には分布モデル復号部62では、モデルデータに基づいて、モデル化前における場合と同位置および同数のデータポイントを有する指向性データが算出されるようにしてもよい。その他、例えば指向性データの優先度に応じて、指向性データを構成するデータポイントの密度(数)が決定されてもよい。
 さらに、この例では座標記録方式「position_type」の値に応じて、データポイントの配置位置(座標)を特定するための情報が記述されている。
 具体的には、座標記録方式「position_type」の値が「0x000」である場合、すなわち碁盤目データ配置である場合には、方位角方向間隔「azimuth_interval」および仰角方向間隔「elevation_interval」が記述されている(格納されている)。
 方位角方向間隔「azimuth_interval」は、球表面上における、方位角方向に互いに隣接するデータポイントの間の方位角方向の間隔を示す角度(方位角の差分)を示している。
 仰角方向間隔「elevation_interval」は、球表面上における、仰角方向に互いに隣接するデータポイントの間の仰角方向の間隔を示す角度(仰角の差分)を示している。
 また、碁盤目データ配置では、情報処理装置51側において、例えば音源位置から見た正面方向の位置など、基準となる少なくとも1つの位置がデータポイントの配置位置として既知となっている。したがって、これらの方位角方向間隔および仰角方向間隔と、予め定められた基準となる位置とから、全てのデータポイントの位置を特定することができる。
 座標記録方式「position_type」の値が「0x001」である場合、すなわち一様データ配置である場合には、球表面上に一様に分布する(配置される)データポイントの数を示すデータポイント数「uniform_dist_point_count」が記述されている(格納されている)。
 一様データ配置では、例えば情報処理装置51側において、データポイント数ごとに各データポイントの配置位置が既知となっており、データポイント数から、全てのデータポイントの位置を特定することができる。
 座標記録方式「position_type」の値が「0x010」である場合、すなわち非一様データ配置である場合には、必須データポイント数「num_mandatory_point」とともに、その必須データポイント数分だけ、必須データポイントの位置を示す方位角データ「azimuth_table[i]」および仰角データ「elevation_table[i]」が記述されている(格納されている)。
 さらに、座標記録方式「position_type」の値が「0x010」である場合、データポイントの配置の解像度、換言すればデータポイントの配置密度を示すデータポイント配置用解像度「gain_resolution」も記述されている(格納されている)。例えばデータポイント配置用解像度「gain_resolution」は、データ(指向性ゲイン)の変動量を示すデシベル値などとされる。
 非一様配置では、データポイント配置用解像度「gain_resolution」により示される指向性ゲインの変動量ごとにデータポイントが設定される。すなわち、データポイント配置用解像度に応じて、復号で得られる指向性データにおけるデータポイントの数が変化する。
 具体的には、非一様配置では、データポイント配置用解像度によらず、必ず存在する(配置される)データポイント、つまり復号時に必ず復元されるデータポイントが必須データポイントとされている。そして、その必須データポイントの数を示す必須データポイント数「num_mandatory_point」が記述されている。
 また、方位角データ「azimuth_table[i]」および仰角データ「elevation_table[i]」は、それぞれ必須データポイントの方位角方向および仰角方向の位置(座標)を示す方位角および仰角とされる。
 したがって、復号側においては、これらの方位角データ「azimuth_table[i]」および仰角データ「elevation_table[i]」によって、各必須データポイントの配置位置を特定することができる。なお、方位角データや仰角データは、必須データポイントの配置位置を特定可能な情報であれば座標、すなわち方位角や仰角に限らず、方位角や仰角を得ることができるインデックスなど、他のどのような情報であってもよい。
 非一様配置では、各必須データポイントの配置位置が特定されると、指向性データにおける必須データポイント以外のデータポイントの配置位置が、必須データポイントの配置位置と、データポイント配置用解像度「gain_resolution」とに基づき特定される。
 具体的には、まずモデルデータ、より詳細にはモデルパラメータに基づき、ビンごとの混合モデルF(x;Θ)が求められる。この混合モデルF(x;Θ)により音源位置を囲む球表面上の任意の位置における指向性ゲインの値が得られる。
 次に、混合モデルF(x;Θ)と、必須データポイントの位置と、データポイント配置用解像度とに基づき、球表面上に必須データポイントではないデータポイント(以下、非必須データポイントとも称する)が配置される。
 非必須データポイントの位置は、混合モデルF(x;Θ)により示される指向性ゲインの値が、球表面上における必須データポイントにおける指向性ゲインの値から、例えば3dBなど、データポイント配置用解像度により示される変動量だけ変化した値となる位置とされる。
 したがって、例えばデータポイント配置用解像度により示される変動量が+3dBであり、任意の1つの必須データポイントにおける指向性ゲインの値が48dBであった場合には、球表面上における指向性ゲインが51dBとなる位置に非必須データポイントが配置される。
 このとき、球表面上の指向性ゲインの値が、既に設定された非必須データポイントにおける指向性ゲインの値から、データポイント配置用解像度により示される変動量だけ変化した値となる位置に、さらに他の非必須データポイントが設定されるようにしてもよい。すなわち、必須データポイントに対して、データポイント配置用解像度により示される変動量分の間隔で非必須データポイントが配置されるようにしてもよい。
 その他、例えばデータポイント配置用解像度に応じた数の非必須データポイントが、方位角方向や仰角方向に互いに隣接する必須データポイントの間に等間隔で配置されるようにしてもよい。
 以上のようにすることで、非一様配置における指向性データを構成する全データポイントの配置位置、すなわち全ての必須データポイントおよび非必須データポイントの配置位置が特定されたことになる。
 このように非一様配置では、復号側で得られる指向性データの非必須データポイントの配置位置や数が、データポイント配置用解像度「gain_resolution」によって変動する。
 以上の例では、データポイントの配置形式(座標記録方式)が碁盤目データ配置、一様データ配置、および非一様データ配置の何れの形式である場合でも、復号側(情報処理装置51)において、優先度「priority_index」の値に応じて指向性データの空間解像度、すなわちデータポイントの数を調整することができる。この場合、各配置形式において、優先度「priority_index」の値に応じてデータポイントの数が変化する。
 具体的には、例えば碁盤目データ配置では、方位角方向間隔「azimuth_interval」や仰角方向間隔「elevation_interval」を大きくすることで、指向性データの空間解像度を低減させることが可能である。
 また、一様データ配置では、データポイント数「uniform_dist_point_count」を小さくすることで、指向性データの空間解像度を低減させることが可能である。
 同様に、非一様データ配置では、データポイント配置用解像度「gain_resolution」を大きくすることで、指向性データの空間解像度を低減させることが可能である。
 指向性データの空間解像度、すなわち復号により得られる指向性データのデータ量の調整方法として、例えば優先度「priority_index」の値を、方位角方向間隔「azimuth_interval」や仰角方向間隔「elevation_interval」に乗算する方法が考えられる。
 また、指向性データの空間解像度の調整方法として、例えば優先度「priority_index」の値の逆数をデータポイント数「uniform_dist_point_count」に乗算する方法や、優先度「priority_index」の値をデータポイント配置用解像度「gain_resolution」に乗算する方法なども考えられる。
 このようにすることで、情報処理装置51では、適切な空間解像度の指向性データを得ることができる。すなわち、指向性データの空間解像度(データポイントの数)を適切に調整することができる。
 なお、図5や図15および図16に示したモデルデータにおいても、各データポイントの位置を特定するための情報として、データポイントごとの方位角や仰角などに代えて、図27に示した構成の情報(以下、データポイント位置情報とも称する)が格納されるようにしてもよい。
 モデルデータに図27に示す構成のデータポイント位置情報が含まれている場合、図10を参照して説明した符号化処理のステップS12では、モデルデータ生成部22は、図25および図27に示した各情報が含まれるモデルデータを生成する。すなわち、データポイント位置情報が含まれるモデルデータが生成される。
 なお、サーバ11が図19に示した構成とされる場合においても、モデルデータ生成部215によりデータポイント位置情報が含まれるモデルデータが生成されるようにしてもよい。
 また、モデルデータの生成時において、差分情報など、データポイントごとの情報が求められる場合には、復号後の指向性データのデータポイント、すなわちデータポイント位置情報により特定されるデータポイントごとに差分情報などの各情報が算出される。
 さらに、モデルデータにデータポイント位置情報が含まれている場合、図12を参照して説明した指向性データ生成処理のステップS52では、指向性データ算出部82は、データポイント位置情報も用いて指向性データを生成する。
 すなわち、指向性データ算出部82は、モデルデータに含まれているデータポイント位置情報に基づき、データポイントの配置形式(座標記録方式)を特定するとともに、指向性データにおける各データポイントの配置位置を特定する。このとき、指向性データ算出部82は、必要に応じて指向性データの優先度情報も用いてデータポイントの配置位置を特定する。
 また、指向性データ算出部82は、モデルパラメータ等から算出された各バンドの混合モデルF’(x;Θ)と、各データポイントの配置位置の特定結果と、ビンごとのスケールファクタと、ビンごとの最小値とに基づいて、データポイントにおけるビンごとの混合モデルの出力値F(x;Θ)を算出する。これにより、各データポイントにおけるビンごとの指向性ゲインからなる概形指向性データが得られる。
 同様に、モデルデータにデータポイント位置情報が含まれている場合、図20を参照して説明した指向性データ生成処理においても、ステップS113やステップS116、ステップS117において、データポイントの配置位置の特定結果が適宜、利用される。
 ところで、以上においては、差分符号化の方式として空間隣接差分方式や周波数間差分方式について説明した。
 例えば周波数間差分方式では、隣接するビン間、すなわち隣接する周波数間における差分情報や指向性ゲインの差分が求められる。
 このような周波数間差分方式では、指向性データにおいて、隣接する周波数(ビン)間では指向性ゲインの値が近い、すなわち指向性データの形状が近いという性質が利用されている。
 同様に、空間隣接差分方式では、隣接するデータポイント間、すなわち隣接する位置間における差分情報や指向性ゲインの差分が求められる。
 このような空間隣接差分方式では、指向性データにおいて、空間的に近い位置の間では指向性ゲインの差分が小さいという性質が利用されている。すなわち、指向性データにおいて、球表面上の指向性ゲインは連続的に変化することが多く、位置(方位)が近いと指向性ゲインの値も近くなるという性質が利用されている。
 一般的に、例えばSOFA(Spatially Oriented Format for Acoustics)形式のファイルなど、指向性やHRTF(頭部伝達関数)を記録する場合には、球表面上にデータが定義されており、以下のような方式でデータポイントが記録されることが多い。
 for elev in elevation
   for azi in azimuth
    data_point(azi, elev)
   end
 end
 具体的には、例えば球表面における同一緯度上、すなわち緯度に対応する円周上において、その円周に沿って互いに隣接する経度の位置にデータポイントが配置されていく。このとき、円周を一周するように、例えば等間隔でデータポイントが配置される。
 そして、処理対象の緯度についてデータポイントが設けられると、その後においては、順次、緯度の値を変更させながら、その緯度に対応する円周上の各経度の位置にデータポイントを配置していくことで、球表面上にデータポイントが設けられる。
 このようにすることで、碁盤目データ配置等の方式の指向性データが得られる。このような碁盤目データ配置においては、南極や北極などの極の周辺におけるデータ密度、すなわちデータポイントの密度が高くなる。
 しかし、上述のように実際に指向性データ(指向性ゲイン)を記録するにあたっては、指向性ゲインの変化を高精細に記録する必要のある重要な方位でデータ(データポイント)が密となるか、または全体として均一(一様な分布)となるようなデータ分布で指向性データを記録することが望ましい。ここでいう重要な方位とは、例えば正面方向等やレンダリング時によく利用される方向、指向性ゲインの値が大きい位置の方向などである。
 また、実際に指向性データの収録を考えた場合、収録の都合により水平面のデータは密に、極周辺は疎に収録されることも考えられる。
 そこで、以下のようにソート(並び替え)を行って差分符号化を行うようにしてもよい。
 (手法DE1):所定の基準でデータポイントをソートした順で差分符号化
 (手法DE2):指向性ゲインのデシベル値を昇順または降順でソートして差分符号化
 (手法DE3):優先度の高い方位から順にソートして差分符号化
 手法DE1では、碁盤目データ配置や一様データ配置、非一様データ配置などのデータ配置に対して予め定められた順番にデータポイント、すなわちデータポイントにおける差分情報や指向性ゲインがソートされる(並び替えられる)。そして、ソート後の互いに隣接するデータポイント間で差分情報や指向性ゲインの差分が求められる。この場合、復号側、つまり情報処理装置51側においては、ソートの順番は既知となっている。
 手法DE2では、データポイントが、それらのデータポイントにおける差分情報や指向性ゲインなどの差分の計算対象となる値(デシベル値(dB値))の昇順または降順でソートされる。このとき、昇順と降順の何れでソートを行うかは、予め定められているようにすればよい。
 また、昇順または降順でソートが行われると、ソート後の互いに隣接するデータポイント間で差分情報や指向性ゲインの差分が求められる。このようにすることで、データポイント間における差分情報や指向性ゲインの差分をより小さくすることができる。
 なお、手法DE2では、復号側(情報処理装置51側)においてソートの順番を特定することができるように、ソート後のデータポイントの並び順を示す情報がモデルデータに格納される。例えば、図27に示したデータポイント位置情報に、ソート後のデータポイントの並び順を示す情報が格納されるようにしてもよい。
 また、ソート後のデータポイントの並び順を示す情報は、例えば各データポイントを示すインデックスをソート順に並べて得られる情報など、どのようなものであってもよい。
 手法DE3では、音源位置から見た各方位(方向)のうち、正面の方位や指向性ゲインが大きい方位など、優先度の高い方位にあるデータポイントから順番に各データポイントがソートされ、ソート後の互いに隣接するデータポイント間で差分情報や指向性ゲインの差分が求められる。これにより、差分符号化された差分情報等のデータ量を所定ビット数内に収めることができる。
 手法DE3においても手法DE2における場合と同様に、ソート後のデータポイントの並び順を示す情報がモデルデータに格納される。
 これらの手法DE1乃至手法DE3では、データポイント間の差分を求める例について説明したが、差分の計算は、データポイント間とビン間のうちの少なくとも何れかについて行われるようにすればよい。
 したがって、例えば手法DE1乃至手法DE3の各手法において、データポイントの位置だけでなく、周波数、つまりビンも考慮して並び替えを行うようにしてもよい。
 そのような場合、例えば手法DE1では、予め定められたデータポイントや周波数(ビン)の順番で差分情報や指向性ゲインがソートされ、ソート後の互いに隣接する差分情報や指向性ゲインの差分、すなわちデータポイント間やビン間での差分が求められる。なお、予め定められた順番にソートが行われた後、データポイント間とビン間の両方で差分が求められてもよいし、ビン間でのみ差分が求められてもよい。
 また、例えば手法DE2においては、同一ビンや同一データポイントなどを対象として、昇順または降順にソートされた差分情報や指向性ゲインについて、互いに隣接する差分情報や指向性ゲインの差分、つまりデータポイント間やビン間での差分が求められるようにすることができる。
 同様に、手法DE3では、データポイントや周波数(ビン)の優先度に応じて、各データポイントのビンでの差分情報や指向性データがソートされ、ソート後の互いに隣接する差分情報や指向性ゲインの差分、つまりデータポイント間やビン間での差分が求められるようにすることができる。換言すれば、この例では、データポイントやビンが優先度の順にソートされる。
 なお、以上の何れかの手法によりソートを行う場合、同じ周波数のビンのみや、所定の周波数帯域に属す複数のビンのみ、同じデータポイントまたは互いに隣接する複数のデータポイントにおけるビンのみをソート対象とするなど、1または複数のビンやデータポイントからなるグループごとにソートが行われるようにしてもよい。
 また、モデルデータ内など、符号化ビットストリーム内の各変数(情報)をテーブル化し、テーブル化後の変数の値を示すインデックスのみを伝送してもよい。
 すなわち、以上において説明した例では、モデルデータ等において、モデルパラメータなどの各種の変数値は、例えば以下のような方式でSyntaxが記述されていた。
 ・Syntax内の変数値を浮動小数点フォーマットで記録
 ・9bit(0から1までの間の値を512段階で表現)や11bit等の整数フォーマットでダイナミックレンジと必要な解像度に応じて値を割り当て
 ここで、変数値を記録する浮動小数点フォーマットでは、変数値としてfloat(32bit)のフォーマット内で任意の値をとることが可能である。
 これに対して、実際にさらなるビット数削減のために以下のような方式でSyntaxが記述されるようにしてもよい。
 すなわち、記述対象の変数値(パラメータ)が特定の値をとることが多いか、または特定の値で代表できる場合には、実際に使用する値、つまり記述する変数値がテーブル化される。そして、モデルデータなどの符号化ビットストリーム内、つまりSyntax内には、テーブル化により得られたインデックスのみが記述される。
 この場合、テーブル自体は符号化ビットストリームとは別に復号側に伝送される。このようにすることで、少ないビット数で変数値を記述し、符号化ビットストリームのデータ量(伝送量)を低減させることができる。
 具体的な例として、例えば変数値のうちの0.0乃至0.1の範囲のみや、0.9乃至1.0の範囲のみなど、変数値のとり得る値のうちの一部の範囲のみをテーブル化することなどが考えられる。
 そのような場合、例えば0.0乃至0.1の範囲など、テーブル化対象となる範囲内の離散的な各値(変数値)に対して、それらの値を示すインデックスが定められる。そして、実際の変数値がテーブル化対象となる範囲内の値である場合には、その実際の変数値に対応するインデックスがモデルデータ内等に格納されて伝送される。
 これに対して、実際の変数値がテーブル化対象となる範囲外の値である場合には、その実際の変数値がモデルデータ内等に格納されて伝送される。
 さらに、上述のスケールファクタ「scale_factor[i]」やオフセット値、すなわち最小値「offset[i]」をパラメトリック表現(圧縮表現)することも考えられる。
 以上においては、各ビンのスケールファクタ「scale_factor[i]」と最小値「offset[i]」を用いて、以下のようにしてビンごとの混合モデルF(x;Θ)が求められると説明した。
 For i_bin in bin
  F(x;Θ)=F’(x;Θ)×scale_factor[i]+offset[i]
 End
 ここで、F’(x;Θ)はバンドごとの混合モデルの出力値である。
 また、スケールファクタ「scale_factor[i]」は、vMF分布やKent分布の総和(モデルデータ総和)、すなわち混合モデルF’(x;Θ)の各データポイントにおける値(指向性ゲイン)の総和と、インデックスiにより示されるビン、すなわちi番目のビンにおけるモデル化前のもと(オリジナル)の指向性データの各データポイントにおける値の総和との比率である。このスケールファクタは、ダイナミックレンジを表すフロート値である。
 なお、モデルデータ総和は、球表面で定義される値(指向性ゲイン)の総和であり、理想的には1となるが、実際には離散化されているため、1とはならない。また、モデル化前のもとの指向性データは、dBスケールのデータであり、スケールファクタの算出時には正の方向にオフセットされる。
 最小値「offset[i]」は、i番目のビンにおけるモデル化前のもと(オリジナル)の指向性データ、すなわち指向性ゲインの最小値(dB値)であり、フロート値で表現されている。
 このようなスケールファクタと最小値を用いた演算により、混合モデルの出力値を各ビンのダイナミックレンジに合わせて補正、復元することができる。
 この場合、ビン数分のスケールファクタと最小値が必要となり、指向性データの周波数解像度を高精細にすると、スケールファクタと最小値の記録に必要な情報量、すなわちビット数がビン数に比例して多くなってしまう。
 そこで、スケールファクタと最小値をパラメトリック表現することで、スケールファクタと最小値の記録に必要な情報量(ビット数)を低減させるようにしてもよい。
 例えば、一例として6個の各音源種別の指向性データについてのスケールファクタおよび最小値(オフセット値)として、図28および図29に示す値が得られる。
 図28は、6個の各音源種別のスケールファクタを示している。なお、図28では、縦軸は無次元の比率であるスケールファクタの値を示しており、横軸はビンのインデックスiを示している。
 この例では、音源種別によって、隣接するビン間でスケールファクタが大きく変動していたり、隣接するビン間でスケールファクタの変動が少なかったりしている。
 図29は、6個の各音源種別の最小値(オフセット値)を示している。なお、図29では、縦軸はdB値である最小値(オフセット値)を示しており、横軸はビンのインデックスiを示している。
 最小値においても、スケールファクタにおける場合と同様に、音源種別によって、隣接するビン間で最小値が大きく変動していたり、変動が少なかったりすることが分かる。
 このように、音源種別によって隣接周波数間(隣接ビン間)においてスケールファクタや最小値の変動の大きさが大きく異なる。
 そのため、スケールファクタや最小値をモデル化、すなわちパラメトリック表現するにあたり、少ないパラメータでモデル化が可能な場合と、パラメータ数が多くなってしまう場合とがあり得る。
 そこで、例えばモデルデータ生成部22やモデルデータ生成部215は、ビン間の変動が大きく、スケールファクタまたは最小値のパラメトリック表現により符号化効率を改善できない場合には、各ビンのスケールファクタまたは最小値をそのままモデルデータに格納(記述)する。
 これに対して、モデルデータ生成部22やモデルデータ生成部215は、ビン間の変動が小さく、符号化効率を改善できる場合には、スケールファクタまたは最小値をパラメトリック化してモデルデータに格納(記述)する。
 パラメトリック化(パラメトリック表現)の一例として、例えば関数近似によるカーブフィッティングなどが挙げられる。
 そのような場合、モデルデータ生成部22やモデルデータ生成部215は、カーブフィッティングなどにより、各ビンのスケールファクタまたは最小値を表すグラフに対応する近似関数を得るための関数近似パラメータを生成する。そして、モデルデータ生成部22やモデルデータ生成部215は、各ビンのスケールファクタまたは最小値に代えて、関数近似パラメータをモデルデータに格納する。
 復号側においては、指向性データ算出部82や計算部301は、関数近似パラメータと、ビンのインデックスiとに基づき、近似関数から各ビンにおけるスケールファクタまたは最小値を求め、モデルパラメータとして用いる。
 このようにすることで、全ビンのスケールファクタや最小値をモデルデータ内に格納する必要があったのが、関数近似パラメータだけを記述すればよくなり、データ量を圧縮することができる。なお、関数近似として、線形関数やn次関数(n≧2)による近似、多項式近似など、任意の近似を行うことが可能である。
 また、スケールファクタや最小値のダイナミックレンジが大きい場合には、関数近似の前処理として、スケールファクタや最小値の対数をとる処理や、スケールファクタや最小値を非線形関数により変換する処理などを行うことでダイナミックレンジを圧縮するようにしてもよい。
 その他、以上においては、HOA方式や混合方式、複素混合方式、差分方式を組み合わせてモデルデータを生成する場合の方式の例として、帯域ハイブリッド方式、加算ハイブリッド方式、乗算ハイブリッド方式、球面調和係数モデル化方式、組み合わせハイブリッド方式について説明した。
 しかし、これに限らず、他の組み合わせによりモデルデータを生成することも勿論可能である。
 例えば音源位置から見た方位ごと、すなわちデータポイントごとや、複数のデータポイントからなる領域ごとに、上述のHOA方式や混合方式、複素混合方式、差分方式、帯域ハイブリッド方式、加算ハイブリッド方式などの任意の方式を切り替えてモデルデータを生成するようにしてもよい。
 指向性データにおいては水平面のデータ、すなわち赤道上のデータ(指向性ゲイン)の使用頻度は高く、逆に極付近のデータの使用頻度は低い可能性が高い。そのため、領域ごとに方式を切り替えることで、適切にモデルデータのビット数を削減することができる。なお、ここでいう水平面とは、音源位置から見た緯度、すなわち仰角(elevation)が0度となる複数の各位置を含む平面である。
 具体的な例として、例えばHOA方式と、混合方式、より詳細にはvMF分布によりモデル化する方式とを組み合わせることなどが考えられる。このとき、例えばHOA方式での球面調和関数展開の次数を1次とし、領域(方位)ごとにHOA方式と混合方式を組み合わせて用いるか、混合方式のみとするかを切り換えるようにしてもよい。
 また、領域ごとにHOA方式での球面調和関数展開の次数を変えてモデルデータを生成することも考えられる。さらに、領域ごとにHOA方式と、混合方式およびHOA方式を組み合わせた方式とを切り替え、かつ領域ごとにHOA方式での球面調和関数展開の次数も変化させることも考えられる。
 その他、水平面付近のデータポイントについては、球面調和関数展開ではなく、円調和関数展開により指向性データをモデル化する方式を用いて高精細に記録し、水平面付近以外のデータポイントについては他の任意の方式により指向性ゲインを疎に記録することも考えられる。
〈第3の実施の形態〉
〈データの対称性の活用について〉
 ところで、指向性データには、元の音源の形状に応じて対称性が存在する場合がある。
 例えば音源としてのスピーカの形状は左右対称であり、スピーカの指向性データも対称となるが、スピーカにツイータ、ウーファが存在する場合には、それらのツイータとウーファの再生帯域が異なるため、指向性データは上下方向については対称とならない。
 また、正12面体スピーカ等も商用化されており、正12面体スピーカでは12方向に対して対称性が成立する。また、立方体形状のフルレンジスピーカであれば、左右対称だけでなく、上下対称も成立する場合がある。一方、人間も外形は左右対称な形状をしており、左右対称がある程度成立するが、上下は頭部、胴体、脚部と対称でない形状をしており、指向性は上下対称とはならない。
 これらのことから、指向性データに対称性がある場合に、その対称性を活用することで伝送データ量を削減することが可能である。
 そのような場合、モデルデータのSyntaxは、例えば図30に示すようになる。
 図30に示すモデルデータには、ビンの数を示す周波数ポイント数「bin_count」が含まれており、周波数ポイント数「bin_count」の分だけ、ビンの中心の周波数「bin_freq[i]」が格納されている。
 また、バンド数「band_count」も格納されており、バンド数「band_count」の分だけ、すなわちバンドごとに指向性データの対称性の利用に関する対称性情報「use_symmetry」が格納されている。
 例えば対称性情報「use_symmetry」の値「4」、「3」、「2」、「1」、および「0」は、それぞれ上下左右対称操作を行うこと、左右対称操作を行うこと、上下対称操作を行うこと、任意の対称、回転を活用すること、および何れの対称、回転の操作も行わないことを示している。
 特に対称性情報「use_symmetry」の値が「0」である場合には、指向性データは、全方位の指向性ゲインが上述のvMF分布やKent分布等からなるモデル、すなわち混合モデル等により記述される。また、対称性情報「use_symmetry」の値「5」乃至「7」はreservedとされている。
 モデルデータには、対称性情報「use_symmetry」の値に応じて、回転操作または対称操作のための操作関連情報が格納されている。
 対称性情報「use_symmetry」の値が「4」である場合、モデルデータには、上下左右対称操作のための操作関連情報「LeftRightVerticalLineSymmetricDir()」が記述されている。対称性情報「use_symmetry」の値が「3」である場合、モデルデータには、左右対称操作のための操作関連情報「LeftRightLineSymmetricDir()」が記述されている。
 また、対称性情報「use_symmetry」の値が「2」である場合、モデルデータには、上下対称操作のための操作関連情報「VerticalLineSymmetricDir()」が記述されている。
 対称性情報「use_symmetry」の値が「1」である場合、モデルデータには、任意の対称または回転の操作のための操作関連情報「SymmetricDir()」が記述されている。
 対称性情報「use_symmetry」の値が「0」である場合、モデルデータには、何れの操作も行われず、指向性データを得るための情報「NonSymmetricDir()」が記述されている。
 図31は、「SymmetricDir()」のSyntaxを示している。
 この例では、モデルデータの「SymmetricDir()」には、図25における場合と同様に、混合数「mix_count[j]」およびビン情報「bin_range_per_band[j]」と、モデルパラメータとしての「kappa[j][k]」、「weight[j][k]」、「gamma_x[j][k]」、「gamma_y[j][k]」、および「gamma_z[j][k]」と、選択フラグ「dist_flag[j][k]」とが格納されている。
 また、選択フラグ「dist_flag[j][k]」の値に応じて、モデルパラメータとしての「beta[j][k]」、「gamma2_x[j][k]」、「gamma2_y[j][k]」、「gamma2_z[j][k]」、「gamma3_x[j][k]」、「gamma3_y[j][k]」、および「gamma3_z[j][k]」も格納されている。
 さらに、「SymmetricDir()」には、操作回数情報「sym_operation_count」および操作フラグ「sym_operation_flag」が格納されている。
 操作回数情報「sym_operation_count」は、vMF分布やKent分布などの1つの分布(分布モデル)に対して、回転してコピーする操作である回転操作、または対称位置にコピーする操作である対称操作を行う回数を示す情報である。
 操作フラグ「sym_operation_flag」は、回転操作と対称操作のうちの何れの操作を行うかを示すフラグ情報である。例えば操作フラグ「sym_operation_flag」の値が「1」である場合、回転操作を行うことを示しており、値が「0」である場合、対称操作を行うことを示している。
 特に、ここでは操作回数情報「sym_operation_count」により示される回数分だけ、操作フラグ「sym_operation_flag」が含まれており、その操作フラグの値に応じて、操作に必要な情報が格納されている。
 すなわち、操作フラグ「sym_operation_flag」の値が「1」である場合、回転操作に必要となる回転軸方位角「sym_azi」、回転軸仰角「sym_elev」、および回転角「sym_rotation」が格納されている。
 ここで、回転軸方位角「sym_azi」および回転軸仰角「sym_elev」は、回転操作を行うときの音源位置から見た回転軸の向きを示す方位角および仰角である。すなわち、これらの回転軸方位角および回転軸仰角により回転軸が定まる。また、回転角「sym_rotation」は、回転操作において回転軸を中心(軸)として回転させるときの角度である。
 また、操作フラグ「sym_operation_flag」の値が「1」でない場合、すなわち操作フラグの値が「0」である場合、音源位置から見た対称操作に必要となる球断面、すなわち対称面の向きを示すヨー角「sym_yaw」、ピッチ角「sym_pitch」、およびロール角「sym_roll」が格納されている。すなわち、これらのヨー角、ピッチ角、およびロール角により対称面が定まる。
 したがって、例えば操作回数情報「sym_operation_count」の値が「2」である場合、2つの各操作フラグ「sym_operation_flag」により示される操作が行われることになる。すなわち、回転操作や対称操作が2回行われることになる。
 さらに、「SymmetricDir()」には、図25における場合と同様に、周波数ポイント数「bin_count」の分だけ、スケールファクタ「scale_factor[i]」と最小値「offset[i]」も格納されている。
 ここで、図32および図33を参照して、回転操作と対称操作について説明する。なお、図32および図33に示す例では、Kent分布について回転操作や対称操作が行われる例となっている。
 図32は、Kent分布について回転操作を行う例を示している。
 この例では、球SP11上における指向性ゲインがKent分布により表現され、ベクトルV81乃至ベクトルV83は、Kent分布のベクトルγ、major軸ベクトルγ、およびminor軸ベクトルγを表している。
 これらのベクトルV81乃至ベクトルV83は、モデルデータに格納されているモデルパラメータ、すなわち「gamma_x[j][k]」乃至「gamma_z[j][k]」や「gamma2_x[j][k]」乃至「gamma2_z[j][k]」によって求まるものである。
 回転操作が行われる場合、情報処理装置51の指向性データ算出部82は、モデルデータから読み出した回転軸方位角「sym_azi」および回転軸仰角「sym_elev」に基づき、回転軸RS11を求める。
 指向性データ算出部82は、ベクトルV81乃至ベクトルV83を用いてKent分布f(x;θi)を求める。
 また、指向性データ算出部82は、ベクトルV'81乃至ベクトルV'83を用いてKent分布f(x;θi)を求める。
 ここでベクトルV'81乃至ベクトルV'83は、回転軸RS11を軸として、モデルデータに格納されている回転角「sym_rotation」だけ、ベクトルV81乃至ベクトルV83を回転させることで得られる回転後のベクトルである。
 この場合、ベクトルV'81乃至ベクトルV'83がKent分布のベクトルγ、major軸ベクトルγ、およびminor軸ベクトルγとして用いられることになる。
 したがって、この例では指向性データ算出部82は、回転軸方位角等に基づいてKent分布のベクトルγなどのモデルパラメータに対する回転操作を行うことで、回転されたモデルパラメータを算出する。そして指向性データ算出部82は、回転前のモデルパラメータと、回転された(回転後の)モデルパラメータとのそれぞれに基づいてKent分布を求め、求められたそれらのKent分布を用いて混合モデル、すなわち指向性データ(指向性ゲイン)を算出する。換言すれば、回転操作前のモデルパラメータから求められたKent分布と、回転操作後のモデルパラメータから求められたKent分布とから合成により1つの分布が求められ、その分布が用いられて混合モデルが求められる。なお、2つのKent分布をそのまま混合モデルの算出に用いてもよいし、右半分や左半分など、それらの2つの各Kent分布の一部の領域のみを混合モデルの算出に用いてもよい。このことは回転操作の場合だけでなく、対称操作の場合でも同様である。
 図33はKent分布について対称操作を行う例を示している。なお、図33において図32における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
 この例では、指向性データ算出部82は、モデルデータから読み出したヨー角「sym_yaw」、ピッチ角「sym_pitch」、およびロール角「sym_roll」に基づき、対称面となる球SP11の断面SF11を求める。この断面SF11は、球SP11の中心(音源位置)を含む平面となっている。
 指向性データ算出部82は、ベクトルV81乃至ベクトルV83を用いてKent分布f(x;θi)を求める。
 また、指向性データ算出部82は、ベクトルV''81乃至ベクトルV''83を用いてKent分布f(x;θi)を求める。
 ここでベクトルV''81乃至ベクトルV''83は、断面SF11を対称面としてベクトルV81乃至ベクトルV83を折り返す(対称移動させる)ことにより得られるベクトルである。すなわち、ベクトルV''81乃至ベクトルV''83とベクトルV81乃至ベクトルV83とは、断面SF11に関して対称(面対称)となっている。
 指向性データ算出部82では、ベクトルV''81乃至ベクトルV''83がKent分布のベクトルγ、major軸ベクトルγ、およびminor軸ベクトルγとして用いられる。
 したがって、この例では指向性データ算出部82は、ヨー角等に基づいてKent分布のベクトルγなどのモデルパラメータに対する対称操作を行うことで、対称移動(対称操作)されたモデルパラメータを算出する。そして指向性データ算出部82は、対称移動前のモデルパラメータと、対称移動された(対称移動後の)モデルパラメータとのそれぞれに基づいてKent分布を求め、求められたそれらのKent分布等から指向性データ(指向性ゲイン)を算出する。
 また、図30に示したモデルデータにおける、指向性データを得るための情報「NonSymmetricDir()」のSyntax例を図34に示す。
 図34に示す例では、図25における場合と同様に、混合数「mix_count[j]」およびビン情報「bin_range_per_band[j]」と、モデルパラメータとしての「kappa[j][k]」、「weight[j][k]」、「gamma_x[j][k]」、「gamma_y[j][k]」、および「gamma_z[j][k]」と、選択フラグ「dist_flag[j][k]」とが格納されている。
 また、選択フラグ「dist_flag[j][k]」の値に応じて、モデルパラメータとしての「beta[j][k]」、「gamma2_x[j][k]」、「gamma2_y[j][k]」、「gamma2_z[j][k]」、「gamma3_x[j][k]」、「gamma3_y[j][k]」、および「gamma3_z[j][k]」も格納されている。
 さらに、周波数ポイント数「bin_count」の分だけ、スケールファクタ「scale_factor[i]」と最小値「offset[i]」も格納されている。
 この例では、回転操作や対称操作が行われないため、モデルデータには、全ての分布を構成するモデルパラメータが記述されている。
 また、操作関連情報「LeftRightVerticalLineSymmetricDir()」、「LeftRightLineSymmetricDir()」、および「VerticalLineSymmetricDir()」のデータ形式(Syntax)は、図34に示した「NonSymmetricDir()」と同じとされる。
 但し、これらの「LeftRightVerticalLineSymmetricDir()」、「LeftRightLineSymmetricDir()」、または「VerticalLineSymmetricDir()」が格納されている場合、すなわち対称性情報「use_symmetry」の値が「4」、「3」、または「2」である場合、指向性データ算出部82は、指向性データの復号時に対称操作を行う。
 具体的には、対称性情報「use_symmetry」の値が「3」である場合、指向性データ算出部82は、モデルデータに記述されているモデルパラメータに対応する分布について、正面正中面に対して左右対称操作を行い、新たなvMF分布やKent分布を得る。
 この場合に行われる左右対称操作は、音源から見た正面正中面(正中面)を図33に示した断面SF11とする対称操作である。換言すれば、正中面を断面SF11として図33を参照して説明した対称操作を行うことで左右対称操作が実現される。この場合、左右対称操作前のモデルパラメータから得られる分布と、左右対称操作後のモデルパラメータから得られる分布とを合成すれば、音源から見て左右対称な1つの分布が得られることになる。
 また、対称性情報「use_symmetry」の値が「2」である場合、指向性データ算出部82は、モデルデータに記述されているモデルパラメータに対応する分布について、正面水平面に対して上下対称操作を行い、新たなvMF分布やKent分布を得る。
 この場合に行われる上下対称操作は、音源から見た正面水平面(水平面)を図33に示した断面SF11とする対称操作である。換言すれば、水平面を断面SF11として図33を参照して説明した対称操作を行うことで上下対称操作が実現される。この場合、上下対称操作前のモデルパラメータから得られる分布と、上下対称操作後のモデルパラメータから得られる分布とを合成すれば、音源から見て上下対称な1つの分布が得られることになる。
 さらに、対称性情報「use_symmetry」の値が「4」である場合、指向性データ算出部82は、モデルデータに記述されているモデルパラメータに対応する分布について、正面に対して上下左右対称操作を行い、新たな分布を得る。ここで、上下左右対称操作とは、操作対象となる分布に対して上下対称操作および左右対称操作を行うことで、上下左右に対称な分布を得る操作である。なお、左右対称操作や上下対称操作を含む対称操作を行ったvMF分布やKent分布は、復号時(復元時)に指向性データが定義される球表面全域にわたって有効となる。また、操作対象の分布または操作により得られた分布において境界が定義され、その境界において指向性ゲインが不連続となるようにしてもよい。
〈第4の実施の形態〉
〈バンド間のクロスフェードについて〉
 以上においては、指向性データを周波数帯域ごと、すなわちバンドごとにモデル化してデータ量を削減する手法について説明した。
 しかし、指向性データ、すなわち指向性ゲインが周波数に応じて徐々に変動していく場合があり、そのような場合にはモデル化したデータのクロスフェードが有効であると考えられる。
 図35にクロスフェードを行う場合におけるモデルデータのSyntax例を示す。
 図35に示す例は、図25に示した各情報に加えて、さらにクロスフェードフラグ「fade_flag」および上限ビンインデックス「bin_range_per_band_fadein[j]」が格納されている(含まれている)。
 特に、この例ではバンド数「band_count」の分だけ、各バンドにおけるクロスフェードフラグ「fade_flag」が格納されている。
 クロスフェードフラグ「fade_flag」は、ビンごとの混合モデルF(x;Θ)を算出するにあたり、互いに隣接するバンド間のクロスフェード、すなわちバンドごとの混合モデルF’(x;Θ)の重み付き加算を行うか否かを示すフラグ情報である。
 例えばクロスフェードフラグ「fade_flag」の値が「1」である場合、バンド間のクロスフェードが行われ、値が「0」である場合、バンド間のクロスフェードは行われない。なお、バンド間のクロスフェードは、2番目以上のバンドにおいて利用される。
 また、クロスフェードフラグ「fade_flag」の値が「1」である場合には、上限ビンインデックス「bin_range_per_band_fadein[j]」が格納されている。
 上限ビンインデックス「bin_range_per_band_fadein[j]」は、バンド間のクロスフェードが行われる上限ビン、すなわちバンド間のクロスフェードが行われるバンド内のビンのうちの最も周波数が高いビンを示すインデックスである。
 バンド間のクロスフェードでは、指向性データ算出部82は、所定のバンドについて求めた混合モデルの出力値F’(x;Θ)と、その所定のバンドに隣接する他のバンドについて求めた混合モデルの出力値F’(x;Θ)とを重み付き加算する。
 そして指向性データ算出部82は、重み付き加算により得られた出力値にスケールファクタを乗算し、さらにその乗算結果に最小値(オフセット値)を加算して得られる値を、他のバンド内の対象となるビンにおける混合モデルの出力値F(x;Θ)とする。
 この場合、クロスフェードの対象となるのは他のバンド内の最も周波数の低いビンから、他のバンドにおける上限ビンインデックス「bin_range_per_band_fadein[j]」により示される上限ビンまでの各ビンであり、その他のビンではクロスフェードは行われない。クロスフェードが行われないビンでは、そのビンが属すバンドにおける混合モデルの出力値F’(x;Θ)とスケールファクタと最小値とから混合モデルの出力値F(x;Θ)が求められる。
 したがって、バンド間のクロスフェードが行われる場合、指向性データ(指向性ゲイン)の算出においては、スケールファクタと最小値の適用前に、隣接するバンド間の復元された混合モデルの出力値の重み付け和(重み付き加算値)を最終的なバンドの混合モデルの出力値とする手順が追加となる。
 図36にバンド間のクロスフェードの概念図を示す。
 図36では、縦軸はクロスフェード時に用いられる重みを示しており、横軸は周波数を示している。また、ここではバンド数が3である場合が例として示されている。
 図中、左側にはバンド間のクロスフェードが行われない場合における重み付き加算時の重みが示されている。
 直線L51乃至直線L53は、各ビンの混合モデルの出力値F(x;Θ)の算出に用いられる、バンド「bin_range_per_band[0]」乃至バンド「bin_range_per_band[2]」の各バンドの混合モデルの出力値F’(x;Θ)の重みを示している。
 特に、この例では、直線L51乃至直線L53の周波数方向の範囲は互いに重なっておらず、各ビン(周波数)についてのバンドごとの混合モデルの出力値F’(x;Θ)の重みが1となっている。したがって、実質的にバンド間のクロスフェードが行われないことが分かる。
 これに対して、図中、右側にはバンド間のクロスフェードが行われる場合における重み付き加算時の重みが示されている。
 折れ線L61乃至折れ線L63は、各ビンの混合モデルの出力値F(x;Θ)の算出に用いられる、バンド「bin_range_per_band[0]」乃至バンド「bin_range_per_band[2]」の各バンドの混合モデルの出力値F’(x;Θ)の重みを示している。
 この例では、例えばバンド「bin_range_per_band[0]」についての混合モデルの出力値F’(x;Θ)の重みを示す折れ線L61の右側の端は、バンド「bin_range_per_band[0]」の範囲外の周波数の位置にある。
 特に、折れ線L61の右側の端部分の周波数(ビン)は、バンド「bin_range_per_band[0]」に隣接するバンド「bin_range_per_band[1]」内にあるビンとなっており、このビンが上限ビン「bin_range_per_band_fadein[1]」となっている。
 したがって、例えばバンド「bin_range_per_band[1]」内の各ビンのうち、最も周波数が低いビンから上限ビン「bin_range_per_band_fadein[1]」までの間にある各ビンについては、バンド間のクロスフェードが行われて各ビンの混合モデルの出力値F(x;Θ)が求められることが分かる。この場合、各ビンにおいて、混合モデルの出力値F(x;Θ)の算出に用いられる重みの総和は1となるように重みが算出される。
 これに対して、バンド「bin_range_per_band[1]」内の各ビンのうち、上限ビンより周波数が高い各ビンについては、折れ線L62により示される重みの値が1となっており、これらのビンではバンド間のクロスフェードは行われないことが分かる。
 バンド間のクロスフェードが行われる場合、所定のビン「i_bin」についてのより周波数が低い側のバンド「i_band-1」の混合モデルの出力値の重みmodel_weighti_band-1[i_bin]は、次式(10)により得ることができる。
Figure JPOXMLDOC01-appb-M000010
 また、所定のビン「i_bin」についてのより周波数が高い側のバンド「i_band」の混合モデルの出力値の重みmodel_weighti_band[i_bin]は、次式(11)により得ることができる。
Figure JPOXMLDOC01-appb-M000011
 さらに、これらの重みと、ビン「i_bin」についてのバンド「i_band+j-1」の混合モデルの出力値Fi_band+j-1(x)とに基づいて、以下の式(12)を計算することで、ビン「i_bin」についての混合モデルの出力値Fi_bin(x)を得ることができる。
Figure JPOXMLDOC01-appb-M000012
 なお、式(12)においてscale_factor[i_bin]およびoffset[i_bin]は、ビン「i_bin」のスケールファクタおよび最小値(オフセット値)を示している。
 指向性データ算出部82は、式(12)を計算することで、各ビンの混合モデルの出力値、すなわち各データポイントのビンごとの指向性ゲインを算出する。このようにすることで、モデルデータのデータ量を削減することができる。
〈第5の実施の形態〉
〈データの対称性の活用について〉
 第3の実施の形態においては、データの対称性の活用について説明した。
 このような対称性を活用して伝送データ量を削減する場合、上述した指向性データの上下や左右の対称性だけでなく、前後方向の対称性を活用したり、前後方向と上下方向や左右方向の対称性を組み合わせて活用したりすることも可能である。
 そのような場合、モデルデータのSyntaxは、例えば図37に示すようになる。
 図37に示すモデルデータには、ビンの数を示す周波数ポイント数「bin_count」が含まれており、周波数ポイント数「bin_count」の分だけ、ビンの中心の周波数「bin_freq[i]」が格納されている。
 また、モデルデータにはバンド数「band_count」も格納されており、バンド数「band_count」の分だけ、すなわちバンドごとに指向性データの対称性の利用に関する対称性情報「use_symmetry[j]」と混合数「mix_count[j]」とビン情報「bin_range_per_band[j]」が格納されている。
 対称性情報「use_symmetry[j]」は、図30に示した対称性情報「use_symmetry」と同様のものであるが、この例では対称性情報「use_symmetry[j]」の値「5」乃至「7」は後述するようにreservedとはされずに使用される。
 また、混合数「mix_count[j]」およびビン情報「bin_range_per_band[j]」は、図31に示したものと同様のものであり、バンドの混合モデルを構成する分布の数、およびモデル化前のもとの指向性データについてのビン(bin)を示す情報である。
 図30に示した例では、操作関連情報等ごとに混合数「mix_count[j]」およびビン情報「bin_range_per_band[j]」が格納されていた。しかし、それらの混合数とビン情報は同じものであるので、図37の例ではモデルデータにおける操作関連情報外の部分に混合数とビン情報が格納されている。
 図37の例ではバンドごとの対称性情報「use_symmetry[j]」の値は、「0」乃至「7」の何れかの値とされる。
 対称性情報「use_symmetry[j]」の値「4」、「3」、「2」、「1」、および「0」は、図30の例と同様に、上下左右対称操作を行うこと、左右対称操作を行うこと、上下対称操作を行うこと、任意の対称、回転を活用すること、および何れの対称、回転の操作も行わないことを示している。
 対称性情報「use_symmetry[j]」の値「7」、「6」、および「5」は、上下前後対称操作を行うこと、前後左右対称操作を行うこと、および前後対称操作を行うことを示している。
 バンド数「band_count」が0より大きい場合(j>0)、モデルデータには各バンドにおけるクロスフェードフラグ「fade_flag」が格納されている。
 このクロスフェードフラグ「fade_flag」は、図35を参照して説明したものと同じものである。すなわち、クロスフェードフラグ「fade_flag」の値が「1」である場合、バンド間のクロスフェードが行われ、値が「0」である場合、バンド間のクロスフェードは行われない。
 また、クロスフェードフラグ「fade_flag」の値が「1」である場合、モデルデータにはバンドについての上限ビンインデックス「bin_range_per_band_fadein[j]」が格納されている。
 その他、モデルデータには、スタートビン「start_bin」が格納されている。
 モデル化前のもとの指向性データでは、周波数「bin_freq[i]」により示されるビンのうち、周波数が低いビンについては実質的にデータが含まれていないことがある。つまり、周波数の低いビンの指向性ゲインが0であることもある。
 スタートビン「start_bin」は、周波数「bin_freq[i]」により示されるビンのうち、0ではない指向性ゲインがデータとして含まれている最も周波数の低いビンを示す情報である。
 また、モデルデータには、対称性情報「use_symmetry[j]」の値に応じて、回転操作または対称操作のための操作関連情報が格納されている。
 対称性情報「use_symmetry[j]」の値が「7」である場合、モデルデータには、上下前後対称操作のための操作関連情報「FrontBackVerticalSymmetricDir()」が記述されている。対称性情報「use_symmetry[j]」の値が「6」である場合、モデルデータには、前後左右対称操作のための操作関連情報「FrontBackLeftRightSymmetricDir()」が記述されている。
 また、対称性情報「use_symmetry[j]」の値が「5」である場合、モデルデータには、前後対称操作のための操作関連情報「FrontBackSymmetricDir()」が記述されている。
 対称性情報「use_symmetry[j]」の値が「4」である場合、モデルデータには操作関連情報「LeftRightVerticalLineSymmetricDir()」が記述されている。対称性情報「use_symmetry[j]」の値が「3」である場合、モデルデータには操作関連情報「LeftRightLineSymmetricDir()」が記述されている。
 また、対称性情報「use_symmetry[j]」の値が「2」である場合、モデルデータには操作関連情報「VerticalLineSymmetricDir()」が記述されている。
 対称性情報「use_symmetry[j]」の値が「1」である場合、モデルデータには操作関連情報「SymmetricDir()」が記述されている。対称性情報「use_symmetry[j]」の値が「0」である場合、モデルデータには情報「NonSymmetricDir()」が記述されている。
 さらにモデルデータには、ダイナミックレンジに関する情報「DynamicRangeForDir()」が記述されている。
 この情報「DynamicRangeForDir()」には、中心の周波数がスタートビン「start_bin」により示されるビンの中心の周波数以上である各ビンについて、スケールファクタ「scale_factor[i]」と最小値「offset[i]」が格納されている。
 図37に示したモデルデータにおける、指向性データを得るための情報「NonSymmetricDir()」のSyntax例を図38に示す。
 図38に示す例では、混合数「mix_count[k]」の分だけ、モデルパラメータとしての「kappa[j][k]」、「weight[j][k]」、「gamma_azi[j][k]」、および「gamma_elev[j][k]」と、選択フラグ「dist_flag[j][k]」とが格納されている。
 ここで、「gamma_azi[j][k]」および「gamma_elev[j][k]」は、ベクトルγの方向を示す水平方向角度(方位角)および垂直方向角度(仰角)を示している。
 図34の例では、「gamma_x[j][k]」、「gamma_y[j][k]」、および「gamma_z[j][k]」によりベクトルγが表現されていたが、図38では方位角および仰角によりベクトルγが表現されている。
 また、選択フラグ「dist_flag[j][k]」の値に応じて、モデルパラメータとしての「beta[j][k]」および「gamma1_azi[j][k]」も格納されている。
 「gamma1_azi[j][k]」は、ベクトルγから見たときのmajor軸ベクトルγやminor軸ベクトルγの相対的な方向を示す水平方向の角度(回転角度)である。
 すなわち、この例ではベクトルγと角度「gamma1_azi[j][k]」とから、major軸ベクトルγおよびminor軸ベクトルγを得ることができる。
 図39は、操作関連情報「LeftRightLineSymmetricDir()」のSyntax例を示している。
 この例では、図38の「NonSymmetricDir()」における場合と同様に、混合数「mix_count[k]」の分だけ、モデルパラメータとしての「kappa[j][k]」、「weight[j][k]」、「gamma_azi[j][k]」、および「gamma_elev[j][k]」と、選択フラグ「dist_flag[j][k]」とが格納されている。
 また、選択フラグ「dist_flag[j][k]」の値に応じて、モデルパラメータとしての「beta[j][k]」および「gamma1_azi[j][k]」も格納されている。
 さらに操作関連情報「LeftRightLineSymmetricDir()」には、混合数「mix_count[k]」の分だけ、バンドにおける指向性ゲインの分布を表す混合モデルを構成するKent分布やvMF分布などの分布(混合)ごとの「sym_flag[k]」が格納されている。
 「sym_flag[k]」は、対象となる分布について、対称や回転などの操作を行うか否かを示すフラグ情報である。例えばフラグ情報「sym_flag[k]」の値「00」は、対称や回転といった操作を行わないことを示しており、フラグ情報「sym_flag[k]」の値「01」は、対称操作を行うことを示している。
 したがって、例えば操作関連情報「LeftRightLineSymmetricDir()」に格納されている所定の分布のフラグ情報「sym_flag[k]」の値が「01」である場合、その分布について左右対称操作が行われる。
 モデルデータにおける操作関連情報「FrontBackVerticalSymmetricDir()」、「FrontBackLeftRightSymmetricDir()」、「FrontBackSymmetricDir()」、「LeftRightVerticalLineSymmetricDir()」、「VerticalLineSymmetricDir()」、および「SymmetricDir()」のデータ形式(Syntax)は、図39の「LeftRightLineSymmetricDir()」と同様とされる。
 この場合、各操作関連情報内のフラグ情報「sym_flag[k]」は、それらの操作関連情報に対応した操作を行うか否かを示すフラグ情報とされる。
 具体的には、例えば操作関連情報「VerticalLineSymmetricDir()」に格納された所定の分布(混合)のフラグ情報「sym_flag[k]」の値が「01」である場合には、その分布について上下対称操作が行われる。
 また、例えば操作関連情報「SymmetricDir()」には、図39に示した操作関連情報「LeftRightLineSymmetricDir()」に格納されている各情報に加えて、さらにフラグ情報「sym_flag[k]」の値に応じて、回転操作や対称操作に必要となる情報も格納される。
 具体的には、例えば図31を参照して説明した回転軸方位角「sym_azi」、回転軸仰角「sym_elev」、および回転角「sym_rotation」や、ヨー角「sym_yaw」、ピッチ角「sym_pitch」、およびロール角「sym_roll」が適宜、操作関連情報に格納される。そして、フラグ情報「sym_flag[k]」の値に応じて、混合モデルを構成する分布ごとに回転操作や対称操作が行われる。この場合、フラグ情報「sym_flag[k]」の値により、回転操作のみや対称操作のみ、回転操作と対称操作の両方など、実行させる操作の組み合わせを指定することができる。
 なお、操作関連情報「SymmetricDir()」の構成を、図31に示した例と同様の構成とし、操作回数情報「sym_operation_count」と操作フラグ「sym_operation_flag」により回転操作や対称操作の実行の有無を規定するようにしてもよい。
 さらに、モデルデータに操作関連情報「FrontBackVerticalSymmetricDir()」、「FrontBackLeftRightSymmetricDir()」、または「FrontBackSymmetricDir()」が格納されている場合、すなわち対称性情報「use_symmetry[j]」の値が「7」、「6」、または「5」である場合、指向性データ算出部82は、指向性データの復号時に対称操作を行う。
 具体的には、対称性情報「use_symmetry[j]」の値が「7」である場合、指向性データ算出部82は、フラグ情報「sym_flag[k]」の値が「01」である分布について上下前後対称操作を行い、新たな分布を得る。
 そして、指向性データ算出部82は、その新たな分布等から指向性データ(指向性ゲイン)を算出する。また、その後、バンドごとのクロスフェードフラグ「fade_flag」の値に応じて、適宜、バンド間のクロスフェードも行われる。
 ここで、上下前後対称操作とは、操作対象となる分布に対して上下対称操作および前後対称操作を行うことで、上下前後に対称な分布を得る操作である。
 この場合に行われる上下対称操作は、音源から見た正面水平面(水平面)を図33に示した断面SF11とする対称操作である。換言すれば、水平面を断面SF11として図33を参照して説明した対称操作を行うことで上下対称操作が実現される。
 また、前後対称操作は、音源から見た正面正中面(正中面)を水平方向に90度だけ回転させて得られる面を図33に示した断面SF11とする対称操作である。換言すれば、正面正中面を水平方向に90度だけ回転させて得られた面を断面SF11として図33を参照して説明した対称操作を行うことで前後対称操作が実現される。
 対称性情報「use_symmetry[j]」の値が「6」である場合、指向性データ算出部82は、フラグ情報「sym_flag[k]」の値が「01」である分布について前後左右対称操作を行って新たな分布を得るとともに、得られた分布を用いて指向性データを算出する。
 前後左右対称操作とは、操作対象となる分布に対して前後対称操作および左右対称操作を行うことで、前後左右に対称な分布を得る操作である。この場合に行われる左右対称操作は、音源から見た正面正中面(正中面)を図33に示した断面SF11とする対称操作である。
 さらに、例えば対称性情報「use_symmetry[j]」の値が「5」である場合、指向性データ算出部82は、フラグ情報「sym_flag[k]」の値が「01」である分布について前後対称操作を行って新たな分布を得るとともに、得られた分布を用いて指向性データを算出する。
 なお、左右対称操作や上下対称操作、前後対称操作を含む対称操作を行ったvMF分布やKent分布などの分布は、復号時(復元時)に指向性データが定義される球表面全域にわたって有効となる。また、操作対象の分布または操作により得られた分布において境界が定義され、その境界において指向性ゲインが不連続となるようにしてもよい。
 その他、第5の実施の形態においては、バンドごとの対称性情報「use_symmetry[j]」で規定した対称や回転の操作について、バンドの混合モデルを構成するKent分布等の分布(混合)ごとに実際に対称や回転の操作を行うか否かをフラグ情報「sym_flag[k]」により規定している。
 しかし、これに限らず、バンドの混合モデルを構成するKent分布等の分布(混合)ごとに、実行する対称や回転の操作を規定できるようにしてもよい。
 そのような場合、例えば分布ごとに、適宜、1bitの対称性情報「use_symmetry」と3bitのフラグ情報「sym_flag[k]」をモデルデータの操作関連情報等に格納し、各分布について行う操作を規定することが考えられる。
 この例では、例えば1bitの対称性情報「use_symmetry」は、対称や回転などの操作を行うか否かを示すフラグ情報とされる。
 具体的には、例えば対称性情報「use_symmetry」の値が「1」である場合、対称や回転などの操作が行われ、対称性情報「use_symmetry」の値が「0」である場合、対称や回転などの操作が行われないようにされる。
 また、対称性情報「use_symmetry」の値が「0」である場合には、対象となる分布については対称や回転の操作は行われないので、操作関連情報等にはその分布についてのフラグ情報「sym_flag[k]」は格納されない。
 これに対して、対称性情報「use_symmetry」の値が「1」である場合には、対象となる分布については対称や回転の操作が行われるので、操作関連情報等にはその分布についてのフラグ情報「sym_flag[k]」が格納される。
 そして、指向性データ算出部82では、フラグ情報「sym_flag[k]」の値に応じた操作が行われ、新たな分布が求められる。
 このとき、フラグ情報「sym_flag[k]」の値「0」、「1」、「2」、「3」、「4」、「5」、「6」、および「7」に対して、例えば操作なし、任意の対称、回転の操作、上下対称操作、左右対称操作、上下左右対称操作、前後対称操作、前後左右対称操作、および上下前後対称操作を割り当てるようにしてもよい。
〈その他〉
 ところで、図12のステップS52や図20のステップS117など、概形指向性データ(指向性データ)の算出時においては、指向性データ算出部82は、モデルパラメータに基づいて各バンドの混合モデルF’(x;Θ)を算出する。
 このとき、指向性データ算出部82は、モデルパラメータから得られるKent分布やvMF分布、複素Bingham分布などといった、混合モデルを構成する複数の分布を、それらの分布の重みφi、すなわち上述のweight[j][k]やweight[i_band][i_mix]を用いて重み付き加算することで混合モデルF’(x;Θ)(指向性データ)を算出する。
 各分布の重みφiの値は、混合モデルを構成する複数の分布の重みφiの総和が1となるように定められるが、各重みφiの値は正の値であってもよいし、負の値であってもよい。
 例えばいくつかの分布の重みφiを負の値とすることで、フィルタにおけるバンドパスとバンドリジェクトフィルタの関係と同様に、混合モデルに急峻なピークだけでなくディップも設けることができるようになる。
 例えば、混合モデルを構成するKent分布やvMF分布などの1つの分布の重みφiを正の値とした場合、その分布に重みφiを乗算すると、重みφiの乗算後の分布は、例えば図40の矢印Q101に示すようになる。
 なお、図40において横方向は、球表面上で定義されるKent分布等の分布における球表面上の所定の方向を示しており、縦方向は分布の各位置における値、すなわち指向性ゲインを示している。
 矢印Q101に示す例では、重みφi乗算後の分布には図中、上に凸のピークがあることが分かる。
 これに対して、混合モデルを構成するKent分布やvMF分布などの1つの分布の重みφiを負の値とした場合、その分布に重みφiを乗算すると、重みφi乗算後の分布は、例えば矢印Q102に示すようになる。この例では、重みφi乗算後の分布には図中、下に凸のディップがあることが分かる。
 したがって、バンドについての混合モデルを構成する全分布の重みφiの総和が1となるという条件で、適宜、負の値を含む各分布の重みφiを定めれば、より自由度を高くし、より多様な形状の混合モデルを表現することができるようになる。
 このように、任意の分布の重みφiを負の値とする場合であっても、全分布の重みφiの総和が1(1.0)となるように設定すれば、一般性が失われることはない。
 また、重みφiの値として負の値もとることができるようにする場合、例えば図25や図31、図34などにおける重みφiとしての10bitの重みweight[j][k]のうちの上位1bitが符号bitとして使用されることになる。このことは、例えば図5における重みweight[i_band][i_mix]においても同様である。
〈コンピュータの構成例〉
 ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
 図41は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
 コンピュータにおいて、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または複数の分布からなる混合モデルによりモデル化することで得られた、前記混合モデルを構成するモデルパラメータが含まれている
 (1)に記載の情報処理装置。
(3)
 前記1または複数の分布は、vMF分布とKent分布の少なくとも何れかを含む
 (2)に記載の情報処理装置。
(4)
 前記指向性データは、複数の各周波数ビンの指向性ゲインを含み、
 前記モデルデータには、1または複数の前記周波数ビンを含む周波数帯域であるバンドごとに、前記指向性ゲインの分布を表す前記混合モデルを構成する前記モデルパラメータが含まれている
 (2)または(3)に記載の情報処理装置。
(5)
 前記モデルデータには、前記周波数ビンにおける前記指向性ゲインのダイナミックレンジを示すスケールファクタと、前記周波数ビンにおける前記指向性ゲインの最小値とが含まれている
 (4)に記載の情報処理装置。
(6)
 前記モデルデータには、モデル化前の前記指向性データと、モデル化後の前記指向性データとの差分を示す差分情報が含まれており、
 前記算出部により算出された前記指向性データに、前記差分情報を加算する加算部をさらに備える
 (1)乃至(5)の何れか一項に記載の情報処理装置。
(7)
 前記差分情報は、ハフマン符号化されている
 (6)に記載の情報処理装置。
(8)
 前記指向性データは、複数の各周波数ビンの指向性ゲインを含み、
 前記算出部により算出された前記指向性データに基づいて補間処理を行うことで、新たな前記周波数ビンの前記指向性ゲインを算出する補間処理部をさらに備える
 (1)乃至(7)の何れか一項に記載の情報処理装置。
(9)
 前記指向性データは、複数の各データポイントにおける指向性ゲインを含み、
 前記算出部により算出された前記指向性データに基づいて補間処理を行うことで、新たな前記データポイントにおける前記指向性ゲインを算出する補間処理部をさらに備える
 (1)乃至(8)の何れか一項に記載の情報処理装置。
(10)
 前記指向性データとオーディオデータとを畳み込む指向性畳み込み部をさらに備える
 (1)乃至(9)の何れか一項に記載の情報処理装置。
(11)
 前記指向性データが畳み込まれた前記オーディオデータと、HRTFとを畳み込むHRTF畳み込み部をさらに備える
 (10)に記載の情報処理装置。
(12)
 前記1または複数の分布は、複素Bingham分布または複素watson分布を含む
 (2)に記載の情報処理装置。
(13)
 前記モデルデータには、前記指向性データを球面調和関数展開によりモデル化することで得られた球面調和係数がモデルパラメータとして含まれている
 (1)に記載の情報処理装置。
(14)
 前記モデルデータには、互いに異なる1または複数の方式により前記指向性データをモデル化することで得られたモデルパラメータが含まれている
 (1)に記載の情報処理装置。
(15)
 前記方式は、1または複数の分布からなる混合モデルによりモデル化する方式、および球面調和関数展開によりモデル化する方式のうちの少なくとも何れかを含む
 (14)に記載の情報処理装置。
(16)
 前記モデルデータには、前記1または複数の方式によるモデル化後の前記指向性データと、モデル化前の前記指向性データとの差分を示す差分情報がさらに含まれている
 (14)または(15)に記載の情報処理装置。
(17)
 前記差分情報は、ハフマン符号化されている
 (16)に記載の情報処理装置。
(18)
 前記差分情報の実部と虚部のそれぞれが個別にハフマン符号化されている
 (17)に記載の情報処理装置。
(19)
 前記モデルデータには、前記1または複数の方式によるモデル化後の前記指向性データと、モデル化前の前記指向性データとの差分を示す差分情報の空間上の位置間および周波数間のうちの少なくとも何れかの差分をハフマン符号化することで得られた差分符号データが含まれている
 (14)または(15)に記載の情報処理装置。
(20)
 前記モデルデータには、前記差分情報の差分の実部と虚部のそれぞれを個別にハフマン符号化することで得られた前記差分符号データが含まれている
 (19)に記載の情報処理装置。
(21)
 前記モデルデータには、前記指向性データを所定の方式によりモデル化することで得られた前記モデルパラメータ、および前記所定の方式によるモデル化後の前記指向性データとモデル化前の前記指向性データとの差分を、前記所定の方式とは異なる方式によりモデル化することで得られた他のモデルパラメータが含まれている
 (14)または(15)に記載の情報処理装置。
(22)
 前記モデルデータには、前記指向性データを所定の方式によりモデル化することで得られた前記モデルパラメータ、および前記所定の方式によるモデル化後の前記指向性データとモデル化前の前記指向性データとの比を、前記所定の方式とは異なる方式によりモデル化することで得られた他のモデルパラメータが含まれている
 (14)または(15)に記載の情報処理装置。
(23)
 前記モデルデータには、前記指向性データをモデル化することで得られた前記モデルパラメータをさらにモデル化することで得られたモデルパラメータが含まれている
 (14)または(15)に記載の情報処理装置。
(24)
 前記モデルデータには、周波数帯域ごとに異なる方式で前記指向性データをモデル化することで得られた前記モデルパラメータが含まれている
 (14)乃至(23)の何れか一項に記載の情報処理装置。
(25)
 前記指向性データは、複数の各データポイントにおける指向性ゲインを含み、
 前記モデルデータには、前記データポイントの配置方式を示す情報、および前記データポイントの配置位置を特定するための情報が含まれている
 (1)乃至(24)の何れか一項に記載の情報処理装置。
(26)
 前記モデルデータには、前記音源の種別ごとの前記指向性データの優先度を示す優先度情報が含まれている
 (25)に記載の情報処理装置。
(27)
 前記データポイントの数は前記優先度に応じて変化し、
 前記算出部は、前記優先度情報を用いて前記データポイントの配置位置を特定する
 (26)に記載の情報処理装置。
(28)
 前記指向性データは、複数の各データポイントにおける周波数ビンごとの指向性ゲインを含み、
 前記モデルデータには、前記差分情報の並び替え後における、前記1または複数の方式によるモデル化後の前記指向性データの前記指向性ゲインと、モデル化前の前記指向性データの前記指向性ゲインとの差分を示す前記差分情報の前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分の前記差分符号データが含まれている
 (19)に記載の情報処理装置。
(29)
 前記並び替えは、予め定められた順、前記データポイント若しくは前記周波数ビンの優先度の順、前記差分情報の昇順、または前記差分情報の降順への並び替えである
 (28)に記載の情報処理装置。
(30)
 前記モデルデータには、各前記周波数ビンにおける前記指向性ゲインのダイナミックレンジを示すスケールファクタと、各前記周波数ビンにおける前記指向性ゲインの最小値との少なくとも何れかをパラメトリック化して得られたパラメータが含まれている
 (4)に記載の情報処理装置。
(31)
 前記モデルデータには、回転操作または対称操作のための操作関連情報が含まれており、
 前記算出部は、前記操作関連情報に基づいて、前記モデルパラメータに対する前記回転操作または前記対象操作を行うことで、回転または対称移動された前記モデルパラメータを算出するとともに、前記回転または対称移動された前記モデルパラメータにより得られる前記分布を用いて前記指向性データを算出する
 (2)乃至(5)の何れか一項に記載の情報処理装置。
(32)
 前記算出部は、所定の前記バンドの前記混合モデルの出力値と、前記所定の前記バンドに隣接する他の前記バンドの前記混合モデルの出力値とを重み付き加算することで、所定の前記周波数ビンの前記指向性ゲインを算出する
 (4)または(5)に記載の情報処理装置。
(33)
 前記算出部は、前記モデルパラメータから得られる複数の前記分布を、負の値を含む重みを用いて重み付き加算することで前記指向性データを算出する
 (2)乃至(5)の何れか一項に記載の情報処理装置。
(34)
 情報処理装置が、
 音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得し、
 前記モデルデータに基づいて、前記指向性データを算出する
 情報処理方法。
(35)
 音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得し、
 前記モデルデータに基づいて、前記指向性データを算出する
 処理をコンピュータに実行させるプログラム。
(36)
 音源の指向性を表す指向性データを、1または複数の分布からなる混合モデルによりモデル化するモデル化部と、
 前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成するモデルデータ生成部と
 を備える情報処理装置。
(37)
 情報処理装置が、
 音源の指向性を表す指向性データを、1または複数の分布からなる混合モデルによりモデル化し、
 前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成する
 情報処理方法。
(38)
 音源の指向性を表す指向性データを、1または複数の分布からなる混合モデルによりモデル化し、
 前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成する
 処理をコンピュータに実行させるプログラム。
(39)
 音源の指向性を表す指向性データであって、複数の各データポイントにおける複数の各周波数ビンの指向性ゲインからなる指向性データに対して、前記指向性ゲインの前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分を求めることにより得られた差分指向性データを取得する取得部と、
 前記差分指向性データに基づいて、前記指向性データを算出する算出部と
 を備える情報処理装置。
(40)
 前記差分指向性データは、ハフマン符号化されており、
 前記算出部は、ハフマン符号化された前記差分指向性データの復号を行う
 (39)に記載の情報処理装置。
(41)
 前記差分指向性データの実部と虚部のそれぞれが個別にハフマン符号化されている
 (40)に記載の情報処理装置。
(42)
 前記差分指向性データは、前記指向性ゲインの並び替え後における、前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの前記差分を求めることにより得られたものである
 (39)乃至(41)の何れか一項に記載の情報処理装置。
(43)
 前記並び替えは、予め定められた順、前記データポイント若しくは前記周波数ビンの優先度の順、前記指向性ゲインの昇順、または前記指向性ゲインの降順への並び替えである (42)に記載の情報処理装置。
(44)
 情報処理装置が、
 音源の指向性を表す指向性データであって、複数の各データポイントにおける複数の各周波数ビンの指向性ゲインからなる指向性データに対して、前記指向性ゲインの前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分を求めることにより得られた差分指向性データを取得し、
 前記差分指向性データに基づいて、前記指向性データを算出する
 情報処理方法。
(45)
 音源の指向性を表す指向性データであって、複数の各データポイントにおける複数の各周波数ビンの指向性ゲインからなる指向性データに対して、前記指向性ゲインの前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分を求めることにより得られた差分指向性データを取得し、
 前記差分指向性データに基づいて、前記指向性データを算出する
 処理をコンピュータに実行させるプログラム。
 11 サーバ, 21 モデル化部, 22 モデルデータ生成部, 23 オーディオデータ符号化部, 51 情報処理装置, 61 取得部, 62 分布モデル復号部, 63 オーディオデータ復号部, 64 レンダリング処理部, 82 指向性データ算出部, 83 差分情報復号部, 84 加算部, 85 周波数補間処理部, 88 時間補間処理部, 89 指向性畳み込み部, 90 HRTF畳み込み部

Claims (45)

  1.  音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得する取得部と、
     前記モデルデータに基づいて、前記指向性データを算出する算出部と
     を備える情報処理装置。
  2.  前記モデルデータには、前記指向性データを1または複数の分布からなる混合モデルによりモデル化することで得られた、前記混合モデルを構成するモデルパラメータが含まれている
     請求項1に記載の情報処理装置。
  3.  前記1または複数の分布は、vMF分布とKent分布の少なくとも何れかを含む
     請求項2に記載の情報処理装置。
  4.  前記指向性データは、複数の各周波数ビンの指向性ゲインを含み、
     前記モデルデータには、1または複数の前記周波数ビンを含む周波数帯域であるバンドごとに、前記指向性ゲインの分布を表す前記混合モデルを構成する前記モデルパラメータが含まれている
     請求項2に記載の情報処理装置。
  5.  前記モデルデータには、前記周波数ビンにおける前記指向性ゲインのダイナミックレンジを示すスケールファクタと、前記周波数ビンにおける前記指向性ゲインの最小値とが含まれている
     請求項4に記載の情報処理装置。
  6.  前記モデルデータには、モデル化前の前記指向性データと、モデル化後の前記指向性データとの差分を示す差分情報が含まれており、
     前記算出部により算出された前記指向性データに、前記差分情報を加算する加算部をさらに備える
     請求項1に記載の情報処理装置。
  7.  前記差分情報は、ハフマン符号化されている
     請求項6に記載の情報処理装置。
  8.  前記指向性データは、複数の各周波数ビンの指向性ゲインを含み、
     前記算出部により算出された前記指向性データに基づいて補間処理を行うことで、新たな前記周波数ビンの前記指向性ゲインを算出する補間処理部をさらに備える
     請求項1に記載の情報処理装置。
  9.  前記指向性データは、複数の各データポイントにおける指向性ゲインを含み、
     前記算出部により算出された前記指向性データに基づいて補間処理を行うことで、新たな前記データポイントにおける前記指向性ゲインを算出する補間処理部をさらに備える
     請求項1に記載の情報処理装置。
  10.  前記指向性データとオーディオデータとを畳み込む指向性畳み込み部をさらに備える
     請求項1に記載の情報処理装置。
  11.  前記指向性データが畳み込まれた前記オーディオデータと、HRTFとを畳み込むHRTF畳み込み部をさらに備える
     請求項10に記載の情報処理装置。
  12.  前記1または複数の分布は、複素Bingham分布または複素watson分布を含む
     請求項2に記載の情報処理装置。
  13.  前記モデルデータには、前記指向性データを球面調和関数展開によりモデル化することで得られた球面調和係数がモデルパラメータとして含まれている
     請求項1に記載の情報処理装置。
  14.  前記モデルデータには、互いに異なる1または複数の方式により前記指向性データをモデル化することで得られたモデルパラメータが含まれている
     請求項1に記載の情報処理装置。
  15.  前記方式は、1または複数の分布からなる混合モデルによりモデル化する方式、および球面調和関数展開によりモデル化する方式のうちの少なくとも何れかを含む
     請求項14に記載の情報処理装置。
  16.  前記モデルデータには、前記1または複数の方式によるモデル化後の前記指向性データと、モデル化前の前記指向性データとの差分を示す差分情報がさらに含まれている
     請求項14に記載の情報処理装置。
  17.  前記差分情報は、ハフマン符号化されている
     請求項16に記載の情報処理装置。
  18.  前記差分情報の実部と虚部のそれぞれが個別にハフマン符号化されている
     請求項17に記載の情報処理装置。
  19.  前記モデルデータには、前記1または複数の方式によるモデル化後の前記指向性データと、モデル化前の前記指向性データとの差分を示す差分情報の空間上の位置間および周波数間のうちの少なくとも何れかの差分をハフマン符号化することで得られた差分符号データが含まれている
     請求項14に記載の情報処理装置。
  20.  前記モデルデータには、前記差分情報の差分の実部と虚部のそれぞれを個別にハフマン符号化することで得られた前記差分符号データが含まれている
     請求項19に記載の情報処理装置。
  21.  前記モデルデータには、前記指向性データを所定の方式によりモデル化することで得られた前記モデルパラメータ、および前記所定の方式によるモデル化後の前記指向性データとモデル化前の前記指向性データとの差分を、前記所定の方式とは異なる方式によりモデル化することで得られた他のモデルパラメータが含まれている
     請求項14に記載の情報処理装置。
  22.  前記モデルデータには、前記指向性データを所定の方式によりモデル化することで得られた前記モデルパラメータ、および前記所定の方式によるモデル化後の前記指向性データとモデル化前の前記指向性データとの比を、前記所定の方式とは異なる方式によりモデル化することで得られた他のモデルパラメータが含まれている
     請求項14に記載の情報処理装置。
  23.  前記モデルデータには、前記指向性データをモデル化することで得られた前記モデルパラメータをさらにモデル化することで得られたモデルパラメータが含まれている
     請求項14に記載の情報処理装置。
  24.  前記モデルデータには、周波数帯域ごとに異なる方式で前記指向性データをモデル化することで得られた前記モデルパラメータが含まれている
     請求項14に記載の情報処理装置。
  25.  前記指向性データは、複数の各データポイントにおける指向性ゲインを含み、
     前記モデルデータには、前記データポイントの配置方式を示す情報、および前記データポイントの配置位置を特定するための情報が含まれている
     請求項1に記載の情報処理装置。
  26.  前記モデルデータには、前記音源の種別ごとの前記指向性データの優先度を示す優先度情報が含まれている
     請求項25に記載の情報処理装置。
  27.  前記データポイントの数は前記優先度に応じて変化し、
     前記算出部は、前記優先度情報を用いて前記データポイントの配置位置を特定する
     請求項26に記載の情報処理装置。
  28.  前記指向性データは、複数の各データポイントにおける周波数ビンごとの指向性ゲインを含み、
     前記モデルデータには、前記差分情報の並び替え後における、前記1または複数の方式によるモデル化後の前記指向性データの前記指向性ゲインと、モデル化前の前記指向性データの前記指向性ゲインとの差分を示す前記差分情報の前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分の前記差分符号データが含まれている
     請求項19に記載の情報処理装置。
  29.  前記並び替えは、予め定められた順、前記データポイント若しくは前記周波数ビンの優先度の順、前記差分情報の昇順、または前記差分情報の降順への並び替えである
     請求項28に記載の情報処理装置。
  30.  前記モデルデータには、各前記周波数ビンにおける前記指向性ゲインのダイナミックレンジを示すスケールファクタと、各前記周波数ビンにおける前記指向性ゲインの最小値との少なくとも何れかをパラメトリック化して得られたパラメータが含まれている
     請求項4に記載の情報処理装置。
  31.  前記モデルデータには、回転操作または対称操作のための操作関連情報が含まれており、
     前記算出部は、前記操作関連情報に基づいて、前記モデルパラメータに対する前記回転操作または前記対象操作を行うことで、回転または対称移動された前記モデルパラメータを算出するとともに、前記回転または対称移動された前記モデルパラメータにより得られる前記分布を用いて前記指向性データを算出する
     請求項2に記載の情報処理装置。
  32.  前記算出部は、所定の前記バンドの前記混合モデルの出力値と、前記所定の前記バンドに隣接する他の前記バンドの前記混合モデルの出力値とを重み付き加算することで、所定の前記周波数ビンの前記指向性ゲインを算出する
     請求項4に記載の情報処理装置。
  33.  前記算出部は、前記モデルパラメータから得られる複数の前記分布を、負の値を含む重みを用いて重み付き加算することで前記指向性データを算出する
     請求項2に記載の情報処理装置。
  34.  情報処理装置が、
     音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得し、
     前記モデルデータに基づいて、前記指向性データを算出する
     情報処理方法。
  35.  音源の指向性を表す指向性データをモデル化することにより得られたモデルデータを取得し、
     前記モデルデータに基づいて、前記指向性データを算出する
     処理をコンピュータに実行させるプログラム。
  36.  音源の指向性を表す指向性データを、1または複数の分布からなる混合モデルによりモデル化するモデル化部と、
     前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成するモデルデータ生成部と
     を備える情報処理装置。
  37.  情報処理装置が、
     音源の指向性を表す指向性データを、1または複数の分布からなる混合モデルによりモデル化し、
     前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成する
     情報処理方法。
  38.  音源の指向性を表す指向性データを、1または複数の分布からなる混合モデルによりモデル化し、
     前記モデル化により得られた、前記混合モデルを構成するモデルパラメータを含むモデルデータを生成する
     処理をコンピュータに実行させるプログラム。
  39.  音源の指向性を表す指向性データであって、複数の各データポイントにおける複数の各周波数ビンの指向性ゲインからなる指向性データに対して、前記指向性ゲインの前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分を求めることにより得られた差分指向性データを取得する取得部と、
     前記差分指向性データに基づいて、前記指向性データを算出する算出部と
     を備える情報処理装置。
  40.  前記差分指向性データは、ハフマン符号化されており、
     前記算出部は、ハフマン符号化された前記差分指向性データの復号を行う
     請求項39に記載の情報処理装置。
  41.  前記差分指向性データの実部と虚部のそれぞれが個別にハフマン符号化されている
     請求項40に記載の情報処理装置。
  42.  前記差分指向性データは、前記指向性ゲインの並び替え後における、前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの前記差分を求めることにより得られたものである
     請求項39に記載の情報処理装置。
  43.  前記並び替えは、予め定められた順、前記データポイント若しくは前記周波数ビンの優先度の順、前記指向性ゲインの昇順、または前記指向性ゲインの降順への並び替えである
     請求項42に記載の情報処理装置。
  44.  情報処理装置が、
     音源の指向性を表す指向性データであって、複数の各データポイントにおける複数の各周波数ビンの指向性ゲインからなる指向性データに対して、前記指向性ゲインの前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分を求めることにより得られた差分指向性データを取得し、
     前記差分指向性データに基づいて、前記指向性データを算出する
     情報処理方法。
  45.  音源の指向性を表す指向性データであって、複数の各データポイントにおける複数の各周波数ビンの指向性ゲインからなる指向性データに対して、前記指向性ゲインの前記データポイント間および前記周波数ビン間のうちの少なくとも何れかの差分を求めることにより得られた差分指向性データを取得し、
     前記差分指向性データに基づいて、前記指向性データを算出する
     処理をコンピュータに実行させるプログラム。
PCT/JP2022/040170 2021-10-29 2022-10-27 情報処理装置および方法、並びにプログラム WO2023074800A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU2022375400A AU2022375400A1 (en) 2021-10-29 2022-10-27 Information processing device, method, and program
TW111141214A TW202325040A (zh) 2021-10-29 2022-10-28 資訊處理裝置及方法、以及程式

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2021-177285 2021-10-29
JP2021177285 2021-10-29
JPPCT/JP2022/000355 2022-01-07
PCT/JP2022/000355 WO2023074009A1 (ja) 2021-10-29 2022-01-07 情報処理装置および方法、並びにプログラム
JPPCT/JP2022/024014 2022-06-15
PCT/JP2022/024014 WO2023074039A1 (ja) 2021-10-29 2022-06-15 情報処理装置および方法、並びにプログラム

Publications (1)

Publication Number Publication Date
WO2023074800A1 true WO2023074800A1 (ja) 2023-05-04

Family

ID=86159688

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2022/024014 WO2023074039A1 (ja) 2021-10-29 2022-06-15 情報処理装置および方法、並びにプログラム
PCT/JP2022/040170 WO2023074800A1 (ja) 2021-10-29 2022-10-27 情報処理装置および方法、並びにプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/024014 WO2023074039A1 (ja) 2021-10-29 2022-06-15 情報処理装置および方法、並びにプログラム

Country Status (3)

Country Link
AU (1) AU2022375400A1 (ja)
TW (1) TW202325040A (ja)
WO (2) WO2023074039A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007006359A (ja) * 2005-06-27 2007-01-11 Sony Corp 復号化装置,復号化方法及びデジタル音声通信システム
JP2008107629A (ja) * 2006-10-26 2008-05-08 Nec Corp オーディオ信号の符号化復号化方法、この方法を実施するための装置及びプログラム
WO2010109918A1 (ja) * 2009-03-26 2010-09-30 パナソニック株式会社 復号化装置、符号化復号化装置および復号化方法
WO2020255810A1 (ja) * 2019-06-21 2020-12-24 ソニー株式会社 信号処理装置および方法、並びにプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007006359A (ja) * 2005-06-27 2007-01-11 Sony Corp 復号化装置,復号化方法及びデジタル音声通信システム
JP2008107629A (ja) * 2006-10-26 2008-05-08 Nec Corp オーディオ信号の符号化復号化方法、この方法を実施するための装置及びプログラム
WO2010109918A1 (ja) * 2009-03-26 2010-09-30 パナソニック株式会社 復号化装置、符号化復号化装置および復号化方法
WO2020255810A1 (ja) * 2019-06-21 2020-12-24 ソニー株式会社 信号処理装置および方法、並びにプログラム

Also Published As

Publication number Publication date
WO2023074039A1 (ja) 2023-05-04
AU2022375400A1 (en) 2024-04-11
TW202325040A (zh) 2023-06-16

Similar Documents

Publication Publication Date Title
JP7400910B2 (ja) 音声処理装置および方法、並びにプログラム
RU2555221C2 (ru) Канальное кодирование на основе комплексного преобразования с частотным кодированием с расширенной полосой
US8190425B2 (en) Complex cross-correlation parameters for multi-channel audio
US8379868B2 (en) Spatial audio coding based on universal spatial cues
US7953604B2 (en) Shape and scale parameters for extended-band frequency coding
US8964994B2 (en) Encoding of multichannel digital audio signals
KR102659722B1 (ko) 공간 확장 음원을 재생하는 장치 및 방법 또는 공간 확장 음원으로부터 비트 스트림을 생성하는 장치 및 방법
US20150163615A1 (en) Method and device for rendering an audio soundfield representation for audio playback
CN105340009A (zh) 声场的经分解表示的压缩
CN106133828A (zh) 编码装置和编码方法、解码装置和解码方法及程序
WO2023074800A1 (ja) 情報処理装置および方法、並びにプログラム
WO2023074009A1 (ja) 情報処理装置および方法、並びにプログラム
KR20210071972A (ko) 신호 처리 장치 및 방법, 그리고 프로그램
WO2018190151A1 (ja) 信号処理装置および方法、並びにプログラム
CN105340008A (zh) 声场的经分解表示的压缩

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: 22887125

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023556636

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2022375400

Country of ref document: AU

Ref document number: AU2022375400

Country of ref document: AU

ENP Entry into the national phase

Ref document number: 2022375400

Country of ref document: AU

Date of ref document: 20221027

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112024008012

Country of ref document: BR