RU2662633C2 - Waveform data structure, waveform data storage device, waveform data storing method, waveform data extracting device, waveform data extracting method and electronic musical instrument - Google Patents

Waveform data structure, waveform data storage device, waveform data storing method, waveform data extracting device, waveform data extracting method and electronic musical instrument Download PDF

Info

Publication number
RU2662633C2
RU2662633C2 RU2016136820A RU2016136820A RU2662633C2 RU 2662633 C2 RU2662633 C2 RU 2662633C2 RU 2016136820 A RU2016136820 A RU 2016136820A RU 2016136820 A RU2016136820 A RU 2016136820A RU 2662633 C2 RU2662633 C2 RU 2662633C2
Authority
RU
Russia
Prior art keywords
frame
data
waveform
samples
bit length
Prior art date
Application number
RU2016136820A
Other languages
Russian (ru)
Other versions
RU2016136820A (en
RU2016136820A3 (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 RU2016136820A publication Critical patent/RU2016136820A/en
Publication of RU2016136820A3 publication Critical patent/RU2016136820A3/ru
Application granted granted Critical
Publication of RU2662633C2 publication Critical patent/RU2662633C2/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/008Means for controlling the transition from one tone waveform to another
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0316Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
    • G10L21/0324Details of processing therefor
    • G10L21/0332Details of processing therefor involving modification of waveforms

Abstract

FIELD: information technology.
SUBSTANCE: invention relates to a waveform data structure and is designed to store waveform data and retrieve waveform data. Invention includes many types of frames having different data sizes. Each of the plurality of frame types includes an auxiliary information area and a data area. Auxiliary information area includes an area for storing data on the total effective length in bits of a sample waveform sample and an area for storing an identifier for identifying one of a plurality of frame types. Data area is an area for storing the extracted waveform samples that are extracted from the waveform samples based on the total effective bit length. Number of sampled samples of the waveform is determined based on the total effective length in bits.
EFFECT: provided ability to specify different frame sizes depending on the musical sounds.
18 cl, 11 dwg

Description

ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯBACKGROUND OF THE INVENTION

Область техники, к которой относится изобретениеFIELD OF THE INVENTION

[01] Настоящее изобретение относится к структуре данных о волновой форме, устройству для хранения данных о волновой форме, способу сохранения данных о волновой форме, устройству для извлечения данных о волновой форме, способу извлечения данных о волновой форме и электронному музыкальному инструменту для монтажа кадров различных размеров в зависимости от музыкальных тонов (типов волновой формы).[01] The present invention relates to a waveform data structure, a device for storing waveform data, a method for storing waveform data, a device for extracting waveform data, a method for extracting waveform data and an electronic musical instrument for editing frames of various sizes depending on musical tones (types of waveform).

EУровень техникиE-level

[02] Известны технологии образования волновой формы с использованием структур сжатых данных, которые могут быть распакованы с помощью простых конфигураций. Например, в качестве технологии этого вида в документе JP-B-3826870 раскрыта технология сохранения сжатых данных о волновой форме в кадрах, имеющих фиксированный размер, и приписывания области вспомогательной информации и области данных к фиксированным местам в каждом кадре, и сохранения вспомогательной информации и сжатых данных о волновой форме, соответственно, в этих областях.[02] Known are waveform generation techniques using compressed data structures that can be unpacked using simple configurations. For example, as a technology of this kind, JP-B-3826870 discloses a technology for storing compressed waveform data in frames having a fixed size, and assigning a supporting information area and a data area to fixed locations in each frame, and storing supporting and compressed information waveform data, respectively, in these areas.

[03] В соответствии с этой технологией даже в случае, когда количества битов сжатых сэмплов в данных о волновой форме различаются, размер областей данных не изменяется. Поэтому количество сжатых сэмплов в данных о волновой форме, которые могут быть сохранены в одном кадре, изменяется в зависимости количества битов сжатых сэмплов в данных о волновой форме, подлежащих сохранению. Поскольку начальные положения кадров расположены с регулярными интервалами адресов памяти, то поэтому даже в случае, когда количества битов сжатых сэмплов в данных о волновой форме различаются, управление адресами становится легким и тем самым становится возможной распаковка данных при использовании простой конфигурации.[03] In accordance with this technology, even in the case where the number of bits of the compressed samples in the waveform data is different, the size of the data areas does not change. Therefore, the number of compressed samples in the waveform data that can be stored in one frame varies depending on the number of bits of compressed samples in the waveform data to be stored. Since the initial positions of the frames are located at regular intervals of memory addresses, therefore, even in the case where the number of bits of compressed samples in the waveform data is different, address management becomes easy and thus it becomes possible to decompress the data using a simple configuration.

СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

[04] Однако технологии, раскрытой в документе JP-B-3826870, присущи следующие проблемы.[04] However, the technology disclosed in JP-B-3826870 has the following problems.

[05] (а) Если размер кадра является фиксированным, то хотя управление адресами становится легким (становится возможным распаковка сжатых сэмплов при использовании простой конфигурации, но в случае, когда количество битов на каждый сэмпл соседних кадров не изменяется, информация заголовка (вспомогательная информация) повторяется, а области памяти для информации заголовка используются непроизводительно.[05] (a) If the frame size is fixed, then although address management becomes easy (it becomes possible to decompress compressed samples using a simple configuration, but in the case where the number of bits per sample of adjacent frames does not change, header information (supporting information) is repeated, and memory areas for header information are used inefficiently.

[06] (b) Чтобы восстановить данные, необходимо заранее иметь доступ к информации заголовка и извлекать ее отдельно от операции последовательного считывания данных. Однако при частом обращении к информации заголовка, когда используется память, которая является доминирующей, при последовательном обращении уменьшается количество данных, которые могут быть переданы.[06] (b) In order to recover the data, it is necessary to have access to the header information in advance and to extract it separately from the sequential data reading operation. However, with frequent access to header information, when memory that is dominant is used, sequential access reduces the amount of data that can be transmitted.

[07] (с) Если задается небольшой размер кадра, то в случае, когда волновая форма изменяется быстро, можно эффективно преобразовывать данные в ответ на изменение волновой формы; тогда как в случае, когда волновая форма изменяется крайне редко, количество бесполезной избыточной информации заголовка возрастает.[07] (c) If a small frame size is specified, then in the case where the waveform changes rapidly, it is possible to efficiently convert the data in response to a change in the waveform; whereas in the case when the waveform changes extremely rarely, the amount of useless redundant header information increases.

[08] (d) Если большой размер кадра задается на основании максимального значения чисел битов различных потоков данных, имеющих различные длины, то в случае, когда волновая форма изменяется быстро, возрастает количество кодовых бит партии сэмплов волновой формы, имеющих различные длины в битах.[08] (d) If a large frame size is set based on the maximum value of the number of bits of different data streams having different lengths, then when the waveform changes rapidly, the number of code bits of a batch of waveform samples having different bit lengths increases.

[09] Проблемы от (а) до (d), описанные выше, можно кратко выразить следующим образом: существует проблема, заключающаяся в том, что невозможно задавать различные размеры кадров в зависимости от музыкальных звуков (видов волновых форм).[09] The problems (a) to (d) described above can be summarized as follows: there is a problem that it is impossible to set different frame sizes depending on musical sounds (types of waveforms).

[10] Настоящее изобретение было сделано с учетом описанных выше обстоятельств, и задача настоящего изобретения заключается в обеспечении структуры данных о волновой форме, устройства для хранения данных о волновой форме, способа извлечения данных о волновой форме и электронного музыкального инструмента, в котором можно задавать различные размеры кадров в зависимости от музыкальных звуков (видов волновых форм).[10] The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a waveform data structure, a waveform data storage device, a waveform data extraction method, and an electronic musical instrument in which various frame sizes depending on musical sounds (types of waveforms).

[11] Структура данных о волновой форме включает в себя множество типов кадров, имеющих различные размеры данных. Каждый из множества типов кадров включает в себя область вспомогательной информации и область данных. Область вспомогательной информации включает в себя область для сохранения данных об общей эффективной длине в битах отрезка сэмплов волновой формы и область для сохранения идентификатора для идентификации одного из множества типов кадров. Область данных представляет собой область для сохранения извлекаемых сэмплов волновой формы, которые извлекаются из сэмплов волновой формы на основании общей эффективной длины в битах. Количество извлекаемых сэмплов волновой формы определяется на основании общей эффективной длины в битах.[11] The waveform data structure includes many types of frames having different data sizes. Each of a plurality of frame types includes an auxiliary information area and a data area. The auxiliary information area includes an area for storing data on the total effective bit length of a segment of waveform samples and an area for storing an identifier for identifying one of a plurality of frame types. The data area is an area for storing retrieved waveform samples that are retrieved from waveform samples based on the total effective bit length. The number of waveform samples to be extracted is determined based on the total effective bit length.

[12] Устройство для хранения данных о волновой форме включает в себя блок определения, блок хранения вспомогательной информации и блок хранения сэмплов волновой формы. Блок определения определяет один из по меньшей мере первого и второго кадров на основании изменения эффективных длин в битах индивидуальных сэмплов волновой формы, подлежащих сохранению. Заданное количество сэмплов волновой формы, подлежащих сохранению в первом кадре, отличается от заданного количества сэмплов волновой формы, подлежащих сохранению во втором кадре. В блоке хранения вспомогательной информации сохраняются данные атрибутов кадра, включающие в себя общую эффективную длину в битах сэмплов волновой формы и тип кадра для идентификации одного из первого и второго кадров в области вспомогательной информации первого или второго кадра, определяемого блоком определения. В блоке хранения сэмплов волновой формы сохраняются сэмплы волновой формы в области данных первого или второго кадра, определяемого блоком определения, на основании заданного количества сэмплов волновой формы в соответствии с общей эффективной длиной в битах из данных атрибутов кадра, сохраняемых в области вспомогательной информации.[12] A device for storing waveform data includes a determination unit, an auxiliary information storage unit, and a waveform sample storage unit. The determination unit determines one of at least the first and second frames based on the change in effective bit lengths of the individual waveform samples to be stored. The predetermined number of waveform samples to be stored in the first frame differs from the predetermined number of waveform samples to be stored in the second frame. In the auxiliary information storage unit, the frame attribute data is stored, including the total effective bit length of the waveform samples and the type of frame for identifying one of the first and second frames in the auxiliary information area of the first or second frame determined by the determination unit. In the waveform sample storage unit, waveform samples are stored in the data area of the first or second frame determined by the determining unit based on a predetermined number of waveform samples in accordance with the total effective bit length of the frame attribute data stored in the auxiliary information area.

[13] В способе сохранения данных о волновой форме, устройства для хранения данных о волновой форме, устройство для хранения данных о волновой форме выполнено с возможностью определения одного из по меньшей мере первого и второго кадров на основании изменения эффективных длин в битах индивидуальных сэмплов волновой формы, подлежащих сохранению, при этом количество сэмплов волновой формы, подлежащих сохранению в первом кадре, отличается от количества сэмплов волновой формы, подлежащих сохранению во втором кадре; сохранения данных атрибутов кадра, включающих в себя общую эффективную длину в битах сэмплов волновой формы и тип кадра для идентификации одного из первого и второго кадров, в области вспомогательной информации определенного первого или второго кадра; и сохранения как многочисленных сэмплов волновой формы, так и некоторого количества сэмплов в соответствии с общей эффективной длиной в битах данных атрибутов кадра, сохраняемых в области вспомогательной информации, в области данных определенного первого или второго кадра.[13] In the method for storing waveform data, a device for storing waveform data, a device for storing waveform data is configured to determine one of at least the first and second frames based on a change in effective bit lengths of individual waveform samples to be saved, while the number of waveform samples to be saved in the first frame is different from the number of waveform samples to be saved in the second frame; storing the data of the attributes of the frame, including the total effective bit length of the samples of the waveform and the type of frame for identifying one of the first and second frames, in the auxiliary information area of the specific first or second frame; and storing both multiple waveform samples and a number of samples in accordance with the total effective bit length of the frame attributes data stored in the auxiliary information area in the data area of the determined first or second frame.

[14] Устройство для извлечения данных о волновой форме обладает доступом к запоминающему устройству, имеющему структуру данных о волновой форме. Устройство для извлечения данных о волновой форме включает в себя блок образования адресных данных, блок извлечения и блок назначения кадра. Блок образования адресных данных образует адресные данные на основании общей эффективной длины в битах, считываемой из области вспомогательной информации назначенного кадра, сохраняемого в запоминающем устройстве. Блок извлечения извлекает сэмплы волновой формы из области данных назначенного кадра в соответствии с адресными данными, образованными блоком образования адресных данных. Блок назначения кадра назначает следующий кадр, подлежащий извлечению после извлечения сэмплов волновой формы блоком извлечения.[14] A device for extracting waveform data has access to a storage device having a waveform data structure. A device for extracting waveform data includes an address data generation unit, an extraction unit, and a frame assignment unit. The address data generation unit generates address data based on the total effective bit length read from the auxiliary information area of the assigned frame stored in the storage device. The extraction unit extracts waveform samples from the data region of the assigned frame in accordance with the address data generated by the address data generation unit. The frame assigning unit assigns the next frame to be extracted after the waveform samples are extracted by the extraction unit.

[15] В способе извлечения данных о волновой форме, связанном с устройством для извлечения данных о волновой форме, устройство для извлечения данных о волновой форме выполнено с возможностью доступа к запоминающему устройству, имеющему структуру данных о волновой форме. Способ извлечения данных о волновой форме включает в себя образование адресных данных на основании данных о длине в битах, считываемых из области вспомогательной информации назначенного кадра, сохраняемого в запоминающем устройстве; извлечение сэмплов волновой формы из области данных назначенного кадра в соответствии с образованными адресными данными; и назначение следующего кадра, подлежащего извлечению после извлечения сэмплов волновой формы.[15] In the method for extracting waveform data associated with a device for extracting waveform data, the device for extracting waveform data is configured to access a storage device having a waveform data structure. A method for extracting waveform data includes generating address data based on bit length data read from an auxiliary information area of an assigned frame stored in a storage device; extracting waveform samples from the data area of the assigned frame in accordance with the generated address data; and assigning the next frame to be extracted after extracting the waveform samples.

[16] Электронный музыкальный инструмент включает в себя запоминающее устройство, устройство для извлечения данных о волновой форме, блок ввода исполнительных характеристик музыкального инструмента, блок обработки и звукообразующий блок. Запоминающее устройство имеет структуру данных о волновой форме. Блок ввода исполнительских характеристик музыкального инструмента образует информацию об исполнительских характеристиках музыкального инструмента в соответствии с операциями воспроизведения. Блок обработки выполняет процесс инструктирования образованием музыки в соответствии с операциями воспроизведения и процесс управления устройством для извлечения данных о волновой форме, чтобы устройство для извлечения данных о волновой форме извлекало необходимые сэмплы волновой формы из запоминающего устройства в ответ на процесс инструктирования. Звукообразующий блок образует музыкальный звук на основании данных о волновой форме, получаемых при декомпрессии сэмплов волновой формы, отбираемых из устройства для извлечения данных о волновой форме.[16] An electronic musical instrument includes a storage device, a device for extracting waveform data, an input unit for performing musical instrument performance, a processing unit, and a sound generating unit. The storage device has a waveform data structure. The input unit of the performance characteristics of a musical instrument generates information about the performance characteristics of a musical instrument in accordance with playback operations. The processing unit performs a music education instructing process in accordance with reproduction operations and a device control process for extracting waveform data so that the device for extracting waveform data retrieves necessary waveform samples from the storage device in response to the instruction process. The sound generating unit generates a musical sound based on waveform data obtained by decompressing waveform samples taken from the waveform data extracting device.

[17] В соответствии с настоящим изобретением можно реализовать структуру данных о волновой форме, устройство для хранения данных о волновой форме, устройство для извлечения данных о волновой форме, способ извлечения данных о волновой форме и электронный музыкальный инструмент, в котором можно задавать различные размеры кадров в зависимости от музыкальных звуков (видов волновых форм).[17] According to the present invention, it is possible to implement a waveform data structure, a waveform data storage device, a waveform data extraction device, a waveform data extraction method and an electronic musical instrument in which various frame sizes can be set depending on musical sounds (types of waveforms).

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS

[18] На чертежах:[18] In the drawings:

фиг. 1 - структурная схема, иллюстрирующая конфигурацию устройства 100 для хранения данных о волновой форме согласно варианту осуществления настоящего изобретения;FIG. 1 is a block diagram illustrating a configuration of a waveform data storage apparatus 100 according to an embodiment of the present invention;

фиг. 2А - карта памяти, иллюстрирующая конфигурацию рабочей памяти, которая включена в блок 13 определения;FIG. 2A is a memory card illustrating a configuration of a working memory that is included in the determination unit 13;

фиг. 2В - вид, иллюстрирующий примеры сэмплов волновой формы, которые сохраняются в строке ʺwav[]ʺ;FIG. 2B is a view illustrating examples of waveform samples that are stored in the string ʺwav [] ʺ;

фиг. 3 - вид, иллюстрирующий содержание таблицы 512sampleno[];FIG. 3 is a view illustrating the contents of the table 512sampleno [];

фиг. 4 - вид, иллюстрирующий содержание таблицы 256sampleno[];FIG. 4 is a view illustrating the contents of table 256sampleno [];

фиг. 5 - блок-схема последовательности операций, иллюстрирующая функцию блока 13 определения, который образован аппаратным обеспечением, выполняющим операции программного обеспечения;FIG. 5 is a flowchart illustrating a function of a determination unit 13, which is constituted by hardware performing software operations;

фиг. 6А - вид, иллюстрирующий пример конфигурации 512-байтного кадра;FIG. 6A is a view illustrating a configuration example of a 512 byte frame;

фиг. 6В - вид, иллюстрирующий пример конфигурации 256-байтного кадра;FIG. 6B is a view illustrating an example configuration of a 256 byte frame;

фиг. 7 - вид, иллюстрирующий пример, в котором исходные данные W о волновой форме звука фортепиано сжаты и сохранены в кадрах;FIG. 7 is a view illustrating an example in which the source data W of the waveform of a piano sound is compressed and stored in frames;

фиг. 8 - структурная схема, иллюстрирующая конфигурацию устройства 150 для извлечения данных о волновой форме; иFIG. 8 is a block diagram illustrating a configuration of an apparatus 150 for extracting waveform data; and

фиг. 9 - структурная схема, иллюстрирующая конфигурацию электронного музыкального инструмента 200, который включает в себя устройство 150 для извлечения данных о волновой форме.FIG. 9 is a block diagram illustrating a configuration of an electronic musical instrument 200, which includes an apparatus 150 for extracting waveform data.

ПОДРОБНОЕ ОПИСАНИЕDETAILED DESCRIPTION

[19] Ниже варианты осуществления настоящего изобретения будут описаны с обращением к сопровождающим чертежам. На фиг. 1 представлена структурная схема, иллюстрирующая общую конфигурацию устройства 100 для хранения данных о волновой форме согласно варианту осуществления настоящего изобретения. В представленном варианте осуществления будет описан пример использования сжатия данных типа АДИКМ (ADPCM). АДИКМ представляет собой сокращенное наименование адаптивной дифференциальной импульсно-кодовой модуляции. Однако настоящее изобретение не ограничено ею и можно использовать сжатие любого другого вида, такое как кодирование с линейным прогнозированием (КЛП).[19] Below, embodiments of the present invention will be described with reference to the accompanying drawings. In FIG. 1 is a block diagram illustrating a general configuration of a waveform data storage apparatus 100 according to an embodiment of the present invention. In the present embodiment, an example of using data compression type ADPCM (ADPCM) will be described. ADPCM is an abbreviation for adaptive differential pulse code modulation. However, the present invention is not limited thereto, and any other kind of compression can be used, such as linear prediction coding (LPC).

[20] На фиг. 1 блок 1 сжатия данных о волновой форме состоит из вычитающего средства 10, сумматора 11 и блока 12 прогнозирования адаптивной дифференциальной импульсно-кодовой модуляции. В вычитающем средстве 10 элемент P(n) данных прогнозирования вычитается из элемента W(n) исходных данных о волновой форме, в результате чего получается разность в виде элемента E(n) данных об ошибках прогнозирования. В сумматоре 11 элемент P(n) данных прогнозирования добавляется к элементу E(n) данных об ошибках прогнозирования и сумма подается на блок 12 прогнозирования адаптивной дифференциальной импульсно-кодовой модуляции. В блоке 12 прогнозирования адаптивной дифференциальной импульсно-кодовой модуляции при использовании адаптивной прогнозирующей модели образуются элемент P(n) данных прогнозирования и коэффициент прогнозирования для элемента W(n+1) исходных данных о волновой форме следующего сэмпла.[20] In FIG. 1, the waveform data compression unit 1 consists of a subtractor 10, an adder 11 and an adaptive differential pulse code modulation prediction unit 12. In the subtracting means 10, the prediction data element P (n) is subtracted from the source waveform data element W (n), resulting in a difference in the form of the prediction error data element E (n). In the adder 11, the prediction data element P (n) is added to the prediction error data element E (n) and the sum is supplied to the adaptive differential pulse-code modulation prediction unit 12. In the adaptive differential pulse-code modulation prediction unit 12, using the adaptive predictive model, the prediction data element P (n) and the prediction coefficient for the initial waveform data of the next sample element W (n + 1) are generated.

[21] Блок 13 определения состоит из блока 13а определения длины квантования в битах и блока 13b определения размера. Блок 13а определения длины квантования в битах определяет эффективную длину в битах каждого квантованного сэмла на основании элемента E(n) данных об ошибках прогнозирования текущего сэмпла и элементов Е данных об ошибках прогнозирования предварительно определенного количества предшествующих сэмплов. Блок 13b определения размера на основании общей эффективной длины в битах, вычисленной на основании эффективных длин в битах, определяемых блоком 13а определения длины квантования в битах, определяет, каким задать размер одного кадра, 256 байтов (4 байта для области вспомогательной информации, предназначенной для сохранения информации заголовка, и 252 байта для области данных), или 512 байтов (4 байта для области вспомогательной информации, предназначенной для сохранения информации заголовка, и 508 байтов для области данных). Подробности такого определения будут описаны ниже.[21] The determination unit 13 consists of a quantization length determination unit 13 a in bits and a size determination unit 13 b. The quantization bit length determining unit 13 a determines the effective bit length of each quantized sample based on the prediction error data element E (n) of the current sample and the prediction error data elements E of a predetermined number of previous samples. The size determining unit 13b based on the total effective bit length calculated on the basis of the effective bit lengths determined by the bit quantization length determining unit 13a determines how to set the size of one frame, 256 bytes (4 bytes for the auxiliary information area for storing header information, and 252 bytes for the data area), or 512 bytes (4 bytes for the auxiliary information area for storing the header information, and 508 bytes for the data area). Details of such a definition will be described below.

[22] Теперь с обращением к фиг. с 2 по 5 в общих чертах будут описаны конфигурация и работа блока 13 определения. Блок 13 определения реализуется аппаратным обеспечением, включающим в себя арифметические логические схемы и рабочую память (непоказанную). Чтобы упростить пояснение, ниже описание будет излагаться в сочетании с блок-схемой последовательности операций, иллюстрирующей функцию блока 13 определения, которая реализуется аппаратным обеспечением в виде операций по обработке программного обеспечения. В ином случае центральный процессор может выполнять эти действия в соответствии с программным обеспечением.[22] Now referring to FIG. 2 through 5, the configuration and operation of the determination unit 13 will be described in general terms. Block 13 determination is implemented by hardware, including arithmetic logic circuits and working memory (not shown). To simplify the explanation, the description below will be set forth in conjunction with a flowchart illustrating the function of the determination unit 13, which is implemented by the hardware in the form of software processing operations. Otherwise, the central processor may perform these actions in accordance with the software.

[23] Прежде всего, на фиг. 2А представлена карта памяти, иллюстрирующая конфигурацию рабочей памяти, включенной в блок 13 определения. На фиг. 2А таблица 512sampleno[] представляет собой таблицу данных, предназначенную для считывания количества сэмплов, которые могут сохраняться в случае, когда размер одного кадра, основанного на общей эффективной длине в битах, составляет 512 байтов, и содержимое ее показано на фиг. 3.[23] First of all, in FIG. 2A is a memory card illustrating a configuration of a working memory included in the determination unit 13. In FIG. 2A, the 512sampleno [] table is a data table for reading the number of samples that can be stored when the size of one frame based on the total effective bit length is 512 bytes, and its contents are shown in FIG. 3.

[24] Если общая эффективная длина в битах считывается как адрес (параметр), количество сэмплов, которые могут сохраняться в 512-байтовом кадре, соответствующем общей эффективной длине считывания в битах, считывается из таблицы 512sampleno[], показанной на фиг. 3. Например, в случае, когда общая эффективная длина в битах составляет 20 битов, из таблицы 512sampleno[] считывается число 203, (определяемое) как количество сэмплов, которые могут сохраняться в 512-байтовом кадре.[24] If the total effective bit length is read as an address (parameter), the number of samples that can be stored in a 512-byte frame corresponding to the total effective read length in bits is read from the table 512sampleno [] shown in FIG. 3. For example, in the case where the total effective bit length is 20 bits, the number 203 is read from the 512sampleno [] table, (defined) as the number of samples that can be stored in a 512-byte frame.

[25] Кроме того, количество сэмплов, которые могут сохраняться в 512-байтовом кадре, можно вычислить в соответствии с нижеследующим выражением 1.[25] In addition, the number of samples that can be stored in a 512-byte frame can be calculated in accordance with the following expression 1.

[Количество сэмплов]=INT (4064 (бита)/Общая эффективная длина в битах).

Figure 00000001
(1)[Number of samples] = INT (4064 (bits) / Total effective length in bits).
Figure 00000001
(one)

INT в выражении 1 представляет собой функцию минимального уровня, которая округляет число в меньшую сторону до ближайшего целого числа, а число 4064 (бита) получается следующим образом: 8 (битов)×[(Размер кадра (512 байтов)-(Размер заголовка (4 байта для области вспомогательной информации))]. Кроме того, в таблице 512sampleno[], показанной на фиг. 3, элемент «Время блока» представляет собой длительность отрезка волновой формы, соответствующую количеству сэмплов, в миллисекундах, а элемент «Скорость передачи в битах» представляет собой значение, получаемое умножением общей эффективной длины в битах на частоту (44,1 кГц) сэмплирования, в Мб/с.INT in expression 1 is a minimum level function that rounds a number down to the nearest integer, and the number 4064 (bits) is obtained as follows: 8 (bits) × [(Frame size (512 bytes) - (Header size (4 byte for the auxiliary information area))]. In addition, in the table 512sampleno [] shown in Fig. 3, the “Block time” element is the length of the waveform segment corresponding to the number of samples, in milliseconds, and the “Bit rate "Represents the value obtained by multiplying the total effective bit length by the sampling frequency (44.1 kHz), in Mb / s.

[26] Аналогично таблице 512sampleno[], описанной выше, таблица 256sampleno[] представляет собой таблицу данных, предназначенную для считывания количества сэмплов, которые могут сохраняться в 256-байтовом кадре, основанном на общей эффективной длине в битах, если соответствующая общая эффективная длина в битах считывается как адрес (параметр), и содержимое ее показано на фиг. 4. Например, в случае, когда общая эффективная длина в битах составляет 20 битов, из таблицы 256sample no[], показанной на фиг. 4, считывается число 100, (определяемое) как количество сэмплов, которые могут сохраняться в 256-байтовом кадре.[26] Similar to the 512sampleno [] table described above, the 256sampleno [] table is a data table for reading the number of samples that can be stored in a 256 byte frame based on the total effective length in bits, if the corresponding total effective length is in bits are read as an address (parameter), and its contents are shown in FIG. 4. For example, in the case where the total effective bit length is 20 bits, from the 256sample no [] table shown in FIG. 4, the number 100 is read, (defined) as the number of samples that can be stored in a 256-byte frame.

[27] Кроме того, количество сэмплов, которые могут сохраняться в 256-байтовом кадре, можно вычислить в соответствии с нижеследующим выражением 2.[27] In addition, the number of samples that can be stored in a 256-byte frame can be calculated in accordance with the following expression 2.

[Количество сэмплов]=INT (2016 (битов)/Общая эффективная длина в битах).

Figure 00000001
(2)[Number of samples] = INT (2016 (bits) / Total effective length in bits).
Figure 00000001
(2)

INT в выражении 2 представляет собой функцию минимального уровня, которая округляет число в меньшую сторону до ближайшего целого числа, а число 2016 получается следующим образом: 8 (битов)×[(Размер кадра (256 байтов)-(Размер заголовка (4 байта для области вспомогательной информации))]. Кроме того, в таблице 256sampleno[], показанной на фиг. 4, элемент «Время блока» представляет собой длительность отрезка волновой формы, соответствующую количеству сэмплов, в миллисекундах, а элемент «Скорость передачи в битах» представляет собой значение, получаемое умножением общей эффективной длины в битах на частоту (44,1 кГц) сэмплирования, в Мб/с.INT in expression 2 is a minimum level function that rounds the number down to the nearest integer, and the number 2016 is obtained as follows: 8 (bits) × [(Frame size (256 bytes) - (Header size (4 bytes for the area auxiliary information))]. In addition, in the table 256sampleno [] shown in Fig. 4, the “Block time” element is the duration of the waveform segment corresponding to the number of samples, in milliseconds, and the “Bit rate” element is value obtained by multiplying Niemi overall effective length in bits of the frequency (44.1 kHz) sampling, in Mb / s.

[28] Массив ʺwav[]ʺ представляет собой регистр для временного хранения 2032 сэмплов волновой формы (элементов Е данных об ошибках прогнозирования), при этом число 2032 представляет собой максимальное количество сэмплов, которые могут сохраняться в 512-байтовом кадре в случае, когда предполагается, что общая эффективная длина в битах сэмплов волновой формы (элементов Е данных об ошибках прогнозирования) составляет 2 бита. В дальнейшем элементы Е данных об ошибках прогнозирования будут называться сэмплами волновой формы. В массиве ʺwav[]ʺ 2032 сэмпла волновой формы сохраняются, например, в виде показанном на фиг. 2В. Каждый сэмпл состоит из кодовых битов S и битов М реальных данных, а длиной в битах битов М реальных данных именуется эффективная длина в битах соответствующего сэмпла. Массив ʺwavelength[]ʺ представляет собой регистр для временного хранения эффективных длин в битах 2032 сэмплов волновой формы, сохраняемых в описанном выше массиве ʺwav[]ʺ.[28] The ʺwav [] ассив array is a register for temporary storage of 2032 waveform samples (prediction error data elements E), the number 2032 being the maximum number of samples that can be stored in a 512-byte frame when it is assumed that the total effective bit length of waveform samples (prediction error data elements E) is 2 bits. Subsequently, the prediction error data elements E will be referred to as waveform samples. In the ʺwav [] ʺ 2032 array, waveform samples are stored, for example, as shown in FIG. 2B. Each sample consists of code bits S and bits M of real data, and the length in bits of bits M of real data refers to the effective bit length of the corresponding sample. The ʺwavelength [] ʺ array is a register for temporarily storing the effective bit lengths of 2032 waveform samples stored in the ʺwav [] ʺ array described above.

[29] Регистр ʺpʺ представляет собой указатель адреса, имеющий отношение к считыванию сэмплов волновой формы из массива ʺwav[]ʺ или записи в него. В дальнейшем содержимое регистра ʺpʺ будет именоваться указателем ʺpʺ адреса. Регистр ʺiʺ представляет собой указатель данных, предназначенный для обозначения эффективных длин в битах каждого сэмпла волновой формы, сохраняемого в массиве ʺwavelength[]ʺ. В дальнейшем содержимое регистра ʺiʺ будет именоваться указателем ʺiʺ. Регистр ʺbitlenghtʺ представляет собой регистр для сохранения переменной, которая последовательно возрастает от начального значения 2. В дальнейшем содержимое регистра ʺbitlenghtʺ будет именоваться переменной ʺbitlenghtʺ длины в битах. На отрезке, на котором имеются сэмплы волновой формы, максимальная эффективная длина в битах (bitlenght) именуется общей эффективной длиной в битах (Bitlenght256 или Bitlenght512) сэмплов волновой формы. В регистре ʺbitlenght256ʺ сохраняется общая эффективная длина в битах сэмплов волновой формы, подлежащих сохранению в 256-байтовом кадре. В регистре ʺbitlenght512ʺ сохраняется общая эффективная длина в битах сэмплов волновой формы, подлежащих сохранению в 512-байтовом кадре.[29] The ʺpʺ register is an address pointer related to reading waveform samples from the ʺwav [] массива array or writing to it. In the future, the contents of the ʺpʺ register will be referred to as the ʺpʺ address pointer. The ʺiʺ register is a data pointer designed to indicate the effective bit lengths of each waveform sample stored in the ʺwavelength [] ʺ array. In the future, the contents of the register ʺiʺ will be referred to as the pointer ʺiʺ. The ʺbitlenghtʺ register is a register for storing a variable that sequentially increases from the initial value 2. In the future, the contents of the ʺbitlenghtʺ register will be referred to as the ʺbitlenghtʺ variable of length in bits. On a segment that has waveform samples, the maximum effective bit length (bitlenght) is referred to as the total effective bit length (Bitlenght256 or Bitlenght512) of the waveform samples. The ʺbitlenght256ʺ register stores the total effective bit length of the waveform samples to be stored in a 256-byte frame. The register ʺbitlenght512ʺ stores the total effective bit length of the waveform samples to be stored in a 512-byte frame.

[30] Теперь работа блока 13 определения будет описана с обращением к фиг. 5. На фиг. 5 представлена блок-схема последовательности операций, иллюстрирующая функцию блока 13 определения, которая реализуется аппаратным обеспечением в виде действий по обработке программного обеспечения. Для каждого кадра блок 13 определения выполняет операции, показанные на блок-схеме последовательности операций из фиг. 5.[30] Now, the operation of the determination unit 13 will be described with reference to FIG. 5. In FIG. 5 is a flowchart illustrating a function of the determination unit 13, which is implemented by hardware in the form of software processing actions. For each frame, the determination unit 13 performs the operations shown in the flowchart of FIG. 5.

[31] Прежде всего, на этапе S10 блок 13 определения в соответствии с указателем ʺpʺ адреса сохраняет 2032 сэмпла волновой формы в массиве ʺwav[]ʺ, при этом число 2032 представляет собой максимальное количество сэмплов, которые могут быть сохранены в одном 512-байтовом кадре. Затем, на этапе S11 блок 13 определения загружает эффективные длины в битах 2032 сэмплов волновых форм, сохраняемых в массиве ʺwav[]ʺ, в массив ʺwavelength[]ʺ. В данном случае каждый сэмпл волновой формы (каждый элемент Е данных об ошибках прогнозирования) состоит из кодовых битов S и битов М реальных данных, показанных на фиг. 2В, а их эффективная длина в битах означает длину в битах битов М реальных данных.[31] First of all, in step S10, the determination unit 13 according to the address pointer сохраняетpʺ stores 2032 waveform samples in the array ʺwav [] ʺ, the number 2032 being the maximum number of samples that can be stored in one 512-byte frame . Then, in step S11, the determination unit 13 loads the effective bit lengths 2032 of the waveform samples stored in the array ʺwav [] ʺ into the array ʺwavelength [] ʺ. In this case, each waveform sample (each prediction error data element E) consists of code bits S and real data bits M shown in FIG. 2B, and their effective bit length means the bit length M of the real data bits.

[32] После этого, на этапе S12 блок 13 определения сбрасывает указатель ʺiʺ до нуля и задает переменной ʺbitlenghtʺ длины в битах начальное значение 2. Затем, на этапе S13 блок 13 определения определяет, совпадает ли переменная ʺbitlenghtʺ длины в битах с эффективной длиной в битах i-того сэмпла волновой формы из массива ʺwavelength[]ʺ, обозначаемой указателем ʺiʺ.[32] After this, in step S12, the determination unit 13 resets the pointer ʺiʺ to zero and sets the bit length variable ʺbitlenghtʺ to an initial value of 2. Then, in step S13, the determination unit 13 determines whether the bit length variable ʺbitlenghtʺ matches the effective bit length of the ith waveform sample from the ʺwavelength [] массива array, denoted by the ʺiʺ pointer.

[33] Если они не совпадают друг с другом, результатом определения на этапе S13 становится «Нет», и блок 13 определения переходит к этапу S14, на котором он увеличивает переменную ʺbitlenghtʺ длины в битах и после этого переходит опять к этапу S13. Затем блок определения повторяет этапы S13 и S14 и в то же время увеличивает переменную ʺbitlenghtʺ длины в битах до тех пор, пока переменная ʺbitlenghtʺ длины в битах не совпадет с эффективной длиной в битах i-того сэмпла волновой формы (i-того элемента Е данных об ошибках прогнозирования) из массива ʺwavelength[]ʺ, обозначаемой указателем ʺiʺ.[33] If they do not match, the result of the determination in step S13 becomes “No”, and the determination unit 13 proceeds to step S14, in which it increments the bit length variable ʺbitlenght и and then proceeds to step S13 again. Then, the determination unit repeats steps S13 and S14 and at the same time increases the bit length variable ʺbitlenghtʺ until the bit length variable ʺbitlenghtʺ matches the effective bit length of the i-th waveform sample (i-th data element E prediction errors) from the array ʺwavelength [] ʺ, denoted by the pointer ʺiʺ.

[34] Между тем, если увеличенная переменная ʺbitlenghtʺ длины в битах совпадает с эффективной длиной в битах i-того сэмпла волновой формы из массива ʺwavelength[]ʺ, обозначаемой указателем ʺiʺ, увеличенная переменная ʺbitlenghtʺ длины в битах обнаруживается как эффективная длина в битах сэмпла волновой формы, обозначаемая указателем ʺiʺ, результатом определения на этапе S13 становится «Да», и блок определения переходит к этапу S15.[34] Meanwhile, if the increased variable ʺbitlenghtʺ of the bit length matches the effective bit length of the ith waveform sample from the array массиваwavelength [] ʺ denoted by the pointer ʺiʺ, the increased variable ʺbitlenghtʺ of the bit length is detected as the effective length in bits of the wave sample the form indicated by the pointer ʺiʺ, the determination result in step S13 becomes “Yes”, and the determination unit proceeds to step S15.

[35] На этапе S15 блок 13 определения определяет, совпадает ли значение указателя ʺiʺ со значением, получаемым вычитанием 1 из количества сэмплов, которые могут сохраняться в одном 256-байтном кадре, считываться из таблицы 256sampleno[bitlenght] на основании эффективной длины в битах, обнаруженной на этапе S13, то есть, закончена ли обработка сэмплов волновой формы, соответствующих одному 256-байтному кадру.[35] In step S15, the determination unit 13 determines whether the value of the pointer ʺiʺ coincides with the value obtained by subtracting 1 from the number of samples that can be stored in one 256-byte frame, read from the 256sampleno [bitlenght] table based on the effective bit length, detected in step S13, that is, whether the processing of waveform samples corresponding to one 256-byte frame is completed.

[36] Если обработка сэмплов волновой формы, соответствующих 256-байтному кадру, не закончена, результатом определения на этапе S15 становится «Нет», и блок определения переходит к этапу S17. На этапе S17 блок определения определяет, совпадает ли значение указателя ʺiʺ со значением, получаемым вычитанием 1 из количества сэмплов, которые могут сохраняться в одном 512-байтовом кадре, считываться из таблицы 512sampleno[bitlenght] на основании эффективной длины в битах, обнаруженной на этапе S13, то есть, закончена ли обработка сэмплов волновой формы, соответствующих одному 512-байтному кадру.[36] If the processing of the waveform samples corresponding to the 256-byte frame is not finished, the determination result in step S15 becomes “No”, and the determination unit proceeds to step S17. In step S17, the determination unit determines whether the value of the pointer ʺiʺ matches the value obtained by subtracting 1 from the number of samples that can be stored in one 512-byte frame, read from the table 512sampleno [bitlenght] based on the effective bit length found in step S13 that is, whether the processing of waveform samples corresponding to one 512-byte frame is completed.

[37] Если обработка сэмплов волновой формы, соответствующих одному 512-байтному кадру, не закончена, результатом определения на этапе S17 становится «Нет», и блок определения переходит к этапу S19, на котором он увеличивает указатель ʺiʺ и затем возвращается к обработке на этапе S13. В дальнейшем, на этапах S13 и S14 блок определения обнаруживает эффективную длину в битах следующего сэмпла волновой формы (следующего элемента Е данных об ошибках прогнозирования), обозначенную увеличенным указателем ʺiʺ.[37] If the processing of the waveform samples corresponding to one 512-byte frame is not completed, the determination result in step S17 becomes “No”, and the determination unit proceeds to step S19, in which it increments the pointer ʺiʺ and then returns to the processing in step S13. Subsequently, in steps S13 and S14, the determination unit detects the effective bit length of the next waveform sample (next prediction error data element E) indicated by the enlarged pointer ʺiʺ.

[38] Затем, если при последовательном обнаружении эффективных длин в битах сэмплов волновой формы, которые обновляются по мере увеличения указателя ʺiʺ, значение указателя ʺiʺ совпадет со значением, получаемым вычитанием 1 из количества сэмплов, которые могут сохраняться в одном 256-байтном кадре, считываться из таблицы 256sampleno[bitlenght] на основании обнаруженной эффективной длины в битах, обработка сэмплов волновой формы, соответствующих одному 256-байтному кадру, заканчивается, результатом определения на этапе S15 становится «Да», и блок определения переходит к этапу S16.[38] Then, if upon sequential detection of effective bit lengths of waveform samples that update as the ʺiʺ pointer increases, the value of the ʺi со pointer matches the value obtained by subtracting 1 from the number of samples that can be stored in one 256-byte frame, from the 256sampleno [bitlenght] table based on the detected effective bit length, the processing of waveform samples corresponding to one 256-byte frame ends, the determination result in step S15 becomes “Yes”, and the block determines Ia proceeds to step S16.

[39] На этапе S16 блок определения сохраняет эффективную длину в битах, обнаруживаемую в момент окончания обработки сэмплов волновой формы, соответствующих одному 256-байтному кадру, то есть значение переменной ʺbitlenghtʺ длины в битах, в качестве общей эффективной длины сэмплов волновых форм в регистре ʺbitlenght256ʺ и сбрасывает значение переменной ʺbitlenghtʺ длины в битах до начального значения 2. Например, в примере, показанном на фиг. 2В, общая эффективная длина сэмплов волновой формы от ʺaʺ до ʺfʺ составляет 10 (битов), и это является максимальным значением эффективных длин в битах (длин битов М реальных данных).[39] In step S16, the determination unit stores the effective bit length detected at the time of processing the waveform samples corresponding to one 256-byte frame, that is, the value of the ʺbitlenghtʺ bit length variable as the total effective length of the waveform samples in the ʺbitlenght256ʺ register and resets the bit length variable ʺbitlenghtʺ to the initial value of 2. For example, in the example shown in FIG. 2B, the total effective length of the waveform samples from ʺaʺ to ʺfʺ is 10 (bits), and this is the maximum value of the effective bit lengths (bit lengths M of real data).

[40] Если обработка сэмплов волновой формы, соответствующих одному 256-байтному кадру и соответствующих первой половине кадра, заканчивается, как описано выше, блок 13 определения переходит к обработке второй половины кадра. Иначе говоря, аналогично случаю первой половины кадра, блок определения последовательно обнаруживает эффективные длины в битах сэмплов волновой формы, которые обновляет по мере увеличения значения указателя ʺiʺ (этапы S13, S14 и S19).[40] If the processing of waveform samples corresponding to one 256-byte frame and corresponding to the first half of the frame ends as described above, the determining unit 13 proceeds to processing the second half of the frame. In other words, similarly to the case of the first half of the frame, the determination unit sequentially detects the effective bit lengths of the waveform samples, which it updates as the value of the pointer ʺiʺ increases (steps S13, S14 and S19).

[41] Если при обнаружении эффективных длин в битах значение указателя ʺiʺ совпадет со значением, получаемым вычитанием 1 из количества сэмплов, которые могут сохраняться в одном 512-байтном кадре, считываться из таблицы 512sampleno[bitlenght] на основании обнаруженной эффективной длины в битах (значения переменной ʺbitlenghtʺ длины в битах), обработка сэмплов волновой формы, соответствующих одному 256-байтному кадру заканчивается, результатом определения на этапе S17 становится «Да», и блок определения переходит к этапу S18.[41] If, when effective bit lengths are detected, the value of the ʺiʺ pointer matches the value obtained by subtracting 1 from the number of samples that can be stored in one 512-byte frame, read from the table 512sampleno [bitlenght] based on the detected effective bit length (values ʺbitlenghtʺ of the bit length), the processing of waveform samples corresponding to one 256-byte frame ends, the determination result in step S17 becomes “Yes”, and the determination unit proceeds to step S18.

[42] На этапе S18 блок 13 определения сохраняет эффективную длину в битах, обнаруживаемую в момент окончания обработки сэмплов волновой формы, соответствующих одному 512-байтному кадру, то есть значение переменной ʺbitlenghtʺ длины в битах, в качестве общей эффективной длины в битах сэмплов волновой формы в регистре ʺbitlenght512ʺ. Затем на этапе S20 блок 13 определения определяет, совпадает ли общая эффективная длина в битах, сохраняемая в регистре ʺbitlenght256ʺ, с общей эффективной длиной в битах, сохраняемой в регистре ʺbitlenght512ʺ.[42] In step S18, the determining unit 13 stores the effective bit length detected at the time of processing the waveform samples corresponding to one 512-byte frame, that is, the value of the bit length variable ʺ bitlenght ʺ as the total effective bit length of the wave form samples in the register ʺbitlenght512ʺ. Then, in step S20, the determining unit 13 determines whether the total effective bit length stored in the ʺbitlenght256ʺ register matches the total effective bit length stored in the ʺbitlenght512ʺ register.

[43] В случае, когда общая эффективная длина в битах, сохраняемая в регистре ʺbitlenght256ʺ, совпадает с общей эффективной длиной в битах, сохраняемой в регистре ʺbitlenght512ʺ, результатом определения на этапе S20 становится «Да», и блок определения переходит к этапу S21. Затем, на этапах S21 и S22 блок 13 определения выводит идентификатор, представляющий 512-байтовый кадр, в качестве размера кадра сэмплов волновой формы и выводит общую эффективную длину в битах, сохраняемую в регистре ʺbitlenght512ʺ.[43] In the case where the total effective bit length stored in the ʺbitlenght256ʺ register matches the total effective bit length stored in the ʺbitlenght512ʺ register, the determination result in step S20 becomes “Yes” and the determination unit proceeds to step S21. Then, in steps S21 and S22, the determination unit 13 outputs an identifier representing a 512-byte frame as the frame size of the waveform samples and outputs the total effective bit length stored in the ʺbitlenght512ʺ register.

[44] Затем, на этапе S23 блок 13 определения возвращается к указателю ʺpʺ адреса в соответствии со значением, получаемым вычитанием количества сэмплов, которые могут сохраняться в одном 512-байтовом кадре, считываться из таблицы 512sampleno[bitlenght] на основании обнаруженной эффективной длины в битах, из 2030, количества считываемых сэмплов, и заканчивает обработку, соответствующую одному кадру.[44] Then, in step S23, the determination unit 13 returns to the address pointer вpʺ in accordance with the value obtained by subtracting the number of samples that can be stored in one 512-byte frame, read from the table 512sampleno [bitlenght] based on the detected effective bit length , from 2030, the number of readable samples, and ends processing corresponding to one frame.

[45] Между тем, в случае, когда общая эффективная длина в битах, сохраняемая в регистре ʺbitlenght256ʺ, не совпадает с общей эффективной длиной в битах, сохраняемой в регистре ʺbitlenght512ʺ, результатом определения на этапе S20 становится «Нет», и блок определения переходит к этапу S24. Затем, на этапах S24 и S25 блок 13 определения выводит идентификатор, представляющий 256-байтовый кадр, в качестве размера кадра сэмплов волновой формы и выводит общую эффективную длину в битах, сохраняемую в регистре ʺbitlenght256ʺ.[45] Meanwhile, in the case where the total effective bit length stored in the ʺbitlenght256ʺ register does not match the total effective bit length stored in the ʺbitlenght512ʺ register, the determination result in step S20 becomes “No” and the determination unit proceeds to step S24. Then, in steps S24 and S25, the determination unit 13 outputs an identifier representing a 256 byte frame as the frame size of the waveform samples and outputs the total effective bit length stored in the ʺbitlenght256ʺ register.

[46] Позже, на этапе S26 блок 13 определения возвращается к указателю ʺpʺ адреса в соответствии со значением, получаемым вычитанием количества сэмплов, которые могут сохраняться в одном 256-байтном кадре, считываться из таблицы 256sampleno[bitlenght] на основании обнаруженной эффективной длины в битах, из 2030, количества считываемых сэмплов, и заканчивает обработку, соответствующую одному кадру.[46] Later, in step S26, the determination unit 13 returns to the address pointer вpʺ in accordance with the value obtained by subtracting the number of samples that can be stored in one 256-byte frame, read from the 256sampleno [bitlenght] table based on the detected effective bit length , from 2030, the number of readable samples, and ends processing corresponding to one frame.

[47] Как описывалось выше, в то время как блок 13 определения последовательно считывает эффективные длины в битах индивидуальных сэмплов волновой формы (элементов Е данных об ошибках прогнозирования), он обнаруживает максимальную эффективную длину в битах из считываемых эффективных длин в битах в качестве общей эффективной длины в битах соответствующих сэмплов волновой формы. Если количество считываемых сэмплов достигает значения, получаемого вычитанием 1 из количества сэмплов, которые могут сохраняться в одном 256-байтном кадре, основанном на общей эффективной длине в битах, блок определения формирует первую половину кадра. Что касается второй половины кадры, то, когда блок 13 определения последовательно считывает эффективные длины в битах индивидуальных сэмплов волновой формы (элементы Е данных об ошибках прогнозирования), он обнаруживает максимальную эффективную длину в битах из считываемых эффективных длин в битах в качестве общей эффективной длины в битах соответствующих сэмплов волновой формы. Если количество считываемых сэмплов достигает значения, получаемого вычитанием 1 из количества сэмплов, которые могут сохраняться в одном 512-байтном кадре, основанном на общей эффективной длине в битах, блок определения формирует вторую половину кадра.[47] As described above, while the determining unit 13 sequentially reads the effective bit lengths of the individual waveform samples (prediction error data elements E), it detects the maximum effective bit length from the read effective bit lengths as the total effective bit lengths of the corresponding waveform samples. If the number of readable samples reaches the value obtained by subtracting 1 from the number of samples that can be stored in one 256-byte frame, based on the total effective length in bits, the determination unit generates the first half of the frame. As for the second half of the frames, when the determination unit 13 sequentially reads the effective bit lengths of the individual waveform samples (prediction error data elements E), it detects the maximum effective bit length from the read effective bit lengths as the total effective length in bits of the corresponding waveform samples. If the number of readable samples reaches the value obtained by subtracting 1 from the number of samples that can be stored in one 512-byte frame based on the total effective bit length, the determination unit generates the second half of the frame.

[48] Затем, в случае, когда общая эффективная длина в битах первой половины кадра совпадает с общей эффективной длиной в битах второй половины кадра, блок определения выводит идентификатор, представляющий 512-байтный кадр, в качестве типа кадра сэмплов волновой формы и выводит общую эффективную длину в битах второй половины кадра. Между тем, в случае, когда общая эффективная длина в битах первой половины кадра не совпадает с общей эффективной длиной в битах второй половины кадра, блок определения выводит идентификатор, представляющий 256-байтный кадр, в качестве типа кадра сэмплов волновой формы и выводит общую эффективную длину в битах первой половины кадра.[48] Then, in the case where the total effective bit length of the first half of the frame matches the total effective bit length of the second half of the frame, the determination unit outputs an identifier representing a 512-byte frame as the frame type of the waveform samples and outputs the total effective the length in bits of the second half of the frame. Meanwhile, in the case where the total effective bit length of the first half of the frame does not coincide with the total effective bit length of the second half of the frame, the determination unit outputs an identifier representing a 256-byte frame as the frame type of the waveform samples and outputs the total effective length in bits of the first half of the frame.

[49] Кроме того, в представленном варианте осуществления для упрощения пояснения формируются кадры двух размеров, то есть кадр размером 512 байтов и кадр размером 256 байтов. Однако настоящее изобретение не ограничено этим, и могут формироваться кадры трех или большего количества произвольных размеров, например, путем добавления кадра размером 128 битов. Кроме того, в представленном варианте осуществления в случае, когда предполагается, что общая эффективная длина в битах сэмплов волновой формы (элементов Е данных об ошибках прогнозирования) составляет 2 бита, максимальное количество сэмплов, которые могут сохраняться в одном 512-байтовом кадре, составляет 2032, и считываются 2032 сэмпла. Однако настоящее изобретение не ограничено этим, и количество сэмплов, которые считываются, может определяться на основании произвольного размера кадра.[49] Furthermore, in the presented embodiment, frames of two sizes are formed, that is, a frame of size 512 bytes and a frame of size 256 bytes in order to simplify the explanation. However, the present invention is not limited to this, and frames of three or more arbitrary sizes can be formed, for example, by adding a frame of 128 bits. In addition, in the present embodiment, when it is assumed that the total effective bit length of the waveform samples (prediction error data elements E) is 2 bits, the maximum number of samples that can be stored in one 512-byte frame is 2032 , and 2032 samples are read. However, the present invention is not limited thereto, and the number of samples that are read can be determined based on an arbitrary frame size.

[50] Теперь с повторным обращением к фиг. 1 будет описана конфигурация устройства 100 для хранения данных о волновой форме. На фиг. 1 блок 15 образования информации заголовка образует элемент информации заголовка для каждого кадра, основанный на элементе данных об идентификаторе способа сжатия («Способ сжатия»), образуемом в блоке 1 сжатия данных о волновой форме, а элементы данных «Тип кадра (идентификатор)» и «Общая эффективная длина в битах» выводятся из блока 13 определения.[50] Now referring again to FIG. 1, a configuration of a device 100 for storing waveform data will be described. In FIG. 1, the header information generation unit 15 forms a header information element for each frame based on the compression method identifier data element (“Compression Method”) generated in the waveform data compression unit 1, and the “Frame Type (identifier)” data elements and The “total effective bit length” is derived from the determination unit 13.

[51] Например, в примере, показанном на фиг. 6А, элемент информации заголовка сохраняется в области вспомогательной информации, имеющей емкость данных 4 байта, и она состоит, например, из области для сохранения элемента данных «Способ сжатия», области для сохранения элемента данных «Общая эффективная длина в битах», предназначенного для формирования кадра, области для сохранения элемента данных «Тип кадра (идентификатор)», представляющего размер области данных одного кадра, и резервной области для возможности наращивания. Такой элемент информации заголовка подается из блока 15 образования информации заголовка в блок 16 хранения данных.[51] For example, in the example shown in FIG. 6A, the header information element is stored in the auxiliary information area having a data capacity of 4 bytes, and it consists, for example, of a region for storing a compression method data element, an area for storing a total effective bit length data element for generating a frame, an area for storing the "Frame Type (identifier)" data item representing the size of the data area of one frame, and a spare area for expandability. Such a header information element is supplied from the header information generating unit 15 to the data storage unit 16.

[52] Во время сжатия сэмплов волновой формы можно изменять коэффициент сжатия путем изменения параметра громкости звука. Например, что касается отрезка атаки первой половины сэмплов волновой формы, то сохраняются данные о громкости звука, в которых громкость звука такая же, как громкость исходного звука, а что касается второй половины сэмплов волновой формы, то сохраняются данные о громкости звука, в которых громкость звука ниже, чем громкость исходного звука. Таким образом, при небольшом коэффициенте сжатия можно сохранять с высоким качеством отрезок атаки из первой половины сэмплов волновой формы и при большом коэффициенте сжатия можно сохранять с низким качеством вторую половину сэмплов волновой формы. «Поправочный параметр громкости звука» представляет собой параметр, который используют для восстановления громкости звука из данных о волновой форме, сохраняемых в запоминающем устройстве, до громкости исходного звука, когда устройство 150 для извлечения данных о волновой форме извлекает сжатые данные о волновой форме. Устройство 100 для хранения данных о волновой форме может изменять данные о громкости звука на основании исходного звука сэмплов волновой формы и сохранять измененные данные о громкости звука в запоминающем устройстве, а устройство 150 для извлечения данных о волновой форме при использовании поправочного параметра громкости звука может извлекать сжатые данные о волновой форме из запоминающего устройства и возвращать громкость звука из данных о волновой форме к громкости исходного звука.[52] During compression of waveform samples, you can change the compression ratio by changing the sound volume parameter. For example, as for the segment of attack of the first half of the waveform samples, the sound volume data is stored in which the sound volume is the same as the volume of the original sound, and as for the second half of the waveform samples, sound volume data in which the volume is saved The sound is lower than the volume of the original sound. Thus, with a small compression ratio, you can save with high quality the segment of the attack from the first half of the waveform samples, and with a large compression ratio you can save the second half of the waveform samples with low quality. A “sound volume correction parameter" is a parameter that is used to restore the sound volume from waveform data stored in a memory to the volume of the original sound when the waveform data extractor 150 extracts the compressed waveform data. The waveform data storage device 100 may change the sound volume data based on the original sound of the waveform samples and store the changed sound volume data in a memory, and the waveform data extraction device 150 may use compressed sound volume correction parameter waveform data from the storage device and return the sound volume from the waveform data to the volume of the original sound.

[53] Кроме того, в представленном варианте осуществления область вспомогательной информации расположена в заголовочной части кадра. Однако настоящее изобретение не ограничено этим и область вспомогательной информации может быть расположена в любой другой части кадра, такой как подстрочная часть. Кроме того, в случае, когда области вспомогательной информации имеют фиксированный размер, как в представленном варианте осуществления, размеры кадров эквивалентны размерам областей данных кадров.[53] In addition, in the present embodiment, the auxiliary information area is located in the header of the frame. However, the present invention is not limited thereto, and the auxiliary information area may be located in any other part of the frame, such as the subscript. In addition, in the case where the auxiliary information areas are of a fixed size, as in the present embodiment, the frame sizes are equivalent to the sizes of the frame data areas.

[54] В блоке 16 хранения данных элемент информации заголовка сохраняется в области вспомогательной информации (см. фиг. 6) кадра, включающего в себя область данных, имеющую размер, обозначенный элементом данных «Тип кадра (идентификатор)», включенным в элемент информации заголовка, а сжатые сэмплы, получаемые извлечением сэмплов волновой формы (элементов Е данных об ошибках прогнозирования), основанные на элементе данных «Общая эффективная длина в битах», включенном в элемент информации заголовка, последовательно сохраняются в области данных, следующей за областью вспомогательных данных. Количество сжатых сэмплов, которые могут сохраняться в области данных, определяется на основании элементов данных «Тип кадра (идентификатор)» и «Общая эффективная длина в битах», и если количество сжатых сэмплов, сохраняемых в области данных, достигает количества сжатых сэмплов, которые могут быть сохранены, блок 13 определения повторяет действие по определению типа кадра (идентификатора) и общей эффективной длины в битах на основании последующих подаваемых сэмплов волновой формы, в результате чего начинается формирование нового кадра.[54] In the data storage unit 16, the header information element is stored in the auxiliary information area (see FIG. 6) of the frame including the data region having the size indicated by the “Frame type (identifier)” data element included in the header information element and compressed samples obtained by extracting waveform samples (prediction error data elements E) based on the “Total effective bit length” data element included in the header information element are sequentially stored in the data area x next to the auxiliary data area. The number of compressed samples that can be stored in the data area is determined based on the “Frame Type (ID)” and “Total Effective Bit Length” data items, and if the number of compressed samples stored in the data area reaches the number of compressed samples that can be saved, the determining unit 13 repeats the action of determining the type of frame (identifier) and the total effective bit length based on the subsequent waveform samples supplied, as a result of which the formation of a new frame begins.

[55] Теперь с обращением к фиг. 7 будет описан пример, в соответствии с которым исходные данные W о волновой форме звука фортепиано сжимаются и сохраняются в кадрах. Как показано на фиг. 7, исходные данные W о волновой форме, получаемые выполнением сэмплирования звука фортепиано, разделяются на отрезок «А», на котором волновая форма затухает от начального подъема до предварительно определенного уровня, и отрезок «В», следующий за отрезком «А». На отрезке «А», в том числе на отрезке атаки, который представляет собой вступление в звук, волновая форма изменяется быстро; тогда как на отрезке «В», который представляет собой отрезок поддержания, волновая форма изменяется медленно.[55] Now referring to FIG. 7, an example will be described in which the source data W of the waveform of a piano sound is compressed and stored in frames. As shown in FIG. 7, the initial waveform data W obtained by sampling the sound of the piano is divided into a segment “A”, in which the waveform decays from the initial rise to a predetermined level, and a segment “B” following segment “A”. On the segment "A", including the segment of the attack, which is the entry into the sound, the waveform changes rapidly; whereas on the segment "B", which is a segment of maintenance, the waveform changes slowly.

[56] Поскольку на отрезке «А», на котором волновая форма изменяется быстро, эффективные длины в битах индивидуальных сэмплов волновой формы (элементы Е данных об ошибках прогнозирования) изменяются, общая эффективная длина в битах первой половины кадра не совпадает с общей эффективной длиной в битах второй половины кадра. По этой причине описанный выше блок 13 определения определяет 256 байтов в качестве размера одного кадра для отрезка «А». В результате элемент информации заголовка сохраняется в блоке 16 хранения данных в области вспомогательной информации кадра, показанной на фиг. 6В, а сжатые сэмплы, получаемые при извлечении квантованных сэмплов волновой формы (элементов Е данных об ошибках прогнозирования), основанных на элементе данных «Общая эффективная длина в битах», включенном в элемент информации заголовка, последовательно сохраняются в области данных. При этом количество сохраняемых сэмплов определяется на основании элемента данных «Общая эффективная длина в битах». Например, в случае, когда общая эффективная длина в битах составляет 9 битов, 224 сэмпла сохраняются с области данных (252 байта).[56] Since in the “A” segment, where the waveform changes rapidly, the effective bit lengths of the individual waveform samples (prediction error data elements E) change, the total effective bit length of the first half of the frame does not coincide with the total effective length of bits of the second half of the frame. For this reason, the determination unit 13 described above defines 256 bytes as the size of one frame for segment “A”. As a result, the header information element is stored in the data storage unit 16 in the frame auxiliary information area shown in FIG. 6B, and compressed samples obtained by extracting the quantized waveform samples (prediction error data elements E) based on the “Total effective bit length” data element included in the header information element are sequentially stored in the data area. In this case, the number of stored samples is determined based on the data item "Total effective length in bits". For example, in the case where the total effective bit length is 9 bits, 224 samples are stored from the data area (252 bytes).

[57] Между тем, поскольку на отрезке «В», на котором волновая форма изменяется медленно, эффективные длины в битах индивидуальных сэмплов волновой формы (элементы Е данных об ошибках прогнозирования) не изменяются, общая эффективная длина в битах первой половины кадра совпадает с общей эффективной длиной в битах второй половины кадра. По этой причине описанный выше блок 13 определения определяет 512 байтов в качестве размера одного кадра для отрезка «В».[57] Meanwhile, since on segment “B”, on which the waveform changes slowly, the effective bit lengths of the individual waveform samples (prediction error data elements E) do not change, the total effective bit length of the first half of the frame coincides with the total effective bit length of the second half of the frame. For this reason, the determination unit 13 described above determines 512 bytes as the size of one frame for the “B” segment.

[58] Вследствие этого, в описанном выше блоке 16 хранения данных элемент информации заголовка сохраняется в области вспомогательной информации кадра, показанной на фиг. 6А, а сжатые сэмплы, получаемые при извлечении квантованных сэмплов волновой формы (элементов Е данных об ошибках прогнозирования), основанных на элементе данных «Общая эффективная длина в битах», включенном в элемент информации заголовка, последовательно сохраняются в области данных. При этом количество сохраняемых сэмплов определяется на основании элемента данных «Общая эффективная длина в битах». Например, в случае, когда общая эффективная длина в битах составляет 10 битов, 406 сэмплов сохраняются в области данных (508 байтов).[58] Therefore, in the above-described data storage unit 16, the header information element is stored in the auxiliary information area of the frame shown in FIG. 6A, and compressed samples obtained by extracting quantized waveform samples (prediction error data elements E) based on the “Total effective bit length” data element included in the header information element are sequentially stored in the data area. In this case, the number of stored samples is determined based on the data item "Total effective length in bits". For example, in the case where the total effective bit length is 10 bits, 406 samples are stored in the data area (508 bytes).

[59] Кадры, которые формируются описанным выше способом, выводятся в блоках кадров из блока 16 хранения данных и сохраняются в запоминающем устройстве 17 (см. фиг. 1). Кадры, сохраняемые в запоминающем устройстве 17, считываются устройством 150 для считывания данных о волновой форме, показанным на фиг. 8.[59] Frames that are formed as described above are output in blocks of frames from the data storage unit 16 and stored in the memory 17 (see Fig. 1). The frames stored in the memory 17 are read by the waveform data reader 150 shown in FIG. 8.

[60] Теперь с обращением к фиг. 8 конфигурация устройства 150 для извлечения данных о волновой форме будет описана в общих чертах. Устройство 150 для извлечения данных о волновой форме включает в себя блок 151 образования адресных данных, предназначенный для образования элементов адресных данных при использовании общей эффективной длины в битах, считываемой из области вспомогательной информации назначенного кадра, сохраняемого в запоминающем устройстве 17, в качестве повышения значения, блок 152 извлечения, предназначенный для извлечения сжатых сэмплов из области данных кадра, сохраняемых в запоминающем устройстве 17, на основании образованных элементов адресных данных, и блок 153 назначения кадра, предназначенный для назначения кадра после назначенного кадра из запоминающего устройства 17, если количество сжатых сэмплов, извлекаемых из области данных, сохраняемых в запоминающем устройстве 17, превышает размер кадра, обозначаемый типом кадра (идентификатором), сохраняемым в области вспомогательной информации.[60] Now referring to FIG. 8, the configuration of a device 150 for extracting waveform data will be described in general terms. The device 150 for extracting waveform data includes an address data generation unit 151 for generating address data elements using the total effective bit length read from the auxiliary information area of the assigned frame stored in the memory 17 as an increase in value, an extraction unit 152 for extracting compressed samples from the frame data area stored in the memory 17, based on the generated address data elements s, and the block assignment unit 153, designed to assign the frame after the assigned frame from the storage device 17, if the number of compressed samples extracted from the data area stored in the storage device 17 exceeds the frame size indicated by the type of frame (identifier) stored in the area supporting information.

[61] Блок 151 образования адресных данных включает в себя регистр BITW, счетчик BITC, блок 151а определения, блок 151b определения и селектор, а блок 152 извлечения включает в себя счетчик ADRC_H адреса и счетчик ADRC адреса, а блок 153 назначения кадра включает в себя регистр заголовка (РЗ), преобразователь адреса и компаратор.[61] The address data generation unit 151 includes a BITW register, a BITC counter, a determination unit 151a, a determination unit 151b and a selector, and an extraction unit 152 includes an address counter ADRC_H and an address counter ADRC, and a frame assignment unit 153 includes Header Register (RE), address converter, and comparator.

[62] Блок 150 извлечения данных о волновой форме загружает адрес верхнего кадра из хоста (центрального процессора) (непоказанного) в счетчик ADRC_H адреса и загружает межкадровый адрес из хоста в счетчик ADRC адреса. Если «0» для обозначения заголовка кадра сохраняется в качестве считываемого начального адреса в счетчике ADRC адреса, устройство для извлечения данных о волновой форме считывает элемент информации заголовка, сохраняемый в области вспомогательной информации считываемого целевого кадра, из запоминающего устройства 17 и сохраняет считываемый элемент информации заголовка в регистре заголовка (РЗ).[62] The waveform data extracting unit 150 loads the top frame address from the host (central processor) (not shown) into the address counter ADRC_H and loads the interframe address from the host into the address counter ADRC. If “0” for designating the frame header is stored as the read start address in the ADRC address counter, the waveform data extractor reads the header information element stored in the auxiliary information area of the target frame to be read from the memory 17 and stores the read header information element in the header register (RE).

[63] Общая эффективная длина в битах, включенная в элемент информации заголовка, сохраняемая в регистре заголовка (РЗ), сохраняется в регистре BITW. Тип кадра (идентификатор), включенный в элемент информации заголовка, сохраняемый в регистре заголовка (РЗ), преобразуется в межкадровый адрес, соответствующий размеру одного кадра, а межкадровый адрес подводится к одному входу компаратора. Счетчик BITC предназначен для обозначения позиции бита одного сжатого сэмпла, подлежащего сохранению в области данных кадра. В случае, когда блок 151а определения определяет, что счетчик ADRC адреса (межкадрового адреса) имеет «0» или «1», представляющую элемент информации заголовка, счетчик BITC сбрасывается. Между тем, в случае, когда блок 151b определения также определяет, что счетчик ADRC имеет «0» или «1», представляющую элемент информации заголовка, со счетчика BITC подается «1» на селектор, в результате чего сильно повышается значение счетчика ADRC адреса. В случае, когда счетчик ADRC адреса имеет иное значение, кроме как «0» и «1» (значение, которым не представляется элемент информации заголовка), на селектор подается сигнал переноса со счетчика BITC.[63] The total effective bit length included in the header information element stored in the header register (P3) is stored in the BITW register. The type of frame (identifier) included in the header information element stored in the header register (PS) is converted to an inter-frame address corresponding to the size of one frame, and the inter-frame address is fed to one input of the comparator. The BITC counter is intended to indicate the bit position of one compressed sample to be stored in the frame data area. In the case where the determining unit 151a determines that the ADRC address (interframe address) counter has “0” or “1” representing a header information element, the BITC counter is reset. Meanwhile, in the case where the determining unit 151b also determines that the ADRC counter has “0” or “1” representing a header information element, “1” is supplied from the BITC counter to the selector, resulting in a greatly increased value of the ADRC counter of the address. In the case where the ADRC address counter has a value other than “0” and “1” (a value that does not represent the header information element), the transfer signal from the BITC counter is sent to the selector.

[64] В счетчик BITC добавляется значение регистра BITW, в результате чего значение счетчика ADRC адреса возрастает, вследствие чего образуется адрес считывания, предназначенный для считывания сжатого сэмпла, сохраняемого в области данных кадра. Адрес считывания выводится из счетчика ADRC адреса и подводится к другому входу компаратора. В случае, когда значение счетчика ADRC адреса (межкадровый адрес) становится значением, соответствующим размеру одного кадра, компаратор сбрасывает счетчик ADRC адреса.[64] The value of the BITW register is added to the BITC counter, as a result of which the value of the ADRC counter of the address increases, as a result of which a read address is created for reading the compressed sample stored in the frame data area. The read address is derived from the ADRC address counter and fed to the other input of the comparator. In the case where the value of the ADRC address counter (inter-frame address) becomes the value corresponding to the size of one frame, the comparator resets the ADRC address counter.

[65] Как описывалось выше, устройство 150 для извлечения данных о волновой форме образует адреса считывания индивидуальных сэмплов, сохраняемых в областях данных считываемых целевых кадров, с привязкой к типам кадров (идентификаторам) и общим эффективным длинам в битах, включенным в их элементы информации заголовка, и считывает сжатые сэмплы из индивидуальных кадров на основании образованных адресов считывания.[65] As described above, the waveform data extractor 150 generates read addresses of individual samples stored in the data areas of the read target frames, with reference to frame types (identifiers) and the total effective bit lengths included in their header information elements , and reads compressed samples from individual frames based on the generated read addresses.

[66] Теперь с обращением к фиг. 9 будет описан электронный музыкальный инструмент 200, включающий в себя описанное выше запоминающее устройство 17 и описанное выше устройство 150 для извлечения данных о волновой форме. На фиг. 9 представлена структурная схема, иллюстрирующая общую конфигурацию электронного музыкального инструмента 200. Блок 20 ввода исполнительских характеристик музыкального инструмента из фиг. 9 образует информацию об исполнительских характеристиках музыкального инструмента в соответствии с операциями воспроизведения. Операционный блок 21 имеет различные операционные переключатели и создает переключаемые события в соответствии с видами переключателей, приводимых в действие пользователем. Центральный процессор (ЦП) 22 создает события, связанные с нажатием клавиши или отпусканием клавиши, в соответствии с информацией об исполнительских характеристиках музыкального инструмента, образуемой блоком 20 ввода исполнительских характеристик музыкального инструмента, и подает связанные с нажатием клавиши или отпусканием клавиши события в устройство 150 для извлечения данных о волновой форме и команды в устройство 150 для извлечения данных о волновой форме на считывание сжатых сэмплов (элементов сжатых данных о волновой форме), необходимых для образования музыки, из запоминающего устройства 17.[66] Now referring to FIG. 9, an electronic musical instrument 200 will be described, including the storage device 17 described above and the above-described device 150 for extracting waveform data. In FIG. 9 is a block diagram illustrating a general configuration of an electronic musical instrument 200. The performing instrument input unit 20 of the musical instrument of FIG. 9 generates performance information of a musical instrument in accordance with reproduction operations. The operation unit 21 has various operational switches and creates switchable events in accordance with the types of switches operated by the user. The Central processing unit (CPU) 22 creates events associated with pressing a key or releasing a key, in accordance with information about the performance of a musical instrument generated by the unit 20 for performing performance of a musical instrument, and delivers the events associated with pressing a key or releasing a key to the device 150 for retrieving waveform data and commands to device 150 for retrieving waveform data to read compressed samples (elements of compressed waveform data), dimyh for forming music, from the storage device 17.

[67] В постоянном запоминающем устройстве (ПЗУ) 23 сохраняются управляющие программы, загружаемые в центральный процессор 22. В оперативном запоминающем устройстве (ОЗУ) 24 временно сохраняются различные данные регистра/признака, используемые при обработке в центральном процессоре 22. В запоминающем устройстве 17 заблаговременно сохраняются сжатые сэмплы (элементы сжатых данных о волновой форме), имеющие определенные музыкальные звуки, и в ответ на команду на считывание с центрального процессора 22 устройство 150 для извлечения данных о волновой форме считывает сжатые сэмплы, необходимые для образования музыки, из запоминающего устройства 17.[67] In the read-only memory (ROM) 23, control programs stored in the central processor 22 are stored. In the random-access memory (RAM) 24, various register / attribute data temporarily stored during processing in the central processor 22 are temporarily stored. In the memory 17 in advance compressed samples (elements of compressed waveform data) having certain musical sounds are stored, and in response to a command to read from the central processor 22, device 150 for extracting wave data form reads the compressed samples necessary for the formation of music from the storage device 17.

[68] Блок 25 декомпрессии выполняет процесс декомпрессии сжатых сэмплов, считываемых устройством 150 для извлечения данных о волновой форме, в результате чего он получает данные о волновой форме и подает данные о волновой форме на звукообразующий блок 26. Звукообразующий блок 26 образует музыкальные данные на основании данных о волновой форме, подаваемых с блока 25 декомпрессии, и преобразует образованные музыкальные данные в аналоговый музыкальный сигнал, и выполняет фильтрацию, чтобы отфильтровать ненужные составляющие, такие как шум, из музыкального сигнала, и повышает уровень музыкального сигнала, и выводит звук из громкоговорителя.[68] The decompression unit 25 performs the decompression process of the compressed samples read by the device 150 for extracting waveform data, as a result of which it receives waveform data and provides waveform data to the sound generating unit 26. The sound generating unit 26 generates music data based on waveform data supplied from the decompression unit 25 and converts the generated music data into an analog music signal and performs filtering to filter out unnecessary components, such as noise, from the muses A loud signal, and increases the level of the music signal, and outputs sound from the speaker.

[69] Как описывалось выше, в соответствии с представленным вариантом осуществления, поскольку на отрезке, на котором волновая форма изменяется быстро, эффективные длины в битах отдельных сэмплов волновой формы (элементы Е данных об ошибках прогнозирования) изменяются и поэтому общая эффективная длина в битах первой половины кадра не совпадает с общей эффективной длиной в битах второй половины кадра, размер одного кадра полагают равным 256 байтам. Между тем, поскольку на отрезке, на котором волновая форма изменяется медленно, эффективные длины в битах отдельных сэмплов волновой формы (элементы Е данных об ошибках прогнозирования) не изменяются и поэтому общая эффективная длина в битах первой половины кадра совпадает с общей эффективной длиной в битах второй половины кадра, размер одного кадра полагают равным 512 байтам. Таким образом, различные размеры кадра можно задавать в зависимости от музыкальных звуков (видов волновой формы).[69] As described above, in accordance with the presented embodiment, since in the interval over which the waveform changes rapidly, the effective bit lengths of the individual waveform samples (prediction error data elements E) change and therefore the total effective bit length of the first half of the frame does not coincide with the total effective bit length of the second half of the frame; the size of one frame is assumed to be 256 bytes. Meanwhile, since in the interval in which the waveform changes slowly, the effective bit lengths of the individual waveform samples (prediction error data elements E) do not change and therefore the total effective bit length of the first half of the frame coincides with the total effective bit length of the second half frame, the size of one frame is assumed to be 512 bytes. Thus, different frame sizes can be set depending on musical sounds (types of waveform).

[70] Кроме того, поскольку размеры различных кадров задают в соответствии с описанным выше способом, то по сравнению со случаем использованием кадра фиксированного размера можно решить проблему, заключающуюся в том, что по мере увеличения числа кадров возрастает бесполезная избыточная информация заголовка или повышается количество кодовых бит в сэмплах волновой формы.[70] In addition, since the sizes of the various frames are set in accordance with the method described above, in comparison with the case of using a frame of a fixed size, it is possible to solve the problem that as the number of frames increases, useless redundant header information increases or the number of code bit in waveform samples.

[72] Кроме того, что касается, например, отрезка атаки из первой половины сэмплов волновой формы, то сохраняются данные о громкости звука, в которых громкость звука такая же, как громкость исходного звука, а что касается второй половины сэмплов волновой формы, то сохраняются данные о громкости звука, в которых громкость звука ниже, чем громкость исходного звука, поскольку в соответствии с описанным выше вариантом осуществления поправочный параметр уровня громкости сохраняется в качестве элемента информации заголовка в области вспомогательной информации кадра. Таким образом, можно сохранять отрезок атаки из первой половины сэмплов волновой формы с высоким качеством на основании низкого коэффициента сжатия и можно сохранять вторую половину сэмплов волновой формы на основании высокого коэффициента сжатия.[72] In addition, as regards, for example, the segment of attack from the first half of the waveform samples, the sound volume data is saved in which the sound volume is the same as the volume of the original sound, and as for the second half of the waveform samples, sound volume data in which the sound volume is lower than the volume of the original sound, because according to the embodiment described above, the volume level correction parameter is stored as a title information element in the sub area Noah frame information. Thus, it is possible to save the attack segment from the first half of the waveform samples with high quality based on the low compression ratio, and it is possible to save the second half of the waveform samples based on the high compression ratio.

[72] Кроме того, в случае, когда устройство 150 для извлечения данных о волновой форме извлекает из запоминающего устройства сжатые данные о волновой форме, при использовании поправочного параметра громкости звука можно возвращать громкость звука из данных о волновой форме к громкости исходного звука.[72] Furthermore, in the case where the waveform data extracting apparatus 150 retrieves the compressed waveform data from the storage device, using the sound volume correction parameter, the sound volume from the waveform data can be returned to the volume of the original sound.

[73] Кроме того, согласно представленному варианту осуществления, если общая эффективная длина в битах первой половины кадра не совпадает с общей эффективной длиной в битах второй половины кадра, размер одного кадра задается равным 256 байтам (кадра), включая 4 байта для области вспомогательной информации и 252 байта для области данных; тогда как если общая эффективная длина в битах первой половины кадра совпадает с общей эффективной длиной в битах второй половины кадра, размер одного кадра задается равным 512 байтам (кадра), включая 4 байта для области вспомогательной информации и 508 байтов для области данных. Однако настоящее изобретение не ограничено этим и также возможно, что в случае, когда предварительно определенное или большее количество последовательных сэмплов имеют одинаковую длину в битах, равную длине квантования в битах, определяемой блоком 13а определения длины квантования в битах, блок 13b определения размера определяет 512 байтов (кадра) как размер одного кадра; тогда как в случае, когда предварительно определенное или большее количество последовательных сэмплов не имеют одинаковой длины в битах, равной длине квантования в битах, определяемой блоком 13а определения длины квантования в битах, блок 13b определения размера определяет 256 байтов (кадра) как размер одного кадра.[73] Furthermore, according to the presented embodiment, if the total effective bit length of the first half of the frame does not match the total effective bit length of the second half of the frame, the size of one frame is set to 256 bytes (frame), including 4 bytes for the auxiliary information area and 252 bytes for the data area; whereas if the total effective bit length of the first half of the frame matches the total effective bit length of the second half of the frame, the size of one frame is set to 512 bytes (frames), including 4 bytes for the auxiliary information area and 508 bytes for the data area. However, the present invention is not limited to this, and it is also possible that in the case where a predetermined or more consecutive samples have the same bit length equal to the quantization length in bits determined by the quantization length determination unit 13 a, the size determination unit 13 b determines 512 bytes (frame) as the size of one frame; whereas in the case when a predetermined or more consecutive samples do not have the same bit length equal to the quantization length in bits determined by the quantization length determination unit 13 a, the size determining unit 13 b determines 256 bytes (frames) as the size of one frame.

[74] Иначе говоря, также можно использовать несложный способ, в котором на отрезке, на котором волновая форма изменяется быстро, блок 13b определения размера определяет 256 байтов (кадра) как размер одного кадра, поскольку предварительно определенное или большее количество последовательных сэмплов не имеют одинаковой длины в битах, равной длине квантования в битах, определяемой блоком 13а определения длины квантования в битах, а на отрезке, на котором волновая форма изменяется медленно, блок 13b определения размера определяет 512 байтов (кадра) как размер одного кадра, поскольку предварительно определенное или большее количество последовательных сэмплов имеют одинаковую в длину в битах, равную длине квантования в битах, определяемой блоком 13а определения длины квантования в битах.[74] In other words, it is also possible to use a simple method in which, in the interval in which the waveform changes rapidly, the size determining unit 13b determines 256 bytes (frames) as the size of one frame, since the predetermined or more consecutive samples do not have the same the length in bits equal to the quantization length in bits determined by the quantization length determination unit 13 a in bits, and on the interval where the waveform changes slowly, the size determination unit 13 b determines 512 bytes (frame) k the size of one frame, since a predetermined or more consecutive samples have the same bit length equal to the quantization length in bits determined by the quantization length determination unit 13 a in bits.

[75] Дополнительные преимущества и модификации без труда придут в голову специалистам в данной области техники. Поэтому изобретение в его широких аспектах не ограничено конкретными подробностями и характерными вариантами осуществления, показанными и описанными в этой заявке. В соответствии с этим различные модификации могут быть сделаны без отступления от сущности или объема общей идеи изобретения, обозначенной в прилагаемой формуле изобретения и эквивалентах ее.[75] Additional advantages and modifications will easily come to mind specialists in this field of technology. Therefore, the invention in its broad aspects is not limited to the specific details and characteristic embodiments shown and described in this application. In accordance with this, various modifications can be made without departing from the essence or scope of the general idea of the invention indicated in the attached claims and its equivalents.

Claims (78)

1. Устройство для сохранения данных о волновой форме, содержащее:1. A device for storing waveform data, comprising: блок определения, который определяет один из по меньшей мере первого и второго кадров на основании изменения эффективных длин в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, при этом заданное количество сжатых сэмплов волновой формы, подлежащих сохранению в первом кадре, отличается от заданного количества сжатых сэмплов волновой формы, подлежащих сохранению во втором кадре; a determining unit that determines one of at least the first and second frames based on the change in effective bit lengths of the individual compressed waveform samples to be stored, while the predetermined number of compressed waveform samples to be stored in the first frame is different from the specified number of compressed waveform samples to be stored in the second frame; блок образования информации заголовка образует элемент информации заголовка для каждого кадра, основанный на элементе данных об идентификаторе способа сжатия;a header information generation unit forms a title information element for each frame based on a compression method identifier data element; блок сохранения вспомогательной информации, в котором сохраняются данные атрибутов кадра, включающие в себя значение общей эффективной длины в битах сжатых сэмплов волновой формы и тип кадра для идентификации одного из первого и второго кадров, в области вспомогательной информации первого или второго кадра, определяемого блоком определения, причем область вспомогательной информации задана в запоминающем устройстве; иan auxiliary information storage unit in which frame attribute data is stored, including the total effective bit length of compressed waveform samples and a frame type for identifying one of the first and second frames, in the auxiliary information area of the first or second frame determined by the determining unit, moreover, the auxiliary information area is set in the storage device; and блок сохранения сэмплов волновой формы, в котором сохраняются сжатые сэмплы волновой формы в области данных первого или второго кадра, определяемого блоком определения, на основании заданного количества сжатых сэмплов волновой формы в соответствии со значением общей эффективной длины в битах данных атрибутов кадра, сохраняемых в области вспомогательной информации, причем область данных задана в запоминающем устройстве.a waveform sample storage unit in which compressed waveform samples are stored in the data area of the first or second frame determined by the determination unit, based on a predetermined number of compressed waveform samples in accordance with the value of the total effective length in bits of the frame attribute data stored in the auxiliary region information, and the data area is set in the storage device. 2. Устройство для сохранения данных о волновой форме по п. 1, в котором:2. A device for storing waveform data according to claim 1, in which: в случае, когда эффективные длины в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, изменяются, блок определения определяет кадр небольшого размера из первого и второго кадров; иin the case where the effective bit lengths of the individual compressed waveform samples to be stored are changed, the determination unit determines a small-sized frame from the first and second frames; and в случае, когда эффективные длины в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, не изменяются, блок определения определяет кадр большого размера из первого и второго кадров.in the case where the effective bit lengths of the individual compressed waveform samples to be stored are not changed, the determination unit determines a large frame from the first and second frames. 3. Устройство для сохранения данных о волновой форме по п. 1, в котором:3. A device for storing waveform data according to claim 1, in which: блок определения заранее виртуально обозначает первую половину кадра и вторую половину кадра; иthe determination unit in advance virtually identifies the first half of the frame and the second half of the frame; and блок определения включает в себя:the determination unit includes: блок формирования первой половины кадра, который извлекает максимальную эффективную длину в битах из эффективных длин в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, в качестве первой общей эффективной длины в битах и который формирует первую половину кадра, когда количество извлекаемых сэмплов волновой формы достигает сохраняемого количества сжатых сэмплов волновой формы в первой половине кадра, при этом сохраняемое количество сжатых сэмплов волновой формы определяется на основании извлекаемой первой общей эффективной длины в битах;a first half frame generation unit that extracts the maximum effective bit length from the effective bit lengths of the individual compressed waveform samples to be stored as the first total effective bit length and which forms the first half of the frame when the number of waveform samples to be extracted reaches the stored the number of compressed waveform samples in the first half of the frame, while the stored number of compressed waveform samples is determined based on the first bschey effective length in bits; блок формирования второй половины кадра, который извлекает максимальную эффективную длину в битах из эффективных длин в битах последующих сжатых сэмплов волновой формы, подлежащих сохранению, которые подаются после сжатых сэмплов волновой формы из блока формирования первой половины кадра, в качестве второй общей эффективной длины в битах и который формирует вторую половину кадра, когда количество извлекаемых сэмплов волновой формы достигает сохраняемого количества сжатых сэмплов волновой формы во второй половине кадра, при этом сохраняемое количество сжатых сэмплов волновой формы определяется на основании извлекаемой второй общей эффективной длины в битах;a second half-frame generation unit that extracts the maximum effective bit length from the effective bit lengths of subsequent compressed waveform samples to be stored, which are supplied after the compressed waveform samples from the first half-frame generation block, as the second total effective bit length, and which forms the second half of the frame when the number of extracted waveform samples reaches the stored number of compressed waveform samples in the second half of the frame, while the estimated number of compressed waveform samples is determined based on the extracted second total effective bit length; первый блок образования данных атрибутов кадра, который образует данные атрибутов кадра, включающие в себя тип кадра, представляющий кадр большого размера из первого и второго кадров, и вторую общую эффективную длину в битах, извлекаемую блоком формирования второй половины кадра, в случае, когда первая общая эффективная длина в битах, извлекаемая блоком формирования первой половины кадра, совпадает с второй общей эффективной длиной в битах, извлекаемой блоком формирования второй половины кадра; иa first frame attribute data generating unit that generates frame attribute data including a frame type representing a large frame from the first and second frames and a second total effective bit length extracted by the second half frame generating unit in the case where the first common the effective bit length extracted by the block forming the first half of the frame coincides with the second total effective bit length extracted by the block forming the second half of the frame; and второй блок образования данных атрибутов кадра, который образует данные атрибутов кадра, включающие в себя тип кадра, представляющий кадр небольшого размера из первого и второго кадров, и первую общую эффективную длину в битах, извлекаемую блоком формирования первой половины кадра, в случае, когда первая общая эффективная длина в битах, извлекаемая блоком формирования первой половины кадра, не совпадает со второй общей эффективной длиной в битах, извлекаемой блоком формирования второй половины кадра.a second block attribute data generating unit, which generates frame attribute data including a frame type representing a small-sized frame from the first and second frames, and a first total effective bit length extracted by the first half frame generating unit, in the case where the first common the effective bit length extracted by the block forming the first half of the frame does not match the second total effective bit length extracted by the block forming the second half of the frame. 4. Устройство для сохранения данных о волновой форме по п. 1, в котором:4. A device for storing waveform data according to claim 1, in which: блок сохранения сэмплов волновой формы сохраняет сжатые сэмплы волновой формы, которые получаются кодированием индивидуальных сэмплов волновой формы на основании значения общей эффективной длины в битах данных атрибутов кадра, сохраняемых в области вспомогательной информации, в области данных первого или второго кадра, определяемого блоком определения.the waveform sample storage unit stores compressed waveform samples, which are obtained by encoding individual waveform samples based on the value of the total effective length in bits of the data of the frame attributes stored in the auxiliary information area in the data area of the first or second frame determined by the determination unit. 5. Устройство для сохранения данных о волновой форме, содержащее:5. A device for storing waveform data, comprising: блок определения, который определяет один кадр из множества кадров на основании битовой длины сжатых сэмплов волновой формы, которые подаются, при этом размеры кадров из множества кадров для сохранения сжатых сэмплов волновой формы отличаются друг от друга; a determining unit that determines one frame from a plurality of frames based on the bit length of the compressed waveform samples that are supplied, while the frame sizes from the plurality of frames for storing the compressed waveform samples are different from each other; блок образования информации заголовка образует элемент информации заголовка для каждого кадра, основанный на элементе данных об идентификаторе способа сжатия; иa header information generation unit forms a title information element for each frame based on a compression method identifier data element; and блок сохранения данных, который сохраняет по меньшей мере данные о длине в битах, представляющие длину в битах сжатых сэмплов волновой формы, и данные атрибутов кадра, представляющие один кадр, определяемый блоком определения, в области вспомогательной информации, заданной в запоминающем устройстве, в котором задана область данных, имеющая размер, основанный на данных атрибутов кадра, сохраняемых в области вспомогательной информации в запоминающем устройстве, и который сохраняет сжатые сэмплы волновой формы в области данных, образованной в запоминающем устройстве.a data storage unit that stores at least bit length data representing the bit length of the compressed waveform samples and frame attribute data representing one frame determined by the determination unit in the auxiliary information area specified in the storage device in which a data region having a size based on the data of the frame attributes stored in the auxiliary information area in the storage device, and which stores the compressed waveform samples in the data region formed oh in the storage device. 6. Устройство для сохранения данных о волновой форме по п. 5, в котором:6. A device for storing waveform data according to claim 5, in which: блок определения включает в себя:the determination unit includes: блок определения последовательности, который определяет, имеют ли предварительно определенное или большее количество последовательных сжатых сэмплов волновой формы одинаковую битовую длину, равную длине квантования в битах данных об ошибках прогнозирования, получаемых адаптивным прогнозированием сэмплов исходной волновой формы; иa sequence determination unit that determines whether a predetermined or more consecutive waveform compressed samples have the same bit length equal to the quantization length in bits of prediction error data obtained by adaptive prediction of samples of the original waveform; and блок определения размера, который определяет небольшой размер области данных среди различных размеров области данных в случае, когда блок определения последовательности определяет, что предварительно определенное или большее количество последовательных сжатых сэмплов волновой формы не имеют одинаковой длины в битах, и который определяет большой размер области данных в случае, когда блок определения последовательности определяет, что предварительно определенное или большее количество последовательных сжатых сэмплов волновой формы имеют одинаковую длину в битах.a size determining unit that determines a small size of the data area among different sizes of the data area in the case where the sequence determining unit determines that a predetermined or more consecutive waveform compressed samples do not have the same bit length, and which determines the large size of the data area in case when the sequence determination unit determines that a predetermined or more consecutive waveform compressed samples have the same bit length. 7. Способ сохранения данных о волновой форме, выполняемый устройством для сохранения данных о волновой форме, содержащий этапы, на которых:7. A method for storing waveform data performed by a device for storing waveform data, comprising the steps of: определяют один из по меньшей первого и второго кадров на основании изменения эффективных длин в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, при этом заданное количество сжатых сэмплов волновой формы, подлежащих сохранению в первом кадре, отличается от заданного количества сжатых сэмплов волновой формы, подлежащих сохранению во втором кадре; one of the at least first and second frames is determined based on the change in effective bit lengths of the individual compressed waveform samples to be stored, while the predetermined number of compressed waveform samples to be stored in the first frame differs from the specified number of compressed waveform samples to be save in the second frame; образуют элемент информации заголовка для каждого кадра, основанный на элементе данных об идентификаторе способа сжатия;forming a header information element for each frame based on a compression method identifier data element; сохраняют данные атрибутов кадра, включающие в себя значение общей эффективной длины в битах сжатых сэмплов волновой формы и тип кадра для идентификации одного из первого и второго кадров, в области вспомогательной информации первого или второго кадра, определенного на этапе определения, причем область вспомогательной информации задана в запоминающем устройстве; иsave the attribute data of the frame, including the value of the total effective bit length of the compressed waveform samples and the type of frame for identifying one of the first and second frames, in the auxiliary information area of the first or second frame determined in the determination step, and the auxiliary information area is set to a storage device; and сохраняют как многочисленные сжатые сэмплы волновой формы, так и заданное количество сэмплов в соответствии со значением общей эффективной длины в битах данных атрибутов кадра, сохраняемых в области вспомогательной информации, в области данных первого или второго кадра, определенного на этапе определения, причем область данных задана в запоминающем устройстве.both numerous compressed waveform samples and a predetermined number of samples are stored in accordance with the value of the total effective bit length of the frame attributes data stored in the auxiliary information area in the data area of the first or second frame determined in the determination step, the data area being set to storage device. 8. Способ сохранения данных о волновой форме по п. 7, дополнительно содержащий этапы, на которых:8. A method for storing waveform data according to claim 7, further comprising the steps of: определяют кадр небольшого размера из первого и второго кадров в случае, когда эффективные длины в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, изменяются; иdetermining a small-sized frame from the first and second frames in the case where the effective bit lengths of the individual compressed waveform samples to be stored are changed; and определяют кадр большого размера из первого и второго кадров в случае, когда эффективные длины в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, не изменяются.determining a large frame from the first and second frames in the case where the effective bit lengths of the individual compressed waveform samples to be stored are not changed. 9. Способ сохранения данных о волновой форме по п. 7, дополнительно содержащий этапы, на которых:9. A method for storing waveform data according to claim 7, further comprising the steps of: обозначают заранее первую половину кадра и вторую половину кадра;indicate in advance the first half of the frame and the second half of the frame; извлекают максимальную эффективную длину в битах из эффективных длин в битах индивидуальных сжатых сэмплов волновой формы, подлежащих сохранению, в качестве первой общей эффективной длины в битах и формируют первую половину кадра, когда количество извлекаемых сэмплов волновой формы достигает сохраняемого количества сжатых сэмплов волновой формы в первой половине кадра, при этом сохраняемое количество сжатых сэмплов волновой формы определяется на основании извлекаемой первой общей эффективной длины в битах;extract the maximum effective bit length from the effective bit lengths of the individual compressed waveform samples to be stored as the first total effective bit length and form the first half of the frame when the number of waveform samples to be extracted reaches the stored number of waveform compressed samples in the first half frame, while the stored number of compressed waveform samples is determined based on the extracted first total effective length in bits; извлекают максимальную эффективную длину в битах из эффективных длин в битах последовательных сжатых сэмплов волновой формы, подлежащих сохранению, которые подаются после сжатых сэмплов волновой формы первой половины кадра, в качестве второй общей эффективной длины в битах и формируют вторую половину кадра, когда количество извлекаемых сэмплов волновой формы достигает сохраняемого количества сжатых сэмплов волновой формы во второй половине кадра, при этом сохраняемое количество сжатых сэмплов волновой формы определяется на основании извлекаемой второй общей эффективной длины в битах;extract the maximum effective bit length from the effective bit lengths of successive compressed waveform samples to be stored, which are supplied after the compressed waveform samples of the first half of the frame, as the second total effective bit length and form the second half of the frame when the number of waveform samples to be extracted the shape reaches the stored number of compressed waveform samples in the second half of the frame, while the stored number of compressed waveform samples is determined based on and extracted a second total effective length in bits; образуют данные атрибутов кадра, включающие в себя тип кадра, представляющий кадр большого размера из первого и второго кадров, и вторую общую эффективную длину в битах, извлекаемую во время формирования второй половины кадра, в случае, когда первая общая эффективная длина в битах, извлекаемая во время формирования первой половины кадра, совпадает с второй общей эффективной длиной в битах, извлекаемой во время формирования второй половины кадра; иform frame attribute data including a frame type representing a large frame from the first and second frames, and a second total effective bit length extracted during the formation of the second half of the frame, in the case where the first total effective bit length extracted in the formation time of the first half of the frame, coincides with the second total effective bit length extracted during the formation of the second half of the frame; and образуют данные атрибутов кадра, включающие в себя тип кадра, представляющий кадр небольшого размера из первого и второго кадров, и первую общую эффективную длину в битах, извлекаемую во время формирования первой половины кадра, в случае, когда первая общая эффективная длина в битах, извлекаемая во время формирования первой половины кадра, не совпадает с второй общей эффективной длиной в битах, извлекаемой во время формирования второй половины кадра.form frame attribute data including a frame type representing a small-sized frame from the first and second frames, and a first total effective bit length extracted during the formation of the first half of the frame, in the case where the first total effective bit length extracted in the formation time of the first half of the frame does not coincide with the second total effective bit length extracted during the formation of the second half of the frame. 10. Способ сохранения данных о волновой форме, выполняемый устройством сохранения для данных о волновой форме, содержащий этапы, на которых:10. A method for storing waveform data performed by a storage device for waveform data, comprising the steps of: определяют размер области кадра для сохранения сжатых сэмплов волновой формы на основании длины в битах сжатых сэмплов волновой формы, которые подаются;determining a frame region size for storing compressed waveform samples based on a bit length of compressed waveform samples that are supplied; образуют элемент информации заголовка для каждого кадра, основанный на элементе данных об идентификаторе способа сжатия;forming a header information element for each frame based on a compression method identifier data element; сохраняют по меньшей мере данные о длине в битах, представляющие длину в битах сжатых сэмплов волновой формы, и данных о размере области данных, представляющих размер области, определенный на этапе определения, в области вспомогательной информации, заданной в запоминающем устройстве; иstoring at least bit length data representing the bit length of the compressed waveform samples and data about the size of the data region representing the size of the region determined in the determination step in the auxiliary information area specified in the storage device; and задают область данных, имеющую размер области, представленный данными о размере области данных, сохраняемыми в области вспомогательной информации, и сохраняют сжатые сэмплы волновой формы в заданной области данных, будучи заданными.set the data region having the size of the region represented by data about the size of the data region stored in the area of auxiliary information, and save the compressed waveform samples in a given data region, when given. 11. Способ сохранения данных о волновой форме по п. 10, дополнительно содержащий этапы, на которых:11. A method for storing waveform data according to claim 10, further comprising the steps of: определяют, имеют ли предварительно определенное или большее количество последовательных сжатых сэмплов волновой формы одинаковую длину в битах, равную длине квантования в битах данных об ошибках прогнозирования, получаемых адаптивным прогнозированием сэмплов исходной волновой формы;determining whether a predetermined or more consecutive waveform compressed samples have the same bit length equal to the quantization length in bits of prediction error data obtained by adaptive prediction of samples of the original waveform; определяют небольшой размер области данных среди различных размеров области данных в случае определения, что предварительно определенное или большее количество последовательных сжатых сэмплов волновой формы не имеют одинаковой длины в битах; иdetermining a small size of the data region among the various sizes of the data region when it is determined that a predetermined or more consecutive waveform compressed samples do not have the same bit length; and определяют большой размер данных из по меньшей мере различных размеров области данных в случае определения, что предварительно определенное или большее количество последовательных сжатых сэмплов волновой формы имеют одинаковую длину в битах.determining a large data size from at least different sizes of the data region if it is determined that a predetermined or more consecutive waveform compressed samples have the same bit length. 12. Устройство для извлечения данных о волновой форме, содержащее:12. A device for extracting waveform data, comprising: запоминающее устройство, имеющее структуру данных о волновой форме, причем структура данных о волновой форме сконфигурирована множеством типов кадров, имеющих различные размеры данных, каждый из множества типов кадров включает в себя область вспомогательной информации и область данных, причем область вспомогательной информации включает в себя область для сохранения данных об общей эффективной длине в битах, указывающую значение общей эффективной длины в битах для сжатых сэмплов волновой формы, и область для сохранения идентификатора для идентификации одного из множества типов кадров, причем область данных представляет собой область для сохранения извлекаемых сэмплов волновой формы, которые извлекаются из сжатых сэмплов волновой формы в соответствии со значением общей эффективной длины в битах, и количество извлекаемых сэмплов волновой формы определяется на основании значения общей эффективной длины в битах и одного из множества типов кадров, который идентифицируется идентификатором;a storage device having a waveform data structure, wherein the waveform data structure is configured with a plurality of frame types having different data sizes, each of the plurality of frame types includes an auxiliary information area and a data area, wherein the auxiliary information area includes an area for storing data on the total effective length in bits, indicating the value of the total effective length in bits for compressed waveform samples, and an area for storing the identifier for identifying one of a plurality of frame types, the data area being a region for storing retrieved waveform samples that are retrieved from compressed waveform samples in accordance with the total effective length in bits, and the number of retrieved waveform samples is determined based on the value of the total effective bit lengths and one of a plurality of frame types that is identified by an identifier; блок образования адресных данных, который образует адресные данные на основании значения общей эффективной длины в битах, считываемой из области вспомогательной информации назначенного кадра, сохраняемого в запоминающем устройстве;an address data generation unit that generates address data based on the value of the total effective bit length read from the auxiliary information area of the assigned frame stored in the storage device; блок извлечения, который извлекает извлекаемые сэмплы волновой формы из области данных назначенного кадра в соответствии с адресными данными, образованными блоком образования адресных данных; иan extraction unit that extracts the extracted waveform samples from the data area of the assigned frame in accordance with the address data formed by the address data generation unit; and блок назначения кадра, который назначает следующий кадр, подлежащий извлечению после извлечения сэмплов волновой формы блоком извлечения.a frame assignment unit that assigns the next frame to be extracted after the waveform samples are extracted by the extraction unit. 13. Устройство для извлечения данных о волновой форме, содержащее:13. A device for extracting waveform data, comprising: запоминающее устройство, имеющее структуру данных о волновой форме, причем структура данных о волновой форме сконфигурирована посредством по меньшей мере первого и второго кадров, при этом заданное количество сжатых сэмплов волновой формы, подлежащих сохранению в первом кадре, отличается от заданного количества сэмплов волновой формы, подлежащих сохранению во втором кадре; каждый из первого и второго кадров включает в себя область вспомогательной информации и область данных; область вспомогательной информации имеет данные атрибутов кадра, включающие в себя область для сохранения данных об общей эффективной длине в битах, указывающих значение общей эффективной длины в битах для сжатых сэмплов волновой формы и область для сохранения идентификатора для идентификации одного из первого и второго кадров, причем область данных является областью для сохранения как многих сжатых сэмплов волновой формы, так и заданного количества сжатых сэмплов волновой формы, определенных в соответствии с одним из первого или второго кадром, идентифицируемым идентификатором и значением общей эффективной длины в битах;a storage device having a waveform data structure, wherein the waveform data structure is configured by at least the first and second frames, wherein the predetermined number of compressed waveform samples to be stored in the first frame is different from the predetermined number of waveform samples to be save in the second frame; each of the first and second frames includes an auxiliary information area and a data area; the auxiliary information area has frame attribute data including an area for storing data on the total effective bit length indicating a value of the total effective bit length for compressed waveform samples and an area for storing an identifier for identifying one of the first and second frames, the region data is an area for storing both many compressed waveform samples and a given number of compressed waveform samples determined in accordance with one of the first or second th frame identifier identifiable value and the total effective length in bits; блок считывания, который последовательно считывает сжатые сэмплы волновой формы из области данных назначенного кадра в соответствии с адресными данными на основании значения общей эффективной длины в битах данных атрибутов кадра, сохраняемых в области вспомогательной информации назначенного первого или второго кадра, сохраняемого в запоминающем устройстве; иa reading unit that sequentially reads the compressed waveform samples from the data area of the assigned frame in accordance with the address data based on the value of the total effective bit length of the frame attributes data stored in the auxiliary information area of the assigned first or second frame stored in the storage device; and блок назначения следующего кадра, который назначает один из первого и второго кадров в качестве следующего кадра, подлежащего считыванию после считывания сжатых сэмплов волновой формы назначенного кадра блоком считывания.a next frame assignment unit that assigns one of the first and second frames as the next frame to be read after reading the compressed waveform samples of the assigned frame by the reading unit. 14. Способ извлечения данных о волновой форме, выполняемый устройством для извлечения данных о волновой форме, в котором:14. A method for extracting waveform data performed by a device for extracting waveform data, wherein: устройство для извлечения данных о волновой форме имеет структуру данных о волновой форме, причем структура данных о волновой форме сконфигурирована множеством типов кадров, имеющих различные размеры данных, каждый из множества типов кадров включает в себя область вспомогательной информации и область данных, причем область вспомогательной информации включает в себя область для сохранения данных об общей эффективной длине в битах, указывающую значение общей эффективной длины в битах для сжатых сэмплов волновой формы, и область для сохранения идентификатора для идентификации одного из множества типов кадров, причем область данных представляет собой область для сохранения извлекаемых сэмплов волновой формы, которые извлекаются из сжатых сэмплов волновой формы в соответствии со значением общей эффективной длины в битах, и количество извлекаемых сэмплов волновой формы определяется на основании значения общей эффективной длины в битах и одного из множества типов кадров, который идентифицируется идентификатором, и при этом способ извлечения данных о волновой форме содержит этапы, на которых:the device for extracting waveform data has a waveform data structure, wherein the waveform data structure is configured with a plurality of frame types having different data sizes, each of the plurality of frame types includes an auxiliary information area and a data area, wherein the auxiliary information area includes an area for storing data on the total effective length in bits, indicating the value of the total effective length in bits for compressed waveform samples, and an area for storing an identifier for identifying one of a plurality of frame types, the data area being a region for storing retrieved waveform samples that are retrieved from compressed waveform samples in accordance with the total effective bit length, and the number of retrieved waveform samples is determined based on the value the total effective length in bits and one of the many types of frames that is identified by the identifier, and wherein the method of extracting data about the waveform of Holds stages in which: образуют адресные данные на основании значения общей эффективной длины в битах, считываемых из области вспомогательной информации назначенного кадра, сохраняемого в запоминающем устройстве;generate address data based on the value of the total effective length in bits read from the auxiliary information area of the assigned frame stored in the storage device; извлекают извлекаемые сэмплы волновой формы из области данных назначенного кадра в соответствии с образованными адресными данными; иextracting extracted waveform samples from the data area of the assigned frame in accordance with the generated address data; and назначают следующий кадр, подлежащий извлечению после извлечения извлекаемых сэмплов волновой формы.designate the next frame to be extracted after extraction of the extracted waveform samples. 15. Способ извлечения данных о волновой форме устройства для извлечения данных о волновой форме, в котором:15. A method of extracting waveform data of a device for extracting waveform data, wherein: устройство для извлечения данных о волновой форме имеет структуру данных о волновой форме, причем структура данных о волновой форме сконфигурирована посредством по меньшей мере первого и второго кадров, при этом заданное количество сжатых сэмплов волновой формы, подлежащих сохранению в первом кадре, отличается от заданного количества сэмплов волновой формы, подлежащих сохранению во втором кадре; каждый из первого и второго кадров включает в себя область вспомогательной информации и область данных; область вспомогательной информации имеет данные атрибутов кадра, включающие в себя область для сохранения данных об общей эффективной длине в битах, указывающих значение общей эффективной длины в битах для сжатых сэмплов волновой формы и область для сохранения идентификатора для идентификации одного из первого и второго кадров, причем область данных является областью для сохранения как многих сжатых сэмплов волновой формы, так и заданного количества сжатых сэмплов волновой формы, определенных в соответствии с одним из первого или второго кадром, идентифицируемым идентификатором и значением общей эффективной длины в битах, при этом способ извлечения данных о волновой форме содержит этапы, на которых:the device for extracting waveform data has a waveform data structure, wherein the waveform data structure is configured by at least the first and second frames, and the predetermined number of compressed waveform samples to be stored in the first frame is different from the predetermined number of samples waveform to be stored in the second frame; each of the first and second frames includes an auxiliary information area and a data area; the auxiliary information area has frame attribute data including an area for storing data on the total effective bit length indicating a value of the total effective bit length for compressed waveform samples and an area for storing an identifier for identifying one of the first and second frames, the region data is an area for storing both many compressed waveform samples and a given number of compressed waveform samples determined in accordance with one of the first or second th frame identifier identifiable value and the total effective length in bits, and the extraction method of the waveform data comprises the steps of: последовательно считывают сжатые сэмплы волновой формы из области данных назначенного кадра в соответствии с адресными данными на основании значения общей эффективной длины в битах данных атрибутов кадра, сохраняемых в области вспомогательной информации назначенного первого или второго кадра в запоминающем устройстве; иsequentially reading the compressed waveform samples from the data area of the assigned frame in accordance with the address data based on the value of the total effective bit length of the frame attributes data stored in the auxiliary information area of the assigned first or second frame in the storage device; and назначают один из первого и второго кадров в качестве следующего кадра, подлежащего считыванию после считывания сжатых сэмплов волновой формы назначенного кадра.designate one of the first and second frames as the next frame to be read after reading the compressed waveform samples of the assigned frame. 16. Электронный музыкальный инструмент, содержащий:16. An electronic musical instrument comprising: устройство для извлечения данных о волновой форме по п. 12;a device for extracting waveform data according to claim 12; блок ввода исполнительских характеристик музыкального инструмента, который образует информацию об исполнительских характеристиках музыкального инструмента в соответствии с операциями воспроизведения;an input unit for the performance of the musical instrument, which generates information about the performance of the musical instrument in accordance with the playback operations; блок обработки, который выполняет процесс инструктирования для инструктирования образования музыки в соответствии с операциями воспроизведения и процесс управления для управления устройством для извлечения данных о волновой форме, чтобы устройство для извлечения данных о волновой форме извлекало необходимые сэмплы волновой формы из запоминающего устройства в ответ на процесс инструктирования, иa processing unit that performs an instruction process for instructing the formation of music in accordance with reproduction operations and a control process for controlling a device for extracting waveform data, so that the device for extracting waveform data extracts necessary waveform samples from the storage device in response to the instruction process , and звукообразующий блок, который образует музыкальный звук на основании данных о волновой форме, получаемых при декомпрессии сэмплов волновой формы, отбираемых из устройства для извлечения данных о волновой форме.a sound generating unit that generates a musical sound based on waveform data obtained by decompressing waveform samples taken from the waveform data extracting device. 17. Электронный музыкальный инструмент по п. 16, в котором:17. An electronic musical instrument according to claim 16, in which: звукообразующий блок образует звук на основании сэмплов волновой формы, восстанавливаемых в соответствии с поправочным параметром громкости звука, когда устройство для извлечения данных о волновой форме извлекает поправочный параметр громкости звука из области вспомогательной информации кадра.the sound generating unit generates sound based on waveform samples reconstructed in accordance with the sound volume correction parameter when the waveform data extractor extracts the sound volume correction parameter from the auxiliary information area of the frame. 18. Электронный музыкальный инструмент, содержащий:18. An electronic musical instrument comprising: устройство для извлечения данных о волновой форме по п. 13;a device for extracting waveform data according to claim 13; блок ввода исполнительских характеристик музыкального инструмента, который образует информацию об исполнительских характеристиках музыкального инструмента в соответствии с операциями воспроизведения;an input unit for the performance of the musical instrument, which generates information about the performance of the musical instrument in accordance with the playback operations; блок обработки, который выполняет процесс инструктирования образованием музыки в соответствии с операциями воспроизведения и процесс управления устройством для извлечения данных о волновой форме, чтобы устройство для извлечения данных о волновой форме извлекало необходимые сэмплы волновой формы из запоминающего устройства в ответ на процесс инструктирования, иa processing unit that performs the instructing process for generating music in accordance with the reproduction operations and the control process of the device for extracting waveform data so that the device for extracting waveform data retrieves the necessary waveform samples from the storage device in response to the instructing process, and звукообразующий блок, который образует музыкальный звук на основании данных о волновой форме, получаемых при декомпрессии сэмплов волновой формы, отбираемых из устройства для извлечения данных о волновой форме.a sound generating unit that generates a musical sound based on waveform data obtained by decompressing waveform samples taken from the waveform data extracting device.
RU2016136820A 2015-09-15 2016-09-14 Waveform data structure, waveform data storage device, waveform data storing method, waveform data extracting device, waveform data extracting method and electronic musical instrument RU2662633C2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2015182212 2015-09-15
JP2015-182212 2015-09-15
JP2016152124A JP6146686B2 (en) 2015-09-15 2016-08-02 Data structure, data storage device, data retrieval device, and electronic musical instrument
JP2016-152124 2016-08-02

Publications (3)

Publication Number Publication Date
RU2016136820A RU2016136820A (en) 2018-03-19
RU2016136820A3 RU2016136820A3 (en) 2018-03-19
RU2662633C2 true RU2662633C2 (en) 2018-07-26

Family

ID=58390130

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2016136820A RU2662633C2 (en) 2015-09-15 2016-09-14 Waveform data structure, waveform data storage device, waveform data storing method, waveform data extracting device, waveform data extracting method and electronic musical instrument

Country Status (3)

Country Link
JP (2) JP6146686B2 (en)
CN (1) CN106875933B (en)
RU (1) RU2662633C2 (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5727085A (en) * 1994-09-22 1998-03-10 Nippon Precision Circuits Inc. Waveform data compression apparatus
EP1304680A2 (en) * 2001-09-13 2003-04-23 Yamaha Corporation Apparatus and method for synthesizing a plurality of waveforms in synchronized manner
US6721711B1 (en) * 1999-10-18 2004-04-13 Roland Corporation Audio waveform reproduction apparatus
JP3826870B2 (en) * 2002-10-01 2006-09-27 ヤマハ株式会社 Compressed data structure, waveform generation device, and waveform storage device
US7259315B2 (en) * 2001-03-27 2007-08-21 Yamaha Corporation Waveform production method and apparatus
RU68691U1 (en) * 2007-06-15 2007-11-27 Илларион Борисович Полумисков VOICE TRANSFORMATION SYSTEM IN THE SOUND OF MUSICAL INSTRUMENTS
RU2314502C2 (en) * 2004-02-26 2008-01-10 Эл Джи Электроникс Инк. Method and device for processing sound
US7378586B2 (en) * 2002-10-01 2008-05-27 Yamaha Corporation Compressed data structure and apparatus and method related thereto
EP1688909B1 (en) * 1999-09-27 2014-06-25 Yamaha Corporation Method and apparatus for producing a waveform based on a style-of-rendition module

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2745866B2 (en) * 1991-06-09 1998-04-28 ヤマハ株式会社 Digital data compression method for waveform data and tone control, and waveform data reproducing apparatus
US5347478A (en) * 1991-06-09 1994-09-13 Yamaha Corporation Method of and device for compressing and reproducing waveform data
JPH06309895A (en) * 1993-04-28 1994-11-04 Mitsubishi Electric Corp Semiconductor memory audio recording and reproducing device
US7308406B2 (en) * 2001-08-17 2007-12-11 Broadcom Corporation Method and system for a waveform attenuation technique for predictive speech coding based on extrapolation of speech waveform
JP3826878B2 (en) * 2002-11-19 2006-09-27 コニカミノルタフォトイメージング株式会社 Imaging device
JP4639966B2 (en) * 2005-05-31 2011-02-23 ヤマハ株式会社 Audio data compression method, audio data compression circuit, and audio data expansion circuit
JP4454664B2 (en) * 2005-09-05 2010-04-21 富士通株式会社 Audio encoding apparatus and audio encoding method
CN101594537B (en) * 2009-06-04 2011-07-27 北京京北方信息技术有限公司 Massive image data compression method
US8183452B2 (en) * 2010-03-23 2012-05-22 Yamaha Corporation Tone generation apparatus
JP6021498B2 (en) * 2012-08-01 2016-11-09 任天堂株式会社 Data compression apparatus, data compression program, data compression system, data compression method, data decompression apparatus, data compression / decompression system, and data structure of compressed data

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5727085A (en) * 1994-09-22 1998-03-10 Nippon Precision Circuits Inc. Waveform data compression apparatus
EP1688909B1 (en) * 1999-09-27 2014-06-25 Yamaha Corporation Method and apparatus for producing a waveform based on a style-of-rendition module
US6721711B1 (en) * 1999-10-18 2004-04-13 Roland Corporation Audio waveform reproduction apparatus
US7259315B2 (en) * 2001-03-27 2007-08-21 Yamaha Corporation Waveform production method and apparatus
EP1304680A2 (en) * 2001-09-13 2003-04-23 Yamaha Corporation Apparatus and method for synthesizing a plurality of waveforms in synchronized manner
US20090025537A1 (en) * 2001-09-13 2009-01-29 Yamaha Corporation Apparatus and method for synthesizing a plurality of waveforms in synchronized manner
JP3826870B2 (en) * 2002-10-01 2006-09-27 ヤマハ株式会社 Compressed data structure, waveform generation device, and waveform storage device
US7378586B2 (en) * 2002-10-01 2008-05-27 Yamaha Corporation Compressed data structure and apparatus and method related thereto
RU2314502C2 (en) * 2004-02-26 2008-01-10 Эл Джи Электроникс Инк. Method and device for processing sound
RU68691U1 (en) * 2007-06-15 2007-11-27 Илларион Борисович Полумисков VOICE TRANSFORMATION SYSTEM IN THE SOUND OF MUSICAL INSTRUMENTS

Also Published As

Publication number Publication date
RU2016136820A (en) 2018-03-19
CN106875933B (en) 2020-12-18
JP2017138629A (en) 2017-08-10
JP2017058663A (en) 2017-03-23
JP6146686B2 (en) 2017-06-14
JP6604486B2 (en) 2019-11-13
RU2016136820A3 (en) 2018-03-19
CN106875933A (en) 2017-06-20

Similar Documents

Publication Publication Date Title
US7408487B2 (en) Method and apparatus for CABAC-based encoding having high compression ratio using improved context model selection and method and apparatus for CABAC-based decoding
JP4786796B2 (en) Entropy code mode switching for frequency domain audio coding
CN109255429B (en) Parameter decompression method for sparse neural network model
US10515618B2 (en) Waveform data structure, waveform data storage device, waveform data storing method, waveform data extracting device, waveform data extracting method and electronic musical instrument
JP2017073615A (en) Encoding program, encoding method, encoder, decoding program, decoding method and decoder
RU2662633C2 (en) Waveform data structure, waveform data storage device, waveform data storing method, waveform data extracting device, waveform data extracting method and electronic musical instrument
US9479195B2 (en) Non-transitory computer-readable recording medium, compression method, decompression method, compression device, and decompression device
JP6962268B2 (en) Pitch enhancer, its method, and program
US9165563B2 (en) Coding device, coding method, decoding device, decoding method, and storage medium
JP2008170488A (en) Waveform compressing apparatus, waveform decompressing apparatus, program and method for producing compressed data
CN115374305A (en) Sound effect adjusting method and device of intelligent sound box
JP2008185701A (en) Method of calculating parcor coefficient, and its device, its program and its recording medium
JP6911939B2 (en) Pitch enhancer, its method, and program
JP4603429B2 (en) Client / server speech recognition method, speech recognition method in server computer, speech feature extraction / transmission method, system, apparatus, program, and recording medium using these methods
CN113053336A (en) Method, device and equipment for generating musical composition and storage medium
WO2019216192A1 (en) Pitch enhancement device, method and program therefor
KR100745250B1 (en) Computer recordable medium recording multimedia file for audio/video syncronization and syncronizing device of audio/video
JPH07170197A (en) Automatic generating method for decoding table for variable length code
US11501782B2 (en) Encoder, decoder, encoding method, decoding method, program, and recording medium
JP4462087B2 (en) Encoding apparatus and encoding method
JP4109124B2 (en) Time series signal encoding device
JP3912304B2 (en) Compressed data structure, waveform generation device, and waveform storage device
JP2005242126A (en) Reproducing device for sound signal
JP3787986B2 (en) Recording medium storing sound waveform data compression / decompression method and program for executing the operation
WO2003098593A1 (en) Musical performance information compression device, musical performance information decompression device, musical performance information compression program product, and musical performance information decompression program product