JP7267007B2 - Information processing device, information processing method, and program - Google Patents

Information processing device, information processing method, and program Download PDF

Info

Publication number
JP7267007B2
JP7267007B2 JP2018241641A JP2018241641A JP7267007B2 JP 7267007 B2 JP7267007 B2 JP 7267007B2 JP 2018241641 A JP2018241641 A JP 2018241641A JP 2018241641 A JP2018241641 A JP 2018241641A JP 7267007 B2 JP7267007 B2 JP 7267007B2
Authority
JP
Japan
Prior art keywords
value
impulse response
index
sound
response data
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2018241641A
Other languages
Japanese (ja)
Other versions
JP2020101768A (en
Inventor
雅人 小池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koei Tecmo Games Co Ltd
Original Assignee
Koei Tecmo Games Co Ltd
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
Application filed by Koei Tecmo Games Co Ltd filed Critical Koei Tecmo Games Co Ltd
Priority to JP2018241641A priority Critical patent/JP7267007B2/en
Publication of JP2020101768A publication Critical patent/JP2020101768A/en
Application granted granted Critical
Publication of JP7267007B2 publication Critical patent/JP7267007B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置、情報処理方法、及びプログラムに関する。 The present invention relates to an information processing device, an information processing method, and a program.

従来、コンピュータゲームの状況等に応じて音を出力する場合、エフェクタ(残響エフェクタ、リバーブレータ)を用いて、直接音に応じた残響音を出力する技術が知られている(例えば、特許文献1を参照)。 Conventionally, when outputting sound according to the situation of a computer game, etc., there is known a technique of outputting reverberation sound corresponding to direct sound using an effector (reverberation effector, reverberator) (for example, Patent Document 1 ).

また、ホール等の建造物で、時間幅が狭いインパルス音に対する反射音(インパルスレスポンス)のデータを予め測定して記憶しておき、出力したい効果音、セリフ等の音声、楽曲等の音の信号と畳み込み(コンボリューション)演算を行うことにより、当該ホール等における残響を再現する技術が知られている。この技術を用いたエフェクタは、コンボリューションリバーブ等とも称されている。 In addition, the data of the reflected sound (impulse response) for the impulse sound with a narrow time width in a building such as a hall is measured in advance and stored, and the signal of the sound effect, voice such as dialogue, and sound such as music that you want to output. There is known a technique of reproducing the reverberation in the hall or the like by performing a convolution operation. An effector using this technique is also called a convolution reverb.

特開2000-267675号公報JP-A-2000-267675

しかしながら、従来技術では、音を出力するステージ等がそれぞれ異なる等の場合、各ホール等でインパルスレスポンスをそれぞれ測定する手間がかかる。そこで、一側面では、より適切に残響音を生成することができる技術を提供することを目的とする。 However, in the conventional technology, when the stages that output sound are different, it takes time and effort to measure the impulse response in each hall. Therefore, in one aspect, an object is to provide a technique capable of generating reverberant sound more appropriately.

一つの案では、情報処理装置が、インパルス音に対する反射音のデータであるインパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を指定する操作を受け付ける受付部と、前記インパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を利用して前記インパルスレスポンスのデータを生成する生成部と、前記インパルスレスポンスのデータ、及び記憶部に記憶されている音声データに基づいて、前記音声データに対する残響音を生成する調整部と、を有し、前記生成部は、パルス音が出力されてから最初の反射音が返ってくるまでの前記インパルスレスポンスのデータの音量の値を0に設定し、前記インパルスレスポンスのデータの時間軸の値を示すインデックス値が大きい程に満たす確率が増加する条件を満たしているか判定し、前記条件を満たしていない場合、前記インデックス値に応じた前記インパルスレスポンスのデータの音量の値を0に設定し、前記条件を満たしている場合、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が小さい程、前記インデックス値が大きくなるに従って指数関数的に減少していく値に近づき、前記インデックス値が大きい程、前記指数関数的に減少していく値と白色雑音の値とを乗算した値に近づくように設定するか、又は、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が大きくなるに従って指数関数的に減少していく値と、前記インデックス値が大きくなるに従って0度に近い角度となる確率が高くなる角度の正弦の値とを乗算した値に近づくように決定する

In one proposal, the information processing device calculates the length of the impulse response, which is the data of the reflected sound for the impulse sound, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index. The data of the impulse response is obtained by using the reception unit that receives the specified operation, the length of the impulse response, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index. and an adjustment unit configured to generate reverberation sound for the audio data based on the impulse response data and the audio data stored in the storage unit, wherein the generation unit generates a pulse sound is set to 0, and the greater the index value indicating the time axis value of the impulse response data, the higher the probability of satisfying the condition. If the condition is not satisfied, the volume value of the impulse response data corresponding to the index value is set to 0, and if the condition is satisfied, the impulse The volume value of the response data approaches a value that exponentially decreases as the index value increases, and decreases exponentially as the index value increases. or set the volume value of the impulse response data to a value that decreases exponentially as the index value increases. , and the value obtained by multiplying the value of the sine of the angle at which the probability of the angle approaching 0 degrees increases as the index value increases.

一側面によれば、より適切に残響音を生成することができる。 According to one aspect, reverberant sound can be generated more appropriately.

実施形態に係る情報処理装置のハードウェア構成例を示す図である。It is a figure which shows the hardware structural example of the information processing apparatus which concerns on embodiment. 実施形態に係る情報処理装置の機能ブロック図である。1 is a functional block diagram of an information processing device according to an embodiment; FIG. 実施形態に係る情報処理装置の処理の一例を示すフローチャートである。4 is a flowchart showing an example of processing of the information processing device according to the embodiment; 実施形態に係るインデックスiの値が大きい程大きくなる値の一例について説明する図である。It is a figure explaining an example of the value which becomes large, so that the value of the index i which concerns on embodiment is large. インデックスiの値が大きくなるに従って指数関数的に減少していく値の一例について説明する図である。FIG. 10 is a diagram illustrating an example of a value exponentially decreasing as the value of index i increases; 実施形態に係るインデックスiがLdelayより大きい場合のインパルスレスポンスデータの一例について説明する図である。FIG. 10 is a diagram illustrating an example of impulse response data when index i is greater than L delay according to the embodiment;

以下、図面に基づいて本発明の実施形態を説明する。 An embodiment of the present invention will be described below based on the drawings.

<ハードウェア構成>
図1は、実施形態に係る情報処理装置10のハードウェア構成例を示す図である。図1に示す情報処理装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。
<Hardware configuration>
FIG. 1 is a diagram showing a hardware configuration example of an information processing apparatus 10 according to an embodiment. The information processing apparatus 10 shown in FIG. 1 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, an interface device 105, a display device 106, an input device 107, etc., which are connected to each other via a bus B. .

情報処理装置10での処理を実現するゲームプログラムは、記録媒体101によって提供される。ゲームプログラムを記録した記録媒体101がドライブ装置100にセットされると、ゲームプログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、ゲームプログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたゲームプログラムを格納すると共に、必要なファイルやデータ等を格納する。 A game program that implements processing in the information processing device 10 is provided by the recording medium 101 . When the recording medium 101 recording the game program is set in the drive device 100 , the game program is installed from the recording medium 101 into the auxiliary storage device 102 via the drive device 100 . However, the game program does not necessarily have to be installed from the recording medium 101, and may be downloaded from another computer via the network. The auxiliary storage device 102 stores the installed game program, as well as necessary files and data.

メモリ装置103は、例えば、DRAM(Dynamic Random Access Memory)、またはSRAM(Static Random Access Memory)等のメモリであり、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って情報処理装置10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107は、コントローラ等、キーボード及びマウス等、またはタッチパネル及びボタン等で構成され、様々な操作指示を入力させるために用いられる。 The memory device 103 is, for example, a memory such as DRAM (Dynamic Random Access Memory) or SRAM (Static Random Access Memory). . The CPU 104 implements functions related to the information processing apparatus 10 according to programs stored in the memory device 103 . The interface device 105 is used as an interface for connecting to a network. A display device 106 displays a GUI (Graphical User Interface) or the like by a program. The input device 107 is composed of a controller or the like, a keyboard and a mouse or the like, or a touch panel and buttons or the like, and is used for inputting various operational instructions.

なお、記録媒体101の一例としては、CD-ROM、DVDディスク、ブルーレイディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。 Note that an example of the recording medium 101 is a portable recording medium such as a CD-ROM, a DVD disc, a Blu-ray disc, or a USB memory. Examples of the auxiliary storage device 102 include a HDD (Hard Disk Drive), SSD (Solid State Drive), flash memory, and the like. Both the recording medium 101 and the auxiliary storage device 102 correspond to computer-readable recording media.

<機能構成>
次に、図2を参照し、情報処理装置10の機能構成について説明する。図2は、実施形態に係る情報処理装置10の機能ブロック図である。
<Functional configuration>
Next, with reference to FIG. 2, the functional configuration of the information processing device 10 will be described. FIG. 2 is a functional block diagram of the information processing device 10 according to the embodiment.

情報処理装置10は、記憶部11を有する。記憶部11は、例えば、補助記憶装置102等を用いて実現される。記憶部11は、効果音、録音されたセリフ、及び楽曲等の音声データ等を記憶する。 The information processing device 10 has a storage unit 11 . The storage unit 11 is implemented using, for example, the auxiliary storage device 102 or the like. The storage unit 11 stores sound effects, recorded lines, audio data such as music, and the like.

また、情報処理装置10は、受付部12、生成部13(「決定部」の一例。)、及び調整部14を有する。これら各部は、情報処理装置10にインストールされた1以上のプログラムが、情報処理装置10のCPU104に実行させる処理により実現される。 The information processing apparatus 10 also includes a reception unit 12 , a generation unit 13 (an example of a “determination unit”), and an adjustment unit 14 . These units are implemented by one or more programs installed in the information processing device 10 causing the CPU 104 of the information processing device 10 to execute the processing.

受付部12は、残響に関する各種のパラメータを指定する操作を受け付ける。生成部13は、インパルス音に対する反射音のデータであるインパルスレスポンスのデータを生成(決定)する。 The receiving unit 12 receives an operation to specify various parameters related to reverberation. The generator 13 generates (determines) impulse response data, which is reflected sound data for the impulse sound.

調整部14は、生成部13により生成されたインパルスレスポンスのデータと、記憶部11に記憶されている音声データとに基づいて、当該音声データに対する残響音を生成(調整)し、スピーカ等に出力する。調整部14は、例えば、当該音声データと、生成部13により生成されたインパルスレスポンスのデータとの畳み込み(コンボリューション)演算を行うことにより、残響音を生成する。 Based on the impulse response data generated by the generating unit 13 and the audio data stored in the storage unit 11, the adjustment unit 14 generates (adjusts) reverberation sound for the audio data, and outputs the reverberation sound to a speaker or the like. do. The adjustment unit 14 generates reverberant sound by, for example, convoluting the sound data and the impulse response data generated by the generation unit 13 .

<処理>
次に、図3から図4Cを参照して、情報処理装置10の処理について説明する。図3は、実施形態に係る情報処理装置10の処理の一例を示すフローチャートである。図4Aは、実施形態に係るインデックスiの値が大きい程大きくなる値の一例について説明する図である。図4Bは、インデックスiの値が大きくなるに従って指数関数的に減少していく値の一例について説明する図である。図4Cは、実施形態に係るインデックスiがLdelayより大きい場合のインパルスレスポンスデータの一例について説明する図である。
<Processing>
Next, processing of the information processing apparatus 10 will be described with reference to FIGS. 3 to 4C. FIG. 3 is a flowchart showing an example of processing of the information processing device 10 according to the embodiment. FIG. 4A is a diagram illustrating an example of values that increase as the value of index i increases according to the embodiment. FIG. 4B is a diagram illustrating an example of values that exponentially decrease as the value of index i increases. FIG. 4C is a diagram illustrating an example of impulse response data when index i is greater than L delay according to the embodiment.

ステップS1において、受付部12は、残響に関する各種のパラメータを指定する操作を受け付ける。ここで、受付部12は、インパルスレスポンスデータの長さL、パルス音が出力されてから最初の反射音が返ってくるまでの長さLdelay、及び音量減衰指数Pdecay等を設定する操作をユーザから受け付ける。 In step S1, the receiving unit 12 receives an operation of designating various parameters related to reverberation. Here, the reception unit 12 performs an operation to set the length L of the impulse response data, the length L delay from when the pulse sound is output until the first reflected sound is returned, and the volume attenuation index P decay . Accept from users.

なお、Lは、パルス音が出力されてから残響音の出力が停止されるまでの時間(残響時間)とサンプリング周波数に応じた、インパルスレスポンスデータの配列IR[L]のインデックスの最大値である。ここで、残響時間として、ゲーム等において音が出力される環境が小さな部屋の場合は0.5秒程度、音楽用ホール等の場合は数秒程度が指定されてもよい。例えば、残響時間が5秒であり、音のサンプリング周波数が48kHzの場合、Lは、240000(5×48k)と決定される。 Note that L is the maximum index value of the impulse response data array IR[L] corresponding to the time (reverberation time) from when the pulse sound is output until the output of the reverberant sound is stopped and the sampling frequency. . Here, as the reverberation time, about 0.5 seconds may be specified in the case of a small room in which sound is output in a game or the like, and about several seconds in the case of a music hall or the like. For example, if the reverberation time is 5 seconds and the sound sampling frequency is 48 kHz, L is determined as 240000 (5×48k).

delayは、壁、天井、床等からの初期反射のうち、パルス音が出力されてから最も早い初期反射が返ってくるまでの時間とサンプリング周波数に応じた数値である。例えば、パルス音が出力されてから最も早い初期反射が返ってくるまでの時間が10m秒であり、音のサンプリング周波数が48kHzの場合、Lは、480(10m×48k)と決定される。音量減衰指数Pdecayは、減衰の速度を示す値であり、値が大きい程減衰の速度が速くなる。Pdecayの値として、例えば、1より大きい値が設定されてもよい。 L delay is a numerical value corresponding to the time from the output of the pulse sound to the return of the earliest initial reflection among the initial reflections from the wall, ceiling, floor, etc., and the sampling frequency. For example, when the time from the output of the pulse sound to the return of the earliest initial reflection is 10 msec, and the sampling frequency of the sound is 48 kHz, L is determined as 480 (10 m×48 k). The sound volume decay exponent P decay is a value indicating the speed of decay, and the larger the value, the faster the speed of decay. For example, a value greater than 1 may be set as the value of P decay .

続いて、生成部13は、パルス音が出力されてから最初の反射音が返ってくるまでの時間長までのインパルスレスポンスデータを0に設定する(ステップS2)。ここで、生成部13は、IR[0]からIR[Ldelay]までの値を所定の閾値以下の値(例えば、0)に設定する。 Subsequently, the generation unit 13 sets impulse response data to 0 for the length of time from the output of the pulse sound to the return of the first reflected sound (step S2). Here, the generation unit 13 sets the values from IR[0] to IR[L delay ] to values (for example, 0) equal to or less than a predetermined threshold.

続いて、生成部13は、インパルスレスポンスデータの時間軸の値を示すインデックスiを初期化する(ステップS3)。ここで、生成部13は、例えば、iの値を0と設定する。続いて、生成部13は、インデックスiが、インデックスiの値が大きい程条件を満たす確率が増加する条件を満たすか否かを判定する(ステップS4)。ここで、生成部13は、例えば、まず、一様乱数の値Ruを算出する。なお、Ruは、例えば、0以上1未満の区間内で全ての実数が同じ確率で現れる乱数である。そして、生成部13は、例えば、以下の式(1)の条件を満たす場合、当該条件を満たすと判定してもよい。なお、Lbodyは、L-Ldelayである。 Subsequently, the generation unit 13 initializes the index i indicating the value of the time axis of the impulse response data (step S3). Here, the generator 13 sets the value of i to 0, for example. Subsequently, the generation unit 13 determines whether or not the index i satisfies a condition that the probability of satisfying the condition increases as the value of the index i increases (step S4). Here, for example, the generation unit 13 first calculates a uniform random number value Ru. Note that Ru is, for example, a random number in which all real numbers appear with the same probability within an interval of 0 or more and less than 1. Then, for example, when the condition of Expression (1) below is satisfied, the generation unit 13 may determine that the condition is met. Note that L body is LL delay .

Ru < (i/Lbody) ・・・(1)
図4Aに示すように、i/Lbodyの値401は、インデックスiの値が大きい程大きくなるため、インデックスiの値が大きい程、式(1)の条件を満たす確率は増加する。
Ru<(i/ Lbody ) (1)
As shown in FIG. 4A, the value 401 of i/L body increases as the value of index i increases, so the probability that the condition of formula (1) is satisfied increases as the value of index i increases.

当該条件を満たさない場合(ステップS4でNO)、生成部13は、インデックスiに応じたインパルスレスポンスデータを所定の閾値以下の値(例えば、0)に設定し(ステップS5)、ステップS7の処理に進む。ステップS5の処理で、生成部13は、インデックスiに応じたインパルスレスポンスデータであるIR[Ldelay+i]の値を0に設定する。 If the condition is not satisfied (NO in step S4), the generation unit 13 sets the impulse response data corresponding to the index i to a value (eg, 0) equal to or less than a predetermined threshold (step S5), and performs the process of step S7. proceed to In the process of step S5, the generator 13 sets the value of IR[L delay +i], which is the impulse response data corresponding to the index i, to zero.

当該条件を満たす場合(ステップS4でYES)、インデックスiがLdelayより大きい場合のインパルスレスポンスデータを、インデックスiの値が小さい程、インデックスiの値が大きくなるに従って非線形に減少していく値により近づき、インデックスiの値が大きい程ホワイトノイズ等の乱数に基づく値により近づく値に設定する(ステップS6)。ステップS5、及びステップS6の処理により、インデックスiの値が大きくなるに従って、IR[i]の値が当該所定の閾値を超える確率が高くなる。そのため、図4Cに示すように、インデックスiがLdelayより大きい場合のインパルスレスポンスデータ421は、インデックスiの値が小さい程、当該所定の閾値以下の値ではない値の密度が疎であり、インデックスiの値が大きくなるに従って、当該所定の閾値以下の値ではない値の密度が密になる。また、ステップS6の処理により、図4Cに示すように、インデックスiがLdelayより大きい場合のインパルスレスポンスデータ421は、音量が揺らぎつつも徐々に減少し、徐々にホワイトノイズに近づく値となる。これにより、ホール等で実際のインパルスレスポンスを測定しなくとも、実際の残響音に近い残響音を出力するためのインパルスレスポンスのデータを生成することができる。 If the condition is satisfied (YES in step S4), the impulse response data when the index i is greater than L delay is generated by a value that nonlinearly decreases as the value of the index i increases as the value of the index i increases. As the value of the index i increases, a value based on a random number such as white noise is set to a closer value (step S6). Through the processing in steps S5 and S6, the probability that the value of IR[i] exceeds the predetermined threshold increases as the value of index i increases. Therefore, as shown in FIG. 4C, the impulse response data 421 when the index i is greater than L delay has a lower density of values that are not equal to or less than the predetermined threshold value as the value of the index i decreases. As the value of i increases, the density of values that are not below the predetermined threshold increases. Further, as a result of the processing in step S6, as shown in FIG. 4C, the impulse response data 421 when the index i is greater than L delay gradually decreases while fluctuating in volume, and gradually approaches white noise. This makes it possible to generate impulse response data for outputting reverberant sound close to actual reverberant sound without measuring the actual impulse response in a hall or the like.

ステップS6の処理で、生成部13は、インデックスiの値が大きくなるに従って指数関数的に減少していく値であるGainScale(減衰曲線。「非線形に減少する値」の一例。)を算出する。例えば、生成部13は、以下の式(2)によりGainScaleの値を算出する。なお、「a^n」は、aのn乗を示す。 In the process of step S6, the generation unit 13 calculates GainScale (attenuation curve, an example of a “value that decreases nonlinearly”), which is a value that exponentially decreases as the value of the index i increases. For example, the generation unit 13 calculates the value of GainScale using the following equation (2). In addition, "ân" indicates the n-th power of a.

GainScale = (1-i/Lbody)^Pdecay ・・・(2)
式(4)により、GainScaleの値411は、図4Bに示すように、インデックスiの値が大きくなるに従って指数関数的に減少していく値となる。
GainScale = (1-i/L body )^P decay (2)
By Equation (4), GainScale value 411 becomes a value that decreases exponentially as the value of index i increases, as shown in FIG. 4B.

ここで、生成部13は、例えば、まず、正規乱数の値Rnを算出する。Rnは、例えば、0より大きく1未満の区間内で正規分布をもつ乱数でもよい。この場合、生成部13は、例えば、0より大きく1以下の一様乱数をボックス=ミュラー法(Box-Muller transform)で変換してRnを算出してもよい。 Here, for example, the generation unit 13 first calculates the normal random number value Rn. Rn may be, for example, a random number having a normal distribution within an interval greater than 0 and less than 1. In this case, the generation unit 13 may calculate Rn by transforming a uniform random number greater than 0 and less than or equal to 1 using the Box-Muller transform.

そして、生成部13は、ホワイトノイズを表す値Wを、以下の式(3)により算出する。 Then, the generation unit 13 calculates a value W representing white noise using the following equation (3).

W = (Rn-0.5)/V ・・・(3)
なお、Vは、ホワイトノイズの音量を調節するための定数であり、生成部13は、例えば、Vの値を4としてもよい。そして、生成部13は、IR[Ldelay+i]に、以下の式(4)で算出した値を設定する。
W = (Rn-0.5)/V (3)
Note that V is a constant for adjusting the volume of white noise, and the generator 13 may set the value of V to 4, for example. Then, the generation unit 13 sets IR[L delay +i] to the value calculated by the following formula (4).

IR[Ldelay+i] = (S(1-i/Lbody)+W(i/Lbody))×GainScale ・・・(4)
ここで、Sは、Wの符号であり、-1、0、及び1の何れかの値である。生成部13は、Wの値がマイナスであればSを-1とし、Wの値が0であればSを0とし、Wの値がプラスであればSを1とする。
IR[ Ldelay +i]=(S(1−i/ Lbody )+W(i/ Lbody ))×GainScale (4)
where S is the sign of W and has values of -1, 0, and 1. The generator 13 sets S to −1 if the value of W is negative, sets S to 0 if the value of W is 0, and sets S to 1 if the value of W is positive.

これにより、図4Cに示すように、インデックスiに応じたインパルスレスポンスデータ421は、インデックスiの値が小さい程、インデックスiの値が大きくなるに従って指数関数的に減少していく値であるGainScaleに近づき、インデックスiの値が大きい程ホワイトノイズの値WとGainScaleとを乗算した値に近づく値に設定される。 As a result, as shown in FIG. 4C, the impulse response data 421 corresponding to the index i has a GainScale that decreases exponentially as the value of the index i increases as the value of the index i decreases. As the value of the index i increases, the value is set closer to the value obtained by multiplying the white noise value W by the GainScale.

続いて、生成部13は、インデックスiの値をインクリメント(1つ増加)する(ステップS7)。続いて、生成部13は、インデックスiの値が終了条件を満たすか否かを判定する(ステップS8)。ここで、生成部13は、インデックスiの値がLdelayの値と等しくなった場合、終了条件を満たすと判定する。インデックスiの値が終了条件を満たさない場合(ステップS8でNO)、ステップS4の処理に進む。一方、インデックスiの値が終了条件を満たす場合(ステップS8でYES)、処理を終了する。 Subsequently, the generator 13 increments (increases by one) the value of the index i (step S7). Subsequently, the generation unit 13 determines whether or not the value of the index i satisfies the termination condition (step S8). Here, the generation unit 13 determines that the end condition is satisfied when the value of the index i becomes equal to the value of L delay . If the value of index i does not satisfy the termination condition (NO in step S8), the process proceeds to step S4. On the other hand, if the value of index i satisfies the termination condition (YES in step S8), the process is terminated.

<変形例1>
生成部13は、図3のステップS6で、式(4)を用いて算出した値をIR[Ldelay+i]に設定する代わり、またはこれに加えて、以下のように算出した値をIR[Ldelay+i]に設定するようにしてもよい。
<Modification 1>
In step S6 of FIG. 3, the generating unit 13 sets IR[L delay +i] to IR[L delay +i], instead of setting the value calculated using Equation (4) to IR[ L delay +i].

この場合、生成部13は、まず、一様乱数の値Ru2を算出する。なお、Ru2は、例えば、0以上1以下の区間内で全ての実数が同じ確率で現れる乱数である。そして、生成部13は、以下の式(5)により角度θを算出する。 In this case, the generator 13 first calculates a uniform random number value Ru2. Note that Ru2 is, for example, a random number in which all real numbers appear with the same probability within an interval of 0 to 1 inclusive. Then, the generation unit 13 calculates the angle θ by the following formula (5).

θ = (π/2)×(1-Ru2×(i/Lbody)) ・・・(5)
そして、生成部13は、1/2の確率で、角度θの正負を反転させる。そして、生成部13は、IR[Ldelay+i]に、以下の式(6)で算出した値を設定する。
θ=(π/2)×(1−Ru2×(i/L body )) (5)
Then, the generation unit 13 inverts the sign of the angle θ with a probability of 1/2. Then, the generation unit 13 sets IR[L delay +i] to the value calculated by the following formula (6).

IR[Ldelay+i] = sinθ×GainScale ・・・(6)
これにより、インパルスレスポンスデータの配列IR[L]は、インデックスiの値が小さい程、インデックスiの値が大きくなるに従って指数関数的に減少していく値であるGainScaleに近づく。また、インパルスレスポンスデータの配列IR[L]は、インデックスiの値が大きい程0度に近い角度となる確率が高くなる角度の正弦の値とGainScaleとを乗算した値に、インデックスiの値が大きい程近づく値に設定される。なお、生成部13は、IR[Ldelay+i]の値を決定する方法を、ユーザの操作により切り替えられるようにしてもよい。また、生成部13は、IR[Ldelay+i]に、以下の式(7)で算出した値を設定する。
IR[ Ldelay +i]=sinθ×GainScale (6)
As a result, the impulse response data array IR[L] approaches GainScale, which is a value exponentially decreasing as the value of index i increases, as the value of index i decreases. In the array IR[L] of the impulse response data, the value of the index i is multiplied by the value obtained by multiplying the gain scale by the sine value of the angle at which the probability of the angle being closer to 0 degrees increases as the value of the index i increases. It is set to a value that approaches as it is larger. Note that the generation unit 13 may switch the method for determining the value of IR[L delay +i] by user operation. The generation unit 13 also sets IR[L delay +i] to the value calculated by the following equation (7).

IR[Ldelay+i] = (S(1-i/Lbody)+sinθ(i/Lbody))×GainScale ・・・(7)
これにより、インデックスiに応じたインパルスレスポンスデータは、インデックスiの値が小さい程、インデックスiの値が大きくなるに従って指数関数的に減少していく値であるGainScaleに近づき、インデックスiの値が大きい程、インデックスiの値が大きい程0度に近い角度となる確率が高くなる角度の正弦の値とGainScaleとを乗算した値に近づく値に設定される。
IR[ Ldelay +i]=(S(1−i/ Lbody )+sinθ(i/ Lbody ))×GainScale (7)
As a result, the impulse response data corresponding to the index i approaches the GainScale, which is a value exponentially decreasing as the value of the index i increases, as the value of the index i decreases, and the value of the index i increases. The larger the value of the index i, the higher the probability that the angle will be close to 0 degrees.

<変形例2>
情報処理装置10の各機能部は、例えば1以上のコンピュータにより構成されるクラウドコンピューティングにより実現されていてもよい。
<Modification 2>
Each functional unit of the information processing device 10 may be realized by cloud computing configured by one or more computers, for example.

以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 Although the embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications can be made within the scope of the gist of the invention described in the claims.・Changes are possible.

10 情報処理装置
11 記憶部
12 受付部
13 生成部
14 調整部
10 information processing device 11 storage unit 12 reception unit 13 generation unit 14 adjustment unit

Claims (3)

インパルス音に対する反射音のデータであるインパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を指定する操作を受け付ける受付部と、
前記インパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を利用して前記インパルスレスポンスのデータを生成する生成部と、
前記インパルスレスポンスのデータ、及び記憶部に記憶されている音声データに基づいて、前記音声データに対する残響音を生成する調整部と、
を有し、
前記生成部は、
パルス音が出力されてから最初の反射音が返ってくるまでの前記インパルスレスポンスのデータの音量の値を0に設定し、
前記インパルスレスポンスのデータの時間軸の値を示すインデックス値が大きい程に満たす確率が増加する条件を満たしているか判定し、
前記条件を満たしていない場合、前記インデックス値に応じた前記インパルスレスポンスのデータの音量の値を0に設定し、
前記条件を満たしている場合、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が小さい程、前記インデックス値が大きくなるに従って指数関数的に減少していく値に近づき、前記インデックス値が大きい程、前記指数関数的に減少していく値と白色雑音の値とを乗算した値に近づくように設定するか、又は、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が大きくなるに従って指数関数的に減少していく値と、前記インデックス値が大きくなるに従って0度に近い角度となる確率が高くなる角度の正弦の値とを乗算した値に近づくように決定する
情報処理装置。
a reception unit that receives an operation to specify the length of an impulse response, which is data of a reflected sound for an impulse sound, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index;
a generation unit that generates the impulse response data using the length of the impulse response, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index;
an adjustment unit that generates reverberation sound for the audio data based on the impulse response data and the audio data stored in the storage unit;
has
The generating unit
setting the volume value of the impulse response data from the output of the pulse sound to the return of the first reflected sound to 0;
Determining whether a condition is satisfied such that the greater the index value indicating the value of the time axis of the impulse response data, the higher the probability of being satisfied;
if the condition is not satisfied, setting the volume value of the impulse response data corresponding to the index value to 0;
When the condition is satisfied, the volume value of the impulse response data approaches a value that decreases exponentially as the index value increases as the index value decreases, and the index value increases. As the index value increases, the volume value of the impulse response data is set so as to approach a value obtained by multiplying the exponentially decreasing value by the white noise value. It is determined to approach a value obtained by multiplying an exponentially decreasing value by a sine value of an angle at which the probability of an angle close to 0 degrees increases as the index value increases.
Information processing equipment.
情報処理装置を、
インパルス音に対する反射音のデータであるインパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を指定する操作を受け付ける受付部、
前記インパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を利用して前記インパルスレスポンスのデータを生成する生成部、
前記インパルスレスポンスのデータ、及び記憶部に記憶されている音声データに基づいて、前記音声データに対する残響音を生成する調整部、
として機能させ、
前記生成部は、
パルス音が出力されてから最初の反射音が返ってくるまでの前記インパルスレスポンスのデータの音量の値を0に設定し、
前記インパルスレスポンスのデータの時間軸の値を示すインデックス値が大きい程に満たす確率が増加する条件を満たしているか判定し、
前記条件を満たしていない場合、前記インデックス値に応じた前記インパルスレスポンスのデータの音量の値を0に設定し、
前記条件を満たしている場合、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が小さい程、前記インデックス値が大きくなるに従って指数関数的に減少していく値に近づき、前記インデックス値が大きい程、前記指数関数的に減少していく値と白色雑音の値とを乗算した値に近づくように設定するか、又は、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が大きくなるに従って指数関数的に減少していく値と、前記インデックス値が大きくなるに従って0度に近い角度となる確率が高くなる角度の正弦の値とを乗算した値に近づくように決定するプログラム。
information processing equipment,
a reception unit that receives an operation to specify the length of an impulse response, which is data of reflected sound for an impulse sound, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index;
a generation unit that generates the impulse response data using the length of the impulse response, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index;
an adjusting unit that generates reverberant sound for the audio data based on the impulse response data and the audio data stored in the storage unit;
function as
The generating unit
setting the volume value of the impulse response data from the output of the pulse sound to the return of the first reflected sound to 0;
Determining whether a condition is satisfied such that the greater the index value indicating the value of the time axis of the impulse response data, the higher the probability of being satisfied;
if the condition is not satisfied, setting the volume value of the impulse response data corresponding to the index value to 0;
When the condition is satisfied, the volume value of the impulse response data approaches a value that decreases exponentially as the index value increases as the index value decreases, and the index value increases. As the index value increases, the volume value of the impulse response data is set so as to approach a value obtained by multiplying the exponentially decreasing value by the white noise value. A program for determining a value approaching a value obtained by multiplying an exponentially decreasing value by a sine value of an angle at which the probability of an angle close to 0 degrees increases as the index value increases.
情報処理装置が、
インパルス音に対する反射音のデータであるインパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を指定する操作を受け付ける処理と、
前記インパルスレスポンスの長さ、パルス音が出力されてから最初の反射音が返ってくるまでの長さ、及び音量減衰指数を利用して前記インパルスレスポンスのデータを生成する処理と、
前記インパルスレスポンスのデータ、及び記憶部に記憶されている音声データに基づいて、前記音声データに対する残響音を生成する処理と、
を実行し、
前記インパルスレスポンスのデータを生成する処理は、
パルス音が出力されてから最初の反射音が返ってくるまでの前記インパルスレスポンスのデータの音量の値を0に設定し、
前記インパルスレスポンスのデータの時間軸の値を示すインデックス値が大きい程に満たす確率が増加する条件を満たしているか判定し、
前記条件を満たしていない場合、前記インデックス値に応じた前記インパルスレスポンスのデータの音量の値を0に設定し、
前記条件を満たしている場合、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が小さい程、前記インデックス値が大きくなるに従って指数関数的に減少していく値に近づき、前記インデックス値が大きい程、前記指数関数的に減少していく値と白色雑音の値とを乗算した値に近づくように設定するか、又は、前記インパルスレスポンスのデータの音量の値を、前記インデックス値が大きくなるに従って指数関数的に減少していく値と、前記インデックス値が大きくなるに従って0度に近い角度となる確率が高くなる角度の正弦の値とを乗算した値に近づくように決定する処理である情報処理方法。
The information processing device
a process of accepting an operation to specify the length of the impulse response, which is the data of the reflected sound for the impulse sound, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index;
a process of generating the impulse response data using the length of the impulse response, the length from the output of the pulse sound to the return of the first reflected sound, and the volume attenuation index;
a process of generating reverberant sound for the audio data based on the impulse response data and the audio data stored in a storage unit;
and run
The process of generating impulse response data includes:
setting the volume value of the impulse response data from the output of the pulse sound to the return of the first reflected sound to 0;
Determining whether a condition is satisfied such that the greater the index value indicating the value of the time axis of the impulse response data, the higher the probability of being satisfied;
if the condition is not satisfied, setting the volume value of the impulse response data corresponding to the index value to 0;
When the condition is satisfied, the volume value of the impulse response data approaches a value that decreases exponentially as the index value increases as the index value decreases, and the index value increases. As the index value increases, the volume value of the impulse response data is set so as to approach a value obtained by multiplying the exponentially decreasing value by the white noise value. Information processing that determines a value approaching a value obtained by multiplying an exponentially decreasing value by a sine value of an angle that increases the probability of an angle approaching 0 degrees as the index value increases. Method.
JP2018241641A 2018-12-25 2018-12-25 Information processing device, information processing method, and program Active JP7267007B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018241641A JP7267007B2 (en) 2018-12-25 2018-12-25 Information processing device, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018241641A JP7267007B2 (en) 2018-12-25 2018-12-25 Information processing device, information processing method, and program

Publications (2)

Publication Number Publication Date
JP2020101768A JP2020101768A (en) 2020-07-02
JP7267007B2 true JP7267007B2 (en) 2023-05-01

Family

ID=71139548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018241641A Active JP7267007B2 (en) 2018-12-25 2018-12-25 Information processing device, information processing method, and program

Country Status (1)

Country Link
JP (1) JP7267007B2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003157090A (en) 2001-11-20 2003-05-30 Matsushita Electric Ind Co Ltd Reverberation sound generating method and reverberation sound simulator

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6073695A (en) * 1983-09-30 1985-04-25 ヤマハ株式会社 Reverberation adder

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003157090A (en) 2001-11-20 2003-05-30 Matsushita Electric Ind Co Ltd Reverberation sound generating method and reverberation sound simulator

Also Published As

Publication number Publication date
JP2020101768A (en) 2020-07-02

Similar Documents

Publication Publication Date Title
EP2633524B1 (en) Method, apparatus and machine-readable storage medium for decomposing a multichannel audio signal
CN110265064B (en) Audio frequency crackle detection method, device and storage medium
US8884888B2 (en) Accelerometer determined input velocity
US20090010460A1 (en) Methods, modules, and computer-readable recording media for providing a multi-channel convolution reverb
CN108200526B (en) Sound debugging method and device based on reliability curve
US8901406B1 (en) Selecting audio samples based on excitation state
WO2019001158A1 (en) Method and apparatus for determining position of loudspeaker, and loudspeaker
Christensen Introduction to audio processing
JP2007333895A (en) Chord presumption apparatus and method
Rosen et al. Interactive sound propagation for dynamic scenes using 2D wave simulation
CN112652290B (en) Method for generating reverberation audio signal and training method of audio processing model
US20230186782A1 (en) Electronic device, method and computer program
JP7267007B2 (en) Information processing device, information processing method, and program
JP7157537B2 (en) Program, image processing method, and information processing apparatus
JP7194559B2 (en) Program, information processing method, and information processing apparatus
CN106653054B (en) Method and device for generating voice animation
US10079028B2 (en) Sound enhancement through reverberation matching
US10319353B2 (en) Method for audio sample playback using mapped impulse responses
WO2022174673A1 (en) Real-time audio processing method, system and device and medium
US20190385590A1 (en) Generating device, generating method, and non-transitory computer readable storage medium
EP3772224A1 (en) Vibration signal generation apparatus and vibration signal generation program
Southern et al. Boundary absorption approximation in the spatial high-frequency extrapolation method for parametric room impulse response synthesis
JP5884473B2 (en) Sound processing apparatus and sound processing method
JP7343320B2 (en) Information processing device, information processing method, and program
JP6538002B2 (en) Target sound collection device, target sound collection method, program, recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211015

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220830

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230310

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230411

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230419

R150 Certificate of patent or registration of utility model

Ref document number: 7267007

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150