Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5373552B2 - Swell detection device and program - Google Patents
[go: Go Back, main page]

JP5373552B2 - Swell detection device and program - Google Patents

Swell detection device and program Download PDF

Info

Publication number
JP5373552B2
JP5373552B2 JP2009248170A JP2009248170A JP5373552B2 JP 5373552 B2 JP5373552 B2 JP 5373552B2 JP 2009248170 A JP2009248170 A JP 2009248170A JP 2009248170 A JP2009248170 A JP 2009248170A JP 5373552 B2 JP5373552 B2 JP 5373552B2
Authority
JP
Japan
Prior art keywords
section
minimum point
smoothing
detected
waveform 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.)
Expired - Fee Related
Application number
JP2009248170A
Other languages
Japanese (ja)
Other versions
JP2011095425A (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.)
Kawai Musical Instruments Manufacturing Co Ltd
Original Assignee
Kawai Musical Instruments Manufacturing 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 Kawai Musical Instruments Manufacturing Co Ltd filed Critical Kawai Musical Instruments Manufacturing Co Ltd
Priority to JP2009248170A priority Critical patent/JP5373552B2/en
Publication of JP2011095425A publication Critical patent/JP2011095425A/en
Application granted granted Critical
Publication of JP5373552B2 publication Critical patent/JP5373552B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)
  • Auxiliary Devices For Music (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a climax detector and a program, capable of detecting a climax section of a musical piece waveform data. <P>SOLUTION: The climax detector includes: a smoothing unit (3401) for smoothing a musical piece waveform data; a minimum point-detecting unit for detecting the minimum point of the musical piece waveform data which is smoothed by the smoothing unit; and a climax section-detecting unit (3403) for detecting a section where a maximum value in a section between minimum points is a threshold value or more, as the climax section, on the basis of the minimum points detected by the minimum point detecting unit. <P>COPYRIGHT: (C)2011,JPO&amp;INPIT

Description

本発明は、盛り上がり検出装置及びプログラムに関する。   The present invention relates to a swell detector and a program.

音楽CD等の複数の楽器音の混ざった音楽音響信号(オーディオ信号)からビート位置を検出するテンポ検出装置として、下記の特許文献1が知られている。特許文献1では、ビート位置の検出方法として、入力波形を所定の時間間隔(以下、フレーム)でFFT演算し、求められたパワースペクトルから各音階音のパワーを求め、この各音階音のパワーのフレーム毎の増分値を計算し、これを全音階音で合計してフレーム毎の全体の音の変化度合いを求め、このフレーム毎の全体の音の変化度合いの自己相関を計算して周期性を求め、この自己相関の値が最大となるフレーム間隔から平均的なビート間隔(いわゆるテンポ)を求める。   The following Patent Document 1 is known as a tempo detection device that detects a beat position from a music acoustic signal (audio signal) mixed with a plurality of instrument sounds such as a music CD. In Patent Document 1, as a beat position detection method, an input waveform is subjected to an FFT calculation at a predetermined time interval (hereinafter referred to as a frame), the power of each scale sound is obtained from the obtained power spectrum, and the power of each scale sound is calculated. The increment value for each frame is calculated, and this is summed with all the scales to obtain the overall sound change level for each frame, and the autocorrelation of the overall sound change level for each frame is calculated to calculate the periodicity. The average beat interval (so-called tempo) is obtained from the frame interval at which the autocorrelation value is maximum.

また、下記の特許文献2には、ビート検出波形の先頭を演奏させながら、タッピング検出部を用い、ユーザにビート位置を、タッピングしてもらうようにし、タッピングの揺らぎが揺らぎ算出部で一定の範囲内であると判定されたら、テンポ候補検出部で検出されたビート間隔の候補から、上記タッピングテンポに数値的に近いビート間隔を選択するテンポ検出装置が記載されている。   Further, in Patent Document 2 below, the tapping detection unit is used while playing the head of the beat detection waveform, and the beat position is tapped by the user, and the tapping fluctuation is within a certain range in the fluctuation calculation unit. A tempo detection device is described that selects a beat interval that is numerically close to the tapping tempo from beat interval candidates detected by a tempo candidate detection unit.

特開2007−52394号公報JP 2007-52394 A 特開2008−40284号公報JP 2008-40284 A

ビート位置の検出の他に、より音楽と同期させるために盛り上がり区間を検出することが望まれている。しかし、曲波形データの盛り上がり区間を検出する装置は、今までなかった。   In addition to detecting the beat position, it is desired to detect a rising section in order to synchronize with music more. However, there has not been a device for detecting a rising section of music waveform data until now.

本発明の目的は、曲波形データの盛り上がり区間を検出することができる盛り上がり検出装置及びプログラムを提供することである。   An object of the present invention is to provide a swell detector and a program that can detect a swell section of music waveform data.

本発明の盛り上がり検出装置は、曲波形データを平滑化する平滑化部と、前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、前記平滑化部は、前記曲波形データを平滑化する第1の平滑化部と、前記第1の平滑化部により平滑化された曲波形データを平滑化する第2の平滑化部とを有し、前記極小点検出部は、前記第2の平滑化部により平滑化された曲波形データの極小点を検出し、前記盛り上がり区間検出部は、前記第1の平滑化部により平滑化された曲波形データの変化量を基に、前記極小点検出部により検出された極小点間の区間の始点及び終点を修正し、盛り上がり区間を検出することを特徴とする。
また、本発明の盛り上がり検出装置は、曲波形データを平滑化する平滑化部と、前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、前記極小点検出部は、前記平滑化部により平滑化された曲波形データの極小点を検出し、前記検出された極小点が前記検出された極小点の前又は後の極大点に対して閾値割合より大きければその極小点を除外して極小点を検出することを特徴とする。
また、本発明の盛り上がり検出装置は、曲波形データを平滑化する平滑化部と、前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、前記盛り上がり区間検出部は、検出された2つの盛り上がり区間の間の区間の値が前記検出された2つの盛り上がり区間の値に対して閾値割合より大きいときには、前記検出された2つの盛り上がり区間を1つの盛り上がり区間につなげることを特徴とする。
また、本発明の盛り上がり検出装置は、曲波形データを平滑化する平滑化部と、前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、前記盛り上がり区間検出部は、検出された盛り上がり区間のうちの最大の長さの盛り上がり区間に対して、検出された盛り上がり区間の長さが閾値割合以下であればその盛り上がり区間を除外して盛り上がり区間を検出することを特徴とする。
The swell detection device of the present invention includes a smoothing unit that smoothes curved waveform data, a minimum point detection unit that detects a minimum point of the curved waveform data smoothed by the smoothing unit, and a minimum point detection unit. possess a raised section detecting unit that the maximum value in the interval between the minimum point based on the detected local minima are detected as a section climax the threshold or more sections, the smoothing unit smoothing the music waveform data A first smoothing unit that performs the second smoothing unit that smoothes the curved waveform data smoothed by the first smoothing unit, and the minimum point detection unit includes the second smoothing unit. The minimum point of the curved waveform data smoothed by the smoothing unit is detected, and the swell section detecting unit is configured to check the minimal check based on the amount of change in the curved waveform data smoothed by the first smoothing unit. The start point of the interval between the minimum points detected by the exit and Fixed point, and detecting the climax section.
Further, the swell detection device of the present invention includes a smoothing unit that smoothes curved waveform data, a minimum point detection unit that detects a minimum point of the curved waveform data smoothed by the smoothing unit, and the minimum point detection. A swell section detecting unit that detects a section having a maximum value within a section between the minimum points as a swell section based on the minimum point detected by the unit, and the minimum point detecting unit includes the smoothing unit. If the minimum point of the curved waveform data smoothed by the above is detected and the detected minimum point is larger than the threshold ratio with respect to the maximum point before or after the detected minimum point, the minimum point is excluded. It is characterized by detecting a minimum point.
Further, the swell detection device of the present invention includes a smoothing unit that smoothes curved waveform data, a minimum point detection unit that detects a minimum point of the curved waveform data smoothed by the smoothing unit, and the minimum point detection. And a swell section detecting unit that detects a section having a maximum value in a section between the minimum points as a swell section based on the minimum point detected by the section, and the swell section detecting unit detects the detected 2 When the value of a section between two rising sections is larger than a threshold ratio with respect to the value of the two detected rising sections, the two detected rising sections are connected to one rising section.
Further, the swell detection device of the present invention includes a smoothing unit that smoothes curved waveform data, a minimum point detection unit that detects a minimum point of the curved waveform data smoothed by the smoothing unit, and the minimum point detection. A climax section detection unit that detects a climax section that has a maximum value in a section between the maximal points based on the minimal point detected by the section as a climax section. If the length of the detected climax section is equal to or less than the threshold ratio with respect to the climax section having the maximum length among the sections, the climax section is detected by excluding the climax section.

また、本発明のプログラムは、曲波形データを平滑化する平滑化ステップと、前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、前記平滑化ステップは、前記曲波形データを平滑化する第1の平滑化ステップと、前記第1の平滑化ステップにより平滑化された曲波形データを平滑化する第2の平滑化ステップとを有し、前記極小点検出ステップでは、前記第2の平滑化ステップにより平滑化された曲波形データの極小点を検出し、前記盛り上がり区間検出ステップでは、前記第1の平滑化ステップにより平滑化された曲波形データの変化量を基に、前記極小点検出ステップにより検出された極小点間の区間の始点及び終点を修正し、盛り上がり区間を検出することを特徴とする
また、本発明のプログラムは、曲波形データを平滑化する平滑化ステップと、前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、前記極小点検出ステップでは、前記平滑化ステップにより平滑化された曲波形データの極小点を検出し、前記検出された極小点が前記検出された極小点の前又は後の極大点に対して閾値割合より大きければその極小点を除外して極小点を検出することを特徴とする。
また、本発明のプログラムは、曲波形データを平滑化する平滑化ステップと、前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、前記盛り上がり区間検出ステップでは、検出された2つの盛り上がり区間の間の区間の値が前記検出された2つの盛り上がり区間の値に対して閾値割合より大きいときには、前記検出された2つの盛り上がり区間を1つの盛り上がり区間につなげることを特徴とする。
また、本発明のプログラムは、曲波形データを平滑化する平滑化ステップと、前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、前記盛り上がり区間検出ステップでは、検出された盛り上がり区間のうちの最大の長さの盛り上がり区間に対して、検出された盛り上がり区間の長さが閾値割合以下であればその盛り上がり区間を除外して盛り上がり区間を検出することを特徴とする。
The program of the present invention includes a smoothing step for smoothing the curved waveform data, a minimal point detecting step for detecting a minimal point of the curved waveform data smoothed by the smoothing step, and a minimal point detecting step. A program for causing a computer to execute a rising section detecting step for detecting a section having a maximum value in a section between minimum points as a rising section based on the detected minimum points , and the smoothing step A first smoothing step for smoothing the curved waveform data; and a second smoothing step for smoothing the curved waveform data smoothed by the first smoothing step, wherein the minimum inspection is performed. In the output step, the minimum point of the curved waveform data smoothed by the second smoothing step is detected. Based on the change amount of the curved waveform data smoothed by the first smoothing step, the start point and the end point of the section between the minimum points detected by the minimum point detection step are corrected, and the rising section is detected. Features .
The program of the present invention includes a smoothing step for smoothing the curved waveform data, a minimal point detecting step for detecting a minimal point of the curved waveform data smoothed by the smoothing step, and a minimal point detecting step. A program for causing a computer to execute a climax section detecting step for detecting, as a climax section, a section in which a maximum value in a section between the minimum points is greater than or equal to a threshold value based on the detected maximal point, the minimum point detecting step Then, the local minimum point of the curved waveform data smoothed by the smoothing step is detected, and if the detected local minimum point is larger than a threshold ratio with respect to the local maximum point before or after the detected local minimum point, It is characterized in that a minimum point is detected by excluding the minimum point.
The program of the present invention includes a smoothing step for smoothing the curved waveform data, a minimal point detecting step for detecting a minimal point of the curved waveform data smoothed by the smoothing step, and a minimal point detecting step. A program for causing a computer to execute a climax section detecting step for detecting, as a climax section, a section whose maximum value in a section between the minimum points is greater than or equal to a threshold value based on the detected maximal point, the climax section detecting step Then, when the value of the section between the two detected rising sections is larger than the threshold ratio with respect to the value of the two detected rising sections, the two detected rising sections are connected to one rising section. It is characterized by that.
The program of the present invention includes a smoothing step for smoothing the curved waveform data, a minimal point detecting step for detecting a minimal point of the curved waveform data smoothed by the smoothing step, and a minimal point detecting step. A program for causing a computer to execute a climax section detecting step for detecting, as a climax section, a section whose maximum value in a section between the minimum points is greater than or equal to a threshold value based on the detected maximal point, the climax section detecting step Then, with respect to the climax section having the maximum length among the climax sections detected, if the length of the climax section detected is equal to or less than the threshold ratio, the climax section is detected by excluding the climax section. Features.

本発明によれば、曲波形データの盛り上がり区間を検出することができる。   According to the present invention, a rising section of music waveform data can be detected.

本発明の第1の実施形態による盛り上がり検出装置の盛り上がり検出方法を示すフローチャートである。It is a flowchart which shows the swelling detection method of the swelling detection apparatus by the 1st Embodiment of this invention. 曲波形データを示す図である。It is a figure which shows music waveform data. 曲波形データの振幅の絶対値を示す図である。It is a figure which shows the absolute value of the amplitude of music waveform data. 第1の移動平均を示す図である。It is a figure which shows the 1st moving average. ダウンサンプリングを示す図である。It is a figure which shows downsampling. 第2の移動平均を示す図である。It is a figure which shows a 2nd moving average. 図7(A)〜(C)は極小点の補正を示す図である。7A to 7C are diagrams illustrating correction of the minimum point. 極小点の補正を示す図である。It is a figure which shows correction | amendment of a minimum point. 図9(A)及び(B)は盛り上がり区間の候補を示す図である。FIGS. 9A and 9B are diagrams showing candidates for the exciting section. 図10(A)及び(B)は盛り上がり区間の接続を示す図である。FIGS. 10A and 10B are diagrams showing connections in the rising section. 図11(A)及び(B)は短い盛り上がり区間の候補の除外を示す図である。FIGS. 11A and 11B are diagrams showing exclusion of candidates for a short climax section. 本発明の第2の実施形態によるイントロ及びエンディング検出方法を示すフローチャートである。6 is a flowchart illustrating an intro and ending detection method according to a second embodiment of the present invention. フェードイン(アウト)検出処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a fade-in (out) detection process. フェードイン(アウト)検出処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a fade-in (out) detection process. ドラムなし(アカペラ等)検出処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of detection processing without a drum (a cappella etc.). 大きな音(イントロ)検出処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a loud sound (intro) detection process. 大きな音(エンディング)検出処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a loud sound (ending) detection process. 曲波形データを示す図である。It is a figure which shows music waveform data. 1秒間隔の配列データを示す図である。It is a figure which shows the arrangement | sequence data of a 1 second space | interval. フェードインの終点検出処理を示す図である。It is a figure which shows the end point detection process of fade-in. 前フレームからの増加量を示す図である。It is a figure which shows the increase amount from a front frame. 急激な増加の検出処理を示す図である。It is a figure which shows the detection process of a rapid increase. フェードインの終点の変更処理を示す図である。It is a figure which shows the change process of the end point of fade-in. フェードインの始点の検出処理を示す図である。It is a figure which shows the detection process of the starting point of fade-in. フェードイン区間の前の振幅検出処理を示す図である。It is a figure which shows the amplitude detection process before a fade-in area. 図26(A)〜(C)は高速フーリエ変換処理を示す図である。FIGS. 26A to 26C are diagrams showing the fast Fourier transform process. 低音域のパワー検出処理を示す図である。It is a figure which shows the power detection process of a low sound range. ドラムなし区間の始点検出処理を示す図である。It is a figure which shows the starting point detection process of a drum no area. ドラムなし区間のパワー検出処理を示す図である。It is a figure which shows the power detection process of a drum no area. 大きな音区間の終点検出処理を示す図である。It is a figure which shows the end point detection process of a loud sound area. 大きな音区間の始点検出処理を示す図である。It is a figure which shows the starting point detection process of a loud sound area. 高速フーリエ変換処理を示す図である。It is a figure which shows a fast Fourier-transform process. 盛り上がり検出装置(コンピュータ)のハードウエア構成例を示すブロック図である。It is a block diagram which shows the hardware structural example of a swell detector (computer). 盛り上がり検出装置(コンピュータ)のプログラムの機能を説明するためのブロック図である。It is a block diagram for demonstrating the function of the program of a swell detector (computer).

(第1の実施形態)
図33は、本発明の第1の実施形態による盛り上がり検出装置(コンピュータ)のハードウエア構成例を示すブロック図である。盛り上がり検出装置は、例えばパーソナルコンピュータで構成される。バス3301には、中央処理装置(CPU)3302、ROM3303、RAM3304、ネットワークインタフェース3305、入力装置3306、出力装置3307及び外部記憶装置3308が接続されている。
(First embodiment)
FIG. 33 is a block diagram illustrating a hardware configuration example of the swell detection device (computer) according to the first embodiment of the present invention. The swell detection device is composed of, for example, a personal computer. A central processing unit (CPU) 3302, a ROM 3303, a RAM 3304, a network interface 3305, an input device 3306, an output device 3307, and an external storage device 3308 are connected to the bus 3301.

CPU3302は、データの処理又は演算を行うと共に、バス3301を介して接続された各種構成要素を制御するものである。ROM3303には、予めCPU3302の制御手順(コンピュータプログラム)を記憶させておき、このコンピュータプログラムをCPU3302が実行することにより、起動する。外部記憶装置3308にコンピュータプログラムが記憶されており、そのコンピュータプログラムがRAM3304にコピーされて実行される。RAM3304は、データの入出力、送受信のためのワークメモリ、各構成要素の制御のための一時記憶として用いられる。外部記憶装置3308は、例えばハードディスク記憶装置やCD−ROM等であり、電源を切っても記憶内容が消えない。CPU3302は、RAM3304内のコンピュータプログラムを実行することにより、図1、図12〜図17の処理を行う。   The CPU 3302 processes or calculates data and controls various components connected via the bus 3301. The ROM 3303 stores a control procedure (computer program) of the CPU 3302 in advance, and is activated when the CPU 3302 executes the computer program. A computer program is stored in the external storage device 3308, and the computer program is copied to the RAM 3304 and executed. The RAM 3304 is used as a work memory for data input / output, transmission / reception, and temporary storage for control of each component. The external storage device 3308 is, for example, a hard disk storage device or a CD-ROM, and the stored content does not disappear even when the power is turned off. The CPU 3302 executes the computer program in the RAM 3304 to perform the processes of FIGS. 1 and 12 to 17.

ネットワークインタフェース3305は、インターネット等のネットワークに接続するためのインタフェースである。入力装置3306は、例えばキーボード及びマウス等であり、各種指示又は入力等を行うことができる。出力装置3307は、表示装置(ディスプレイ)、印刷装置(プリンタ)及びスピーカ等である。   A network interface 3305 is an interface for connecting to a network such as the Internet. The input device 3306 is, for example, a keyboard and a mouse, and can give various instructions or inputs. The output device 3307 is a display device (display), a printing device (printer), a speaker, and the like.

図1は、本実施形態による盛り上がり検出装置の盛り上がり検出方法を示すフローチャートである。CPU3302がプログラムを実行することにより、図1の処理が行われる。   FIG. 1 is a flowchart showing a method for detecting the swell of the swell detector according to this embodiment. The processing shown in FIG. 1 is performed by the CPU 3302 executing the program.

ステップS101では、CPU3302は、外部記憶装置3308から曲波形データ(WAVデータ)をRAM3304にロードし、モノラル化処理及び正規化処理を行う。具体的には、CPU3302は、曲波形データがステレオの場合には、ステレオの曲波形データをモノラルの曲波形データに変換する。次に、CPU3302は、曲波形データを正規化することにより曲波形データの最大振幅をダイナミックレンジの最大値に合わせ、図2の曲波形データを生成する。   In step S101, the CPU 3302 loads music waveform data (WAV data) from the external storage device 3308 to the RAM 3304, and performs monaural processing and normalization processing. Specifically, if the music waveform data is stereo, the CPU 3302 converts the stereo music waveform data into monaural music waveform data. Next, the CPU 3302 normalizes the music waveform data to match the maximum amplitude of the music waveform data with the maximum value of the dynamic range, and generates the music waveform data of FIG.

次に、ステップS102では、CPU3302は、盛り上がりを数値化するために、波形振幅の絶対値を、移動平均などを使って平滑化する。なお、高速フーリエ変換(FFT)した結果のパワーの合計やパワーのlogの合計などから盛り上がりを数値化してもよい。具体的には、CPU3302は、図3に示すように、曲波形データの振幅を絶対値化する。次に、CPU3302は、図3のデータに対して前後1秒で移動平均をとり、図4の滑らかなデータを生成する。なお、図3は横軸が縮小されているので、実際には曲波形データの各ピーク間に小さな値があるため、平均をとると図4のように全体的に下がった形になる。   Next, in step S102, the CPU 3302 smoothes the absolute value of the waveform amplitude using a moving average or the like in order to digitize the swell. Note that the climax may be quantified based on the sum of power as a result of fast Fourier transform (FFT), the sum of log of power, or the like. Specifically, as shown in FIG. 3, the CPU 3302 converts the amplitude of the music waveform data into an absolute value. Next, the CPU 3302 takes a moving average for 1 second before and after the data of FIG. 3 to generate the smooth data of FIG. In FIG. 3, since the horizontal axis is reduced, there is actually a small value between the peaks of the curved waveform data, so when taking the average, the overall shape is lowered as shown in FIG.

次に、ステップS103では、CPU3302は、もう一度移動平均などを使って、さらに平滑化する。ステップS102の1回の移動平均だけでは所望の滑らかさが得られないため、ステップS103で2回目の移動平均を行う。具体的には、CPU3302は、図5に示すように、図4のデータを間引くなどしてサンプル数を減らす。例えば、44.1kHzのサンプル数を100Hzのサンプル数に減らす。なお、サンプル数を減らすといっても図4と図5は0.1秒間隔にプロットしているので、差異が明確に現れない。次に、CPU3302は、図5のデータに対して前後1秒で移動平均をとり、図6の滑らかなデータを生成する。   Next, in step S103, the CPU 3302 performs further smoothing again using a moving average or the like. Since the desired smoothness cannot be obtained by only one moving average in step S102, the second moving average is performed in step S103. Specifically, as shown in FIG. 5, the CPU 3302 reduces the number of samples by thinning out the data in FIG. For example, the number of samples at 44.1 kHz is reduced to the number of samples at 100 Hz. Even if the number of samples is reduced, since FIG. 4 and FIG. 5 are plotted at intervals of 0.1 second, the difference does not appear clearly. Next, the CPU 3302 takes a moving average in 1 second before and after the data of FIG. 5 to generate smooth data of FIG.

次に、ステップS104では、CPU3302は、図6のデータに対して極小点を探し、前後の極大点の値が小さい方と比較してあまり違いがなければ、極大点間の最低値を極大点の小さい方として値を修正し、極小点をなくす。これは、移動平均した結果を区間として認識し易くするためである。具体的には、CPU3302は、図7(A)に示すように、細かい凸凹を削除することを目的に、変化の小さい極小点702のまわりのデータを補正する。CPU3302は、極小点702を探し、その前の極大点701及びその後の極大点703と比較し、前後の極大点701,703の小さい方の90%よりも極小点702の値の方が大きい場合は凸凹が小さいので、極大点701及び703間のデータで極大点の小さい方の値よりも、小さいデータは、図7(B)に示すように極大点の小さい方の値まで持ち上げ、図7(C)のデータを生成する。図8は、ステップS104の処理を行った結果のデータを示し、図6のデータに対して細かい凹凸が除去されている。   Next, in step S104, the CPU 3302 searches for the minimum point in the data of FIG. 6, and if there is not much difference compared to the one with the smaller value of the front and rear maximum points, the minimum value between the maximum points is determined. Correct the value as the smaller of and eliminate the local minimum. This is to facilitate recognition of the moving average result as a section. Specifically, as shown in FIG. 7A, the CPU 3302 corrects data around a local minimum point 702 with a small change for the purpose of deleting fine irregularities. The CPU 3302 searches for the local minimum point 702 and compares it with the previous local maximum point 701 and the subsequent local maximum point 703, and the value of the local minimum point 702 is larger than 90% of the smaller ones of the front and rear local maximum points 701 and 703. Since the unevenness is small, the data between the maximum points 701 and 703 is raised to the smaller value of the maximum point as shown in FIG. The data of (C) is generated. FIG. 8 shows data obtained as a result of the processing in step S104, and fine irregularities are removed from the data in FIG.

次に、ステップS105では、CPU3302は、図8のデータを基に極小点間を盛り上がり区間の候補として全て抽出する。具体的には、CPU3302は、まず、盛り上がり区間の候補を探すため、図9(A)に示すように、極小点間を盛り上がり区間901として記録する。   Next, in step S105, the CPU 3302 extracts all the points between the minimum points as candidates for the climax section based on the data in FIG. Specifically, the CPU 3302 first records the interval between the minimum points as a climax section 901 as shown in FIG.

次に、ステップS106では、CPU3302は、図4の1回目の平滑化のデータで、盛り上がり区間の始点からみて、最初に極大値が現れるまでの間で、最も数値が変化している位置に始点を修正する。具体的には、CPU3302は、図9(A)の記録されたそれぞれの区間901について始点の位置を調整するため、図9(B)に示すように、区間901の先頭から最初の極大点902までの間でもっとも前のデータからの変化量の大きい位置903を区間の始点に修正する。   Next, in step S106, the CPU 3302 uses the first smoothing data shown in FIG. 4, and the starting point is the position where the numerical value changes the most until the maximum value first appears from the starting point of the rising section. To correct. Specifically, since the CPU 3302 adjusts the position of the start point for each recorded section 901 in FIG. 9A, as shown in FIG. 9B, the first maximum point 902 from the beginning of the section 901 is displayed. The position 903 having the largest change amount from the previous data is corrected to the start point of the section.

次に、ステップS107では、CPU3302は、図9(A)の記録されたそれぞれの区間901について終点の位置を調整するため、始点と同様の方法で、区間901の最後の極大点から区間901の最後までの間で最も次のデータへの変化量が大きい位置を区間901の終点に修正する。   Next, in step S107, the CPU 3302 adjusts the position of the end point for each of the recorded sections 901 in FIG. 9A in the same manner as the start point from the last maximum point of the section 901 to the section 901. The position with the largest change amount to the next data until the end is corrected to the end point of the section 901.

次に、ステップS108では、CPU3302は、盛り上がり区間を選別するために盛り上がりの最大値を求め、一定の割合以上の区間最大値を持つもののみ盛り上がり区間とする。なお、区間平均値、区間合計、区間内の閾値以上のデータ割合などを使って区間を選別してもよい。   Next, in step S108, the CPU 3302 obtains the maximum value of the climax in order to select the climax section, and only those having the section maximum value of a certain ratio or more are set as the climax section. The sections may be selected using the section average value, the section total, a data ratio equal to or higher than the threshold value in the section, and the like.

具体的には、CPU3302は、盛り上がり区間901の候補全ての中で最大値を求める。次に、CPU3302は、盛り上がり区間それぞれの最大値が、上記の全ての候補の中の最大値のN%(初回はN=65)未満の場合は、盛り上がり区間ではない(データ波形上では小さい山)と判断し、盛り上がり区間の候補からはずす。次に、CPU3302は、全体の長さに対して、盛り上がり区間の候補として残ったものの合計の長さを算出し、33%以上なら、まだ盛り上がり区間の候補が多すぎると判断し、上記のNを5上げて、上記の処理を繰り返し、盛り上がり区間の候補の数を減らす。   Specifically, the CPU 3302 obtains the maximum value among all candidates for the climax section 901. Next, when the maximum value of each of the climax sections is less than N% (N = 65 for the first time) of all the above candidates, the CPU 3302 is not a climax section (a small peak on the data waveform). ) And remove it from the candidate for the exciting section. Next, the CPU 3302 calculates the total length of those remaining as climax sections candidates with respect to the overall length, and if it is 33% or more, the CPU 3302 determines that there are still too many climax sections candidates, and the above N Is increased by 5 and the above process is repeated to reduce the number of candidates for the exciting section.

次に、CPU3302は、盛り上がり区間の候補がある程度絞られたところで、図10(A)に示すように、盛り上がり区間1001と次の盛り上がり区間1003の間の区間1002の値が、ある程度大きい場合は、図10(B)に示すように、2つの盛り上がり区間1001及び1003を1つの盛り上がり区間1004につなげる。例えば、CPU3302は、盛り上がり区間1001と次の盛り上がり区間1003の間の区間1002の値が全て、盛り上がり区間1001の終わりの値と次の盛り上がり区間1003の初めの値で小さい方の値に対し、75%以上なら盛り上がり区間1001及び1003の間の区間1002も盛り上がっていると判断し、1つの盛り上がり区間1004にまとめる。   Next, as shown in FIG. 10A, when the candidates for the climax section are narrowed to some extent, the CPU 3302 determines that the value of the section 1002 between the climax section 1001 and the next climax section 1003 is large to some extent. As shown in FIG. 10B, the two rising sections 1001 and 1003 are connected to one rising section 1004. For example, the CPU 3302 determines that the value of the section 1002 between the climax section 1001 and the next climax section 1003 is 75 smaller than the smaller value of the end value of the climax section 1001 and the first value of the next climax section 1003. If it is equal to or greater than%, it is determined that the section 1002 between the rising sections 1001 and 1003 is also rising, and is combined into one rising section 1004.

次に、CPU3302は、盛り上がり区間の候補の中で最大の長さを求め、各盛り上がり区間の中で、最大の長さの30%以下の候補をはずす。例えば、図11(A)では、区間1101及び1102の長さが最大の長さの30%以下なので候補からはずし、図11(B)に示すように、最終的に区間1103及び1104が盛り上がり区間として検出される。   Next, the CPU 3302 obtains the maximum length among the climax sections, and removes candidates that are 30% or less of the maximum length in each climax section. For example, in FIG. 11A, the lengths of the sections 1101 and 1102 are 30% or less of the maximum length, so they are excluded from the candidates. As shown in FIG. 11B, the sections 1103 and 1104 are finally raised sections. Detected as

以上のように、本実施形態によれば、曲波形データの盛り上がり区間を検出することができる。これにより、曲波形データの盛り上がり区間に同期し、画像(静止画又は動画)データを再生することにより、曲及び画像を、同期をとりながら再生することができる。例えば、曲波形データの盛り上がり区間で、静止画を動かす等の盛り上がり再生処理を行うことができる。これにより、曲波形データの盛り上がり区間に同期し、画像に盛り上がり効果を付与することができる。   As described above, according to the present embodiment, it is possible to detect a rising section of music waveform data. As a result, by reproducing the image (still image or moving image) data in synchronization with the rising section of the music waveform data, the music and the image can be reproduced while being synchronized. For example, it is possible to perform a climax reproduction process such as moving a still image in a climax section of music waveform data. Thereby, it can synchronize with the climax section of the music waveform data and can give the climax effect to the image.

図34は、図33のコンピュータのプログラムの機能を説明するためのブロック図である。コンピュータがプログラムを実行することにより、盛り上がり検出装置(方法)が実現される。盛り上がり検出装置(方法)3400は、平滑化部(ステップ)3401、極小点検出部(ステップ)3402、及び盛り上がり区間検出部(ステップ)3403を有する。平滑化部3401は、第1の平滑化部(ステップ)3411及び第2の平滑化部(ステップ)3412を有する。   FIG. 34 is a block diagram for explaining the function of the program of the computer of FIG. When the computer executes the program, a swell detection device (method) is realized. The swell detection device (method) 3400 includes a smoothing unit (step) 3401, a minimum point detection unit (step) 3402, and a swell section detection unit (step) 3403. The smoothing unit 3401 includes a first smoothing unit (step) 3411 and a second smoothing unit (step) 3412.

平滑化部3401は、ステップS102及びS103に対応し、曲波形データを平滑化する。極小点検出部3402は、ステップS104に対応し、平滑化部3401により平滑化された曲波形データの極小点を検出する。盛り上がり区間検出部3403は、ステップS105〜S108に対応し、極小点検出部3402により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する。   A smoothing unit 3401 smoothes the waveform data corresponding to steps S102 and S103. The minimum point detection unit 3402 detects the minimum point of the curved waveform data smoothed by the smoothing unit 3401 corresponding to step S104. In response to steps S <b> 105 to S <b> 108, the climax section detection unit 3403 detects a section in which the maximum value in the section between the minimum points is greater than or equal to the threshold based on the minimum points detected by the minimum point detection unit 3402 as a climax section.

詳しくは、第1の平滑化部3411は、ステップS102に対応し、曲波形データを平滑化する。第2の平滑化部3412は、ステップS103に対応し、第1の平滑化部3411により平滑化された曲波形データを平滑化する。極小点検出部3402は、第2の平滑化部3412により平滑化された曲波形データの極小点を検出する。盛り上がり区間検出部3403は、ステップS106及びS107に対応し、第1の平滑化部3411により平滑化された曲波形データの変化量を基に、極小点検出部3402により検出された極小点間の区間の始点及び終点を修正し、盛り上がり区間を検出する。   Specifically, the first smoothing unit 3411 corresponds to step S102 and smoothes the curved waveform data. The second smoothing unit 3412 corresponds to step S103 and smoothes the curved waveform data smoothed by the first smoothing unit 3411. The minimum point detection unit 3402 detects the minimum point of the curved waveform data smoothed by the second smoothing unit 3412. The climax section detection unit 3403 corresponds to steps S106 and S107, and is based on the amount of change in the curved waveform data smoothed by the first smoothing unit 3411, between the minimum points detected by the minimum point detection unit 3402. Correct the start point and end point of the section, and detect the rising section.

極小点検出部3402は、図7(A)〜(C)に示すように、平滑化部3401により平滑化された曲波形データの極小点を検出し、検出された極小点が検出された極小点の前又は後の極大点に対して閾値割合より大きければその極小点を除外して極小点を検出する。   As shown in FIGS. 7A to 7C, the local minimum point detection unit 3402 detects the local minimum point of the curved waveform data smoothed by the smoothing unit 3401, and the local minimum point from which the detected local minimum point is detected is detected. If the maximum point before or after the point is larger than the threshold ratio, the minimum point is excluded and the minimum point is detected.

盛り上がり区間検出部3403は、図10(A)及び(B)に示すように、検出された2つの盛り上がり区間の間の区間の値が検出された2つの盛り上がり区間の値に対して閾値割合より大きいときには、検出された2つの盛り上がり区間を1つの盛り上がり区間につなげる。   As shown in FIGS. 10 (A) and 10 (B), the climax section detection unit 3403 uses a threshold ratio for the values of the two climax sections in which the value of the section between the two climax sections detected is detected. When it is larger, the two detected rising sections are connected to one rising section.

また、盛り上がり区間検出部3403は、図11(A)及び(B)に示すように、検出された盛り上がり区間のうちの最大の長さの盛り上がり区間に対して、検出された盛り上がり区間の長さが閾値割合以下であればその盛り上がり区間を除外して盛り上がり区間を検出する。   In addition, as shown in FIGS. 11A and 11B, the climax section detection unit 3403 detects the length of the detected climax section with respect to the climax section having the maximum length among the detected climax sections. If is less than or equal to the threshold ratio, the rising section is excluded and the rising section is detected.

(第2の実施形態)
図12は、本発明の第2の実施形態によるイントロ及びエンディング検出方法を示すフローチャートである。ステップS1201では、CPU3302は、外部記憶装置3308から曲波形データ(WAVデータ)をRAM3304にロードし、モノラル化処理及び正規化処理を行う。具体的には、CPU3302は、曲波形データがステレオの場合には、ステレオの曲波形データをモノラルの曲波形データに変換する。次に、CPU3302は、曲波形データを正規化することにより曲波形データの最大振幅をダイナミックレンジの最大値に合わせ、図18の曲波形データを生成する。
(Second Embodiment)
FIG. 12 is a flowchart illustrating an intro and ending detection method according to the second embodiment of the present invention. In step S1201, the CPU 3302 loads music waveform data (WAV data) from the external storage device 3308 to the RAM 3304, and performs monaural processing and normalization processing. Specifically, if the music waveform data is stereo, the CPU 3302 converts the stereo music waveform data into monaural music waveform data. Next, the CPU 3302 normalizes the music waveform data to match the maximum amplitude of the music waveform data with the maximum value of the dynamic range, and generates the music waveform data of FIG.

次に、ステップS1202では、CPU3302は、フェードイン(アウト)検出処理を行う。フェードイン(アウト)検出処理の詳細は、後に図13及び図14を参照しながら説明する。フェードイン(アウト)が検出されたときにはステップS1205に進み、フェードイン(アウト)が検出されないときにはステップS1203に進む。ステップS1205では、CPU3302は、フェードイン(アウト)の種類のイントロ(エンディング)が検出されたと判断し、検出されたフェードイン(アウト)区間をイントロ(エンディング)区間として設定する。   Next, in step S1202, the CPU 3302 performs a fade-in (out) detection process. Details of the fade-in (out) detection process will be described later with reference to FIGS. 13 and 14. When fade-in (out) is detected, the process proceeds to step S1205. When fade-in (out) is not detected, the process proceeds to step S1203. In step S1205, the CPU 3302 determines that a fade-in (out) type intro (ending) has been detected, and sets the detected fade-in (out) interval as an intro (ending) interval.

ステップS1203では、CPU3302は、先頭部又は最後部のドラムなし(アカペラ等)検出処理を行う。曲波形データ内の先頭部又は最後部にドラムなしの区間があれば、その区間はアカペラ等のイントロ又はエンディングであると判断することができる。ドラムなし(アカペラ等)検出処理の詳細は、後に図15を参照しながら説明する。ドラムなし(アカペラ等)が検出されたときにはステップS1206に進み、ドラムなし(アカペラ等)が検出されないときにはステップS1204に進む。ステップS1206では、CPU3302は、ドラムなし(アカペラ等)の種類のイントロ(エンディング)が検出されたと判断し、検出されたドラムなし(アカペラ等)区間をイントロ(エンディング)区間として設定する。   In step S <b> 1203, the CPU 3302 performs a detection process for detecting no drum (such as a cappella) at the beginning or end. If there is a drumless section at the beginning or end of the song waveform data, it can be determined that the section is an intro or ending such as a cappella. Details of the drumless (a cappella etc.) detection process will be described later with reference to FIG. If no drum (such as a cappella) is detected, the process proceeds to step S1206. If no drum (such as a cappella) is detected, the process proceeds to step S1204. In step S1206, the CPU 3302 determines that an intro (ending) type of drumless (a cappella etc.) has been detected, and sets the detected no drum (a cappella etc.) section as an intro (ending) period.

ステップS1204では、CPU3302は、先頭部又は最後部の大きな音検出処理を行う。大きな音検出処理の詳細は、後に図16及び図17を参照しながら説明する。大きな音が検出されたときにはステップS1207に進み、大きな音が検出されないときにはステップS1208に進む。ステップS1207では、CPU3302は、大きな音の種類のイントロ(エンディング)が検出されたと判断し、検出された大きな音区間をイントロ(エンディング)区間として設定する。   In step S1204, the CPU 3302 performs a loud sound detection process at the beginning or end. Details of the loud sound detection process will be described later with reference to FIGS. 16 and 17. When a loud sound is detected, the process proceeds to step S1207, and when a loud sound is not detected, the process proceeds to step S1208. In step S1207, the CPU 3302 determines that an intro (ending) of a loud sound type has been detected, and sets the detected loud sound section as an intro (ending) section.

ステップS1208では、CPU3302は、イントロ(エンディング)の特徴がないと判定し、イントロ(エンディング)が検出されなかったことを記録する。   In step S1208, the CPU 3302 determines that there is no intro (ending) feature, and records that no intro (ending) has been detected.

以上のように、本実施形態によれば、曲波形データのイントロ及び/又はエンディングを検出することができる。これにより、曲波形データのイントロ及び/又はエンディングに同期し、画像(静止画又は動画)データを再生することにより、曲及び画像を、同期をとりながら再生することができる。例えば、曲波形データのイントロでは画像が徐々に現れ、曲波形データのエンディングでは画像が徐々に消えるような画像処理を行うことができる。   As described above, according to the present embodiment, intro and / or ending of music waveform data can be detected. As a result, by reproducing the image (still image or moving image) data in synchronization with the intro and / or ending of the music waveform data, the music and the image can be reproduced while being synchronized. For example, it is possible to perform image processing in which an image gradually appears in the intro of the music waveform data and gradually disappears in the ending of the music waveform data.

図13及び図14は、図12のステップS1202のフェードイン(アウト)検出処理の詳細を示すフローチャートである。フェードインは、音量が徐々に大きくなりながら曲が始まるイントロである。フェードアウトは、音量が徐々に小さくなりながら曲が終わるエンディングである。   13 and 14 are flowcharts showing details of the fade-in (out) detection process in step S1202 of FIG. Fade-in is an intro that begins with the volume increasing gradually. The fade-out is an ending in which the song ends while the volume gradually decreases.

ステップS1301では、CPU3302は、図19に示すように、曲波形データ1901に対して1秒間隔で振幅の絶対値の最大値の配列データ1902を作成する。なお、図1(第1の実施形態)と同様に、移動平均を使ったり、高速フーリエ変換したパワーを使ってもよい。   In step S1301, as shown in FIG. 19, the CPU 3302 creates array data 1902 of the maximum absolute value of the amplitude at intervals of 1 second for the music waveform data 1901. As in FIG. 1 (first embodiment), a moving average or power obtained by fast Fourier transform may be used.

次に、ステップS1302では、CPU3302は、図20に示すように、配列データ1902の最初の大きな極大点1903を探し、フェードインの終点と仮決定する。ここで、大きな極大点とは配列データ1902の最大値の半分以上の値を持つ極大点を指す。エンディングについても、イントロと同様に、最後からスキャンして大きな極大点を探し、フェードアウトの始点と仮決定する。   Next, in step S1302, the CPU 3302 searches for the first large maximum point 1903 of the array data 1902 as shown in FIG. Here, the large maximum point indicates a maximum point having a value that is half or more of the maximum value of the array data 1902. As for the ending, as in the intro, scan from the end to find a large maximum point, and tentatively determine the starting point of the fade-out.

次に、ステップS1303では、CPU3302は、図21に示すように、イントロについては最初から仮のフェードインの終点まで、前フレームからの増加量の配列データ2101を作成し、エンディングについてはフェードアウトの始点から最後まで、前フレームからの減少量の配列データを作成する。その際、増加量又は減少量がマイナスのときには0にする。   Next, in step S1303, as shown in FIG. 21, the CPU 3302 creates array data 2101 of the amount of increase from the previous frame from the beginning for the intro to the end point of the temporary fade-in, and for the ending the start point of the fade-out. From the end to the end, the array data of the reduced amount from the previous frame is created. At this time, when the increase or decrease is negative, it is set to zero.

次に、ステップS1304では、CPU3302は、イントロでは最初の極大点(仮のフェードインの終点)1903より前に急激過ぎる増加があるか否かをチェックする。ある場合にはステップS1305に進み、ない場合にはステップS1306に進む。同様に、CPU3302は、エンディングでは最後の極大点(仮のフェードアウトの始点)より後に急激過ぎる減少があるか否かをチェックする。ある場合にはステップS1305に進み、ない場合にはステップS1306に進む。ステップS1305では、CPU3302は、フェードイン又はフェードアウトとはみなさず、フェードイン又はフェードアウトが検出されなかったと判断する。   Next, in step S1304, the CPU 3302 checks whether there is an excessive increase before the first local maximum point (provisional fade-in end point) 1903 in the intro. If there is, the process proceeds to step S1305, and if not, the process proceeds to step S1306. Similarly, the CPU 3302 checks whether there is a decrease that is too rapid after the last maximum point (a temporary fade-out start point) in the ending. If there is, the process proceeds to step S1305, and if not, the process proceeds to step S1306. In step S1305, the CPU 3302 does not regard the fade-in or fade-out, and determines that no fade-in or fade-out has been detected.

具体的には、CPU3302は、イントロの場合、図21に示すように、急激過ぎる増加があるかステップS1303で作成された配列データ2101を使って調べる。ここで、急激とは図19の配列データ1902の最大値の半分以上の値を指す。急激過ぎる増加がある場合は、フェードインとするのはふさわしくないので、ステップS1305に進む。例えば、図22の配列データ2201では、データ2202が急激すぎる増加であり、その位置から突然音量が大きくなることを示しているので、図12のステップS1207の大きな音の種類のイントロとして判断されるべきであるので、このイントロはフェードインではないと判断する。   Specifically, in the case of the intro, as shown in FIG. 21, the CPU 3302 checks whether there is an excessive increase using the array data 2101 created in step S1303. Here, abrupt means a value that is half or more of the maximum value of the array data 1902 in FIG. If there is an excessive increase, it is not appropriate to make a fade-in, and the process advances to step S1305. For example, the array data 2201 in FIG. 22 indicates that the data 2202 is an excessive increase, and the volume suddenly increases from that position, so that it is determined as an intro of a loud sound type in step S1207 in FIG. It should be determined that this intro is not a fade-in.

次に、ステップS1306では、CPU3302は、イントロについては最初の極大点(仮のフェードインの終点)より前に急激な増加がある場合はその位置を、なければ最初の極大点をフェードインの終点として決定する。同様に、CPU3302は、エンディングについては最後の極大点(仮のフェードアウトの始点)より後に急激な減少がある場合はその位置を、なければ最後の極大点をフェードアウトの始点として決定する。すなわち、CPU3302は、仮のフェードインの終点位置から前に向かって調べ、急激とはいかないまでも前フレームと比べて急増化している部分があれば、その位置をフェードインの終点とする。これは、最初から仮のフェードインの終点までの間で徐々に音量が上昇している部分のみをフェードイン区間としたいためである。図23では、データ2301が急増化しているため、フェードインの終点を変更する。なお、図1(第1の実施形態)の盛り上がり検出と同様に、移動平均などで平滑化した場合は、なるべく元に近いデータで実際の始点及び/又は終点を決めることが好ましい。   Next, in step S1306, the CPU 3302 determines the position of the intro when there is a rapid increase before the first maximum point (provisional fade-in end point), and if not, the first maximum point is the end point of the fade-in. Determine as. Similarly, for the ending, the CPU 3302 determines the position when there is a rapid decrease after the last maximum point (provisional fade-out start point), and if not, the final maximum point is determined as the fade-out start point. That is, the CPU 3302 checks forward from the temporary fade-in end point position, and if there is a portion that is rapidly increased as compared with the previous frame even if it is not sudden, the position is set as the fade-in end point. This is because only a portion where the volume gradually increases between the beginning and the end point of the temporary fade-in is desired to be a fade-in section. In FIG. 23, since the data 2301 has increased rapidly, the end point of the fade-in is changed. As in the case of the swell detection in FIG. 1 (first embodiment), when smoothing is performed using a moving average or the like, it is preferable to determine the actual start point and / or end point with data as close to the original as possible.

次に、CPU3302は、イントロの場合、フェードインの終点のフレームから、実際の曲波形データ1901の位置を特定できるので、その範囲内(1秒間)でフェードイン終点とした位置のフレームの値と同じ値の場所を探し、フェードインの終点を確定する。エンディングの場合も同様である。   Next, in the case of an intro, the CPU 3302 can specify the position of the actual music waveform data 1901 from the frame at the end point of the fade-in, and therefore the value of the frame at the position at which the fade-in end point was within that range (1 second) Search for a place with the same value and determine the end of the fade-in. The same applies to the ending.

次に、ステップS1307では、CPU3302は、図19の配列データ1902を基に、イントロの場合はフェードインの終点の前にある極小点を探し、エンディングの場合はフェードアウトの始点の後にある極小点を探す。図24の場合、配列データ2401を基にイントロの極小点2402を探す。   Next, in step S1307, the CPU 3302 searches for the local minimum point before the end point of the fade-in in the case of the intro based on the array data 1902 in FIG. 19, and determines the local minimum point after the start point of the fade-out in the case of the ending. look for. In the case of FIG. 24, the intro local minimum point 2402 is searched based on the array data 2401.

次に、ステップS1308では、CPU3302は、イントロの場合は極小点から後ろに向かって最初にある程度の振幅が出る位置をフェードインの始点とし、エンディングの場合は極小点から前に向かって最初にある程度の振幅が出る位置をフェードアウトの終点とする。   Next, in step S1308, in the case of an intro, the CPU 3302 uses the position where a certain amount of amplitude first appears backward from the minimum point as the start point of the fade-in, and in the case of ending, the CPU 3302 initially applies a certain amount from the minimum point toward the front. The position where the amplitude of appears is the end point of the fade-out.

具体的には、CPU3302は、極小点2402が該当するフレームの時刻間において、図19と同様の方法で、1秒よりも細かい間隔でフレームデータを作成し、そのフレームデータの最後の極小点を探す。次に、CPU3302は、上記の探した極小点が該当するフレームの時刻間において、図19と同様の方法でさらに細かい間隔でフレームデータを作成し、そのフレームデータの最後の極小点を探す。CPU3302は、上記の処理を繰り返し、極小点の位置を特定し、これを仮のフェードインの始点とする。次に、CPU3302は、仮のフェードインの始点から終点に向かって、ある程度波形が出てくるところまでフェードインの始点をずらして範囲を狭める。これは、実際に聞いても聞き取れないほどの小さな音の部分はフェードインの区間から省くことが目的である。   Specifically, the CPU 3302 creates frame data at intervals smaller than 1 second between the times of the frames corresponding to the minimum point 2402 in the same manner as in FIG. 19, and sets the last minimum point of the frame data. look for. Next, the CPU 3302 creates frame data at a finer interval in the same manner as in FIG. 19 between the times of the frames to which the searched local minimum corresponds, and searches for the final local minimum of the frame data. The CPU 3302 repeats the above processing, specifies the position of the minimum point, and uses this as the temporary fade-in start point. Next, the CPU 3302 narrows the range by shifting the start point of the fade-in until a waveform appears to some extent from the temporary fade-in start point to the end point. The purpose of this is to omit from the fade-in the part of the sound that is so small that it cannot be heard.

次に、ステップS1309では、CPU3302は、フェードインの始点から終点までのフェードイン区間の長さが3秒未満の場合は、フェードインとしては短すぎで、ふさわしくないのでステップS1310に進み、3秒以上の場合はステップS1311に進む。同様に、CPU3302は、フェードアウトの始点から終点までのフェードアウト区間の長さが3秒未満の場合は、フェードアウトとしては短すぎで、ふさわしくないのでステップS1310に進み、3秒以上の場合はステップS1311に進む。ステップS1310では、CPU3302は、フェードイン又はフェードアウトとはみなさず、フェードイン又はフェードアウトが検出されなかったと判断する。   Next, in step S1309, if the length of the fade-in section from the start point to the end point of the fade-in is less than 3 seconds, the CPU 3302 proceeds to step S1310 because the fade-in is too short and unsuitable. In the above case, the process proceeds to step S1311. Similarly, if the length of the fade-out section from the start point to the end point of the fade-out is less than 3 seconds, the CPU 3302 proceeds to step S1310 because the fade-out is too short and is not suitable. move on. In step S1310, the CPU 3302 does not regard the fade-in or fade-out, and determines that no fade-in or fade-out has been detected.

なお、ステップS1309と同様に、ステップS1306の後においても、CPU3302は、波形の先頭(0秒)からフェードインの終点までの長さが3秒未満の場合は、フェードインとしては短すぎで、ふさわしくないので、ステップS1310に進むようにしてもよい。エンディングについても同様である。   Similarly to step S1309, even after step S1306, if the length from the top of the waveform (0 seconds) to the end point of the fade-in is less than 3 seconds, the CPU 3302 is too short as a fade-in, Since it is not appropriate, the process may proceed to step S1310. The same applies to the ending.

ステップS1311では、CPU3302は、イントロの場合はフェードイン区間より前にある程度の振幅を持った波形があるか調べる。ある程度の振幅を持った波形がある場合は、フェードインする前に語りなどの小さな音でのイントロ部があり、ステップS1312に進み、フェードインではないと判断する。例えば、図25のように、データ領域2501がある場合は、データ領域2501も別のイントロ部となるので、フェードインのイントロではないと判断する。これに対し、ある程度の振幅を持った波形がない場合は、ステップS1313に進み、検出区間をフェードイン区間とし、フェードインのイントロが検出されたと判断する。同様に、CPU3302は、エンディングの場合はフェードアウト区間より後にある程度の振幅を持った波形があるか調べる。ある程度の振幅を持った波形がある場合はステップS1312に進み、フェードアウトのエンディングではないと判断する。これに対し、ある程度の振幅を持った波形がない場合は、ステップS1313に進み、検出区間をフェードアウト区間とし、フェードアウトのエンディングが検出されたと判断する。   In step S1311, the CPU 3302 checks whether there is a waveform having a certain amplitude before the fade-in interval in the case of an intro. If there is a waveform having a certain amplitude, there is an intro portion with a small sound such as narrative before fading in, and the process proceeds to step S1312, and it is determined that the fading is not performed. For example, as shown in FIG. 25, if there is a data area 2501, the data area 2501 is also another intro part, so it is determined that it is not a fade-in intro. On the other hand, if there is no waveform having a certain amplitude, the process proceeds to step S1313, where the detection interval is set as a fade-in interval, and it is determined that a fade-in intro has been detected. Similarly, the CPU 3302 checks whether there is a waveform having a certain amplitude after the fade-out section in the case of ending. If there is a waveform having a certain amplitude, the process proceeds to step S1312, and it is determined that the ending is not a fade-out. On the other hand, if there is no waveform having a certain amplitude, the process advances to step S1313 to determine that the fade-out ending has been detected by setting the detection interval as a fade-out interval.

図15は、図12のステップS1203のドラムなし(アカペラ等)検出処理の詳細を示すフローチャートである。イントロがドラムなしである場合には、アカペラ等のイントロであると判断することができる。   FIG. 15 is a flowchart showing details of the drumless (a cappella etc.) detection process in step S1203 of FIG. When the intro has no drum, it can be determined that the intro is an a cappella or the like.

ステップS1501では、CPU3302は、曲波形データに対して数十ミリ秒間隔で高速フーリエ変換を行う。例えば、サンプル数2048、オーバーラップ1/2で高速フーリエ変換を行い、各フレームのパワーを求める。   In step S1501, the CPU 3302 performs fast Fourier transform on the music waveform data at intervals of several tens of milliseconds. For example, fast Fourier transform is performed with the number of samples 2048 and overlap 1/2, and the power of each frame is obtained.

次に、ステップS1502では、CPU3302は、フレーム毎に低音域とそれ以外でのパワー合計配列データを作成する。例えば、CPU3302は、図26(A)に示すように、250Hz以下をドラムが出ている低音域とし、フレーム毎に250Hz以下のパワー2601を合計した図26(B)の低音域のパワー合算値と、250Hzより上のパワー2602を合計した図26(C)のそれ以外のパワー合算値を求める。   Next, in step S1502, the CPU 3302 creates power total arrangement data in the low sound range and other areas for each frame. For example, as shown in FIG. 26 (A), the CPU 3302 sets the low frequency range of 250 Hz or less as the low frequency range in which the drum comes out, and sums the power 2601 of 250 Hz or less for each frame to add up the power value of the low frequency range in FIG. Then, the other power total value in FIG. 26C obtained by summing the powers 2602 above 250 Hz is obtained.

次に、ステップS1503では、CPU3302は、イントロの場合は前半で最初に低音域のパワーが大きくなる位置をドラムなしの終点とする。同様に、CPU3302は、エンディングの場合は後半で最後に低音域のパワーが小さくなる位置をドラムなしの始点とする。   Next, in step S1503, in the case of the intro, in the first half, the CPU 3302 sets the position where the power of the low frequency range first becomes the end point without drums. Similarly, in the case of ending, the CPU 3302 sets the position where the low-frequency power finally decreases in the second half as the starting point without drums.

図27は、曲波形データ2701及び低音域パワー合計値2702を示す。例えば、イントロの場合、CPU3302は、各フレームの低音域パワー合計値2702で、先頭から全体の1/4までの間で(曲の前半で)最初に低音域のパワーが大きくなる位置2703を探し、ドラムなしの終点とする。ここで、大きくなるとは、低音域のパワー合計値2702の最大値の1/6以上の値を指す。   FIG. 27 shows music waveform data 2701 and bass sound power total value 2702. For example, in the case of an intro, the CPU 3302 finds a position 2703 where the bass power is first increased between the beginning and the entire quarter (in the first half of the song) with the total bass power 2702 of each frame. The end point without drum. Here, increasing refers to a value that is 1/6 or more of the maximum value of the total power 2702 in the low frequency range.

次に、ステップS1504では、CPU3302は、イントロの場合は最初にある程度の振幅が出ている位置をドラムなしの始点とし、エンディングの場合は最後にある程度の振幅が出ている位置をドラムなしの終点とする。   Next, in step S1504, the CPU 3302 sets the position where a certain amount of amplitude appears at the beginning in the case of an intro as a starting point without drums, and the position where a certain amount of amplitude appears at the end in the case of endings as an end point without drums. And

図28は、曲波形データ2701及び低音域パワー合計値2702を示す。例えば、イントロの場合、CPU3302は、先頭(0秒)からドラムなしの終点に向かって、ある程度波形が出てくる位置2801をドラムなしの始点とする。これは、実際に聞いても聞き取れないほどの小さな音の部分はドラムなしの区間から省くことが目的である。   FIG. 28 shows the music waveform data 2701 and the bass power total value 2702. For example, in the case of an intro, the CPU 3302 sets a position 2801 where a waveform appears to some extent from the head (0 seconds) toward the end point without drum as the start point without drum. The purpose of this is to omit the part of the sound that cannot be heard even if it is actually heard from the section without the drum.

次に、ステップS1505では、ドラムなしの始点から終点までのドラムなし区間が閾値よりも短いか否かを調べる。短ければステップS1506へ進み、長ければステップS1607へ進む。ステップS1506では、CPU3302は、ドラムなしとはみなさず、ドラムなし(アカペラ等)が検出されなかったと判断する。   In step S1505, it is checked whether the drumless section from the start point to the end point without drum is shorter than the threshold value. If it is shorter, the process proceeds to step S1506, and if it is longer, the process proceeds to step S1607. In step S <b> 1506, the CPU 3302 does not consider that there is no drum, and determines that no drum (a cappella or the like) has been detected.

なお、ステップS1505と同様に、ステップS1503においても、ドラムなしの終点が見つからない場合や、先頭(0秒)からドラムなしの終点までの長さが5秒未満の場合はドラムなしとしては短すぎで、ふさわしくないので、ステップS1506へ進むようにしてもよい。   Similarly to step S1505, in step S1503, if the end point without drum is not found, or if the length from the beginning (0 seconds) to the end point without drum is less than 5 seconds, it is too short as no drum. Since it is not suitable, the process may proceed to step S1506.

ステップS1507では、CPU3302は、低音域以外のパワー合計値がドラムなし区間以外と同様に出ているか否かを調べる。出ているときには、ステップS1509へ進み、CPU3302は、検出区間をドラムなし区間とし、ドラムなしのイントロ又はエンディングが検出されたと判断する。出ていないときには、ステップS1508へ進み、全体的にパワーの出ていない区間であるため、ドラムなしのイントロ又はエンディングが検出されなかったと判断する。   In step S1507, the CPU 3302 checks whether or not the power total value other than the low sound range is output in the same manner as in the non-drum section. When it is out, the process proceeds to step S1509, and the CPU 3302 determines that the intro or ending without the drum is detected by setting the detection section as the no drum section. If not, the process proceeds to step S1508, where it is determined that no intro or ending without a drum has been detected since it is a section where power is not output as a whole.

すなわち、CPU3302は、図26(C)の各フレームの低音域以外(250Hzより上)のパワー値で、ドラムなしの区間と、それ以降の区間で同様にパワーが出ているか調べる。具体的には、まず、CPU3302は、ドラムなし区間の低音域以外のパワー合計の平均値を求める。次に、CPU3302は、ドラムなし区間の終点から全体の1/4までの間の(曲の前半の)低音域以外のパワー合計値の平均値を求める。次に、CPU3302は、ドラムなし区間の低音域以外のパワー合計の平均が、それ以降の低音域以外のパワー合計の平均の1/5より小さいか調べる。すなわち、ドラムなし区間とそれ以降において低音域のみ変化が激しいかどうかを確認する。   That is, the CPU 3302 checks whether the power is output in the section without the drum and the section after that with the power values other than the bass range (above 250 Hz) of each frame in FIG. Specifically, first, the CPU 3302 obtains an average value of the total power in the non-drum section other than the low sound range. Next, the CPU 3302 obtains the average value of the total power values other than the low frequency range (in the first half of the song) between the end point of the drumless section and the entire quarter. Next, the CPU 3302 checks whether the average of the powers other than the low sound range in the drumless section is smaller than 1/5 of the average of the powers other than the subsequent low sound range. In other words, it is confirmed whether or not the change is severe only in the low frequency range in the drumless section and thereafter.

小さければ、CPU3302は、ドラムなし区間は低音域も小さいが、低音域以外のパワーも低いので、全体的にパワーが出ていないと判断し、ドラムなしの区間にはふさわしくないので、ステップS1508へ進む。大きければ、CPU3302は、ステップS1509へ進み、ドラムなし始点からドラムなし終点までをドラムなし区間とし、ドラムなしのイントロ又はエンディングが検出されたと判断する。   If it is smaller, the CPU 3302 determines that the drumless section has a lower low frequency range, but the power other than the lower frequency range is low, so that the overall power is not output and is not suitable for the section without the drum. move on. If it is larger, the CPU 3302 proceeds to step S1509, determines from the drum-less start point to the drum-less end point as a drum-free section, and determines that an intro or ending without a drum has been detected.

図29は、曲波形データ2901及び低音域以外のパワー合計値2902を示す図である。CPU3302は、ドラムなし区間Aとそれ以降の区間Bで低音域以外の平均値を比較する。区間Aは、パワー合計値2902が小さいが、閾値を超えているので、区間Aがドラムなし区間となる。これに対し、区間Aのパワー合計値2902がもっと小さい場合には、区間Aはドラムなし区間としては検出されない。   FIG. 29 is a diagram showing the music waveform data 2901 and the power total value 2902 other than the bass range. The CPU 3302 compares the average value other than the low frequency range in the drumless section A and the subsequent section B. In section A, the total power value 2902 is small, but exceeds the threshold value, so section A is a drumless section. On the other hand, when the total power value 2902 of the section A is smaller, the section A is not detected as a section without a drum.

図16は、図12のステップS1204の大きな音(イントロ)検出処理の詳細を示すフローチャートである。大きな音(イントロ)検出処理では、シンバル等の大きな音で曲が始まっているかを調べる。   FIG. 16 is a flowchart showing details of the loud sound (intro) detection process in step S1204 of FIG. In the loud sound (intro) detection process, it is checked whether the music starts with a loud sound such as a cymbal.

ステップS1601では、CPU3302は、図30に示すように、曲波形データ3001に対して0.2秒間隔で振幅の絶対値の最大値のフレーム配列データ3002を作成する。なお、図1(第1の実施形態)と同様に、移動平均を使ったり、高速フーリエ変換したパワーを使ってもよい。   In step S1601, as shown in FIG. 30, the CPU 3302 creates frame array data 3002 having a maximum absolute value of amplitude at intervals of 0.2 seconds for the music waveform data 3001. As in FIG. 1 (first embodiment), a moving average or power obtained by fast Fourier transform may be used.

次に、ステップS1602では、CPU3302は、曲波形データ3001の前半で最初の振幅絶対値が大きい位置3003を探し、大きな音の終点と仮決定する。ここで、大きな振幅絶対値とは、フレーム配列データ3002の最大値の2/5以上の値を指す。   Next, in step S1602, the CPU 3302 searches for a position 3003 where the first absolute amplitude value is large in the first half of the music waveform data 3001, and tentatively determines the end point of a loud sound. Here, a large amplitude absolute value indicates a value that is 2/5 or more of the maximum value of the frame array data 3002.

次に、ステップS1603では、図31に示すように、CPU3302は、大きな音の終点から前に向かって、最初の小さな振幅絶対値3101を探し、大きな音の始点と仮決定する。ここで、小さな振幅絶対値とは、フレーム配列データ3002の最大値の1/6以下の値を指す。   Next, in step S1603, as shown in FIG. 31, the CPU 3302 searches for the first small absolute amplitude value 3101 from the end point of the loud sound to the front, and tentatively determines it as the starting point of the loud sound. Here, the small amplitude absolute value refers to a value that is 1/6 or less of the maximum value of the frame array data 3002.

次に、ステップS1604では、CPU3302は、振幅の小さい位置(大きな音の始点)3101と大きな位置(大きな音の終点)3003の間隔が広いときにはステップS1605へ進み、狭いときにはステップS1606へ進む。具体的には、CPU3302は、大きな音の範囲が0.8秒より広いときは、音が鋭く立ち上がっていないので、シンバルのような感じで始まっていないとみなし、ステップS1605へ進み、狭いときにはステップS1606へ進む。ステップS1605では、CPU3302は、音が鋭く立ち上がっておらず、大きな音のイントロとはみなさず、図12のステップS1208へ進む。   In step S1604, the CPU 3302 proceeds to step S1605 when the interval between the position 3101 having a small amplitude (starting point of loud sound) 3101 and the position having a large position (ending point of loud sound) 3003 is wide, and proceeds to step S1606 when narrow. Specifically, when the loud sound range is wider than 0.8 seconds, the CPU 3302 considers that the sound does not start sharply and therefore does not start with a cymbal feeling, and proceeds to step S1605. The process proceeds to S1606. In step S1605, the CPU 3302 does not rise sharply and is not regarded as a loud sound intro, and proceeds to step S1208 in FIG.

ステップS1606では、CPU3302は、振幅の小さい位置(大きな音の始点)3101より前にある程度の振幅が出ているか調べる。出ているときにはステップS1607へ進み、出ていないときにはステップS1608へ進む。ステップS1607では、CPU3302は、大きな音のイントロとはみなさず、図12のステップS1208へ進む。   In step S <b> 1606, the CPU 3302 checks whether a certain amount of amplitude is present before the position 3101 having a small amplitude (starting point of a loud sound). When it is out, the process proceeds to step S1607, and when it is not out, the process proceeds to step S1608. In step S1607, the CPU 3302 does not regard it as a loud sound intro, and proceeds to step S1208 in FIG.

ステップS1608では、CPU3302は、図32に示すように、数十ミリ秒間隔で高速フーリエ変換を行う。例えば、CPU3302は、サンプル数2048、1フレーム当たり0.2秒になるようにオーバーラップさせながら高速フーリエ変換を行い、各フレームのパワーを求める。   In step S1608, the CPU 3302 performs fast Fourier transform at intervals of several tens of milliseconds as shown in FIG. For example, the CPU 3302 performs fast Fourier transform while overlapping so that the number of samples is 2048 and 0.2 seconds per frame, and obtains the power of each frame.

次に、ステップS1609では、CPU3302は、振幅の大きい位置から後に向かってパワーのピークが変わる直前を大きな音の終点とする。すなわち、CPU3302は、仮の大きな音の終点の位置のパワーが、出終わる位置を探し(大きな音が伸びて、音が特徴的でなくなるまでの位置を探し)、出終わる直前を大きな音の終点として決定する。   Next, in step S1609, the CPU 3302 sets the end point of the loud sound immediately before the power peak changes from the position where the amplitude is large. In other words, the CPU 3302 searches for a position where the power at the end point of the provisional loud sound ends (searches for a position until the loud sound grows and the sound is no longer characteristic), and immediately before the end of the loud sound ends. Determine as.

具体的には、まず、CPU3302は、図32において、仮の大きな音の終点フレームのパワーの中から最も大きくパワーが出ている2箇所3201及び3202を探す。   Specifically, first, the CPU 3302 searches for two locations 3201 and 3202 in which the power is the largest from the power of the end point frame of the temporary loud sound in FIG.

次に、CPU3302は、仮の大きな音の終点フレームから後ろに向かって、各フレームで同じ箇所でパワーが特徴的にでているか調べ、出終わる直前を大きな音の終点として決定する。具体的には、CPU3302は、調べるフレームのパワーの中から最も大きくパワーが出ている5箇所を探す。次に、CPU3302は、5箇所の中で、上記の最大パワーの2箇所3201及び3202のどちらかと同じ箇所があるか調べる。連続して同じ箇所が出ていないフレーム数もカウントするので、このカウンタを初回は0にリセットしておく。   Next, the CPU 3302 checks whether or not the power is characteristic at the same location in each frame from the end point frame of the provisional loud sound, and determines the point immediately before finishing as the end point of the loud sound. Specifically, the CPU 3302 searches for five places where the power is the largest among the powers of the frames to be examined. Next, the CPU 3302 checks whether there is the same place as one of the two places 3201 and 3202 having the maximum power among the five places. Since the number of frames in which the same portion does not appear continuously is counted, this counter is reset to 0 for the first time.

ある場合は、CPU3302は、同じ箇所でパワーが特徴的に出ていると判断し、カウンタを0にリセットして、調べるフレームを次のフレームにし、上記の5箇所を探す処理に戻る。   If there is, the CPU 3302 determines that the power is characteristically output at the same location, resets the counter to 0, sets the frame to be examined as the next frame, and returns to the process of searching for the above 5 locations.

ない場合は、CPU3302は、カウンタを1増やす。カウンタが3未満の場合は、CPU3302は、調べるフレームを次のフレームにし、上記の5箇所を探す処理に戻る。カウンタが3の場合は、CPU3302は、連続して同じ箇所に強いパワーがなかったということで、音が目立たなくなったと判断し、現在調べていたフレームの3つ前(連続してパワーがでていないと判断され始める直前)を大きな音の終点にする。   If not, the CPU 3302 increments the counter by one. If the counter is less than 3, the CPU 3302 sets the frame to be examined as the next frame, and returns to the process of searching for the above five locations. When the counter is 3, the CPU 3302 determines that the sound has become inconspicuous because there is no strong power at the same location continuously, and it is three times before the currently examined frame (the power is continuously present). Set the end point of the loud sound (just before it starts to be judged).

次に、ステップS1610では、CPU3302は、上記の仮の大きな音の範囲内の最大位置を大きな音の始点とする。すなわち、CPU3302は、仮の大きな音の始点から大きな音の終点までの間で振幅の絶対値が最大の場所を大きな音の始点とする。これは、大きな音の出始めではなく、映像効果のスタートとしたい音の大きな位置を始点とするためである。   Next, in step S1610, the CPU 3302 sets the maximum position within the range of the provisional loud sound as the starting point of the loud sound. That is, the CPU 3302 sets the place where the absolute value of the amplitude is the maximum between the start point of the temporary loud sound and the end point of the loud sound as the start point of the loud sound. This is because the start point is not the start of loud sound but the loud position of the start of the video effect.

次に、ステップS1611では、CPU3302は、検出区間を大きな音の区間とし、大きな音のイントロが検出されたと判断し、図12のステップS1207へ進む。   Next, in step S1611, the CPU 3302 determines that the detected section is a loud sound section, a loud sound intro is detected, and the process proceeds to step S1207 in FIG.

図17は、図12のステップS1204の大きな音(エンディング)検出処理の詳細を示すフローチャートである。大きな音(エンディング)検出処理では、図16の大きな音(イントロ)検出処理と同様に、シンバル等の大きな音で曲が終わっているかを調べる。   FIG. 17 is a flowchart showing details of the loud sound (ending) detection process in step S1204 of FIG. In the loud sound (ending) detection process, as in the loud sound (intro) detection process of FIG. 16, it is checked whether the music ends with a loud sound such as a cymbal.

ステップS1701では、CPU3302は、曲波形データに対して0.2秒間隔で振幅の絶対値の最大値のフレーム配列データを作成する。なお、図1(第1の実施形態)と同様に、移動平均を使ったり、高速フーリエ変換したパワーを使ってもよい。   In step S1701, the CPU 3302 creates frame arrangement data having a maximum absolute value of amplitude at intervals of 0.2 seconds for the music waveform data. As in FIG. 1 (first embodiment), a moving average or power obtained by fast Fourier transform may be used.

次に、ステップS1702では、CPU3302は、曲波形データの後半で最後の振幅絶対値が大きい位置を探し、大きな音の終点と仮決定する。   Next, in step S1702, the CPU 3302 searches for a position where the last absolute amplitude value is large in the latter half of the music waveform data, and tentatively determines the end point of a loud sound.

次に、ステップS1703では、CPU3302は、数十ミリ秒間隔で高速フーリエ変換を行う。   Next, in step S1703, the CPU 3302 performs fast Fourier transform at intervals of several tens of milliseconds.

次に、ステップS1704では、CPU3302は、大きな音の終点から前に向かってパワーのピークが変わる直前の位置を探す。すなわち、CPU3302は、大きな音の持続が開始している位置を探す。   Next, in step S1704, the CPU 3302 searches for a position immediately before the power peak changes from the end point of a loud sound toward the front. That is, the CPU 3302 searches for a position where the loud sound starts.

次に、ステップS1705では、CPU3302は、パワーのピークが変わる直前から後に向かって最初にある振幅の大きい位置を探す。   Next, in step S1705, the CPU 3302 searches for a position with a large amplitude first from immediately before to after the power peak changes.

次に、ステップS1706では、CPU3302は、ピークが変わる直前から振幅の大きい位置までの間隔が広いか調べる。広い場合には、CPU3302は、ステップS1707へ進み、音が鋭く立ち上がっていないので、大きな音のエンディングとはみなさず、図12のステップS1208へ進む。狭い場合には、ステップS1708へ進む。   Next, in step S1706, the CPU 3302 checks whether the interval from immediately before the peak changes to a position with a large amplitude is wide. If it is wide, the CPU 3302 proceeds to step S1707, and since the sound is not sharply raised, the CPU 3302 does not regard it as a loud sound ending and proceeds to step S1208 in FIG. If narrow, the process proceeds to step S1708.

ステップS1708では、CPU3302は、仮の大きな音の範囲内の最大位置を大きな音の始点とする。   In step S1708, the CPU 3302 sets the maximum position within the tentative loud sound range as the starting point of the loud sound.

次に、ステップS1709では、CPU3302は、検出区間を大きな音の区間とし、大きな音のエンディングが検出されたと判断し、図12のステップS1207へ進む。   Next, in step S1709, the CPU 3302 determines that the detected section is a loud sound section, and that a loud sound ending has been detected, and proceeds to step S1207 in FIG.

本実施形態は、コンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD−ROM等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びコンピュータプログラムプロダクトは、本発明の範疇に含まれる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。   This embodiment can be realized by a computer executing a program. Also, means for supplying a program to a computer, for example, a computer-readable recording medium such as a CD-ROM recording such a program, or a transmission medium such as the Internet for transmitting such a program is also applied as an embodiment of the present invention. Can do. A computer program product such as a computer-readable recording medium in which the above program is recorded can also be applied as an embodiment of the present invention. The above program, recording medium, transmission medium, and computer program product are included in the scope of the present invention. As the recording medium, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.

なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。   The above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.

3400 盛り上がり検出装置
3401 平滑化部
3402 極小点検出部
3403 盛り上がり区間検出部
3411 第1の平滑化部
3412 第2の平滑化部
3400 Swell detection device 3401 Smoothing unit 3402 Minimum point detection unit 3403 Swell section detection unit 3411 First smoothing unit 3412 Second smoothing unit

Claims (8)

曲波形データを平滑化する平滑化部と、
前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、
前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、
前記平滑化部は、
前記曲波形データを平滑化する第1の平滑化部と、
前記第1の平滑化部により平滑化された曲波形データを平滑化する第2の平滑化部とを有し、
前記極小点検出部は、前記第2の平滑化部により平滑化された曲波形データの極小点を検出し、
前記盛り上がり区間検出部は、前記第1の平滑化部により平滑化された曲波形データの変化量を基に、前記極小点検出部により検出された極小点間の区間の始点及び終点を修正し、盛り上がり区間を検出することを特徴とする盛り上がり検出装置。
A smoothing unit for smoothing the curved waveform data;
A minimum point detection unit for detecting a minimum point of the curved waveform data smoothed by the smoothing unit;
A climax section detection unit that detects a section where the maximum value in the section between the minimum points is equal to or more than a threshold based on the minimum point detected by the minimum point detection section;
The smoothing unit
A first smoothing unit for smoothing the curved waveform data;
A second smoothing unit that smoothes the curved waveform data smoothed by the first smoothing unit;
The minimum point detection unit detects a minimum point of the curved waveform data smoothed by the second smoothing unit,
The rising section detection unit corrects the start point and end point of the section between the minimum points detected by the minimum point detection unit based on the change amount of the curved waveform data smoothed by the first smoothing unit. , up detector Ri Sheng you and detecting the climax section.
曲波形データを平滑化する平滑化部と、
前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、
前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、
前記極小点検出部は、前記平滑化部により平滑化された曲波形データの極小点を検出し、前記検出された極小点が前記検出された極小点の前又は後の極大点に対して閾値割合より大きければその極小点を除外して極小点を検出することを特徴とする盛り上がり検出装置。
A smoothing unit for smoothing the curved waveform data;
A minimum point detection unit for detecting a minimum point of the curved waveform data smoothed by the smoothing unit;
A climax section detection unit that detects a section where the maximum value in the section between the minimum points is equal to or more than a threshold based on the minimum point detected by the minimum point detection section;
The minimum point detection unit detects a minimum point of the curved waveform data smoothed by the smoothing unit, and the detected minimum point is a threshold value with respect to a maximum point before or after the detected minimum point greater than the proportion excluded to rise detector Ri Sheng you and detects the minimum point and the minimum point.
曲波形データを平滑化する平滑化部と、
前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、
前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、
前記盛り上がり区間検出部は、検出された2つの盛り上がり区間の間の区間の値が前記検出された2つの盛り上がり区間の値に対して閾値割合より大きいときには、前記検出された2つの盛り上がり区間を1つの盛り上がり区間につなげることを特徴とする盛り上がり検出装置。
A smoothing unit for smoothing the curved waveform data;
A minimum point detection unit for detecting a minimum point of the curved waveform data smoothed by the smoothing unit;
A climax section detection unit that detects a section where the maximum value in the section between the minimum points is equal to or more than a threshold based on the minimum point detected by the minimum point detection section;
When the value of the section between the two detected rising sections is larger than a threshold ratio with respect to the value of the two detected rising sections, the rising section detecting unit sets the detected two rising sections to 1 One of Sheng Ri rise detection device shall be the features that lead to climax section.
曲波形データを平滑化する平滑化部と、
前記平滑化部により平滑化された曲波形データの極小点を検出する極小点検出部と、
前記極小点検出部により検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出部とを有し、
前記盛り上がり区間検出部は、検出された盛り上がり区間のうちの最大の長さの盛り上がり区間に対して、検出された盛り上がり区間の長さが閾値割合以下であればその盛り上がり区間を除外して盛り上がり区間を検出することを特徴とする盛り上がり検出装置。
A smoothing unit for smoothing the curved waveform data;
A minimum point detection unit for detecting a minimum point of the curved waveform data smoothed by the smoothing unit;
A climax section detection unit that detects a section where the maximum value in the section between the minimum points is equal to or more than a threshold based on the minimum point detected by the minimum point detection section;
The climax section detection unit excludes the climax section if the length of the climax section detected is equal to or less than a threshold ratio with respect to the climax section having the maximum length among the detected climax sections. Sheng you and detects the Ri-up detection device.
曲波形データを平滑化する平滑化ステップと、
前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、
前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、
前記平滑化ステップは、
前記曲波形データを平滑化する第1の平滑化ステップと、
前記第1の平滑化ステップにより平滑化された曲波形データを平滑化する第2の平滑化ステップとを有し、
前記極小点検出ステップでは、前記第2の平滑化ステップにより平滑化された曲波形データの極小点を検出し、
前記盛り上がり区間検出ステップでは、前記第1の平滑化ステップにより平滑化された曲波形データの変化量を基に、前記極小点検出ステップにより検出された極小点間の区間の始点及び終点を修正し、盛り上がり区間を検出することを特徴とするプログラム
A smoothing step for smoothing the curved waveform data;
A minimum point detecting step for detecting a minimum point of the curved waveform data smoothed by the smoothing step;
A program for executing the excitement section detecting step of detecting a section excitement the interval maximum value is not less than the threshold value in the interval between the minimum point on the basis of the minimum point detected by the minimum point detecting step to the computer ,
The smoothing step includes
A first smoothing step for smoothing the curved waveform data;
A second smoothing step for smoothing the curved waveform data smoothed by the first smoothing step;
In the minimum point detection step, the minimum point of the curved waveform data smoothed by the second smoothing step is detected,
In the rising section detecting step, the start point and end point of the section between the minimum points detected by the minimum point detecting step are corrected based on the change amount of the curved waveform data smoothed by the first smoothing step. , A program characterized by detecting a rising section .
曲波形データを平滑化する平滑化ステップと、A smoothing step for smoothing the curved waveform data;
前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、A minimum point detecting step for detecting a minimum point of the curved waveform data smoothed by the smoothing step;
前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、A program for causing a computer to execute a climax section detecting step for detecting, as a climax section, a section in which a maximum value in a section between minimum points is greater than or equal to a threshold value based on the minimum point detected by the minimum point detection step. ,
前記極小点検出ステップでは、前記平滑化ステップにより平滑化された曲波形データの極小点を検出し、前記検出された極小点が前記検出された極小点の前又は後の極大点に対して閾値割合より大きければその極小点を除外して極小点を検出することを特徴とするプログラム。In the minimum point detection step, a minimum point of the curved waveform data smoothed by the smoothing step is detected, and the detected minimum point is a threshold value with respect to a maximum point before or after the detected minimum point. A program characterized by detecting a minimum point by excluding the minimum point if it is larger than a ratio.
曲波形データを平滑化する平滑化ステップと、A smoothing step for smoothing the curved waveform data;
前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、A minimum point detecting step for detecting a minimum point of the curved waveform data smoothed by the smoothing step;
前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、A program for causing a computer to execute a climax section detecting step for detecting, as a climax section, a section in which a maximum value in a section between minimum points is greater than or equal to a threshold value based on the minimum point detected by the minimum point detection step. ,
前記盛り上がり区間検出ステップでは、検出された2つの盛り上がり区間の間の区間の値が前記検出された2つの盛り上がり区間の値に対して閾値割合より大きいときには、前記検出された2つの盛り上がり区間を1つの盛り上がり区間につなげることを特徴とするプログラム。In the climax section detecting step, when the value of the section between the two climax sections detected is larger than the threshold ratio with respect to the value of the two climax sections detected, the two climax sections detected as 1 A program characterized by connecting to two climax sections.
曲波形データを平滑化する平滑化ステップと、A smoothing step for smoothing the curved waveform data;
前記平滑化ステップにより平滑化された曲波形データの極小点を検出する極小点検出ステップと、A minimum point detecting step for detecting a minimum point of the curved waveform data smoothed by the smoothing step;
前記極小点検出ステップにより検出された極小点を基に極小点間の区間内の最大値が閾値以上の区間を盛り上がり区間として検出する盛り上がり区間検出ステップとをコンピュータに実行させるためのプログラムであって、A program for causing a computer to execute a climax section detecting step for detecting, as a climax section, a section in which a maximum value in a section between minimum points is greater than or equal to a threshold value based on the minimum point detected by the minimum point detection step. ,
前記盛り上がり区間検出ステップでは、検出された盛り上がり区間のうちの最大の長さの盛り上がり区間に対して、検出された盛り上がり区間の長さが閾値割合以下であればその盛り上がり区間を除外して盛り上がり区間を検出することを特徴とするプログラム。In the climax section detecting step, if the length of the detected climax section is equal to or less than the threshold ratio with respect to the climax section having the maximum length among the climax sections detected, the climax section is excluded if the length of the climax section is equal to or less than the threshold ratio. Detecting a program.
JP2009248170A 2009-10-28 2009-10-28 Swell detection device and program Expired - Fee Related JP5373552B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009248170A JP5373552B2 (en) 2009-10-28 2009-10-28 Swell detection device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009248170A JP5373552B2 (en) 2009-10-28 2009-10-28 Swell detection device and program

Publications (2)

Publication Number Publication Date
JP2011095425A JP2011095425A (en) 2011-05-12
JP5373552B2 true JP5373552B2 (en) 2013-12-18

Family

ID=44112421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009248170A Expired - Fee Related JP5373552B2 (en) 2009-10-28 2009-10-28 Swell detection device and program

Country Status (1)

Country Link
JP (1) JP5373552B2 (en)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001042866A (en) * 1999-05-21 2001-02-16 Yamaha Corp Contents provision method via network and system therefor
JP2003280682A (en) * 2002-03-20 2003-10-02 Toyota Motor Corp Speech recognition device and method
JP2004127019A (en) * 2002-10-03 2004-04-22 Sony Corp Information processing apparatus, image display control method, and image display control program
JP4243682B2 (en) * 2002-10-24 2009-03-25 独立行政法人産業技術総合研究所 Method and apparatus for detecting rust section in music acoustic data and program for executing the method
JP3891111B2 (en) * 2002-12-12 2007-03-14 ソニー株式会社 Acoustic signal processing apparatus and method, signal recording apparatus and method, and program
JP2004350134A (en) * 2003-05-23 2004-12-09 Nippon Telegr & Teleph Corp <Ntt> Conference outline grasp support method in multipoint electronic conference system, server for multipoint electronic conference system, conference summary grasp support program, and recording medium recording the program
JP4435130B2 (en) * 2005-09-28 2010-03-17 三洋電機株式会社 Video playback device, playback device
JP2007184674A (en) * 2006-01-04 2007-07-19 Hitachi Ltd Digest creation device
JP4877811B2 (en) * 2007-04-12 2012-02-15 三洋電機株式会社 Specific section extraction device, music recording / playback device, music distribution system
JP5109050B2 (en) * 2007-07-13 2012-12-26 学校法人早稲田大学 Voice processing apparatus and program

Also Published As

Publication number Publication date
JP2011095425A (en) 2011-05-12

Similar Documents

Publication Publication Date Title
JP3941417B2 (en) How to identify new points in a source audio signal
US8688251B2 (en) System and method for automatically producing haptic events from a digital audio signal
US9239700B2 (en) System and method for automatically producing haptic events from a digital audio signal
US8761915B2 (en) System and method for automatically producing haptic events from a digital audio file
US9070370B2 (en) Technique for suppressing particular audio component
EP2854128A1 (en) Audio analysis apparatus
US20170092246A1 (en) Automatic music recording and authoring tool
EP2816550A1 (en) Audio signal analysis
US9824719B2 (en) Automatic music recording and authoring tool
US6881889B2 (en) Generating a music snippet
US12340822B2 (en) Audio content identification
US9646592B2 (en) Audio signal analysis
CN114631142B (en) Electronic device, method and computer program
WO2015114216A2 (en) Audio signal analysis
CN101211557A (en) Method and device for post-processing audio signals
US12445779B2 (en) Techniques for audio track analysis to support audio personalization
JP2012108451A (en) Audio processor, method and program
JP2005049364A (en) Known acoustic signal removal method and apparatus
JP5373552B2 (en) Swell detection device and program
KR101041037B1 (en) Method and device to distinguish voice and music
JP2009282536A (en) Method and device for removing known acoustic signal
JP2003228387A (en) Operation controller
JP5272141B2 (en) Voice processing apparatus and program
CN116803105A (en) Audio content recognition
JP2012173691A (en) Musical piece playing controller, method to control musical piece playing and computer program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120921

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130823

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130919

R150 Certificate of patent or registration of utility model

Ref document number: 5373552

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees