1. Field of the Invention
The present invention relates to a delay time calculation apparatus for directivity control of a speaker array and relates to a delay time calculation method and a storage medium storing a program therefor.
2. Description of the Related Art
As a speaker array system including a speaker array having a plurality of speaker units, there may be mentioned a delay array type speaker array system (see, for example, Japanese Laid-open Patent Publication No. 2006-211230). In the speaker array system of this type, delay times of audio signals to be supplied to respective speaker units are adjusted to control a directivity characteristic of acoustic waves emitted from the speaker array. The directivity control is to control the propagating direction of a combined wavefront of acoustic waves output from the speaker units and control the degree of spread of the combined wavefront. In the directivity control disclosed in Japanese Laid-open Patent Publication No. 2006-211230, first delay processing for horizontal control is performed on an input audio signal IN10 to generate n first delayed audio signals corresponding to respective ones of speaker unit columns SP(i, 1), SP(i, 2), . . . SP(i, n) (i=1 to m). Next, second delay processing for vertical control is performed on respective ones of the n first delayed audio signals to obtain n×m second delayed audio signals, which are supplied to the speaker units SP(i, j) (i=1 to m, j=1 to n).
In an example technique to specify the propagating direction of a combined wavefront, the propagating direction is specified by vertical and horizontal steering angles. Assuming that a direction normal to an array plane of the speaker array is z axis, a vertical direction is y axis, and a horizontal direction perpendicular to the z and y axes is x axis, the propagating direction of the combined wavefront is specified by rotation angles from the z axis to the x axis and from the z axis to the y axis (horizontal and vertical steering angles). Thus, the propagating direction of the combined wavefront can be represented by a and β degrees by which the combined wavefront is steered leftward in the horizontal direction and downward in the vertical direction, making it easy to intuitively understand the propagation direction.
In the case of, for example, a speaker array having four speaker units SP(i, j) (i=1 to 2, j=1 to 2) arranged in two rows and two columns in the horizontal and vertical directions as shown in
For speaker units disposed adjacently in the horizontal direction (e.g., speaker units SP(1,1) and SP(1,2)), audio signals are supplied that have a delay time difference therebetween corresponding to a difference between paths of acoustic waves output from these speaker units. For example, with reference to the audio signal for the speaker unit SP(1,1), the audio signal for the speaker unit SP(1, 2) is applied with a delay corresponding to a path difference (Dx sin a (see
With the directivity control specifying the propagating direction of a combined wavefront by horizontal and vertical steering angles and applying delays corresponding to path differences shown in
This invention provides a delay time calculation apparatus, a delay time calculation method, and a storage medium storing a program for executing the delay time calculation method, which are able to enable all of speaker units constituting a speaker array to contribute to the formation of a combined wavefront directed to an area specified by a user.
According to a first aspect of this invention, there is provided a delay time calculation apparatus comprising a setting unit adapted to set a target area to which a combined wavefront of acoustic waves output from a plurality of speaker units constituting a speaker array is directed, and a delay time calculation unit adapted to calculate delay times of delayed audio signals to be supplied to respective ones of the speaker units such that ratios at each of which an evaluation object area is occupied by an area to which an acoustic wave output from a corresponding one of the plurality of speaker units reaches earlier than acoustic waves output from other speaker units fall within respective ones of predetermined ranges, the evaluation object area being the target area or being a perspective projection image of the target area onto a predetermined evaluation plane.
With the delay time calculation apparatus of this invention, it is possible to enable the speaker units constituting the speaker array to contribute to the formation of a combined wavefront directed to and propagating toward the target area, so that ratios of coverage of the speaker units become predetermined ratios.
The delay time calculation unit can make an adjustment amount of delay larger for that speaker unit for which a larger deviation of the ratio from the predetermined range is found.
In this case, it is possible to rapidly converge the ratio of coverage of each speaker unit to a value falling within the predetermined range.
The delay time calculation unit can make an adjustment amount of delay of the delayed audio signal to be supplied to that speaker unit for which the ratio is deviated from the predetermined range smaller as deviations of the ratios of the speaker units from the predetermined ranges become smaller.
In this case, it is possible to rapidly converge the ratio of coverage of each speaker unit to a value falling within the predetermined range.
The delay time calculation unit can determine the ratios at each of which the evaluation object area is occupied by the area to which the acoustic wave output from a corresponding one of the speaker units reaches earlier than acoustic waves output from the other speaker units by identifying which acoustic wave among the acoustic waves output from the speaker units reaches earliest a corresponding one of evaluation points, which are lattice points obtained by dividing the evaluation object area into meshes, or projection points obtained by projecting, onto the target area, lattice points obtained by dividing a perspective projection image of the target area onto the evaluation plane into meshes.
A spherical plane passing through a gravity of center of the target area and centered on a center of the array plane can be used as the evaluation plane.
The evaluation points can be distributed according to a sound pressure distribution to be formed in the evaluation object area by sound represented by the combined wavefront.
The delay time calculation unit can assume one or more virtual speaker units other than the plurality of speaker units, and can calculate delay times of delayed audio signals to be supplied to respective ones of the plurality of speaker units such that the ratios for the plurality of speaker units and the one or more virtual speaker units fall within predetermined ranges.
According to a second aspect of this invention, there is provided a delay time calculation method comprising a setting step of setting a target area to which a combined wavefront of acoustic waves output from a plurality of speaker units constituting a speaker array is directed, and a delay time calculation step of calculating delay times of delayed audio signals to be supplied to respective ones of the speaker units such that ratios at each of which an evaluation object area is occupied by an area to which an acoustic wave output from a corresponding one of the plurality of speaker units reaches earlier than acoustic waves output from other speaker units fall within respective ones of predetermined ranges, the evaluation object area being the target area or being a perspective projection image of the target area onto a predetermined evaluation plane.
According to a third aspect of this invention, there is provided a computer-readable storage medium storing a program for causing a computer to execute the delay time calculation method according to the second aspect of this invention.
Further features of the present invention will become apparent from the following description of an exemplary embodiment with reference to the attached drawings.
The present invention will now be described in detail below with reference to the drawings showing a preferred embodiment thereof.
The speaker array 2100 includes speaker units 2110-i (i=1 to N, where N represents a natural number not less than 2). The speaker units 2110-i are arranged such that speaker axes extend parallel to one another (i.e., a planer baffle surface is formed). In the speaker array system 2000 in
The delay unit 2200 is a DSP (digital signal processor), for example. The delay unit 2200 performs delay processing on an input audio signal IN10 supplied from an acoustic source 1000 to generate delayed audio signals X10-i (i=1 to N). In a case that an analog signal is input from the acoustic source 1000 as the input audio signal IN10, the analog signal can be converted into a digital signal by an A/D converter before being supplied to the delay unit 2200. In this embodiment, so-called one-tap delay processing is implemented as the delay processing. The one-tap delay processing can be implemented by use of a shift register or a RAM (random access memory). For example, in the case of using a RAM, the delay unit 2200 may perform processing to write the input audio signal IN10 into the RAM and read out the input audio signal IN10 from the RAM upon elapse of time periods corresponding to the delays for the speaker units 2110-i, thereby obtaining the delayed audio signals X10-i to be supplied to the amplification unit 2300. With this embodiment that generates the delayed audio signals X10-i by the one-tap delay processing, the delay unit 2200 can be constituted by a smaller scale DSP than in a case that FIR (finite impulse response) type processing is made to generate the delayed audio signals.
As shown in
The UI providing unit 2400 includes a display device such as a liquid crystal display and an input device such as a mouse, and is used by a user to input various information for use when delay times are computed. As the information for the delay time computation, there may be mentioned array information and area information. As an example of the array information, there may be mentioned a coordinate at which an array plane of the speaker array 2100 is centered, and coordinates at which the speaker units 2110-i of the speaker array 2100 are disposed, in a case that a three dimensional coordinate (having z axis extending in a direction normal to the array plane, y axis extending in a vertical direction, and x axis extending in a horizontal direction (see
On the other hand, the area information is information representing a target area to which a combined wavefront of acoustic waves output from respective ones of the speaker units 2110-i propagates (such as for example, information representing a coordinate of the center of gravity of the target area and the shape and size of the target area). The target area can be set by the user in various manners. For example, a virtual three dimensional coordinate space shown in
The control unit 2500 executes a delay time calculation process to calculate the delay times of the delayed audio signals X10-i based on the evaluation object area represented by the area information AI10 and executes a process to supply the calculated delay times to the delay unit 2200. As shown in
Next, a description is given of the delay time calculation process executed by the CPU 2510 of the control unit 2500 in accordance with the control program 2520a.
In step S110, the CPU 2510 calculates an earliest-arriving speaker unit distribution for a case where the delay time data D10(i) (i=1 to N) stored in the volatile memory 2530 are set to the delay unit 2200. The earliest-arriving speaker unit distribution indicates a distribution of coverage areas of the speaker units 2110-i in the evaluation object area. Each coverage area indicates an area in the evaluation object area to which an acoustic wave output from the corresponding speaker unit reaches earlier than acoustic waves output from the other speaker units. The earliest-arriving speaker unit distribution is calculated as described below.
The CPU 2510 divides the evaluation object area into meshes at equal intervals in the x- and z-axis directions. As shown in
Ti=D10(i)+|Q−SP(i)|/c (1)
Upon completion of the identification of the earliest-arriving speaker units for all the evaluation points in the evaluation object area, the CPU 2510 adds up, in respect of each of the speaker unit 2110-i (i=1 to N), the number of evaluation points for which a given speaker unit is the earliest-arriving speaker unit. As previously described, in this embodiment, the evaluation points are provided in the evaluation object area at equal intervals in the x- and z-axis directions. Thus, a value obtained by dividing the number of evaluation points for which a given speaker unit is the earliest-arriving speaker unit by the total number of the evaluation points in the evaluation object area nearly coincides with a ratio of the dimensions of coverage area of the speaker unit to that of the entire evaluation object area. In this manner, ratios of coverage areas of the speaker units 2110-i (i=1 to N) to the entire evaluation object area are calculated.
Next, the CPU 2510 determines whether or not there is any speaker unit for which the ratio of the coverage area calculated in step S110 falls outside a predetermined range (step S120). The predetermined range can be determined variously. In this embodiment, as the predetermined range, a range of plus or minus several percent around a value obtained by dividing the dimensions of the entire evaluation object area (or the total number of the evaluation points in the evaluation object area) by the number of the speaker units 2110-i is used, to thereby make the evaluation object area equally covered by the respective speaker units 2110-i. It should be noted that the range of plus or minus several percent can appropriately be determined based on the required accuracy of propagating direction of or the degree of spread of the combined wavefront and the length of time required for the delay time computation. If the answer to step S120 becomes NO (i.e., if the ratios between the coverage areas of all the speaker units and the entire evaluation object area each fall within the predetermined range), the CPU 2501 executes processing in step S140 described later and completes the delay time calculation process. If, on the other hand, the answer to step S120 becomes YES, the CPU 2510 proceeds to step S130.
In step S130, the CPU 2510 determines one or more speaker units whose coverage area ratio is excessively large beyond the predetermined range and one or more speaker units whose coverage area ratio is excessively small beyond the predetermined range. Then, the CPU 2510 increases, by a predetermined adjustment amount ΔD, the delay time data stored in the volatile memory 2530 for each speaker unit whose coverage area ratio is excessively large, and decreases, by ΔD, the delay time data for each speaker unit whose coverage area ratio is excessively small. In the following, a description is given of the reason why the delay time data is increased if the ratio of the coverage area to the entire evaluation object area is excessively large and decreased if the ratio is excessively small.
The time period Ti required from when the audio signal IN10 is input to the speaker system 2000 until when the acoustic wave output from the speaker unit 2110-i (i=1 to N) reaches a given evaluation point Q is represented by formula (1), as previously described. In a case that the earliest-arriving speaker unit for the evaluation point Q is the k-th speaker unit 2110-k and the ratio of the coverage area of the speaker unit 2110-k to the entire evaluation object area is excessively large, the processing is carried out to increase, by ΔD, the delay time data D10-k of the delayed audio signal X10-k to be supplied to the speaker unit 2110-k, whereby the required time period Tk associated with the speaker unit 2110-k is increased by ΔD.
If the delay time data D10-k is updated as described above, a change occurs in the time period required for the acoustic wave output from the speaker unit 2110-k to reach the evaluation point Q. Thus, the speaker unit 2110-k is not necessarily the earliest-arriving speaker unit for the evaluation point Q after the delay time data D10-k is updated. In a case, for example, that the j-th speaker unit 2110-j (j≠k) is the smallest next to the speaker unit 2110-k in the required time period in formula (1) and the required time period Tj satisfies a relation of Tk<Tj<Tk+ΔD, the speaker unit 2110-j becomes the earliest-arriving speaker unit for the evaluation point Q, instead of the speaker unit 2110-k. If the delay time data D10(i) is increased in this manner, the number of evaluation points covered by the speaker unit 2110-i supplied with the delayed audio signal X10-i whose delay time is represented by the delay time data D10(i) (i.e., the ratio of the coverage area to the entire evaluation object area) is decreased and becomes closer to a value falling within the predetermined range. On the other hand, if the delay time data D10(i) is decreased, the ratio of the coverage area to the entire evaluation object area is increased as apparent from the foregoing description. The above is the reason why the delay time data D10(i) is increased if the ratio of the coverage area to the entire evaluation object area is excessively large, and decreased if the ratio of the coverage area to the entire evaluation object area is excessively small.
As the adjustment amount ΔD of the delay time data D10(i), there may be used a fixed value or a value that varies according to an excess (or deficiency) relative to the predetermined range. For example, a value that increases with the increasing deviation from the center of the predetermined range may be used. The adjustment amount ΔD can be computed according to, e.g., the following formula (2), where |R| represents the magnitude of the excess (or deficiency) and a represents a predetermined proportional constant.
ΔD=a×|R| (2)
After execution of the processing in step S130, the CPU 2510 executes the processing in step S110 again. The processing in step S130 is therefore repeatedly carried out until the answer to step S120 becomes NO (i.e., until when the ratios of the coverage areas of all the speaker units 2110-i to the entire evaluation object area fall within the predetermined range).
If the answer to step S120 becomes NO, the CPU 2510 carries out processing to update each of the delay time data D10(i) (i=1 to N) stored in the volatile memory 2530 to a value obtained by subtracting the smallest one among the delay time data from each thereof and set the updated data to the delay unit 2200 (step S140), and completes the delay time calculation process. The reason why the value obtained by subtracting the smallest one among the delay time data D10(i) from each thereof is set to the delay unit 2200 as the delay time of the delayed audio signal X10-i supplied to the speaker unit 2110-i is to reduce the entire delay time and prevent the delay time from having a negative value.
After completion of the above described setting of the delay times for the speaker units 2110-i (i=1 to N), the delay unit 2200 performs processing to apply delays corresponding to the delay times to the input audio signal IN10 supplied from the acoustic source 1000, to thereby generate and output the delayed audio signals X10-i (i=1 to N). Sounds corresponding to the delayed audio signals X10-i are output from the speaker units 2110-i. A combined wavefront having a predetermined wavefront (in general, an aspherical wavefront) and propagating toward the evaluation object area is formed by acoustic waves output from the speaker units 2110-i.
In a conventional delay array type control, for a speaker array 2100 having 36 speaker units 2110-1 to 2110-36 arranged as shown in
As described above, according to this embodiment, the directivity of the combined wavefront formed by acoustic waves output from the speaker units 2110-i can intuitively be adjusted based on the position and shape of the target area, and therefore it is unnecessary to calculate, prior to delay time computation, to which directions acoustic waves output from the speaker units 2110-i should be propagated. Conventionally, a problem is posed that some speaker units do not contribute to the formation of a combined wavefront propagating the intended direction, even if delay times of delayed audio signals to be supplied to speaker units are adjusted such that acoustic waves output from speaker units 2110-i propagate in predetermined directions. On the other hand, according to this embodiment, it is possible to enable all the speaker units 2110-i constituting the speaker array 2100 to contribute to the formation of a combined wavefront propagating in the direction intended by the user, by determining delay time data D10(i) of delayed audio signals X10-i to be supplied to the speaker units 2110-i so that coverage areas of the speaker units 2110-i are equalized, as described above. According to this embodiment, since the speaker units 2110-i constituting the speaker array 2100 contribute to the formation of a combined wavefront directed to the target area, delay time differences are made small observed when acoustic waves output from the speaker units 2110-i reach the evaluation point. Thus, the resultant wavefront at the evaluation points can be intensified. Since the delay processing executed by the delay unit 2200 of the speaker array system 1 of this embodiment is one-tap delay processing, the delay unit 2200 can be formed by a small scale DSP and therefore the construction of the speaker system 1 can be simplified.
In the above, there has been described one embodiment of this invention, which may be modified variously as described below.
(First Modification)
In the embodiment, this invention is applied to a two-dimensional speaker array in which a plurality of speaker units are arranged to form a planar baffle surface. However, this invention is, of course, applicable to a speaker array having speaker units arranged to form a curved baffle surface.
(Second Modification)
In the embodiment, the coverage areas of the speaker units 2110-i constituting the speaker array 2100 are equalized, but the dimensions of the coverage areas can be made different between speaker units. Specifically, the dimensions of coverage areas can be made different according to types of speaker units or installation positions thereof on the speaker array. The dimensions of coverage areas can be made different according to installation conditions of the speaker units such that coverage areas of speaker units disposed at a larger spacing distance are made larger. In that case, the ratio of the coverage area of each speaker unit to the entire evaluation object area is specified by the user, and it is determined in step S130 whether or not the ratio of coverage area calculated in step S110 for each speaker unit falls with a range around the specified ratio. A width of the range can be specified by the user. In a case that a narrow width of the range is specified, it is possible for the ratio of coverage area of the corresponding speaker unit to the entire evaluation object area to converge to a value close to the specified ratio, but a computation time required for the convergence becomes long. On the other hand, if a wide width of the range is specified, the computation time can be shortened, but a deviation of the ratio of the coverage area of each speaker unit to the entire evaluation object area from the specified ratio becomes large.
(Third Modification)
In the embodiment, there have been described cases where a fixed value and a value (see, formula (2)) determined according to the excess (or deficiency) R of the ratio of the coverage area of each speaker unit 2110-i to the entire evaluation object area are respectively used as adjustment amount AD for adjustment of delay time data D10(i). However, the delay time data D10(i) can be calculated using other technique. For example, during the process to repeatedly execute the processing in steps S110 to S130 in
(Fourth Modification)
In the embodiment, the ratios of coverage area of a plurality of speaker units 2110-i (i=1 to N) constituting the speaker array 2100 to the entire evaluation object area are calculated, and delay times of delayed audio signals X10-i to be supplied to the speaker units 2110-i are determined. Alternatively, dummy speaker units not present actually in the speaker array (hereinafter referred to as the virtual speaker units) may be assumed, coverage areas may also be assigned to virtual speaker units, and delay times of delayed audio signals to be supplied to the speaker units may be calculated. In that case, only delay times of delayed audio signals supplied to speaker units which are actually present may be made processing objects of the processing to make a minimum delay time zero (processing in step S140 in
(Fifth Modification)
In the embodiment, the target area itself is the evaluation object area, and lattice points obtained by dividing the evaluation object area into meshes at equal intervals are the evaluation points. Alternatively, the evaluation object area may be a perspective projection image of the target area onto a predetermined plane (hereinafter referred to as the evaluation plane), and delay time data D10(i) of delayed audio signals X10-i to be supplied to the speaker units 2110-i may be calculated by executing the processing in
In a case, for example, that a spherical plane passing through the center of gravity of the target area and centered on the center of the baffle surface of the speaker array 2100 is used as the evaluation plane and evaluation points are set by dividing the evaluation object area, which is an perspective projection image of the target area onto the evaluation plane, into meshes at equal intervals, distances between the evaluation points on the evaluation object area and the speaker array 2100 are nearly constant irrespective of a relative positional relation between the speaker array 2100 and the target area. Thus, if the coverage areas of the speaker units 2110-i (i=1 to N) are equalized, solid angles corresponding to these coverage areas become constant, making it possible to prevent a wavefront from being unbalanced due to difference in distance to the evaluation points. On the other hand, distances from the speaker array 2100 to the evaluation points vary depending on a relative positional relation between the speaker array 2100 and the evaluation object area (i.e., the directions of evaluation points as seen from the speaker array 2100) in an arrangement where the target area itself is the evaluation object area and evaluation points are set by dividing the evaluation object area into meshes at equal intervals (i.e., the evaluation plane is a plane containing the target area) as described in the embodiment, or in an arrangement where an evaluation plane slightly tilted in one, two, or three axes and evaluation points are set by dividing the evaluation object area, which is a perspective projection image of the target area onto the evaluation plane, into meshes at equal intervals. When coverage areas are equalized on an evaluation plane with which distances to evaluation points vary according to direction, wavefronts having smaller solid angles are assigned to evaluation points located at more distant locations, and therefore the wavefronts are more concentrated to evaluation points located at more distant locations. Since wavefronts are more concentrated to evaluation points at more distant locations, it is expected that sound pressure differences due to distance attenuation are reduced. In the arrangement where a plane containing the target area and slightly tilted in one, two, or three of the x, y, and z axes is used as the evaluation plane, it is especially effective to use, as the evaluation plane, a plane obtained by rotation (an amount of rotation can be specified by the user) around a rotary axis passing through the center of the target area and extending perpendicular to a plane (auxiliary plane) that extends perpendicular to the target area and contains the center of the baffle surface of the speaker array 2100 and the center of the target area.
The evaluation points are not essentially required to be provided on the evaluation object area. Alternatively, the evaluation points may be projection points obtained by projecting, onto the target area, lattice points obtained by dividing the perspective projection image of the target area onto the evaluation plane into meshes at equal intervals. It should be noted that in the setting of evaluation points, it is of course preferable that the evaluation points be set such that a direction pattern is in an appropriate range (e.g., in front of the speaker array) by taking account of direction patterns of speaker units constituting the speaker array, irrespective whether or not the evaluation points are set on the evaluation object area.
(Sixth Modification)
In the embodiment, evaluation points for delay time computation are uniformly provided. In that case, the ratio of the number of evaluation points is made equivalent to the ratio of dimensions. However, the evaluation point distribution density can, of course, be made different between locations on the evaluation object area. Even in a case that delay times are adjusted such that the ratio of the number of evaluation points covered by each speaker unit is equalized between the speaker units 2110-i, if the evaluation point distribution is not uniform on the evaluation object area, the dimensions of a coverage area per one evaluation point becomes smaller at a location having a higher evaluation point density, resulting in concentrated wavefronts. In an area where the wavefront is concentrated, the sound pressure produced by a combined wavefront formed by the wavefronts becomes high. Utilizing this, in order to, e.g., increase the sound pressure in a particular area in the evaluation object area, evaluation points are distributed so as to increase the evaluation point density in the particular area. In this manner, the sound pressure, etc. can finely be adjusted according to locations by making the evaluation point distribution on the evaluation object area different between locations.
(Seventh Modification)
In the embodiment, the UI providing unit 2400 and the control unit 2500 of the speaker array system 2000 are adapted to function as a setting unit for setting the target area and the control unit 2500 is adapted to function as a delay time calculation unit for calculating delay times of delayed audio signals X10-i to be supplied to the speaker units 2110-i based on the evaluation object area. However, it is, of course, possible to combine the setting unit and the delay time calculation unit so as to configure a delay time calculation apparatus suitable for delay time control of a delay array type speaker array. A control program for causing a computer apparatus to function as the setting unit and the delay time calculation unit (in the embodiment, the control program 2502a) may be stored for distribution in a CD-ROM (compact disk-read only memory) or other computer-readable recording medium, or may be able to be downloaded for distribution via the Internet or other electronic communication line. The thus distributed control program may be stored into an ordinary computer apparatus and a CPU of the computer apparatus may be operated according to the control program, whereby the ordinary computer apparatus can be used as the delay time calculation apparatus.
Number | Date | Country | Kind |
---|---|---|---|
2008-133167 | May 2008 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
20050265559 | Asada | Dec 2005 | A1 |
20060233382 | Watanabe | Oct 2006 | A1 |
Number | Date | Country |
---|---|---|
2 056 621 | May 2009 | EP |
2006-210986 | Aug 2006 | JP |
2006-211230 | Aug 2006 | JP |
0123104 | Apr 2001 | WO |
02071796 | Sep 2002 | WO |
Number | Date | Country | |
---|---|---|---|
20090290717 A1 | Nov 2009 | US |