KR930002585B1 - Voiceless period compression and decompression method - Google Patents
Voiceless period compression and decompression method Download PDFInfo
- Publication number
- KR930002585B1 KR930002585B1 KR1019870015327A KR870015327A KR930002585B1 KR 930002585 B1 KR930002585 B1 KR 930002585B1 KR 1019870015327 A KR1019870015327 A KR 1019870015327A KR 870015327 A KR870015327 A KR 870015327A KR 930002585 B1 KR930002585 B1 KR 930002585B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- silent
- information
- voice
- voice information
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
제1도는 음성우편장치의 전체시스템 블럭도.1 is an overall system block diagram of a voice mail apparatus.
제2도는 제1도중 음성처리부에 대한 각 구성실시예도.FIG. 2 is a diagram showing the configuration of each voice processor in FIG.
제3도는 유/무음구간 입력형태에 따른 압축 및 재생형태도.3 is a compression and playback form according to the audio / silent section input form.
제4도는 저장 및 인출시의 데이타 흐름도.4 is a flow chart of data during storage and retrieval.
제5도는 본 발명에 따른 음성정보의 저장 흐름도.5 is a flow chart of storing voice information according to the present invention.
제6도는 본 발명에 따른 음성정보의 재생 흐름도.6 is a flowchart of reproduction of voice information according to the present invention;
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
1 : 중앙제어부 2 : 통화로인터페이스1: Central control unit 2: Call interface
3 : 음성처리부 4 : 버퍼3: voice processing unit 4: buffer
5 : 축적제어부 6 : 기억부5: accumulation control unit 6: storage unit
20 : 교환기 30 : 가입자20: exchange 30: subscriber
본 발명은 음성우편장치의 음성처리방법에 관한 것으로, 특히 무음구간의 음성정보를 효율적으로 처리할수 있는 방법에 관한 것이다.The present invention relates to a voice processing method of a voice mail apparatus, and more particularly, to a method capable of efficiently processing voice information in a silent section.
일반적으로 전자 메일(mail)이 문서 정보를 송수신 하듯이, 음성우편장치는 음성정보를 전자적으로 송수신하는 장치를 말한다. 상기 음성우편장치는 전화기 등으로 부터 수신되는 음성신호를 디지탈 음성데이타로 변환한 후 디스크 등의 기억장치에 저장하고, 필요에 따라 저장하고 있는 디지탈 음성데이타를 다시 아날로그의 음성신호로 변환하여 전화기 측으로 출력한다. 일반적으로 상기 음성우편장치에 사용되는 음성데이타는 음성정보가 기준치 이상인 유음 구간과 음성정보가 기준치 이하인 무음구간 등으로 이루어지는데, 종래의 음성우편장치에서는 무음구간을 압축하지 않아 무음구간도 기억장치에 저장하여 음성 기억장치의 용량을 상대적으로 작게하였으며, 무음구간을 압축하여 저장한 경우에도 무음구간 완전삭제로 압축 데이타 재생시 자연스런 음성 신호가 재현되지 못했던 문제점이 있었다.In general, as an electronic mail transmits and receives document information, a voice mail apparatus refers to a device that transmits and receives voice information electronically. The voice mail device converts a voice signal received from a telephone, etc. into digital voice data, and stores it in a storage device such as a disk. The voice mail device converts the digital voice data stored therein into an analog voice signal and converts the voice voice data into an analog voice signal. Output In general, the voice data used in the voice mail device is composed of a sound section with voice information above a reference value and a silent section with voice information below a reference value. There was a problem that the capacity of the voice memory device was relatively small due to the storage, and even when the silence section was compressed and stored, the natural voice signal could not be reproduced when the compressed data was reproduced by the complete deletion of the silence section.
따라서 본 발명의 목적은 음성 데이타의 무음구간을 압축하여 기억장치의 용량을 확장할 수 있는 음성우편장치의 음성정보의 저장 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a method of storing voice information of a voice mail apparatus which can expand the capacity of a memory device by compressing a silent section of voice data.
본 발명의 다른 목적은 음성우편장치에서 저장시 수신되는 음성정보의 유음 전후의 무음구간을 검사하여 저장하고, 재생시 유음 전후의 무음을 재생하도록하여 음성 신호를 자연스럽게 재현할 수 있는 방법을 제공함에 있다.Another object of the present invention is to provide a method of naturally reproducing a speech signal by inspecting and storing a silent section before and after sounding of voice information received during storage in a voice mail device, and reproducing the sound before and after sounding during playback. have.
본 발명의 또 다른 목적은 음성우편장치에서 재생시 무음구간에서 특정 무음블럭의 음성정보를 재생하여 재생되는 음성신호의 질을 향상시킬 수 있는 방법을 제공함에 있다.It is still another object of the present invention to provide a method for improving the quality of a reproduced voice signal by reproducing voice information of a specific silent block in a silent section during playback in a voice mail device.
이하 본 발명을 도면을 참조하여 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the drawings.
제1도는 음성우편장치의 전체 블럭도로서, 음성우편장치는 교환기(20)와 연결되며, 상기 교환기(20)와 연결되는 가입자(30)들의 요구에 따라 음성 서비스 기능을 구현한다. 그리고 상기 음성우편장치의 구성은, 음성우편장치의 전반적인 음성 서비스 기능을 제어하는 중앙제어부(1)와, 상기 전화라인과 연결되며 상기 중앙제어부(1)의 제어하에 교환기(20)과 음성우편장치 사이에 각종신호 및 음성정보를 정합하는 통화로인터페이스(2)와, 상기 통화로인터페이스(2)와 연결되며 상기 중앙제어부(1)의 제어를 받아 저장모드시 상기 통화로인터페이스(2)를 출력하는 음성정보를 무음구간을 압축하여 처리하고 재생모드시 무음구간이 압축처리된 음성정보를 본래의 음성정보로 복원하여 상기 통화로인터페이스(2)로 출력하는 음성처리부(3)과 상기 음성처리부(3)의 제어하에 무음구간이 처리된 음성정보를 억세스할 수 있도록 일시저장하는 버퍼(4)와, 음성정보를 저장하는 기억부(6)과, 상기 버퍼(4)와 기억부(6) 사이에 연결되며 상기 중앙제어부(1)의 제어하에 저장모드시 상기 버퍼(4)로 부터 음성정보를 리드하여 상기 기억부(6)에 저장하고 재생모드시 상기 기억부(6)에 저장하고있는 음성정보를 리드하여 상기 버퍼(4)로 출력하는 축적제어부(5)로 구성된다.1 is an overall block diagram of a voice mail device, which is connected to an
제2도는 제1도 중 음성처리부(3) 및 버퍼(4)의 각 구성 방식에 대한 실시예로서, 제2a도는 ADPCM(201)에서 아날로그 음성정보를 ADPCM 음성정보로 변환하며 유음 및 무음 상태를 검출하고 CPU(202)에 의해 ADPCM(201)의 입력을 버퍼(4)에 저장하고 버퍼(4)로 부터 ADPCM(201)에 출력하는 실시예를 나타내고 있다. 제2b도는 통화로인터페이스(2)와 연결되며 수신되는 음성신호를 ADPCM데이타로 압축 변환하여 출력하는 동시에 설정된 기준데이타와 비교하여 해당하는 ADPCM데이타가 유음 또는 무음 데이타임을 표시하는 검출신호를 발생하는 ADPCM(211)과, 상기 ADPCM(211)과 연결되며 상기 무음임을 나타내는 검출신호를 계수하여 설정된 수 이상으로 수신될 시 해당하는 블럭데이타가 무음임을 표시하기 위한 무음블럭검출신호를 발생하는 무음검출기(213)과, 상기 ADPCM(211)과 버퍼(4)의 사이에 연결되며 블럭단위로 음성데이타의 억세스하는 DMAC(214)와, 상기 DMAC(214)을 제어하여 블럭단위로 음성데이타를 억세스하도록 제어하며 저장모드시 상기 무음검출기(213)의 출력을 수신하여 연속하는 무음블럭검출신호 수신시에는 상기 버퍼(4)에 해당하는 블럭데이타의 저장을 억제하고 재생모드시 상기 버퍼(4)의 상태정보를 리드하여 연속하는 블럭번호가 아닌 경우에는 해당하는 블럭을 무음블럭으로 재생하는 CPU(212)로 구성된다. 제2c도는 PCM(221)을 통해 아날로그 음성정보를 PCM 정보로 변환하고 CPU(222)가 이들 정보의 유음 및 무음을 검출 및 입출력하는 실시예를 나타내고 있다.FIG. 2 is an embodiment of each configuration of the
제3a도 및 제3b도는 수신되는 음성데이타를 블럭단위로 버퍼(4)에 저장하는 동시에 해당하는 블럭의 상태정보를 저장하는 과정을 도시하는 도면이다. 제3a도에서 (310)은 음성신호를 송수신하는 것으로서 통화로인터페이스(2)에서 수행한다. (320)은 음성처리부(3)의 동작으로서, (321)은 저장모드시 상기 (310)을 통해 수신되는 음성신호를 블럭단위로 분석하여 유/무음블럭으로 판단하며 판단된 결과에 따라 블럭단위의 음성데이타 및 해당하는 블럭의 상태정보를 버퍼(4)에 저장하며, 재생모드시 (321)에서 상기 버퍼(4)에 저장중인 블럭의 상태정보를 분석한 후 이전 블럭의 번호와 연속하는 블럭번호인 경우에는 상기 버퍼(4)의 블럭데이타를 그대로 재생시키며, 연속하지 않는 블럭번호인 경우에는 (322)를 수행하여 특정 무음블럭의 음성정보를 재생시킨다. 여기서 상기 특정 무음블럭의 정보는 "0"데이타로서 완전한 무음의 정보가 된다. (330)은 처리된 블럭음성정보를 저장하거나 재생하는 버퍼(4)의 메모리 맵 구성도로서, 헤더와 블럭단위의 음성정보를 저장하기 위한 다수개의 블럭데이타 영역을 구비한다.3A and 3B are diagrams illustrating a process of storing received voice data in a buffer unit in block units and simultaneously storing state information of a corresponding block. In FIG. 3A,
제3b도는 상기 제3a의 (330)에서 헤더를 구체화한 맵 구성도로서, 상기 헤더는 상기 버퍼(4)에 저장되는 전체 블럭데이타의 수, 상기 각각의 블럭데이타 영역에 대응되는 블럭번호, 블럭데이터의 유/무음표시플래그, 그리고 해당하는 블럭의 데이타 바이트수를 각각 표시하는 카운터CTN 등으로 구성된다. 따라서 상기 버퍼(4)에는 블럭단위로 각각 블럭에 대응하는 음성정보가 저장되는 동시에 헤더에는 해당하는 블럭들의상태정보로로서 블럭 번호, 유/무음표시플래그, 카운터CTN가 저장된다.FIG. 3B is a map configuration diagram in which the header is embodied in 330 of FIG. 3A, wherein the header is the total number of block data stored in the
제4도는 상기 제3a도 및 제3b도와 같이 음성정보를 처리하는 경우의 데이타 형태를 도시하는 도면으로서, (410)은 상기 음성처리부(3)에서 처리되는 블럭음성정보의 형태를 도시하는 맵 구성이며, (430)은 상기(410)과 같은 블럭정보를 버퍼(4)에 저장하는 경우의 맵 구성을 도시하고 있고, (450)은 상기 (430)과 같은 블럭정보를 인출하는 경우 본래의 음성정보 형태로 재생하여 출력하는 과정을 도시하고 있다. 상기 (410)과같은 음성정보가 수신되어 (430)과 같이 저장되는 과정은 (411)단계-(427)단계에 도시되어 있다. 그리고 상기 상기 (430)과 같이 음성정보가 인출되어 (450)과 같이 재생되는 과정은 (431)단계-(450)단계에 도시되어 있다.FIG. 4 is a diagram showing a data format in the case of processing voice information as shown in FIGS. 3A and 3B, and 410 is a map structure showing the form of block voice information processed by the
제5도는 본 발명에 따라 수신되는 음성정보를 블럭단위로 분석하여 연속되어 수신되는 무음블럭을 삭제하여 저장하는 흐름도로서, 소정 블럭단위의 음성정보 수신시 해당하는 블럭의 음성정보에 따른 유무음 상태를 판단하는 과정과, 상기 판단과정에서 유음블럭일시 해당하는 블럭의 상태정보영역에 유음블럭을 표시하는 동시에 블럭번호를 저장하며, 대응되는 블럭데이타 영역에 유음블럭정보를 저장하고, 다음 블럭의 인덱스를 지정하는 과정과, 상기 판단과정에서 무음블럭일시 이전 블럭의 상태정보를 분석하는 과정과, 상기 이전 블럭의 유음블럭일시 해당하는 블럭의 상태정보영역에 무음블럭을 표시하는 동시에 블럭번호를 저장하며, 대응되는 블럭데이타 영역에 무음블럭정보를 저장하고, 다음 블럭의 인덱스를 지정하는 과정과, 상기 이전 블럭이 무음블럭일시 인덱스를 감소하여 이전 무음블럭의 상태정보영역에 무음블럭을 표시하는 동시에블럭번호를 중복 저장하며, 대응되는 이전 블럭데이타 영역에 무음블럭정보를 중복저장하고, 다음 블럭의 인덱스를 지정하는 과정으로 이루어진다.FIG. 5 is a flowchart for analyzing the received voice information in block units and deleting and storing consecutive blocks of silence blocks. The voice information according to the voice information of a corresponding block is received when voice information is received in a predetermined block unit. In the determining process, the sound block indicates the sound block in the state information area of the corresponding block at the time of the sound block, and stores the block number, stores the sound block information in the corresponding block data area, and indexes the next block. And a process of analyzing the state information of the previous block at the time of the silent block during the determination process, displaying a silent block in the state information area of the corresponding block at the time of the silent block of the previous block, and storing the block number. Storing silent block information in a corresponding block data area and specifying an index of a next block; When the block decreases the silent block temporary index, it displays the silent block in the state information area of the previous silent block and duplicates the block number, duplicates and stores the silent block information in the corresponding previous block data area, and restores the index of the next block. It is a process of designation.
제6도는 연속되는 무음블럭의 음성정보를 삭제하여 저장한 정보를 인출하여 본래의 형태로 무음블럭을 삽입하여 재생하는 흐름도로서, 상태정보영역에서 현재의 블럭번호 및 이전의 블럭번호를 리드하여 두 블럭번호를 비교하는 과정과, 상기 비교과정에서 두 번호가 연속하는 할 시 현재 지정된 블럭데이타 영역에 저장된 음성정보를 인출하여 재생하고 다음 블럭을 지정하는 과정과, 상기 비교과정에서 두 번호가 연속하지않을시 블럭번호를 증가하여 특정 무음번호를 인출하여 재생하고 현재의 블럭 지정상태를 유지하는 과정으로 이루어진다.6 is a flowchart of retrieving the stored information by deleting the sound information of consecutive silence blocks, inserting and reproducing the silence block in its original form, and reading the current block number and the previous block number in the status information area. A process of comparing block numbers, retrieving and reproducing voice information stored in a currently designated block data area when two numbers are consecutive in the comparison process, designating a next block, and not performing two numbers consecutively in the comparison process. If not, the block number is increased to retrieve and play a specific silent number and maintain the current block designation state.
상술한 제1도-제6도의 구성에 의거 본 발명을 상세히 설명한다.The present invention will be described in detail based on the configuration of FIGS. 1 to 6 described above.
상기 가입자(30)이 교환기(20)을 통해 음성신호를 발생하고, 음성우편장치가 이를 수신하여 저장하는 동작 과정을 설명한다. 상기 교환기(20)를 통해 수신되는 가입자(30)의 음성정보는 통화로인터페이스(2)로 인가되며, 상기 통화로인터페이스(2)를 출력하는 음성신호는 중앙제어부(1)의 제어하에 음성처리부(3)으로 인가된다. 상기 중앙제어부(1)은 상기 통화로인터페이스(2)로 수신되는 가입자(30)의 요구 정보를 분석하여 음성우편장치의 동작을 제어한다. 이때 음성정보의 저장동작을 수행하여야 하는 경우에는 상기 음성처리부(3)을 제어하여 수신되는 음성신호를 저장형태로 변환할 수 있도록 제어하고, 축적제어부(5)를 제어하여 변환된 음성정보를 상기 기억부(6)에 저장할 수 있도록 한다. 또한 상기 기억부(6)에 저장된 음성정보를 재생하는 경우에는 상기 축적제어부(5)를 제어하여 상기 저장된 음성정보를 재생하는 경우에는 상기 축적제어부(5)를 제어하여 상기 기억부(6)에 저장된 음성정보를 버퍼(4)에 저장하도록 하고, 음성처리부(3)을 제어하여 상기 버퍼(4)에 저장하고 있는 음성정보를 본래의 음성신호로 재생하도록 한다.The subscriber 30 generates a voice signal through the
따라서 수신되는 음성정보를 기억부(6)에 저장하는 경우, 상기 음성처리부(3)는 상기 중앙제어부(1)의 제어하에 상기 음성신호를 수신하여 ADPCM(Adaptive Pulse Code Modulation) 데이타로 변환하여 압축한후 블럭단위로 변환한 음성정보를 유/무음으로 판단 처리하여 버퍼(4)에 저장한다. 그러면 축적제어부(5)는 버퍼(4)에 저장된 음성정보를 기억부(6)에 저장하는데, 여기서 상기 기억부(6)에 저장된 가입자(30)의 음성정보는 기억장치의 용량을 확장시키기 위하여 ADPCM데이타로 변환되며, 또한 수신된 음성정보 중에서 무음구간을 삭제하여 실질적으로 음성정보가 존재하는 유음구간의 음성정보들만이 저장된 상태이다. 즉, 상기 음성처리부(3)은 수신되는 음성정보의 형태를 분석하여 무음구간의 음성정보를 삭제하여 버퍼(4)에 저장하는데, 수신된 음성정보가 제4도의 (410)과 같은 경우 실제 저장하는 음성정보는 제4도의 (430)과 같이 무음구간을 압축하여 음성정보를 저장한다. 상기와 같이 버퍼(4)에 저장된 음성정보는 축적제어부(5)의 제어하에 기억부(6)에 저장된다.Therefore, when storing the received voice information in the
두번째로 상기 기억부(6)에 저장하고 있는 음성정보를 인출하여 재생한 후 가입자(30)측으로 출력하는 경우, 상기 축적제어부(5)는 상기 중앙제어부(1)의 제어하에 기억부(6)에 저장하고 있는 해당 위치의 음성정보를 리드하여 버퍼(4)에 저장한다. 그러면 상기 음성처리부(3)은 상기 버퍼(4)로 부터 음성정보를 리드하여 본래의 음성신호 형태로 하여 통화로인터페이스(3)으로 출력한다. 이때 상기 버퍼(4)로 부터 리드되는 음성정보의 형태는 무음구간의 음성정보가 삭제되어 제4도의 (430)과 같은 형태를 가지며, 상기 음성처리부(3)은 이를 제4도의 (450)과 같이 삭제된 무음구간의 음성정보를 복원하여 본래의 음성신호로 재생한다.Secondly, when the voice information stored in the
여기서 상기 음성처리부(3) 및 버퍼(4)는 제2a도-제2c도와 같이 구성할수 있으며, 상기 음성처리부(3)은 수신되는 음성신호를 압축변환하며 또한 블럭단위로 압축한 음성정보를 분석하여 유/무음을 판단하고 연속적인 무음신호로 판단된 경우에는 해당하는 무음구간을 삭제하는 기능을 수행하게 된다.Here, the
먼저 제2b도와 같은 구성을 갖는 음성처리부(3)의 동작을 살펴본다. 통화로인터페이스(2)로 부터 PCM 음성데이타가 수신되면, ADPCM(211)은 수신되는 PCM 음성데이타를 ADPCM 음성데이타로 압축변환하여 출력하며, 상기 CPU(212)에서 인가하는 기준데이타와 상기 수신된 음성데이타를 비교하여 유음 또는 무음데이타로 판단하여 무음검출기(213)으로 출력한다. 여기서 상기 ADPCM(211)은 일본전기주식회사(NEC)에서 제작 및 판매하는 "μPD77C30"(ADPCM LSI)를 사용할 수 있으며, 무음검출기(213)은 자일로그사에서 제작판매하는 "Z-80 CTC"를 사용할 수 있다. 그리고 상기 CPU(212)는 음성데이타를 소정 크기의 블럭단위로 모아 유/무음으로 판단처리한다. 여기서는 상기 블럭의 크기를 128바이트로 가정한다. 따라서 상기 ADPCM(211)과 버퍼(4)의 사이에 연결되는 DAMC(214)는 상기 CPU(212)의 제어하에 상기 송수신되는 음성데이타를 블럭단위로 직접 억세스하며, 블럭단위의 음성데이타를 처리한 후 이를 상기 CPU(212)로 통보한다. 또한 상기 CPU(212)는 상기 ADPCM(211)이 수신되는 음성데이타를 유/무음으로 판단할 수 있도록 기준데이타를 드레쉬홀드 값으로 출력하며, 상기 무음검출기(213)이 무음블럭검출신호를 발생할 수 있도록 카운트값을 세트시킨다.First, the operation of the
따라서 상기 ADPCM(211)은 상기 CPU(212)에서 출력하는 기준데이타를 드레시홀드 값으로 수신하며, 상기 기준데이타와 상기 통화로인터페이스(2)로 부터 수신되는 음성데이타를 비교하여 바이트 단위로 유/무음을 판단하여 검출단자 DET로 출력한다. 그러면 상기 검출단자와 연결되는 무음검출기(213)은 상기 무음검출신호의 발생 횟수를 카운트하며, 상기 무음검출신호의 카운트값이 세트된 카운트데이타에 도달하는 경우에는 상기 CPU(212)로 무음블럭검출신호를 출력하여 현재 수신되는 블럭의 음성정보가 무음블럭의 음성정보임을 알린다. 그러나 상기 1블럭의 음성정보가 처리되는 동안 설정된 카운트값의 무음검출신호를 계수하지 못한 경우, 상기 무음검출기(213)은 상기 CPU(212)의 제어하에 초기화되어 다음 블럭의 무음검출신호를 계수한다.Accordingly, the
상기와 같은 상태에서 음성데이타는 상기 DMAC(214)에 의해 상기 버퍼(4)에 블럭단위로 저장된다. 이때 상기 CPU(212)는 무음블럭검출신호가 수신되는 경우, 최초의 무음블럭은 상기 버퍼(4)에 그대로 저장될 수 있도록 상기 버퍼(4)의 인덱스를 제어한다. 그러나 연속되는 무음블럭검출신호가 수신되는 경우에는 상기 버퍼(4)를 제어하여 동일한 인덱스에 연속되는 무음블럭의 음성데이타가 저장되도록 제어한다. 따라서 연속적으로 무음블럭의 음성정보가 수신되는 경우에는 상기 버퍼(4)의 동일 인덱스에 중복저장(overwrite)되어 결과적으로 이전 블럭의 음성정보가 삭제되는 효과가 발생된다.In such a state, voice data is stored in the
또한 상기 버퍼(4)에 저장되어 있는 음성정보를 통화로인터페이스(2)로 출력하는 과정을 살펴보면, 상기 버퍼(4)에 저장된 음성정보는 연속되는 무음블럭의 음성정보가 삭제된 상태이다. 따라서 상기 CPU(212)는 재생모드시 먼저 상기 버퍼(4)의 헤더정보를 참조하여 블럭번호가 연속되고 있는가를 검사한다. 그리고 상기 블럭번호가 연속되는 경우에는 상기 버퍼(4)의 해당하는 인덱스에 저장하고 있는 블럭음성정보를 그대로 전송하며, 블럭번호가 연속되지 않는 경우에는 결번된 블럭의 음성정보를 특정 무음블럭의 음성정보로 재생하여 출력한다.In addition, referring to a process of outputting voice information stored in the
그리고 제2a도는 ADPMC(201)과 버퍼(4)의 사이에 CPU(202)가 직접 연결되어 있으며, 이로인해 상기와 같이 블럭단위로 유/무음을 판단하여 처리하는 동작을 상기 CPU(202)가 모두 수행하여야 하므로 소프트웨어 부담이 커지게 되며 처리속도도 늦어진다. 또한 상기 제2c도는 PCM(221)에서 입력 음성정보를 압축하지 않은 상태의 PCM 데이타로 출력하며 유음 또는 무음구간을 검출하지 않으므로, 상기 CPU(222)는 PCM(221)을 통한 음성정보에서 유음 또는 무음을 검출하여 버퍼(4)로 인가하여하며, 따라서 상기 CPU(222)의 소프트웨어 부담이 역시 상당히 커지게 되며, 처리속도도 매우 늦어지게 된다.In FIG. 2A, the
본 발명에서는 상기 음성처리부(3)을 제2a도와 같이 구성된다고 가정한다.In the present invention, it is assumed that the
먼저 수신되는 음성신호의 무음구간을 삭제하여 상기 버퍼(4)에 저장하는 과정을 제5도의 흐름도를 참조하여 살펴본다. 저장모드에서 상기 통화로인터페이스(2)를 통해 음성정보가 수신되면 상기 음성처리부(3)은 수신되는 음성정보를 유음 및 무음으로 처리하여 상기 버퍼(4)에 블럭단위로 저장하게 된다. 상기와 같이 블럭단위의 음성정보를 상기 버퍼(4)에 저장시키고 난 후, 상기 DMAC(214)는 상기 CPU(212)로 1블럭의 음성정보를 저장하였음을 알린다. 그러면 상기 CPU(212)는 501단계에서 1블럭의 음성정보가 수신되었음을 인지하고, 502단계에서 수신된 블럭의 음성정보가 무음블럭의 음성인가를 검사한다. 이때 상기 무음검출기(213)은 상기 ADPCM(211)로 부터 출력되는 무음검출신호의 수를 카운트하여 설정된 카운트데이타를 초과하는 경우, 상기 CPU(212)로 무음블럭검출신호를 출력하게 된다. 따라서 상기 CPU(212)는 상기 무음블럭검출신호의 수신유무에 따라 해당하는 블럭의 음성정보를 유음 또는 무음으로 판단한다. 상기 단계에서 수신된 블럭의 음성정보가 유음블럭으로 판단된 경우에는 503단계에서 해당하는 블럭의 헤더에 유/무음플래그를 유음으로 세트한다.The process of deleting the silent section of the received voice signal and storing it in the
상기와 같이 해당하는 블럭와 헤더정보를 유음으로 표시한 후, 507단계에서는 해당하는 블럭에 대응되는 헤더의 영역에 현재의 유음블럭번호를 저장하며, 508단계에서는 제3a도와 같은 버퍼(4)의 블럭데이타 영역에 유음의 블럭음성정보를 저장하며, 헤더의 해당 영역에 카운트 CNT를 세트한다. 여기서 상기 카운트 CNT는 해당 블럭에 저장된 음성데이타의 바이트 수를 의미한다. 즉, 1블럭이 128바이트로 이루어진 경우 해당 블럭에 128바이트보다 적은 수의 데이타가 저장될 수 있으므로 해당 블럭에 데이타의 바이트수를 카운트 CNT에 기록한다. 상기와 같이 블럭의 음성정보를 기록한 후, 상기 CPU(212)는 509단계에서는 다음에 수신되는 블럭의 음성정보를 저장하기 위하여 상기 버퍼(4)의 인덱스를 하나 증가시킨다. 따라서 상기 버퍼(4)는 이후 수신되는 블럭의 음성정보 및 상태정보를 다음 블럭의 위치에 저장하게 된다. 그리고 다음의 블럭번호로 증가시킨 후 511단계로 진행한다.After the block and the header information are displayed with the sound as described above, the current block block number is stored in the header area corresponding to the block in
따라서 상기 수신된 블럭의 음성정보가 제4도의 (410)과 같은 형태를 갖는 경우, 상기와 같은 과정으로 처리되어 헤더에 저장되는 유음블럭의 상태정보는 제4도의 (412),(414),(422),(423),(424),(425),(427)과 같이 저장되며, 음성정보는 해당하는 블럭데이타 영역에 저장된다.Therefore, when the voice information of the received block has the same shape as 410 of FIG. 4, the state information of the sound block which is processed in the above process and stored in the header is 412, 414 of FIG. 422, 423, 424, 425, and 427, and voice information is stored in a corresponding block data area.
그러나 상기 502단계에서 수신된 블럭의 음성정보가 무음블럭으로 판단된 경우에는 504단계에서 이전의 블럭정보도 무음블럭의 음성정보였는가를 검사한다. 이는 연속하여 무음블럭의 음성정보가 수신되었는가를 검사하는 것이다. 이때 유음블럭의 바로 뒤에 이어지는 무음블럭의 음성정보인 경우에는 해당하는 무음블럭의 음성정보를 상기 버퍼(4)에 저장한다. 이는 유음뒤에 이어지는 무음정보를 연결하므로서 재생되는 음성신호를 매끄럽게 하기 위함이다. 따라서 상기 504단계에서 유음블럭에 뒤이어 수신되는 무음블럭인 경우에는 506단계에서 해당하는 블럭의 헤더에 유/무음플래그를 무음으로 세트한다.However, if the voice information of the block received in
상기와 같이 해당하는 블럭의 헤더정보를 무음으로 표시한 후, 507단계에서는 해당하는 블럭에 대응되는 헤더의 영역에 현재의 무음블럭번호를 저장하며, 508단계에서 제3a도와 같은 버퍼(4)의 블럭데이타 영역에 해당하는 무음블럭의 음성정보를 저장하며, 헤더의 해당영역에 카운트 CNT를 세트한다. 상기와 같이 해당하는 블럭의 음성정보를 기록한 후, 상기 CPU(212)는 509단계에서는 다음에 수신되는 블럭의 음성정보를 저장하기 위하여 상기 버퍼(4)의 인덱스를 하나 증가시킨다. 따라서 상기 버퍼(4)는 이후 수신되는 블럭의 음성정보 및 상태정보를 다음 블럭의 위치에 저장하게 된다. 그리고 다음의 블럭번호로 증가시킨 후 511단계로 진행한다.After the header information of the corresponding block is displayed silently as described above, in
따라서 상기 수신된 블럭의 음성정보가 제4도의 (410)과 같은 형태를 갖는 경우, 상기와 같은 과정으로 처리되어 헤더에 저장되는 유음블럭의 전후에 위치되는 무음블럭의 상태정보는 제4도의 (410),(413)(436)과 같은 저장되며, 음성정보는 해당하는 블럭데이타 영역에 저장된다.Therefore, when the voice information of the received block has the form as shown in 410 of FIG. 4, the state information of the silence block located before and after the sound block which is processed in the above process and stored in the header is shown in FIG. 410 and 413 and 436, and voice information is stored in a corresponding block data area.
그러나 상기 504단계에서 이전 블럭의 음성정보도 무음블럭의 음성정보로 판단된 경우에는 연속하여 무음블럭의 음성정보가 수신된 상태이므로, 해당하는 블럭의 음성정보를 저장하는 것은 무의미하다. 따라서 연속적으로 무음블럭의 음성정보가 수신되는 경우에는 유음블럭의 뒤에 이어지는 무음정보와 유음블럭의 바로앞에 위치되는 무음블럭을 제외한 나머지의 무음블럭의 음성정보는 삭제한다. 이때 상기 연속되는 무음블럭의 음성정보를 삭제하는 방법으로서 본 발명에서는 이전의 무음블럭의 영역에 해당하는 무음블럭의 음성정보를 중복기록하는 방법으로 연속하는 무음블럭의 음성정보를 삭제한다. 따라서 상기 504단계에서 이전 블럭도 무음블럭인 경우에는 505단계에서 상기 버퍼(4)의 현재 인덱스 값을 하나 감소시킨 후, 506단계에서 해당하는 블럭의 헤더에 유/무음플래그를 무음으로 세트한다. 따라서 이전상태에서 상기 버퍼(4)의 인덱스는 다음 블럭의 음성정보를 저장하기 위하여 하나 증가시킨 상태이므로, 상기 505단계에서 상기 버퍼(4)의 인덱스를 하나 감소시키면 이전 무음블럭의 음성정보를 저장한 블럭데이타 영역의 인덱스가 지정됨을 알 수 있다.However, when it is determined in
상기와 같이 해당하는 블럭의 헤더정보를 무음으로 표시한 후, 507단계에서는 해당하는 블럭에 대응되는 헤더의 영역에 현재의 무음블럭번호를 저장하며, 508단계에서는 제3a도와 같은 버퍼(4)의 블럭데이타 영역에 해당하는 무음의 블럭정보를 저장하며, 헤더의 해당영역에 카운트 CNT를 세트한다. 이때 상기한 바와같이 현재 지정된 버퍼(4)의 인덱스는 이전 블럭에서의 인덱스와 동일한 상태이므로, 연속되는 무음블럭의음성정보가 수신되는 경우에는 블럭번호를 변경하면서 동일한 블럭데이타의 영역에 무음의 블럭 음성정보가 반복 저장됨을 알 수 있다. 상기와 같이 해당하는 블럭의 음성정보를 기록한 후, 상기 CPU(212)는 509단계에서는 다음의 수신되는 블럭의 음성정보를 저장하기 위하여 상기 버퍼(4)의 인덱스를 하나 증가시킨다. 따라서 상기 버퍼(4)는 이 후 수신되는 블럭의 음성정보 및 상태정보를 다음 블럭의 위치에 저장하게 된다. 그리고 다음의 블럭번호로 증가시킨 후 511단계로 진행한다.After the header information of the corresponding block is displayed silently as described above, in
따라서 상기 수신된 블럭의 음성정보가 제4도의 (410)과 같은 형태를 갖는 경우, 상기와 같은 과정으로 처리되어 헤더에 저장되는 연속하는 무음블럭의 상태정보는 제4도의 (416)-(421)과 같이 저장되며, 음성정보는 이전의 무음블럭의 블럭데이타 영역에 중복저장되어 삭제됨을 알 수 있다.Therefore, when the voice information of the received block has the form as shown in 410 of FIG. 4, the state information of the continuous silent block stored in the header after being processed in the same manner as described above is shown in FIGS. ), And the voice information is duplicated and stored in the block data area of the previous silent block.
상기와 같은 동작으로 수신되는 음성신호를 블럭단위로 처리하여 상기 버퍼(4)에 저장하는 과정중, 상기 중앙제어부(1)로부터 종료신호가 수신되면, 상기 음성처리부(3)은 511단계에서 이를 인지하고 수신되는 음성정보의 저장과정을 종료하고 리턴한다.In the process of processing the voice signal received in the above operation in block units and storing it in the
따라서 상기 제4도의 (410)과 같은 형태의 블럭 음성정보가 수신되는 경우, 음성처리부(3)은 수신되는 블럭의 유음 또는 무음상태를 분석하고, 무음블럭인 경우에는 연속하는 무음블럭인가를 판단하여 해당하는 무음블럭의 음성정보를 삭제하므로서, 제4도의 (430)과 같은 무의미한 무음블럭의 음성정보를 제거하여 상기 버퍼(4)에 저장한다. 따라서 상기 버퍼(4)에 저장되는 음성정보는 유음블럭의 음성정보와 상기 유음블럭의 전후에 위치되는 무음블럭의 음성정보만이 저장된다.Therefore, when the block voice information of the type shown in FIG. 4 is received, the
상기와 같이 버퍼(4)에 저장되는 블럭단위의 음성정보는 축적제어부(5)에 의해 상기 기억부(6)에 저장된다. 여기서 상기 기억부(6)은 통상적으로 하드디스크(hard disk)를 사용하므로 상기 버퍼(4)의 크기는 상기 기억부(6)의 1트랙의 용량으로 하는 것이 좋다. 또한 상기 버퍼(4)는 두개로 구성하여 음성처리부(3)이 하나의 버퍼(4)에 블럭단위 음성정보를 처리하는 동안 축적제어부(5)가 나머지 버퍼(4)의 블럭단위 음성정보를 처리하도록 한다.As described above, the audio information in units of blocks stored in the
두번째로 상기 기억부(6)에 저장된 음성정보를 인출하여 본래의 음성신호로 재생하는 과정을 제6도의 흐름도를 참조하여 설명한다. 먼저 축적제어부(5)는 상기 중앙제어부(1)로부터 재생모드신호를 수신할시, 상기 수신되는 명령어에 따라 상기 기억부(6)의 해당하는 트랙에 저장하고 있는 음성정보를 억세스하여 상기 버퍼(4)에 제4도의 (430)과 같이 저장시킨다. 그리고 중앙제어부(1)은 상기 음성처리부(3)으로 상기 버퍼(4)에 저장된 음성정보를 재생하도록 제어한다.Secondly, the process of extracting the voice information stored in the
상기와 같이 재생모드가 시작되면, 음성처리부(3)의 CPU(212)는 601단계에서 상기 버퍼(4)의 헤더로부터 현재 재생하여야 할 블럭의 상태정보중 현재의 블럭번호를 리드한다. 그리고 602단계에서 이전 블럭번호를 억세스한 후, 603단계에서 현재의 블럭번호와 이전의 블럭번호가 연속하는 블럭번호인가를 검사한다. 이는 상기 음성정보 저장과정에서 연속하는 무음블럭의 음성정보 및 블럭번호를 중복기재하여 삭제하였으므로, 현재의 블럭번호와 이전의 블럭번호가 연속되는 경우에는 해당하는 블럭의 음성정보가 유음 또는 유음블럭의 전후에 존재하는 무음블럭이 되며, 현재의 블럭번호와 이전의 블럭번호가 연속하지 않는 경우에는 해당하는 블럭의 음성정보가 연속되는 무음블럭의 정보였음을 의미한다.When the reproduction mode is started as described above, the
따라서 상기 603단계에서 연속하는 블럭번호로 판단된 경우에는 604단계로 진행하여 상기 버퍼(4)의 현재 지정되고 있는 인덱스의 블럭데이타 영역의 음성정보를 인출한 후, 608단계에서 인출한 해당블럭데이타 영역의 음성정보를 상기 ADPCM(211)로 출력하여 정상적으로 재생하도록 제어한다. 그리고 다음 블럭의 음성정보를 재생하기 위하여 609단계에서 상기 버퍼(4)의 인덱스를 하나 증가시킨 후, 610단계로 진행한다.Therefore, if it is determined that the block numbers are consecutive in
상기 제4도의 (430)과 같은 형태를 가진 블럭 음성정보가 수신되는 경우, 유음블럭의 정보 또는 상기 유음블럭의 전후에 위치되는 무음블럭의 정보를 재생은 (431)-(435), (441)-(450)과 같이 수행된다.When block voice information having the form as shown in (430) of FIG. 4 is received, information of the sound block or the sound block located before and after the sound block is reproduced (431)-(435), (441). (450).
그러나 상기 603단계에서 현재의 블럭번호가 이전의 블럭번호와 연속되지 않는 경우에는 (605)단계에서 이전의 블럭번호를 증가시킨 후, 606단계에서 상기 버퍼(4)의 인덱스를 감소시킨다. 그리고 607단계에서는 상기 605단계에서 증가시킨 블럭번호의 블럭 음성정보로 재생하기 위하여 인출한다. 따라서 삭제된 무음블럭의 음성정보를 재생하는 경우에는 이전의 블럭번호를 증가시키므로서 상기 버퍼(4)에 저장되지 않고 삭제된 무음블럭의 번호를 발생하고, 해당하는 블럭번호의 무음정보로 특정무음정보를 전송데이타로 인출한다. 여기서 상기 특정무음정보는 "0"로서 완전하게 음성신호가 없는 상태가 된다. 이는 상기 버퍼(4)에 저장되어 있는 무음블럭의 음성정보를 삭제된 무음블럭의 음성정보로 재생하는 경우에는 미세하게 존재하는 음성신호에 의해 동일한 음성신호가 삭제된 무음블럭의 구간에 연속적으로 재생되게 된다. 따라서 이런 경우 상기와 같이 재생되는 음성신호는 잡음과 같이 귀에 거슬리게 된다. 따라서 본 발명에서는 유음블럭의 전후에 존재하는 무음블럭의 음성정보는 그대로 저장하여 음의 단속을 매끄럽게 하는 동시에 삭제된 무음블럭의 음성정보는 완전하게 "0"로 재생하여 불필요한 음의 재생을 제거한다.However, if the current block number is not contiguous with the previous block number in
그리고 상기 음성처리부(3)의 CPU(212)는 608단계에서 상기와 같이 인출한 특정무음블럭정보를 상기 ADPCM(211)로 출력하여 정상적으로 재생하도록 제어한다. 그리고 다음 블럭번호에 대응하는 블럭음성정보를 재생하기 위하여 609단계에서 상기 버퍼(4)의 인덱스를 하나 증가시킨다. 이때 삭제된 블럭번호의 음성정보를 재생하는 경우 상기 버퍼(4)의 인덱스는 상기 606단계에서 하나 감소된 상태이므로, 상기 609단계에서 인덱스를 증가시키는 경우 이전의 인덱스를 계속 유지하게 된다. 따라서 삭제된 무음블럭의 음성정보를 재생하는 경우 상기 버퍼(4)의 인덱스는 변경되지 않고 이전 상태를 계속 유지한다. 상기 609단계를 수행한 후, 610단계로 진행한다.The
상기 제4도의 (430)과 같은 형태를 가진 블럭 음성정보가 수신되는 경우, 삭제된 무음블럭의 정보를 재생은 (436)-(440)과 같이 수행된다.When block voice information having a form as shown in 430 of FIG. 4 is received, reproducing the information of the deleted silent block is performed as shown in (436) to (440).
그리고 상기 중앙제어부(1)로 재생종료 명령이 수신되면, 상기 음성처리부(3)의 CPU(212)는 는 610단계에서 이를 인지하고 재생동작을 중지한다.When the playback end command is received by the
상술한 바와 같이 음성우편장치에서 음성정보가 없는 무음구간을 삭제함으로서 기억장치의 용량을 상대적으로 확장시킬 수 있으며, 실시간 처리에 효율적이고 입력음성정보의 유음전후의 무음은 삭제하지 않고 무음과 무음구간만 삭제하여 저장한 후 재생시 유음전후의 무음까지 재생함으로서 부드러운 소리를 재현할 수 있고, 무음 삭제구간에 특정무음블럭을 재생함으로서 불연속적인 반복음(noice)을 제거할 수 있는 이점이 있다.As described above, by deleting the silent section without voice information in the voice mail device, the capacity of the storage device can be relatively extended, and it is efficient for real-time processing and the silent and silent sections are not deleted without deleting the silence before and after the input voice information. Only after deleting and storing, the sound can be reproduced by reproducing the sound before and after the silence, and the repetitive noise can be removed by reproducing a specific silence block in the silence erasure section.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019870015327A KR930002585B1 (en) | 1987-12-30 | 1987-12-30 | Voiceless period compression and decompression method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019870015327A KR930002585B1 (en) | 1987-12-30 | 1987-12-30 | Voiceless period compression and decompression method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR890011307A KR890011307A (en) | 1989-08-14 |
KR930002585B1 true KR930002585B1 (en) | 1993-04-03 |
Family
ID=19267627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019870015327A KR930002585B1 (en) | 1987-12-30 | 1987-12-30 | Voiceless period compression and decompression method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR930002585B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100557100B1 (en) * | 1998-12-26 | 2006-05-17 | 삼성전자주식회사 | Voice editing system and method for voice mail system |
-
1987
- 1987-12-30 KR KR1019870015327A patent/KR930002585B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR890011307A (en) | 1989-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5845240A (en) | Selective recall and preservation of continuously recorded data | |
US5774843A (en) | Methods of efficiently recording an audio signal in semiconductor memory | |
EP1481392B1 (en) | Trick mode audio playback | |
US6044431A (en) | Data buffer using dummy data | |
KR930002585B1 (en) | Voiceless period compression and decompression method | |
JPH04359315A (en) | Data compression controller and data restoration controller | |
JP3024447B2 (en) | Audio compression device | |
JPH0136119B2 (en) | ||
JP3189587B2 (en) | Audio time base converter | |
JP2905215B2 (en) | Recording and playback device | |
JPS6029800A (en) | Voice analysis system | |
JPH0368399B2 (en) | ||
US6339804B1 (en) | Fast-forward/fast-backward intermittent reproduction of compressed digital data frame using compression parameter value calculated from parameter-calculation-target frame not previously reproduced | |
JPH0320830B2 (en) | ||
JP2582762B2 (en) | Silence compression sound recording device | |
JP3217590B2 (en) | Message playback device | |
JP2002287800A (en) | Speech signal processor | |
KR0141237B1 (en) | Audio signal recording/reproducing method | |
JP3498319B2 (en) | Automatic performance device | |
JPS61189600A (en) | Voice storage reproducer | |
KR900003627B1 (en) | Voice-post service system | |
JPS5837602B2 (en) | Audio file method | |
JP2001318700A (en) | Speech speed converter | |
JP3923594B2 (en) | Audio recording / playback device | |
JPH04283471A (en) | Silent processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20070312 Year of fee payment: 15 |
|
EXPY | Expiration of term |