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
JP6509928B2 - Variable resolution processing of frame type data - Google Patents
[go: Go Back, main page]

JP6509928B2 - Variable resolution processing of frame type data - Google Patents

Variable resolution processing of frame type data Download PDF

Info

Publication number
JP6509928B2
JP6509928B2 JP2017042066A JP2017042066A JP6509928B2 JP 6509928 B2 JP6509928 B2 JP 6509928B2 JP 2017042066 A JP2017042066 A JP 2017042066A JP 2017042066 A JP2017042066 A JP 2017042066A JP 6509928 B2 JP6509928 B2 JP 6509928B2
Authority
JP
Japan
Prior art keywords
frame
window function
transient
block
computer program
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
JP2017042066A
Other languages
Japanese (ja)
Other versions
JP2017129872A (en
Inventor
ヨウ、ユリ
Original Assignee
デジタル ライズ テクノロジー シーオー.,エルティーディー.
デジタル ライズ テクノロジー シーオー.,エルティーディー.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by デジタル ライズ テクノロジー シーオー.,エルティーディー., デジタル ライズ テクノロジー シーオー.,エルティーディー. filed Critical デジタル ライズ テクノロジー シーオー.,エルティーディー.
Publication of JP2017129872A publication Critical patent/JP2017129872A/en
Application granted granted Critical
Publication of JP6509928B2 publication Critical patent/JP6509928B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • G10L19/025Detection of transients or attacks for time/frequency resolution switching
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

この出願は、2006年8月18日に出願された米国仮特許出願第60/822,760号、発明の名称「可変分解能フィルタリング」の利益を主張するものであり、その全文が本明細書に記載されているかのごとく、参照することにより本明細書に組み込まれている。   This application claims the benefit of US Provisional Patent Application No. 60 / 822,760, filed August 18, 2006, entitled "Variable Resolution Filtering," the entire contents of which are incorporated herein by reference. It is incorporated herein by reference as if recited.

本発明は、例えば、音声信号の処理のような信号処理に関する。   The present invention relates to signal processing, such as, for example, processing of audio signals.

従来の信号処理技術の多くは、フレーム型である。そのような技術において、データのストリームは離散的なフレーム群に分割され、そのようなフレームそれぞれにおけるデータは通常、極めて均一に処理される。一例において、入力音声信号が同一長のフレーム群に分割される。その後、各フレームは特定の方法で処理される。各フレームに対して決定されるべき共通の処理パラメータは、ブロック長、又は、換言すると、処理を目的としてフレームを何個の同一サイズのブロックに分割すべきかということである。ブロック長によって、元の領域(例えば、音声信号に関する時間)及び周波数(又は他の変換)領域における分解能が決まる。より具体的には、ブロック長が短いほど、元の領域における分解能が大きく、周波数領域における分解能が小さい。   Many conventional signal processing techniques are of the frame type. In such techniques, a stream of data is divided into discrete frames, and the data in each such frame is usually processed very uniformly. In one example, the input speech signal is divided into frames of equal length. Each frame is then processed in a specific manner. A common processing parameter to be determined for each frame is the block length or, in other words, how many equal sized blocks the frame should be divided for processing purposes. The block length determines the resolution in the original domain (e.g. time for the audio signal) and in the frequency (or other transform) domain. More specifically, the shorter the block length, the higher the resolution in the original domain and the lower the resolution in the frequency domain.

音声信号は、多くの場合、それぞれが、著しいトランジェントによって中断された多くのトーン周波数成分を含む準定常エピソード群からなる。従って、そのような音声信号の個々のフレームは、多くの場合、トランジェントに対応する少数のサンプルを含むであろうが、それらサンプルの大多数は信号の準定常部分に対応する。   Speech signals often consist of quasi-stationary episodes, each of which contains many tone frequency components interrupted by significant transients. Thus, although individual frames of such speech signals will often include a small number of samples corresponding to transients, the majority of those samples correspond to the quasi-stationary portion of the signal.

音声信号におけるトランジェントが少数のサンプル分という短さであり得るので、トランジェントを含むことが検出されたフレーム内で用いられるブロックサイズも、理想的には、ほんの少数のサンプル分とし、それによってフィルタの時間分解能をトランジェントに一致させるべきである。残念ながら、同一フレーム内で様々なブロックサイズを用いることは、一般には実用的でない。検出されたトランジェントを有するフレーム内の全てのブロックをほんの少数のサンプル分の幅とすると、フレーム内の周波数分解能は極端に低下し、そのため、フレームにおける残りのサンプルにとって不適当である。すなわち、そのような他のサンプルは、それらがトランジェントから充分に離れているとすれば、準定常であり、従って、高周波数分解能を用いて処理される方がよい。この矛盾は、従来、同一フレームにおけるトランジェントサンプルにとっても準定常サンプルにとっても最適でない折衷的なブロックサイズに帰着していた。   Since transients in the audio signal can be as short as a few samples, the block size used in a frame detected to contain transients is also ideally only a few samples, so that the filter The temporal resolution should be matched to the transient. Unfortunately, using different block sizes within the same frame is generally not practical. If every block in a frame with detected transients is only a few samples wide, the frequency resolution in the frame is extremely reduced and thus unsuitable for the remaining samples in the frame. That is, such other samples are quasi-stationary, so they should be processed with high frequency resolution, provided they are sufficiently far from transients. This contradiction has conventionally resulted in contradictory block sizes that are not optimal for transient samples or quasi-stationary samples in the same frame.

図1に、入力サンプル群12のフレームを処理するための従来システムのブロック図を示す。最初に、過渡検出器(トランジェント検出器)14においてサンプル群12を解析し、フレームにトランジェントが含まれるかどうか判断する。   FIG. 1 shows a block diagram of a conventional system for processing a frame of input samples 12. First, the sample group 12 is analyzed in the transient detector (transient detector) 14 to determine whether the frame includes a transient.

その検出に基づき、モジュール16においてウィンドウ関数を選択する。この点に関し、音声符号化アルゴリズムには、多くの場合、様々な時間・周波数分解能を有するフィルタバンクが用いられる。一般に用いられるフィルタバンクの1つに、以下の基底関数で書き表すことができるインパルス応答を有するMDCT(Modified Discrete Cosine Transform)(変形離散コサイン変換)がある。   Based on the detection, a window function is selected in module 16. In this regard, speech coding algorithms often use filterbanks with different time and frequency resolutions. One of the commonly used filter banks is an MDCT (Modified Discrete Cosine Transform) having an impulse response that can be expressed by the following basis function.

Figure 0006509928
Figure 0006509928

但し、k=0,1,...,M−1、n=0,1,...,2M−1、そして、w(n)は長さ2Mのウィンドウ関数である。例えば、H.S.Malvar、「Signal Processing with Lapped Transforms」、Artech House、1992年(本明細書において、Malvarと呼ぶ)を参照のこと。 However, k = 0, 1,. . . , M−1, n = 0, 1,. . . , 2M−1, and w (n) are window functions of length 2M. For example, H. S. See Malvar, "Signal Processing with Lapped Transforms", Artech House, 1992 (referred to herein as Malvar).

この場合、時間・周波数分解能はMによって決まり、これは本明細書においてブロックサイズと呼ばれることがある。大きいMは、高周波数分解能であるが低時間分解能であることを意味し、小さいMは、高時間分解能と低周波数分解能を意味する。   In this case, time-frequency resolution is determined by M, which may be referred to herein as block size. A large M means high frequency resolution but low time resolution, and a small M means high time resolution and low frequency resolution.

(図1に示されているような)モジュール16を実施することを目的として、従来の符号化アルゴリズムには、典型的には2つのブロックサイズが用いられる。モジュール14においてトランジェントが検出されていなかった場合、フレーム全体を包含する単一ブロックとして実現される大ブロックサイズが用いられる。代替的に、トランジェントが検出されていた場合、フレームを包含する所定数のブロック群として実現される小ブロックサイズが用いられる。   For the purpose of implementing module 16 (as shown in FIG. 1), two block sizes are typically used in conventional coding algorithms. If no transients were detected in module 14, then a large block size is used which is implemented as a single block encompassing the entire frame. Alternatively, if a transient has been detected, a small block size implemented as a predetermined number of blocks containing the frame is used.

これら2つのブロックサイズに対応する主要なウィンドウ関数は、それぞれ、ウィンドウ関数30(図2に示され、WIN_LONG_LONG2LONGと表示されている)及びウィンドウ関数40(図3に示され、WIN_SHORT_SHORT2SHORTと表示されている)である。MDCTをこれら2つの主要なウィンドウ関数間で適切に切り換えることを可能にするために、(例えば、Malvarに記載されているような)完全な復元の条件として、3つの移行ウィンドウ関数、例えば、ウィンドウ関数50(図16に示され、WIN_LONG_LONG2SHORTと表示されている)、ウィンドウ関数60(図5に示され、WIN_LONG_SHORT2LONGと表示されている)、及びウィンドウ関数70(図6に示され、WIN_LONG_SHORT2SHORTと表示されている)を用いることが要求される。このような3つの移行ウィンドウ関数50、60及び70は全て、ロングブロックに用いられる(すなわち、フレーム全体を包含する)ことに言及する。   The main window functions corresponding to these two block sizes are window function 30 (shown in FIG. 2 and denoted as WIN_LONG_LONG2LONG) and window function 40 (shown in FIG. 3 and denoted as WIN_SHORT_SHORT2SHORT) ). Three transition window functions, eg, windows, as a condition of full recovery (eg as described in Malvar), in order to be able to switch MDCT appropriately between these two main window functions Function 50 (shown in FIG. 16 and indicated as WIN_LONG_LONG2SHORT), window function 60 (shown in FIG. 5 and indicated as WIN_LONG_SHORT2LONG), and window function 70 (shown in FIG. 6 and indicated as WIN_LONG_SHORT2SHORT) It is required to use the It is noted that all three such transition window functions 50, 60 and 70 are used for long blocks (i.e. encompass the entire frame).

従って、従来技術において、フレームには、単一のロングブロック(及び対応するロングウィンドウ30、50、60又は70)又は同一のショートブロック群のシーケンス(及び対応する同一のショートウィンドウ群40)が割り当てられる。各ブロックがブロックとブロックの間の間隔より長いため、結果として、図7に示すウィンドウ関数群のシーケンス80のような、各ウィンドウが、現在のブロックのM個の新たなサンプルをその前のブロックにおけるM個のサンプルと共に包含する、ロングウィンドウとショートウィンドウの重複シーケンスとなる。参照のため、図面において、ウィンドウ関数30、40、50、60又は70に対応する各ブロックの中央をそれぞれ31、41、51、61又は71と指定する。   Thus, in the prior art, a frame is assigned a single long block (and corresponding long windows 30, 50, 60 or 70) or a sequence of identical short blocks (and corresponding identical short windows 40) Be As each block is longer than the block-to-block spacing, the result is that each window has M new samples of the current block, such as the sequence 80 of the window function group shown in FIG. It is an overlapping sequence of long window and short window, including M samples in. For reference, in the drawing, the center of each block corresponding to the window function 30, 40, 50, 60 or 70 is designated as 31, 41, 51, 61 or 71, respectively.

このような従来技術において、トランジェントを含まないフレームに対するウィンドウ関数は、モジュール14によって行われるそのような現在のフレームに関する検出のみならず、その前及びその次のフレームに関して行われる同様の検出にも基づいて選択されることに言及する。すなわち、ウィンドウ関数50、60及び70は、トランジェントフレームと非トランジェントフレームの間の移行ウィンドウ関数として用いられる。   In such prior art, the window function for frames that do not include transients is based not only on the detection for such current frame performed by module 14 but also on similar detections performed for the previous and next frames. To be selected. That is, window functions 50, 60 and 70 are used as transition window functions between transient and non-transient frames.

図1を再び参照し、モジュール17において、モジュール16にて選択されたウィンドウ関数を、その後、現在のフレームに関する入力サンプル群12に適用する(トランジェントフレームに対して複数回)。すなわち、ブロック毎に、一組の加重値を得るために、サンプル値にそのブロックに対応するウィンドウ関数値を乗じる。   Referring again to FIG. 1, in module 17, the window function selected in module 16 is then applied to input samples 12 for the current frame (multiple times for transient frames). That is, for each block, the sample value is multiplied by the window function value corresponding to that block to obtain a set of weight values.

それらの加重値を、その後、モジュール19において、選択されたウィンドウ関数を用いて処理し、出力値22を得る。モジュール19において行われる処理の具体的な種類は、所望の用途によって異なることがある。例えば、音声信号については、この処理は解析、符号化、及び/又は強調を含む可能性がある。   These weights are then processed in module 19 using the selected window function to obtain output value 22. The specific type of processing performed in module 19 may vary depending on the desired application. For example, for speech signals, this processing may include analysis, coding, and / or enhancement.

本発明は、この問題及び他の問題に、とりわけ、トランジェントを含むことが検出されたフレーム内で複数の様々なウィンドウ関数を用いることにより、取り組むものである。好ましい実施形態において、本発明は、検出されたトランジェントを有する単一データフレーム内に少なくとも2段階の分解能を提供する。そのような複数の分解能は、フレーム内でブロックサイズを変更することなく得られることがより好ましい。   The present invention addresses this and other issues, inter alia, by using a plurality of different window functions within a frame that has been detected to contain a transient. In a preferred embodiment, the invention provides at least two levels of resolution within a single data frame with detected transients. More preferably, such multiple resolutions are obtained without changing the block size within the frame.

その結果、例えば、トランジェントの近傍においてより高い分解能を用い、フレームの他の部分においてより低い分解能を用いることができる。本明細書において、「分解能」という用語は、無条件で用いられている場合、元の(例えば、時間の)領域における分解能を指す。周波数(又は他の変換)領域における分解能は元の領域における分解能に反比例して変化するため、本発明のこれらの実施形態において、トランジェントを含まないフレームの部分に関してより高い周波数の(又は他の変換領域の)分解能が得られる。更に、ブロックサイズを一定に保つことによって、一般には、処理構造を複雑にすることなく上記利点を達成することができる。   As a result, for example, higher resolution may be used in the vicinity of transients and lower resolution in other parts of the frame. As used herein, the term "resolution", when used unconditionally, refers to resolution in the original (e.g., time) domain. Because the resolution in the frequency (or other transform) domain varies inversely with the resolution in the original domain, in these embodiments of the invention, the higher frequency (or other transforms) with respect to portions of the frame that do not include transients Region) resolution is obtained. Furthermore, by keeping the block size constant, the above advantages can generally be achieved without complicating the processing structure.

従って、ある点において、本発明は、データのフレームと、前記フレーム内でトランジェントが発生することを示す指標と、前記フレーム内の前記トランジェントの位置とを得る、フレーム型データの処理を目的とする。前記トランジェントの指標に基づいて、前記フレームに対してブロックサイズを設定し、それによって前記フレーム内に複数の同一サイズのブロックを効果的に定義する。更に、前記トランジェントの位置に基づいて、前記複数の同一サイズのブロックのうちの異なるブロックに対して異なるウィンドウ関数を選択し、前記選択されたウィンドウ関数を適用することによって前記データのフレームを処理する。   Thus, in one respect, the invention is directed to the processing of frame type data to obtain a frame of data, an indicator indicating that a transient occurs in the frame, and the location of the transient in the frame. . Based on the indication of the transient, a block size is set for the frame, thereby effectively defining a plurality of blocks of the same size in the frame. And processing the frame of data by selecting different window functions for different ones of the plurality of identical sized blocks based on the location of the transient and applying the selected window function. .

好ましい実施形態において、前記ブロックは互いに重なり合い、各ウィンドウ関数も、好ましくは、完全な復元のための条件を満足するような方法で、各隣接するウィンドウ関数と重なり合う。上記特性は、フレーム内の隣接するブロック及びウィンドウ関数、並びに、隣接するフレームにおける隣接するブロック及びウィンドウ関数に当てはまることが好ましい。   In a preferred embodiment, the blocks overlap each other, and each window function also overlaps each adjacent window function, preferably in such a way as to satisfy the conditions for full restoration. The above characteristics preferably apply to adjacent block and window functions in a frame, as well as to adjacent blocks and window functions in an adjacent frame.

何れにせよ、前記ウィンドウ関数は、前記トランジェントを含む、前記同一サイズのブロックのうちの識別された1つのブロック内により高い分解能をもたらすように選択されることが好ましい。更に、このことは、前記識別されたブロック内で、前記ウィンドウ関数のうち、他のものより狭いトランジェントウィンドウ関数を用いることによって(例えば、前記ブロック内ではあるが前記トランジェントウィンドウ関数外にあるサンプルをゼロにすることによって)達成されることが好ましい。言い換えると、前記ブロックの幅は前記フレームに渡って一定である一方で、それらのブロック内で前記ウィンドウ関数の幅を変化させて、所望に応じて、前記フレームの各ブロックに対して所望の分解能トレードオフ(例えば、時間/周波数)を達成することができる。   In any case, the window function is preferably selected to provide higher resolution within the identified one of the blocks of the same size, including the transient. Furthermore, this may be achieved by using, within the identified block, a transient window function that is narrower than the other of the window functions (e.g. samples within the block but outside the transient window function). Preferably, this is achieved by zeroing. In other words, while the width of the blocks is constant across the frame, the width of the window function is varied within those blocks, and the desired resolution for each block of the frame, as desired. Tradeoffs (eg, time / frequency) can be achieved.

この点に関し、ウィンドウ関数の幅は多数の様々な方法で定義することができる。例えば、それは、前記ウィンドウ関数の非ゼロ部分の長さ、規定の閾値を超える前記ウィンドウ関数の部分の長さ、又はある規定の割合の前記ウィンドウ関数の内容(例えば、エネルギー)を含む前記ウィンドウ関数の部分の長さ、と定義することができる。   In this regard, the width of the window function can be defined in a number of different ways. For example, the window function may include the length of the non-zero portion of the window function, the length of the portion of the window function that exceeds a defined threshold, or the content (eg, energy) of the window function at a defined percentage. It can be defined as the length of the part of.

従って、ウィンドウ関数の幅は、標準形態を圧縮又は展開し、その後、ブロック内ではあるが圧縮形態に含まれないサンプルは全てゼロにすることによって変化させることができる。代替的には、前記幅は、一部において、それらのエネルギーがより小さなセグメントに集中している様々な形態を用いることによって変化させることができる。   Thus, the width of the window function can be varied by compressing or decompressing the standard form and then zeroing all samples within the block but not included in the compressed form. Alternatively, the widths can be varied, in part, by using various forms in which their energy is concentrated in smaller segments.

別の点において、本発明は、フレームのデータと、前記フレーム内でトランジェントが発生することを示す指標と、前記フレーム内の前記トランジェントの位置とを得る、フレーム型データの処理を目的とする。前記トランジェントを含む区域内により高い分解能がもたらされるように、前記フレーム内で用いられる様々なウィンドウ関数を選択し、前記選択されたウィンドウ関数を適用することによって前記データのフレームを処理する。   In another respect, the present invention is directed to the processing of frame type data to obtain data of a frame, an indicator indicating that a transient occurs in the frame, and a position of the transient in the frame. The various window functions used in the frame are selected to process the frame of data by applying the selected window function so as to provide higher resolution in the area containing the transient.

上記概要は、本発明の特定の態様を簡潔に説明することのみを意図したものである。本発明のより完全な理解は、請求項、及び以下の好ましい実施形態の詳細な説明を、添付の図面と共に参照することによって得ることができる。   The above summary is intended only to briefly describe certain aspects of the present invention. A more complete understanding of the present invention can be obtained by reference to the claims and the following detailed description of the preferred embodiments, taken in conjunction with the accompanying drawings.

図1は、トランジェントの存在に基づいてデータフレーム内の時間分解能を変更するための従来システムのブロック図である。FIG. 1 is a block diagram of a conventional system for changing the temporal resolution in a data frame based on the presence of a transient. 図2は、長ブロックサイズを有するフレームが、同様に長ブロックサイズを有する2つのフレームに挟まれた場合の、そのフレームに対する従来のウィンドウ関数を示す。FIG. 2 shows a conventional window function for a frame having a long block size, if the frame is also sandwiched between two frames having a long block size. 図3は、短ブロックサイズを有するフレームに対する従来のウィンドウ関数を示す。FIG. 3 shows a conventional window function for a frame having a short block size. 図4は、長ブロックサイズを有するフレームが、長ブロックサイズを有するフレームに先行され、短ブロックサイズを有するフレームに後続される場合の、そのフレームに対する従来の移行ウィンドウ関数を示す。FIG. 4 shows a conventional transition window function for a frame having a long block size, preceded by a frame having a long block size, and followed by a frame having a short block size. 図5は、長ブロックサイズを有するフレームが、短ブロックサイズを有するフレームに先行され、長ブロックサイズを有するフレームに後続される場合の、そのフレームに対する従来の移行ウィンドウ関数を示す。FIG. 5 illustrates a conventional transition window function for a frame having a long block size, preceded by a frame having a short block size, and followed by a frame having a long block size. 図6は、長ブロックサイズを有するフレームが、短ブロックサイズを有するフレームに先行され、短ブロックサイズを有するフレームに後続される場合の、そのフレームに対する従来の移行ウィンドウ関数を示す。FIG. 6 shows a conventional transition window function for a frame having a long block size preceded by a frame having a short block size and followed by a frame having a short block size. 図7は、トランジェントを含むフレームが両側でトランジェントを含まない2つのフレームに接する例示的な従来のウィンドウ関数群のシーケンスを示す。FIG. 7 shows a sequence of an exemplary conventional window function group in which a frame including a transient touches two frames not including a transient on both sides. 図8は、本発明の代表的な実施形態に係るブリーフウィンドウ関数WIN_SHORT_BRIEF2BRIEFを示す。FIG. 8 shows a brief window function WIN_SHORT_BRIEF2BRIEF according to a representative embodiment of the present invention. 図9は、本発明の代表的な実施形態に係る移行ウィンドウ関数WIN_SHORT_SHORT2BRIEFを示す。FIG. 9 shows a transition window function WIN_SHORT_SHORT2BRIEF according to a representative embodiment of the present invention. 図10は、本発明の代表的な実施形態に係る移行ウィンドウ関数WIN_SHORT_BRIEF2SHORTを示す。FIG. 10 shows a transition window function WIN_SHORT_BRIEF2SHORT according to a representative embodiment of the present invention. 図11は、本発明の代表的な実施形態に係る移行ウィンドウ関数WIN_LONG_LONG2BRIEFを示す。FIG. 11 shows a transition window function WIN_LONG_LONG2BRIEF according to a representative embodiment of the present invention. 図12は、本発明の代表的な実施形態に係る移行ウィンドウ関数WIN_LONG_BRIEF2LONGを示す。FIG. 12 shows a transition window function WIN_LONG_BRIEF2LONG according to a representative embodiment of the present invention. 図13は、本発明の代表的な実施形態に係る移行ウィンドウ関数WIN_LONG_BRIEF2BRIEFを示す。FIG. 13 shows a transition window function WIN_LONG_BRIEF2BRIEF according to a representative embodiment of the present invention. 図14は、本発明の代表的な実施形態に係る移行ウィンドウ関数WIN_LONG_SHORT2BRIEFを示す。FIG. 14 shows a transition window function WIN_LONG_SHORT2BRIEF according to a representative embodiment of the present invention. 図15は、本発明の代表的な実施形態に係る移行ウィンドウ関数WIN_LONG_BRIEF2SHORTを示す。FIG. 15 shows the transition window function WIN_LONG_BRIEF2 SHORT according to a representative embodiment of the present invention. 図16は、本発明の代表的な実施形態に係るウィンドウ関数を選択するための技術を示すフローチャートである。FIG. 16 is a flow chart illustrating a technique for selecting a window function according to a representative embodiment of the present invention. 図17は、本発明に係る第1の例示的なウィンドウ関数シーケンスを示す。FIG. 17 shows a first exemplary window function sequence according to the invention. 図18は、本発明に係る第2の例示的なウィンドウ関数シーケンスを示す。FIG. 18 shows a second exemplary window function sequence according to the invention. 図19は、本発明に係る第3の例示的なウィンドウ関数シーケンスを示す。FIG. 19 shows a third exemplary window function sequence according to the present invention. 図20は、本発明に係る第4の例示的なウィンドウ関数シーケンスを示す。FIG. 20 shows a fourth exemplary window function sequence according to the invention.

本発明は、従来システムのウィンドウ関数選択素子16における改良を主な目的とする。本発明の1つの特徴は、新たな「ブリーフウィンドウ関数」、例えば、図8に示されるようなウィンドウ関数100の導入である。WIN_SHORT_BRIEF2BRIEFと表示されているこのウィンドウ関数100は、従来のウィンドウ関数WIN_SHORT_SHORT2SHORT 40と同様に、ショートブロック内で用いられることが意図されている。実際、下記により詳細に説明されている通り、本発明の好ましい実施形態において、ウィンドウ関数WIN_SHORT_BRIEF2BRIEF 100は、ウィンドウ関数WIN_SHORT_SHORT2SHORT 40と同じフレーム内での使用が意図されている。   The main object of the present invention is to improve the window function selection element 16 of the conventional system. One feature of the present invention is the introduction of a new "brief window function", for example the window function 100 as shown in FIG. This window function 100, denoted as WIN_SHORT_BRIEF2BRIEF, is intended to be used within a short block, similar to the conventional window function WIN_SHORT_SHORT2SHORT 40. In fact, as described in more detail below, in the preferred embodiment of the present invention, the window function WIN_SHORT_BRIEF2BRIEF 100 is intended for use in the same frame as the window function WIN_SHORT_SHORT2SHORT 40.

しかし、従来のウィンドウ関数とは異なり、ブリーフウィンドウ関数100は、その時間分解能を向上させるために、多数の先行及び遅行ゼロ重みを用いることにより、それが占有する(図8における端点102及び103を有する)ブロックの全体長さの中心部分のみを信号整形に使う。例えば、ショートブロック長さ=256サンプルである場合、ブリーフウィンドウ関数100は、好ましくは、中心の160サンプル内で非ゼロであり(この場合、それは対称でもある)、そのようなサンプルのうちの最初の16個及び最後の16個が、ブリーフウィンドウ関数100に隣接する各移行ウィンドウ関数と重なり合い、ウィンドウの最初の48サンプル及び最後の48サンプルにゼロ重みが付いている。   However, unlike the conventional window function, the brief window function 100 occupies it by using multiple leading and lagging zero weights to improve its temporal resolution (end points 102 and 103 in FIG. 8) Use only the central part of the total length of the block) for signal shaping. For example, if short block length = 256 samples, the brief window function 100 is preferably non-zero within the center 160 samples (in this case it is also symmetrical), the first of such samples 16 and the last 16 overlap with each transition window function adjacent to the brief window function 100, with the first 48 samples and the last 48 samples of the window zero weighted.

本発明の好ましい実施形態において、このブリーフウィンドウ関数100は、音声フレーム内のトランジェントサンプルが(例えば、トランジェントサンプルを含むブロックにおいて)検出されている場合にのみ用いられ、一方、通常のショートウィンドウ関数(例えば、従来のウィンドウ関数40)、又は本発明によって提供される新たな移行関数のうちの1つが、フレームの残りの部分における準定常サンプルに適用される。これにより、従来技術に比べ、以下の可能性がもたらされる。   In the preferred embodiment of the present invention, this brief window function 100 is used only when transient samples in the speech frame are detected (e.g. in the block containing the transient samples) while the normal short window function ( For example, a conventional window function 40), or one of the new transfer functions provided by the present invention, is applied to the quasi-stationary samples in the rest of the frame. This offers the following possibilities compared to the prior art:

・著しくより大きなブロックサイズを用いることができ、この場合、準定常サンプルに対する周波数分解能が向上し、一方、トランジェントサンプル周辺の時間分解能は不変のままである。   • A significantly larger block size can be used, in which case the frequency resolution for quasi-stationary samples is improved while the time resolution around transient samples remains unchanged.

・ブロックサイズを不変のままとすることができ、この場合、準定常サンプルに対する周波数分解能が不変であり、一方、トランジェントサンプル周辺の時間分解能は向上する。   The block size can be left unchanged, in which case the frequency resolution for quasi-stationary samples is unchanged, while the time resolution around transient samples is improved.

・若干より大きいブロックサイズを用いることができ、この場合、準定常サンプルに対する周波数分解能が若干向上し、一方、トランジェントサンプル周辺の時間分解能も若干向上する。
上記選択肢の何れであっても、相反する時間−周波数分解能要件に対処する折衷的解決策が改善される。
• A slightly larger block size can be used, in which case the frequency resolution for quasi-stationary samples is slightly improved, while the time resolution around transient samples is also slightly improved.
With any of the above options, eclectic solutions that address conflicting time-frequency resolution requirements are improved.

ウィンドウ関数100を他の2つの主要なウィンドウ関数、すなわち、WIN_LONG_LONG2LONG 30及びWIN_SHORT_SHORT2SHORT 40と共に(例えば、完全な復元の条件を満足するために)用い易くするために、付加的な移行ウィンドウ関数が導入されることが好ましい。そのような移行ウィンドウ関数の例を以下に挙げる。但し、最初に、本開示においては一般に以下の専門語が用いられていることに言及しておく。
WIN_BlockLength_PriorWF2SubsWF、但し、BlockLengthは現在のウィンドウ関数に占有されているブロックの長さ(例えば、ロング又はショート)を示し、PriorWFは、直前のブロックにおけるウィンドウ関数の種類(例えば、ロング、ショート又はブリーフ)を識別し、SubsWFは、直後のブロックにおけるウィンドウ関数の種類(例えば、ロング、ショート又はブリーフ)を識別する。
An additional transition window function has been introduced to make it easier to use the window function 100 with the other two main window functions, ie, WIN_LONG_LONG2LONG 30 and WIN_SHORT_SHORT2SHORT 40 (eg, to satisfy the conditions of a full restore) Is preferred. An example of such a transition window function is given below. First, however, it should be mentioned that the following technical terms are generally used in the present disclosure.
WIN_BlockLength_PriorWF2SubsWF, where BlockLength indicates the length of the block occupied by the current window function (eg, long or short), and PriorWF indicates the type of window function in the immediately preceding block (eg, long, short or brief) Identify, SubsWF identifies the type of window function (eg, long, short or brief) in the block immediately following.

移行ウィンドウ関数110(図9に示され、WIN_SHORT_SHORT2BRIEFと表示されている)は、トランジェントを含む別のショートブロックの直前のショートブロック内で用いられる。すなわち、それはウィンドウ関数WIN_SHORT_BRIEF2BRIEF 100の直前にある。   The transition window function 110 (shown in FIG. 9 and labeled as WIN_SHORT_SHORT2BRIEF) is used within the short block immediately before another short block that contains a transient. That is, it is immediately before the window function WIN_SHORT_BRIEF2BRIEF100.

ウィンドウ関数120(図10に示され、WIN_SHORT_BRIEF2SHORTと表示されている)は、トランジェントを含む別のショートブロックの直後のショートブロック内で用いられる。すなわち、それはウィンドウ関数WIN_SHORT_BRIEF2BRIEF 100の直後にある。   The window function 120 (shown in FIG. 10 and labeled as WIN_SHORT_BRIEF2 SHORT) is used in the short block immediately after another short block that includes a transient. That is, it is immediately after the window function WIN_SHORT_BRIEF2BRIEF100.

ウィンドウ関数130(図11に示され、WIN_LONG_LONG2BRIEFと表示されている)は、トランジェントを含むショートブロックの直前のロングブロック内で用いられる。すなわち、それはトランジェントを含む次のフレームの直前のフレームを包含し、このトランジェントは次のフレームのまさに最初のブロック内にある。   The window function 130 (shown in FIG. 11 and denoted as WIN_LONG_LONG2BRIEF) is used in the long block immediately before the short block containing the transient. That is, it includes the frame immediately prior to the next frame that contains the transient, which is in the very first block of the next frame.

ウィンドウ関数140(図12に示され、WIN_LONG_BRIEF2LONGと表示されている)は、トランジェントを含むショートブロックの直後のロングブロック内で用いられる。すなわち、それは、トランジェントを含む先行フレームの直後のフレームを包含し、このトランジェントは先行フレームのまさに最後のブロック内にある。   The window function 140 (shown in FIG. 12 and denoted as WIN_LONG_BRIEF2LONG) is used in the long block immediately after the short block containing the transient. That is, it includes the frame immediately following the preceding frame that contains the transient, which is in the very last block of the preceding frame.

ウィンドウ関数150(図13に示され、WIN_LONG_BRIEF2BRIEFと表示されている)は、トランジェントを含む2つのショートブロックの間に挟まれたロングブロック内で用いられる。すなわち、それはトランジェントを含む2つのフレームの間のフレームを包含し、先行フレームにおけるトランジェントがそのまさに最後のブロック内にあり、次のフレームにおけるトランジェントがそのまさに最初のブロック内にある。   The window function 150 (shown in FIG. 13 and denoted as WIN_LONG_BRIEF2BRIEF) is used in a long block sandwiched between two short blocks containing a transient. That is, it includes the frame between two frames that includes a transient, the transient in the previous frame is in its very last block, and the transient in the next frame is in its very first block.

ウィンドウ関数160(図14に示され、WIN_LONG_SHORT2BRIEFと表示されている)は、トランジェントを含む2つのフレームの間のフレームを包含するロングブロック内で用いられ、先行フレームにおけるトランジェントがそのまさに最後のブロック以外のどこかにあり、次のフレームにおけるトランジェントがそのまさに最初のブロック内にある。   The window function 160 (shown in FIG. 14 and denoted as WIN_LONG_SHORT2BRIEF) is used within a long block that contains a frame between two frames that contain a transient, and the transient in the previous frame is not that very last block Somewhere in the next frame, the transient is in its very first block.

ウィンドウ関数170(図15に示され、WIN_LONG_BRIEF2SHORTと表示されている)は、トランジェントを含む2つのフレームの間のフレームを包含するロングブロック内で用いられ、先行フレームにおけるトランジェントはそのまさに最後のブロックにあり、次のフレーム内のトランジェントはそのまさに最初のブロック以外のどこかにある。   The window function 170 (shown in FIG. 15 and denoted as WIN_LONG_BRIEF2SHORT) is used in a long block that contains a frame between two frames that contain a transient, and the transient in the previous frame is that very last block Yes, the transient in the next frame is somewhere other than its very first block.

各場合において、ウィンドウ関数は、完全な復元の条件を満足するような方法で、両側の隣接するウィンドウ関数と重なり合うように設計されることが好ましい。用いられ得るウィンドウ関数の具体的な例を以下に挙げる。   In each case, the window function is preferably designed to overlap the adjacent window functions on both sides in such a way as to satisfy the condition of perfect reconstruction. Specific examples of window functions that can be used are given below.

図16は、本発明の代表的な実施形態に係るウィンドウ関数を選択するための技術を示すフローチャートである。一般的に、図16に示されている全プロセスは自動化される(例えば、ソフトウェア、ファームウェア、専用ハードウェア、又はそれらの任意の組み合わせにおいて実行される)であろう。   FIG. 16 is a flow chart illustrating a technique for selecting a window function according to a representative embodiment of the present invention. In general, the entire process shown in FIG. 16 will be automated (eg, implemented in software, firmware, dedicated hardware, or any combination thereof).

最初に、ステップ202において、データのフレームを得る。この点に関し、本発明に従って、種々様々な種類のデータを処理してもよい。本開示を通して、多くの場合、データは音声信号に対応するものと仮定される。しかし、このことは制限的であると解釈されるべきではなく、得られるデータはむしろ、画像信号、映像信号、又は、熱、圧力、放射、運動、距離、任意の生物学的機能、天候及び/又は任意の地質学的現象を表す信号といった、任意の他の物理学的現象を表すものであってもよい。   First, at step 202, a frame of data is obtained. In this regard, a wide variety of different types of data may be processed in accordance with the present invention. Throughout this disclosure, data is often assumed to correspond to speech signals. However, this should not be interpreted as limiting and the data obtained may rather be image signals, video signals or heat, pressure, radiation, movement, distance, any biological function, weather and It may represent any other physical phenomenon, such as a signal representing any geological phenomenon.

また、データフレームは(例えば、データが通信チャンネルを通じて受信されている場合におけるように)データのソースによって定義されていてもよいことに留意すべきである。代替的には、例えば、データは、連続ストリームにおいて受信され、処理を目的として(例えば、内部的に)フレーム群にセグメント化されてもよい。何れにせよ、本処理は(限定的ではないが)特に、個々のフレームに分離されたデータに適用可能である。上記に示した通り、フレーム型処理によって、データストリーム全体の個々の部分を、幾つかの特定の点について均一に処理することができる。   Also, it should be noted that the data frame may be defined by the source of data (eg, as in the case where data is being received through the communication channel). Alternatively, for example, data may be received in a continuous stream and segmented into frames (eg, internally) for processing purposes. In any case, the process is (although not exclusively) particularly applicable to data separated into individual frames. As indicated above, frame-type processing allows individual parts of the entire data stream to be processed uniformly at some specific points.

本発明の好ましい実施形態において、各フレームは均一なブロックサイズを有する。この点に関し、ブロックは、フレームに対する基本信号処理単位と定義されることが好ましい。例えば、フレーム内のデータを、(例えば、離散コサイン変換又は高速フーリエ変換を用いて)、元の領域(例えば、音声信号の場合は時間領域)から周波数領域へ、又は一組の直交関数によって定義される任意の他の変換領域へ(例えば、信号処理モジュール19において)変換されるべきである場合、変換領域内での変換及びそれに続く全ての処理は、ブロック毎に別個に行われることが好ましい。   In a preferred embodiment of the invention, each frame has a uniform block size. In this regard, blocks are preferably defined as basic signal processing units for the frame. For example, define data in a frame (eg, using discrete cosine transform or fast Fourier transform), from the original domain (eg, time domain for speech signals) to the frequency domain, or by a set of orthogonal functions If it is to be transformed (for example, in the signal processing module 19) into any other transform domain to be performed, it is preferable that the transformation in the transform domain and all subsequent processing be performed separately for each block. .

従って、好ましい実施形態において、フレームは単一ブロックに包含されていてもよく、代替的には、複数の同一サイズのブロックに包含されていてもよい。従来技術におけるように、ブロックサイズは、フレーム全体を包含する大ブロックサイズと、フレーム全体に均一に分散された複数の連続ブロックをもたらす小ブロックサイズ、の2つのみであるであることがより好ましい。   Thus, in a preferred embodiment, the frame may be contained in a single block, or alternatively may be contained in multiple blocks of the same size. As in the prior art, the block size is more preferably only two: a large block size encompassing the entire frame and a small block size resulting in a plurality of contiguous blocks uniformly distributed throughout the frame .

更に、さもなければ起こるであろう境界の問題に取り組むために、従来技術におけるように、本発明のブロックは(例えば、完全な復元の条件を満足するような方法で)互いに重なり合うことが好ましい。概念上、各ブロックは(例えば、モジュール19において)次に処理されるべき多数のコアサンプルと、そのようなコアサンプルに隣接する多数の境界サンプルとを含むと考えることができる。好ましい実施形態において、コアサンプルはシーケンスにおける新たなサンプルであり、境界サンプルは先行ブロックからの履歴サンプルである。他方、フレームは、連続し、重なり合っていないことが好ましい。結果として、フレームの始めにあるブロックが先行フレームと重なり合う。単一ブロックに包含されているフレームについては、その単一ブロックが先行フレーム全体と重なり合う。   Furthermore, to address the boundary problems that would otherwise occur, as in the prior art, the blocks of the present invention preferably overlap each other (e.g., in such a way as to satisfy the conditions of perfect reconstruction). Conceptually, each block can be considered to contain a number of core samples to be processed next (e.g., in module 19) and a number of boundary samples adjacent to such core samples. In the preferred embodiment, the core sample is a new sample in the sequence and the boundary sample is a historical sample from the previous block. On the other hand, the frames are preferably continuous and non-overlapping. As a result, the block at the beginning of the frame overlaps the previous frame. For a frame contained in a single block, the single block overlaps the entire preceding frame.

データフレームそのものを得ることに加え、ステップ202では(例えば、過渡検出器14から)トランジェント標識も得る。好ましい実施形態において、得られたトランジェント標識は、現在のフレームにトランジェントが存在するかどうか、もし存在するならフレームのどこに存在するのかを示す。現在のフレームにおいて2つ以上のトランジェントが検出された場合、そのようなトランジェントそれぞれの位置が得られる(例えば、過渡検出器14によって識別され、その後、過渡検出器14から受信される)ことが好ましい。説明を簡略化するため、本開示においては、一般性を喪失することなく、各フレームにおいて検出されるトランジェントは(あるとしても)1つだけと仮定することがある。   In addition to obtaining the data frame itself, step 202 also obtains a transient indicator (e.g., from transient detector 14). In a preferred embodiment, the transient label obtained indicates whether a transient is present in the current frame, and if so where in the frame. Preferably, if more than one transient is detected in the current frame, the location of each such transient is obtained (e.g. identified by transient detector 14 and then received from transient detector 14) . To simplify the description, in the present disclosure, it may be assumed that only one transient (if any) is detected in each frame without loss of generality.

実際のトランジェントの検出は、例えば、任意の既存技術を用いて行うことができる。通常、トランジェントは、非常に短い時間に渡って高周波数成分におけるスパイクとして顕在化し、よってこのことを基に検出することができる。何れにせよ、多くの場合、閾値が規定され、それを下回った場合、信号活動はトランジェントと見なされるであろう。   The detection of the actual transient can be performed, for example, using any existing technology. Transients usually manifest themselves as spikes in high frequency components for a very short time, so that this can be detected. In any case, in many cases a threshold is defined, below which signal activity will be considered as transient.

図16を再び参照し、ステップ203において、現在のフレームにトランジェントが存在するかどうか判断する。この判断は、過渡検出器14によって提供される情報に基づいて簡単明瞭であることが好ましい。トランジェントが存在しない場合、処理はステップ205に進む。トランジェントが存在する場合、処理はステップ210に進む。   Referring again to FIG. 16, in step 203 it is determined whether there is a transient in the current frame. This determination is preferably straightforward based on the information provided by the transient detector 14. If there is no transient, processing proceeds to step 205. If there is a transient, processing proceeds to step 210.

ステップ205において、現在のフレームにトランジェントが含まれないという判断に基づいて、ブロックサイズを設定する。好ましい実施形態において、このような場合、単一ブロックを用いてフレーム全体を包含する。このブロックに、現在のフレームにおけるコアサンプルとしての全てのサンプル、及び先行フレーム(群)からの一部又は全てのサンプルが含まれることがより好ましい。例示的なブロックサイズとしては2,048サンプル、すなわち、先行フレームからの1,024コアサンプル(フレームサイズも1,024サンプル)と1,024サンプルである。   At step 205, the block size is set based on the determination that the current frame does not contain a transient. In a preferred embodiment, in such a case, a single block is used to encompass the entire frame. More preferably, this block includes all samples as core samples in the current frame, and some or all samples from the preceding frame (s). Exemplary block sizes are 2,048 samples, ie 1,024 core samples from the previous frame (frame size is also 1,024 samples) and 1,024 samples.

次に、ステップ207において、現在のフレームに対してウィンドウ関数を(単一ブロックがフレーム全体を包含するものと仮定して)選択する。好ましい実施形態において、このステップには、直前及び直後のフレーム群/ブロック群の評価が含まれる。ウィンドウ関数の数が増えているため、従来技術に比べ、適切なウィンドウシーケンスの決定は典型的には若干複雑化しているが、基本的な原則は比較的簡単明瞭である。具体的には、ロングウィンドウ関数が選択され、その具体的な形態はその前及び次のフレームにおけるトランジェントの存在及び位置によって決まる。具体的な選択は、以下の通り行われることが好ましい。   Next, in step 207, a window function is selected for the current frame (assuming that a single block covers the entire frame). In a preferred embodiment, this step includes the evaluation of the immediately preceding and succeeding frames / blocks. Due to the increasing number of window functions, the determination of the appropriate window sequence is typically somewhat complicated compared to the prior art, but the basic principles are relatively straightforward and clear. Specifically, a long window function is selected, the specific form of which depends on the presence and location of the transient in the previous and next frames. The specific selection is preferably performed as follows.

Figure 0006509928
Figure 0006509928

ステップ207において適切なウィンドウ関数が選択されると、それはステップ17において(例えば、上述した通り)適用される。 Once the appropriate window function is selected at step 207, it is applied at step 17 (e.g., as described above).

他方、ステップ203において、現在のフレームにトランジェントが存在すると判断されていた場合、処理は、ブロックサイズを「小」に設定するステップ210に進んでいたであろう。1,024サンプルというフレームサイズに関する一例は、256サンプルというブロックサイズ、すなわち、先行ブロックと(フレームが8ブロックに包含されるように)重なり合う128コアサンプルと128サンプルである。本実施形態は、2つの起こり得る状況(トランジェントあり/トランジェントなし)それぞれに関して単一ブロックサイズを意図しているが、他の実施形態においては、任意の所望の基準に基づいて様々なブロックサイズを選択してもよく、フレームは様々なサイズのブロック群からなっていてもよいことに留意すべきである。   On the other hand, if it was determined in step 203 that a transient was present in the current frame, the process would proceed to step 210 to set the block size to "small". An example for a frame size of 1,024 samples is a block size of 256 samples, i.e. 128 core samples and 128 samples overlapping with the preceding block (so that the frame is contained in 8 blocks). Although this embodiment contemplates a single block size for each of two possible situations (transient / no transient), in other embodiments different block sizes may be based on any desired criteria. It should be noted that one may choose, and the frame may consist of blocks of various sizes.

何れにせよ、ブロックサイズが確立されると、処理は、現在のフレーム内の様々なブロックに対して様々なウィンドウ関数が選択されるステップ212に進む。現在のフレームに少なくとも1つのトランジェントが含まれることが分かっているため、WIN_SHORT_BRIEF2BRIEFウィンドウ関数100が(識別された位置(群)において)少なくとも1度用いられるであろう。ブリーフウィンドウ関数とショートウィンドウ関数のシーケンスが、以下の原則に従って、現在のフレームのショートブロックに対して選択されることがより好ましい。   In any case, once the block size is established, the process proceeds to step 212 where various window functions are selected for various blocks in the current frame. Since it is known that the current frame contains at least one transient, the WIN_SHORT_BRIEF2BRIEF window function 100 will be used at least once (at the identified position (s)). More preferably, a sequence of brief window functions and short window functions is selected for the short block of the current frame according to the following principle.

・ブロックの時間分解能を向上させるために、WIN_SHORT_BRIEF2BRIEFが、トランジェントが発生するブロックにおけるサンプルに適用される。   To improve the temporal resolution of the block, WIN_SHORT_BRIEF2BRIEF is applied to the samples in the block where the transient occurs.

・トランジェントを含むウィンドウの直前にあるウィンドウに対するウィンドウ関数が「…2BRIEF」という形態の指定を有する。   The window function for the window immediately before the window containing the transient has a specification of the form “... 2BRIEF”.

・トランジェントを含むウィンドウの直後にあるウィンドウに対するウィンドウ関数が「…_BRIEF2…」という形態の指定を有する。   The window function for the window immediately after the window including the transient has a specification of the form “... _BRIEF 2.

従って、以下のウィンドウ関数の組み合わせは何れも許容される。   Therefore, any combination of the following window functions is acceptable.

Figure 0006509928
Figure 0006509928

フレーム内にウィンドウ関数を配置するためのCで書かれた具体的な手順は、本開示の「ウィンドウ関数選択ルーチン」という見出しの節に記載されている。しかし、一般的には、トランジェント前移行ウィンドウ関数は、それ自体のブロック長(ロング又はショート)及びその直前のウィンドウ関数(ロング、ショート又はブリーフ)の性質に基づいて、上記表の左欄から選択される。同様に、トランジェント後移行ウィンドウ関数は、それ自体のブロック長(ロング又はショート)及びその直後のウィンドウ関数(ロング、ショート又はブリーフ)の性質に基づいて、上記表の右欄から選択される。(i)トランジェント前(トランジェントブロックの直前のブロック)、(ii)トランジェント(トランジェントを含むブロック)、(iii)トランジェント後(トランジェントブロックの直後のブロック)、(iv)フレームの最初のブロック、又は(v)フレームの最後のブロック、でない現在のフレーム内の各ブロックには、WIN_SHORT_SHORT2SHORT 40のウィンドウ関数が割り当てられることが好ましい。現在のフレームにおける最初のブロックは(それがトランジェント前、トランジェント又はトランジェント後ブロックでないものと仮定して)、WIN_SHORT_PriorWF2SHORTのウィンドウ関数が割り当てられることが好ましく、現在のフレームの最後のブロックは(それがトランジェント前、トランジェント又はトランジェント後ブロックでないものと仮定して)、WIN_SHORT_SHORT2SubsWFのウィンドウ関数が割り当てられることが好ましい。 The specific procedure written in C for placing a window function in a frame is described in the section entitled "Window Function Selection Routine" of this disclosure. However, in general, the pre-transient transition window function is selected from the left column of the above table based on its own block length (long or short) and the nature of the window function (long, short or brief) immediately preceding it. Be done. Similarly, a post-transient transition window function is selected from the right column of the above table based on its own block length (long or short) and the nature of the window function (long, short or brief) immediately following it. (I) before transient (the block immediately before transient block), (ii) transient (the block including transient), (iii) after transient (the block immediately after transient block), (iv) the first block of the frame, or v) The last block of the frame, preferably not each window in the current frame, is assigned a window function of WIN_SHORT_SHORT2SHORT 40. The first block in the current frame is preferably assigned a window function of WIN_SHORT_PriorWF2 SHORT (assuming that it is not a pre-transient, post-transient or post-transient block), the last block of the current frame is (transient Preferably, a window function of WIN_SHORT_SHORT2SubsWF is assigned (assuming that it is not pre-transient or post-transient block).

ステップ212が完了すると、処理をステップ17に進め、選択されたウィンドウ関数を適用する。ステップ17が完了すると、処理をステップ202に戻し、次のフレームの処理を行う。   Once step 212 is complete, the process proceeds to step 17 to apply the selected window function. When step 17 is completed, the process returns to step 202 to process the next frame.

図16に示すフローチャートは、本来、性質上概念的なものであることが理解されるべきである。実際、上記に示した通り、1つのフレームに対するウィンドウ関数(群)の選択は、典型的には、隣接するフレーム群におけるトランジェントの存在及び位置に影響されるであろう。従って、1つのフレームに対するウィンドウ関数(群)の選択は、1つ以上の他のフレーム群に対するウィンドウ関数(群)の選択と同時に行われてもよい。少なくとも、現在のフレームに対する選択は、次のフレームに適用されるであろうウィンドウ関数を見越して行われることが好ましい。   It should be understood that the flowchart shown in FIG. 16 is inherently conceptual in nature. In fact, as indicated above, the choice of window function (s) for one frame will typically be influenced by the presence and location of transients in adjacent frames. Thus, the selection of window function (s) for one frame may be performed simultaneously with the selection of window function (s) for one or more other frame groups. Preferably, at least the selection for the current frame is made in anticipation of the window function that will be applied to the next frame.

図16に示されたフローチャートの部分216は、(図1における)従来のウィンドウ関数選択モジュール16において行われる対応する処理に代えて用いることができることに言及する。その結果、本発明の技術は、典型的には、従来システムに対する改良点として容易に取り入れることができる。   It is noted that portion 216 of the flowchart shown in FIG. 16 can be used in place of the corresponding processing performed in the conventional window function selection module 16 (in FIG. 1). As a result, the techniques of the present invention can typically be easily incorporated as an improvement over prior art systems.

本発明が用いられてもよい1つの用途として、音声符号化/復号化がある。そのようなシステム内で、符号器は、典型的には、それが現在のフレームを符号化するのに用いたウィンドウ関数を、復号器が同じウィンドウ関数を用いてフレームを復号することができるように、復号器に知らせる。従来技術に関し、この目的を達成するためには、一般に、ウィンドウ関数インデックスが1つだけ復号器に送信されればよく、その理由は以下の通りである。   Speech coding / decoding is one application where the present invention may be used. Within such a system, the encoder typically allows the decoder to decode the frame using the same window function as the window function that it used to encode the current frame Inform the decoder. With regard to the prior art, in order to achieve this purpose, generally only one window function index need be sent to the decoder for the following reasons.

・検出されたトランジェントを有しないフレームに対しては、ロングウィンドウ関数群のうち1つだけが用いられ、よってそれが復号器に知らされる必要がある。   For frames without detected transients, only one of the long window functions is used, so it needs to be known to the decoder.

・1つ以上のトランジェントを含むフレームに対しては、フレーム内の全てのウィンドウ関数が同じ、すなわち、WIN_SHORT_SHORT2SHORT 40である。そのような(検出されたトランジェントを有しない2つのフレームの間に挟まれた)フレーム70が図7に示されている。   For a frame that contains more than one transient, all window functions in the frame are the same, ie, WIN_SHORT_SHORT2SHORT 40. Such a frame (embedded between two frames without detected transients) is shown in FIG.

上記所説は本発明の技術にも当てはまる。すなわち、復号器が符号器と同じウィンドウ関数群を用いてフレームを復号化するために、ウィンドウ関数インデックスは1つだけ復号器に送信されればよい。これは以下の理由による。   The above comments also apply to the technology of the present invention. That is, only one window function index need be sent to the decoder in order for the decoder to decode the frame using the same window functions as the encoder. This is due to the following reasons.

・検出されたトランジェントを有しないフレームに対しては、本技術においても、ロングウィンドウ関数群のうちのどの1つが用いられるのかを復号器に知らせるだけでよい。   -For frames that do not have a detected transient, this technique only needs to inform the decoder which one of the long window function group is used.

・検出されたトランジェントを有するフレームに対しては、符号器は、現在のフレームの最初のブロックにおいてトランジェントが存在するかどうか、及び次のフレームの最初のブロックにおいてトランジェントが存在するかどうかを復号器に知らせるだけでよく、その後、フレーム全体に対するウィンドウ関数群のシーケンスを、本明細書に記載された手順を用いて決定することができる。好ましい実施形態において、WIN_SHORT_BRIEF2BRIEFウィンドウ関数100がトランジェントを有するブロックに対して用いられているため、この情報を伝達するのに以下の専門語を用いてもよい。
WIN_SHORT_CurrentSubs、但し、Current(SHORT=いいえ、BRIEF=はい)は、現在のフレームの最初のブロックにおいてトランジェントが存在するかどうかを識別し、Subs(SHORT=いいえ、BRIEF=はい)は、次のフレームの最初のブロックにおいてトランジェントが存在するかどうかを識別する。例えば、WIN_SHORT_BRIEF2BRIEFは、現在のフレームの最初のブロック及び次のフレームの最初のブロックにおいてトランジェントが存在することを示し、WIN_SHORT_BRIEF2SHORTは、現在のフレームの最初のブロックにおいてトランジェントが存在するが、次のフレームの最初のブロックにおいては存在しないことを示す。
-For frames with detected transients, the encoder will decode if there is a transient in the first block of the current frame and if there is a transient in the first block of the next frame The sequence of window functions for the entire frame can then be determined using the procedures described herein. In the preferred embodiment, the WIN_SHORT_BRIEF2BRIEF window function 100 is used for blocks with transients, so the following terminology may be used to convey this information.
WIN_SHORT_CurrentSubs, where Current (SHORT = No, BRIEF = Yes) identifies whether a transient is present in the first block of the current frame, Subs (SHORT = No, BRIEF = Yes) is for the next frame Identify if there is a transient in the first block. For example, WIN_SHORT_BRIEF2BRIEF indicates that a transient exists in the first block of the current frame and the first block of the next frame, and WIN_SHORT_BRIEF2SHORT indicates that the transient exists in the first block of the current frame, but Indicates that it does not exist in the first block.

図17〜20は、本発明に係る例示的なウィンドウ関数シーケンスを示す。そのようなシーケンスそれぞれにおいて、(WIN_SHORT_BRIEF2BRIEFウィンドウ関数100と示されているような)少なくとも1つのトランジェントを有するフレームが、両側のトランジェントを含まない2つのフレームに囲まれている。しかし、これらの例は限定的であると解釈されるべきではなく、それぞれが少なくとも1つのトランジェントを有する連続フレームも許容される。   Figures 17 to 20 show an exemplary window function sequence according to the invention. In each such sequence, a frame having at least one transient (as indicated by the WIN_SHORT_BRIEF2BRIEF window function 100) is enclosed in two frames that do not include transients on both sides. However, these examples should not be construed as limiting, and continuous frames, each having at least one transient, are also acceptable.

例示的実施
広く用いられているウィンドウ関数の1つに以下の正弦関数がある。
Exemplary Implementation One of the widely used window functions is the following sine function.

Figure 0006509928
Figure 0006509928

ロングウィンドウ関数はM=L、ショートウィンドウ関数はM=S、及びブリーフウィンドウ関数はM=B、但し、L>S>Bである場合、以下のウィンドウ関数を定義することができる。 If the long window function is M = L, the short window function is M = S, and the brief window function is M = B, where L> S> B, the following window functions can be defined.

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

好適な一組のウィンドウ長パラメータはL=1024、S=128、及びB=32である。但し、他のパラメータをその代わりに用いてもよい。   A preferred set of window length parameters is L = 1024, S = 128, and B = 32. However, other parameters may be used instead.

システム環境
一般的に、明確にそうでないことが示されている場合を除いて、本明細書に記載されている全てのシステム、方法、及び技術は、1つ以上のプログラム可能な汎用コンピューティングデバイスの使用により実行可能である。そのようなデバイスは、典型的には、例えば、共通のバス等により相互接続された以下の部品の少なくとも一部を含むであろう:1つ以上の中央処理装置(CPU);読み出し専用メモリー(ROM);ランダムアクセスメモリー(RAM);(例えば、シリアルポート、パラレルポート、USB接続、又はファイアワイヤ接続のようなハードワイヤード接続を用いた、又はブルートゥースや802.11プロトコルのような無線プロトコルを用いた)他のデバイスとインターフェースをとるための入力/出力ソフトウェア及び回路;(例えば、イーサネット(登録商標)カードのようなハードワイヤード接続、又は、符号分割多元接続(CDMA)、グローバル・システム・フォー・モバイル・コミュニケーションズ(GSM(登録商標))、ブルートゥース、802.11プロトコル、又は任意の他のセルラー系や非セルラー系システムのような無線プロトコルを用いた)、本発明の多くの実施形態において、次にインターネット又は任意の他のネットワークに接続する、1つ以上のネットワークを接続するためのソフトウェア及び回路;表示装置(例えば、陰極線管表示装置、液晶表示装置、有機発光表示装置、ポリマー発光表示装置、又は任意の他の薄膜表示装置);他の出力デバイス(例えば、1つ以上のスピーカー、ヘッドフォンセット、及びプリンター);1つ以上の入力デバイス(例えば、マウス、タッチパッド、タブレット、タッチセンサー表示装置や他のポインティングデバイス、キーボード、キーパッド、マイクロフォン、及びスキャナー);大容量記憶装置(例えば、ハードディスクドライブ);リアルタイムクロック;(例えば、RAM、磁気ディスク、磁気テープ、光磁気ディスク、光ディスク等からの読出し及びそれらへの書込みのための)リムーバブル記憶読出し/書込みデバイス;及び(例えば、ファックスを送る、又はダイアル呼出し接続を介してインターネット又は任意の他のコンピュータネットワークに接続するための)モデム。操作において、上記方法及び機能を、そのような汎用コンピュータによって行う範囲において実施するための工程は、典型的には、まず大容量記憶装置(例えば、ハードディスク)に記憶され、RAMにダウンロードされた後、RAMのCPUにより実行される。しかし、場合によっては、工程は、まずRAM又はROMに記憶される。
System Environment In general, all systems, methods, and techniques described herein, except where expressly indicated to the contrary, include one or more programmable general purpose computing devices It is feasible by use of. Such devices will typically include, for example, at least a portion of the following components interconnected by a common bus or the like: one or more central processing units (CPU); read only memory ( Random access memory (RAM); (for example, using a hardwired connection such as serial port, parallel port, USB connection, or firewire connection, or using a wireless protocol such as Bluetooth or 802.11 protocol ) Input / output software and circuitry to interface with other devices (eg, hardwired connections such as Ethernet cards, or Code Division Multiple Access (CDMA), Global System Four) Mobile Communications (GSM (registered trademark) (Using a wireless protocol such as Bluetooth, 802.11 protocol, or any other cellular or non-cellular system), and in many embodiments of the present invention, then connect to the Internet or any other network Software and circuitry for connecting one or more networks; displays (eg, cathode ray tube displays, liquid crystal displays, organic light emitting displays, polymer light emitting displays, or any other thin film display); Other output devices (eg, one or more speakers, a headphone set, and a printer); one or more input devices (eg, a mouse, a touch pad, a tablet, a touch sensor display or other pointing device, a keyboard, a keypad) , Microphones, and scanners); mass storage (Eg, hard disk drive); real time clock; removable storage read / write device (eg, for reading from and writing to RAM, magnetic disk, magnetic tape, magneto-optical disk, optical disk etc); Modem) for sending faxes or connecting to the Internet or any other computer network via a dial-up connection. In operation, steps to carry out the above methods and functions to the extent performed by such a general purpose computer are typically first stored in a mass storage device (eg hard disk) and downloaded to RAM , Is executed by the CPU of the RAM. However, in some cases, the process is first stored in RAM or ROM.

本発明の実施において用いられる好適なデバイスは、種々の製造元から入手され得る。種々の実施形態において、タスクのサイズ及び複雑性に応じ、様々な種類のデバイスが用いられる。好適なデバイスには、本体コンピュータ、多重プロセッサコンピュータ、ワークステーション、パーソナルコンピュータ、及び、PDA,無線電話、又は任意の他の機器又はデバイスといった更に小型のコンピュータが含まれ、これらは独立型であっても、ネットワークにハードワイヤードされていても、ネットワークに無線接続されていてもよい。   Suitable devices for use in the practice of the present invention can be obtained from various manufacturers. In various embodiments, different types of devices are used, depending on the size and complexity of the task. Suitable devices include smaller computers, such as a main computer, a multiprocessor computer, a workstation, a personal computer, and a PDA, a wireless telephone, or any other equipment or device, which are stand alone Also, it may be hardwired to the network or wirelessly connected to the network.

更に、これまで汎用のプログラム可能なデバイスについて説明してきたが、他の実施形態においては、1つ以上の専用プロセッサ又はコンピュータがそれに代えて(又はそれに加えて)用いられる。一般に、特にそうでない旨の言及がある場合を除き、上記に述べた機能は全て、ソフトウェア、ハードウェア、ファームウェア、又はこれらの任意の組み合わせにおいて実施可能であり、この特定の実施事項は公知の技術トレードオフに基づいて選択されることに留意すべきである。より具体的には、当業者が容易に理解するであろうように、上記に述べた機能が、一定の、予め設定された、又は論理的な方法で実施される場合、それはプログラミング(例えば、ソフトウェア又はファームウェア)、論理素子(ハードウェア)の適切な配置、又はこれら2つの任意の組み合わせを通して達成され得る。   Furthermore, while general purpose programmable devices have been described above, in other embodiments, one or more dedicated processors or computers may be used instead (or in addition). In general, unless stated otherwise, all the functions mentioned above can be implemented in software, hardware, firmware or any combination thereof, this particular implementation being a known technology It should be noted that the choice is made based on tradeoffs. More specifically, as the person skilled in the art will easily understand, if the functions mentioned above are implemented in a fixed, preset or logical manner, then they are programming (e.g. Software or firmware), appropriate arrangement of logic elements (hardware), or any combination of the two may be achieved.

本発明がまた、この発明の方法及び機能を行うためのプログラム命令が記憶される機械可読媒体にも関連していることが理解されるべきである。そのような媒体には、例示として、磁気ディスク、磁気テープ、CD ROM及びDVD ROMのような光学的に読み取り可能な媒体、又はPCMCIAカードのような半導体メモリ、種々のメモリカード、USBメモリデバイス等が含まれる。何れにせよ、媒体は、小型ディスクドライブや小型ディスク、ディスケット、カセット、カートリッジ、カード、スティック等のような携帯アイテムの形態であってもよく、又は、ハードディスクドライブ、コンピュータや他のデバイスに備えられたROMやRAMのような比較的より大型の、あるいは固定されたアイテムの形態であってもよい。   It should be understood that the present invention also relates to a machine readable medium on which program instructions for performing the methods and functions of the present invention are stored. Such media include, by way of example, magnetic disks, magnetic tapes, optically readable media such as CD ROMs and DVD ROMs, or semiconductor memories such as PCMCIA cards, various memory cards, USB memory devices, etc. Is included. In any case, the medium may be in the form of a portable item such as a small disk drive or small disk, diskette, cassette, cartridge, card, stick, etc. or be provided in a hard disk drive, computer or other device. It may be in the form of a relatively larger or fixed item such as a ROM or RAM.

上記説明においては、電子計算機コンピュータ及びデバイスに主に重点が置かれている。しかし、電子的、光学的、生物学的、及び化学的処理の任意の組み合わせを用いたデバイスといった、任意の他の演算デバイス又は他の種類のデバイスを用いてもよいことが理解されるべきである。   In the above description, the emphasis is mainly on computer computers and devices. However, it should be understood that any other computing device or other type of device may be used, such as a device using any combination of electronic, optical, biological and chemical processing. is there.

更なる検討事項
上記に、本発明の幾つかの様々な実施形態を、それぞれが特定の特徴を含むものとして述べた。しかし、当業者が理解するであろうように、どの1つの実施形態の記述に関して述べられた特徴もその実施形態に限定されず、その他の実施形態の何れにおいても種々の組み合わせで含まれ、及び/又は配置されてもよいことが意図されている。
Additional Considerations Above, several different embodiments of the present invention have been described, each including specific features. However, as one of ordinary skill in the art would appreciate, the features described with respect to the description of any one embodiment are not limited to that embodiment, but are included in various combinations in any of the other embodiments, and It is intended that it may be / or arranged.

同様に、上記記述において、機能は、特定のモジュール又は素子に起因している場合がある。しかし、機能は一般に、所望により、様々なモジュール又は素子の間で再分散されてもよく、場合によっては、特定の素子又はモジュールの必要性が完全になくなり、及び/又は新たな素子又はモジュールの追加が必要となる。機能の正確な分散は、当業者が理解するであろうように、本発明の具体的な実施形態を参照し、公知の技術トレードオフに従って行われることが好ましい。   Similarly, in the above description, functions may be attributed to particular modules or elements. However, functions may generally be redistributed, as desired, among the various modules or elements, and in some cases, the need for particular elements or modules may be completely eliminated and / or of new elements or modules. It will need to be added. The exact distribution of functions is preferably performed according to known technology tradeoffs with reference to the specific embodiments of the present invention, as will be appreciated by those skilled in the art.

従って、本発明を、その例示的な実施形態及び添付の図面に関して詳細に説明してきたが、本発明の精神及び範囲から逸脱することなく、本発明の種々の適合及び変更が達成され得ることが当業者に明らかであるべきである。従って、本発明は、図面に示され、上記に述べられた厳密な実施形態に限定されない。むしろ、本発明の精神から逸脱しない全てのそのような変形例が、その範囲に含まれ、本明細書に添付されている請求項によってのみ限定されると考えられることが意図されている。   Thus, while the present invention has been described in detail in connection with exemplary embodiments thereof and the accompanying drawings, it is understood that various adaptations and modifications of the invention can be achieved without departing from the spirit and scope of the invention. It should be clear to the person skilled in the art. Accordingly, the invention is not limited to the exact embodiments shown in the drawings and described above. Rather, it is intended that all such variations which do not depart from the spirit of the present invention be considered as limited within the scope thereof and only by the claims appended hereto.

ウィンドウ関数選択ルーチンWindow function selection routine

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

Figure 0006509928
Figure 0006509928

但し: However:

Figure 0006509928
Figure 0006509928

Claims (12)

コンピュータに、フレーム型データを処理する方法を実行させるためのコンピュータプログラムであって、前記方法が、
(a)データのフレームを取得するステップと、
(b)前記フレームに対してブロックサイズを設定し、それによって前記フレーム内に複数の同一サイズのブロックを定義するステップと、
(c)前記複数の同一サイズのブロックのうちの異なるブロックに対して異なるウィンドウ関数を選択するステップと、
(d)ステップ(c)において選択された前記ウィンドウ関数を適用することによって前記データのフレームを処理するステップと
を備え、
ステップ(c)においては、トランジェントを含むブロックに対してブリーフウィンドウ関数が選択され、該ブリーフウィンドウ関数は、当該トランジェントを含むフレーム内の他のウィンドウ関数と比べて狭く、ブロックのより小さな部分にエネルギーのより多くが集中しており、
前記フレームは、データのストリームが分割された、同一の長さの離散的で連続する重なり合わないフレームのシーケンスの1つであり、
前記離散的で連続する重なり合わないフレームは均一に処理される
ことを特徴とするコンピュータプログラム。
A computer, a computer program for executing a method of processing a frame-type data, the method comprising:
Acquiring (a) data of the frame,
(B) setting a block size for the frame, thereby defining a plurality of blocks of the same size in the frame;
(C) selecting different window functions for different ones of the plurality of blocks of the same size;
(D) processing the frame of data by applying the window function selected in step (c);
In step (c), a brief window function is selected for the block containing the transient, the brief window function is narrow compared to the other window functions in the frame containing the transient, and the energy in the smaller part of the block More of are concentrated,
The frame, the data stream is divided, one of the sequence of frames do not overlap successive same length discrete of
A computer program characterized in that the discrete continuous non-overlapping frames are processed uniformly.
前記ウィンドウ関数が、完全な復元のための条件を満足するような方法で互いに重なり合うことを特徴とする請求項1に記載のコンピュータプログラム。   The computer program according to claim 1, characterized in that the window functions overlap one another in such a way that the conditions for a complete restoration are satisfied. 前記方法が、前記離散的で連続する重なり合わないデータのフレームの様々なフレームに対して、ステップ(a)〜(d)を複数回繰り返すステップを更に備えることを特徴とする請求項1または2に記載のコンピュータプログラム。   A method according to claim 1 or 2, characterized in that the method comprises repeating steps (a) to (d) multiple times for different frames of the frame of discrete continuous non-overlapping data. The computer program described in. ステップ(c)において選択された前記ウィンドウ関数は、標準トランジェントフレームウィンドウ関数と、(i)トランジェント前移行ウィンドウ関数及び(ii)トランジェント後移行ウィンドウ関数のうちの少なくとも1つとを更に含むことを特徴とする請求項1乃至3のいずれか1項に記載のコンピュータプログラム。   The window function selected in step (c) further includes at least one of a standard transient frame window function, (i) a pre-transient transition window function, and (ii) a post-transient transition window function. The computer program according to any one of claims 1 to 3. 前記ブリーフウィンドウ関数は、先行ゼロ重みの第1のシーケンスで始まり、遅行ゼロ重みの第2のシーケンスで終わることを特徴とする請求項1乃至4のいずれか1項に記載のコンピュータプログラム。   A computer program according to any of the preceding claims, wherein the brief window function starts with a first sequence of leading zero weights and ends with a second sequence of lagging zero weights. 前記方法が、前記フレームの各ブロック内のデータを別個に変換することにより、元の領域から第2の領域へ該フレーム内のデータを変換するステップを更に備えることを特徴とする請求項1乃至5のいずれか1項に記載のコンピュータプログラム。   4. The method according to claim 1, further comprising the step of transforming the data in the frame from the original region to a second region by separately transforming the data in each block of the frame. The computer program according to any one of 5. 前記ブリーフウィンドウ関数は、ゼロ重みの第1のセグメントと、これに続く第1のサイン関数により規定される重みと、これに続く等しい重みのセグメントと、これに続く第2のサイン関数により規定される重みと、これに続くゼロ重みの第2のセグメントとを含むことを特徴とする請求項1乃至6のいずれか1項に記載のコンピュータプログラム。   The brief window function is defined by a first segment of zero weight followed by a weight defined by a first sine function followed by a segment of equal weight followed by a second sine function 7. A computer program according to any one of the preceding claims, characterized in that it comprises a second weight followed by a second weight of zero weight. 前記ブリーフウィンドウ関数の重みは、S>Bについて、
Figure 0006509928
により定められることを特徴とする請求項1乃至7のいずれか1項に記載のコンピュータプログラム。
The weight of the brief window function, for S> B,
Figure 0006509928
The computer program according to any one of claims 1 to 7, characterized in that
S=128、B=32であることを特徴とする請求項8に記載のコンピュータプログラム。   9. The computer program according to claim 8, wherein S = 128 and B = 32. 前記方法が、前記同一の長さの離散的で連続する重なり合わないフレームのシーケンスからの第2のフレームを包含する単一のウィンドウ関数を割り当てるステップをさらに備えることを特徴とする請求項1乃至9のいずれか1項に記載のコンピュータプログラム。   A method according to claim 1, characterized in that the method comprises the step of assigning a single window function covering a second frame from the sequence of discrete continuous non-overlapping frames of the same length. The computer program according to any one of 9. 前記フレームは8個のブロックにより包含され、前記第2のフレームは単一のブロックにより包含され、
前記ブロックの各々に対してウィンドウ関数が割り当てられる
ことを特徴とする請求項10に記載のコンピュータプログラム。
The frame is covered by eight blocks, the second frame is covered by a single block,
The computer program of claim 10, wherein a window function is assigned to each of the blocks.
前記同一の長さの離散的で連続する重なり合わないフレームのシーケンスにおいて与えられたフレームの各々について、当該与えられたフレームにトランジェントが存在するか否かに基づきブロックサイズが設定されることを特徴とする請求項1乃至11のいずれか1項に記載のコンピュータプログラム。   For each of the given frames in the sequence of discrete continuous non-overlapping frames of the same length, the block size is set based on whether or not there is a transient in the given frame. The computer program according to any one of claims 1 to 11, wherein
JP2017042066A 2006-08-18 2017-03-06 Variable resolution processing of frame type data Expired - Fee Related JP6509928B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US82276006P 2006-08-18 2006-08-18
US60/822,760 2006-08-18
US11/558,917 2006-11-12
US11/558,917 US8744862B2 (en) 2006-08-18 2006-11-12 Window selection based on transient detection and location to provide variable time resolution in processing frame-based data

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2014149141A Division JP6106637B2 (en) 2006-08-18 2014-07-22 Variable resolution processing of frame type data

Publications (2)

Publication Number Publication Date
JP2017129872A JP2017129872A (en) 2017-07-27
JP6509928B2 true JP6509928B2 (en) 2019-05-08

Family

ID=39110405

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2009524879A Expired - Fee Related JP4871999B2 (en) 2006-08-18 2007-08-17 Variable resolution processing of frame type data
JP2011251877A Expired - Fee Related JP5868136B2 (en) 2006-08-18 2011-11-17 Variable resolution processing of frame type data
JP2014149141A Expired - Fee Related JP6106637B2 (en) 2006-08-18 2014-07-22 Variable resolution processing of frame type data
JP2017042066A Expired - Fee Related JP6509928B2 (en) 2006-08-18 2017-03-06 Variable resolution processing of frame type data

Family Applications Before (3)

Application Number Title Priority Date Filing Date
JP2009524879A Expired - Fee Related JP4871999B2 (en) 2006-08-18 2007-08-17 Variable resolution processing of frame type data
JP2011251877A Expired - Fee Related JP5868136B2 (en) 2006-08-18 2011-11-17 Variable resolution processing of frame type data
JP2014149141A Expired - Fee Related JP6106637B2 (en) 2006-08-18 2014-07-22 Variable resolution processing of frame type data

Country Status (5)

Country Link
US (2) US8744862B2 (en)
EP (1) EP2054874B1 (en)
JP (4) JP4871999B2 (en)
KR (1) KR101045429B1 (en)
WO (1) WO2008022566A1 (en)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7930184B2 (en) * 2004-08-04 2011-04-19 Dts, Inc. Multi-channel audio coding/decoding of random access points and transients
US8744862B2 (en) * 2006-08-18 2014-06-03 Digital Rise Technology Co., Ltd. Window selection based on transient detection and location to provide variable time resolution in processing frame-based data
US7724848B2 (en) * 2005-07-26 2010-05-25 Data Device Corporation Predictive signal cancellation for extracting 1 Mb/s MIL-STD-1553 component from composite high performance 1553 signal
US7920588B2 (en) * 2006-05-22 2011-04-05 Edgewater Computer Systems, Inc. Data communications system and method of data transmission
US7822126B2 (en) * 2006-08-10 2010-10-26 Edgewater Computer Systems, Inc. Interference cancellation system and method
US10162782B2 (en) 2006-05-22 2018-12-25 Edgewater Computer Systems, Inc. Data communications system and method of data transmission
US7907690B2 (en) * 2006-10-17 2011-03-15 Edgewater Computer Systems, Inc. Interference cancellation system and method using impulse response
KR20080053739A (en) * 2006-12-11 2008-06-16 삼성전자주식회사 Apparatus and method for adaptively applying window size
FR2911228A1 (en) * 2007-01-05 2008-07-11 France Telecom TRANSFORMED CODING USING WINDOW WEATHER WINDOWS.
CA2697920C (en) * 2007-08-27 2018-01-02 Telefonaktiebolaget L M Ericsson (Publ) Transient detector and method for supporting encoding of an audio signal
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
KR20130069833A (en) * 2008-10-08 2013-06-26 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. Multiple Resolution Switched Audio Coding / Decoding Method
KR20140075466A (en) * 2012-12-11 2014-06-19 삼성전자주식회사 Encoding and decoding method of audio signal, and encoding and decoding apparatus of audio signal
EP4336501A3 (en) * 2013-01-29 2024-05-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, method and computer program using an increased temporal resolution in temporal proximity of onsets or offsets of fricatives or affricates
WO2014128197A1 (en) 2013-02-20 2014-08-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding or decoding an audio signal using a transient-location dependent overlap
CN105074818B (en) 2013-02-21 2019-08-13 杜比国际公司 Audio coding system, method for generating bitstream, and audio decoder
EP2830058A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Frequency-domain audio coding supporting transform length switching
EP2980791A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3902948A1 (en) * 1989-02-01 1990-08-09 Telefunken Fernseh & Rundfunk METHOD FOR TRANSMITTING A SIGNAL
CN1062963C (en) * 1990-04-12 2001-03-07 多尔拜实验特许公司 Adaptive-block-lenght, adaptive-transform, and adaptive-window transform coder, decoder, and encoder/decoder for high-quality audio
DE4020656A1 (en) * 1990-06-29 1992-01-02 Thomson Brandt Gmbh METHOD FOR TRANSMITTING A SIGNAL
GB9103777D0 (en) 1991-02-22 1991-04-10 B & W Loudspeakers Analogue and digital convertors
US5285498A (en) * 1992-03-02 1994-02-08 At&T Bell Laboratories Method and apparatus for coding audio signals based on perceptual model
JP3413691B2 (en) * 1994-08-16 2003-06-03 ソニー株式会社 Information encoding method and device, information decoding method and device, and information recording medium and information transmission method
US5848391A (en) * 1996-07-11 1998-12-08 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Method subband of coding and decoding audio signals using variable length windows
JP3318824B2 (en) * 1996-07-15 2002-08-26 ソニー株式会社 Digital signal encoding method, digital signal encoding device, digital signal recording method, digital signal recording device, recording medium, digital signal transmission method, and digital signal transmission device
US5913191A (en) * 1997-10-17 1999-06-15 Dolby Laboratories Licensing Corporation Frame-based audio coding with additional filterbank to suppress aliasing artifacts at frame boundaries
US6266003B1 (en) * 1998-08-28 2001-07-24 Sigma Audio Research Limited Method and apparatus for signal processing for time-scale and/or pitch modification of audio signals
US6226608B1 (en) * 1999-01-28 2001-05-01 Dolby Laboratories Licensing Corporation Data framing for adaptive-block-length coding system
JP3518737B2 (en) * 1999-10-25 2004-04-12 日本ビクター株式会社 Audio encoding device, audio encoding method, and audio encoded signal recording medium
US20020048364A1 (en) * 2000-08-24 2002-04-25 Vdg, Inc. Parallel block encryption method and modes for data confidentiality and integrity protection
JP2002111503A (en) 2000-09-27 2002-04-12 Victor Co Of Japan Ltd Decoding device
AU2001276588A1 (en) * 2001-01-11 2002-07-24 K. P. P. Kalyan Chakravarthy Adaptive-block-length audio coder
US7460993B2 (en) * 2001-12-14 2008-12-02 Microsoft Corporation Adaptive window-size selection in transform coding
JP3815323B2 (en) * 2001-12-28 2006-08-30 日本ビクター株式会社 Frequency conversion block length adaptive conversion apparatus and program
JP2003216188A (en) * 2002-01-25 2003-07-30 Matsushita Electric Ind Co Ltd Audio signal encoding method, encoder and storage medium
US7536305B2 (en) * 2002-09-04 2009-05-19 Microsoft Corporation Mixed lossless audio compression
US7328150B2 (en) * 2002-09-04 2008-02-05 Microsoft Corporation Innovations in pure lossless audio compression
US7502743B2 (en) * 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
US7516064B2 (en) * 2004-02-19 2009-04-07 Dolby Laboratories Licensing Corporation Adaptive hybrid transform for signal analysis and synthesis
US7548819B2 (en) * 2004-02-27 2009-06-16 Ultra Electronics Limited Signal measurement and processing method and apparatus
JP4271602B2 (en) * 2004-03-04 2009-06-03 富士通株式会社 Apparatus and method for determining validity of transfer data
JP2005268912A (en) * 2004-03-16 2005-09-29 Sharp Corp Image processing apparatus for frame interpolation and display apparatus having the same
US8744862B2 (en) * 2006-08-18 2014-06-03 Digital Rise Technology Co., Ltd. Window selection based on transient detection and location to provide variable time resolution in processing frame-based data
US7630902B2 (en) * 2004-09-17 2009-12-08 Digital Rise Technology Co., Ltd. Apparatus and methods for digital audio coding using codebook application ranges
US7539612B2 (en) * 2005-07-15 2009-05-26 Microsoft Corporation Coding and decoding scale factor information
US7831434B2 (en) * 2006-01-20 2010-11-09 Microsoft Corporation Complex-transform channel coding with extended-band frequency coding
US8630848B2 (en) * 2008-05-30 2014-01-14 Digital Rise Technology Co., Ltd. Audio signal transient detection

Also Published As

Publication number Publication date
JP2014225032A (en) 2014-12-04
JP2017129872A (en) 2017-07-27
JP4871999B2 (en) 2012-02-08
JP6106637B2 (en) 2017-04-05
KR101045429B1 (en) 2011-06-30
KR20090076894A (en) 2009-07-13
US9431018B2 (en) 2016-08-30
EP2054874B1 (en) 2018-07-11
US8744862B2 (en) 2014-06-03
US20140249805A1 (en) 2014-09-04
JP2012068670A (en) 2012-04-05
JP5868136B2 (en) 2016-02-24
EP2054874A4 (en) 2009-09-09
WO2008022566A1 (en) 2008-02-28
EP2054874A1 (en) 2009-05-06
JP2010501153A (en) 2010-01-14
US20080059202A1 (en) 2008-03-06

Similar Documents

Publication Publication Date Title
JP6509928B2 (en) Variable resolution processing of frame type data
US20160267916A1 (en) Variable-resolution processing of frame-based data
JP5162589B2 (en) Speech decoding
US10210884B2 (en) Systems and methods facilitating selective removal of content from a mixed audio recording
CN110021326B (en) Retention-aware block mapping in flash-based solid-state drives
TWI485560B (en) Data analysis system,caching device,and data processing method
CN102113050A (en) Audio signal transient detection
CN100489965C (en) Audio encoding system
US20240029263A1 (en) System and method for identifying auxiliary areas of interest in an image
US20030097523A1 (en) External storage device within a computer network
CN119109463B (en) Seismic data compression method, decompression method and device
WO2011007511A1 (en) Memory controller, nonvolatile storage device, accessing device, and nonvolatile storage system
US9059728B2 (en) Random extraction from compressed data
US11269951B2 (en) Indexing variable bit stream audio formats
CN117827091B (en) A method for efficient segmented reading of large files using continuous addressing
CN1702732B (en) User interface using text compression
KP et al. An audio watermarking scheme based on extended bipolar echo kernel and robust to temporal offsets

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20180427

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180727

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180913

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

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190401

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190403

R150 Certificate of patent or registration of utility model

Ref document number: 6509928

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees