KR20070046313A - 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법 - Google Patents

오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법 Download PDF

Info

Publication number
KR20070046313A
KR20070046313A KR1020050102855A KR20050102855A KR20070046313A KR 20070046313 A KR20070046313 A KR 20070046313A KR 1020050102855 A KR1020050102855 A KR 1020050102855A KR 20050102855 A KR20050102855 A KR 20050102855A KR 20070046313 A KR20070046313 A KR 20070046313A
Authority
KR
South Korea
Prior art keywords
packet
audio
frame
vocoder
bit stream
Prior art date
Application number
KR1020050102855A
Other languages
English (en)
Other versions
KR100726859B1 (ko
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 엠큐브웍스(주)
Priority to KR1020050102855A priority Critical patent/KR100726859B1/ko
Publication of KR20070046313A publication Critical patent/KR20070046313A/ko
Application granted granted Critical
Publication of KR100726859B1 publication Critical patent/KR100726859B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 프레임 당 가변 길이를 갖는 오디오 비트 스트림 데이터를 프레임 당 고정 길이를 갖는 통상의 보코더 전송 시스템을 통해 전송하는 방법에 관한 것이다. 최근 기존의 착신 대기음 대신 음악 등의 오디오 데이터를 제공하는 서비스가 보급되면서 오디오 신호를 압축하기 위해 음성 압축을 주목적으로 개발된 보코더를 이용하고 있는 바, 수신된 오디오의 음질이 원본 오디오의 음질과 비교할 때 현저히 저하되는 것이 불가피한 상황이다. 따라서, 오디오 신호를 압축하기 위해 보코더 대신 오디오 코더를 사용함으로써 수신된 오디오의 음질을 향상시킬 수 있음은 자명한 사실이다. 이러한 배경에서 본 발명에서는 압축된 오디오 비트 스트림 데이터를 통상의 보코더 전송 시스템을 통해 전송하는 효율적이고 안정적인 방법을 제공할 수 있게 된다.
오디오 코더, 보코더, 프레임, 패킷, 인덱스, 헤더

Description

오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법{METHOD FOR TRANSMITTING AUDIO BIT STREAM IN FORM OF VOCODER PACKET}
도 1은 종래의 무선 통신망 시스템에서 착신 대기음 구간을 이용한 대기음 제공 장치의 구성을 나타낸 도면,
도 2는 본 발명에 따라 오디오 비트 스트림을 보코더 패킷 단위로 분할하는데 있어서 부가 패킷 정보의 구조를 나타낸 도면,
도 3은 본 발명에 따라 패킷 구조의 스타트 프레임 플래그와 엔드 프레임 플래그가 적용된 경우의 각 프레임 별 패킷 구분 상태를 나타낸 도면,
도 4는 본 발명에 따라 패킷 구조의 프레임 인덱스가 적용된 경우의 각 프레임 구별 상태를 예시적으로 나타낸 도면,
도 5는 본 발명에 따라 패킷 구조의 다음 프레임까지의 오프셋 정보가 적용된 경우의 오프셋 상태를 예시적으로 나타낸 도면이다.
<도면의 주요부분에 대한 부호의 설명>
100:발신 단말기, 105:착신 단말기,
110:발신 기지국 제어기, 111:보코더,
120:발신 교환기, 130:착신 교환기,
140:음원 제공장치.
본 발명은 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법에 관한 것으로서, 보다 상세하게는 무선 통신망의 보코더 전송 패킷을 이용하여 오디오 비트 스트림을 전송할 수 있도록 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법에 관한 것이다.
주지된 바와 같이, 기존의 무선 통신망에서 발신자가 전화 통화를 시도한 경우 착신 가입자의 교환기는 획일적인 링백톤(Ring Back Tone)을 발신자에게 들려주는 방식을 채택하고 있는 바, 발신자가 전화 통화를 시도하여 착신자가 응답할때까지 착신 대기음이 제공되는 시간을 착신 대기음 구간 또는 링백톤 구간이라고 한다. 한편, 이와 같은 종래의 링백톤 방식은 획일적으로 동일한 톤을 제공하므로 착신자의 응답 이전까지는 발신자가 오접속 유무를 판단할 수 없으며, 나아가 사용자의 특성에 부합하는 다양한 링백톤 대체 서비스를 제공하지 못하는 문제점이 있었다.
이러한 문제점을 해소하기 위해, 최근에는 상기와 같은 획일적인 링백톤 대신에 착신 가입자가 무선 통신망 상에서 특정한 음원을 선택하여 등록하게 되면, 발신자의 호발신시에 등록된 특정 음원을 링백톤으로서 제공할 수 있도록 하여, 발신자가 착신자의 응답전에 오접속 유무를 판단할 수 있도록 함과 아울러 착신 가입 자의 특성에 부합하는 다양한 링백톤 대체음을 제공하도록 되어 있다.
이에, 무선 통신 가입자는 무선 통신망 사업자가 링백톤 대체음으로서 제공하는 가요, 팝송, 클래식 등과 같은 음악 컨텐츠 뿐만 아니라, 가입자 자신이 직접 편집한 음악이나 목소리 등의 음향 컨텐츠를 특정 대기음으로서 지정할 수 있도록 되어 있다.
도 1은 종래의 무선 통신망 시스템에서 착신 대기음 구간을 이용한 대기음 제공 장치의 구성을 나타낸 도면이다.
도 1에 도시된 바와 같이, 통상의 이동통신 단말기에서는 발신 후 착신자가 수신할 때까지 착신 대기음을 듣게 된다. 착신 대기 중에 착신 교환기(MSC : Mobile Switching Center)(130)에서는 PCM 방식의 착신 대기음을 발신 단말기(100)에 전송한다. 착신자가 착신 대기음 서비스를 요청한 경우, 착신 교환기(130)에서는, 음원 제공 장치(150)로 통화로를 연결하여, 상기 음원 제공 장치(150)에 저장된, 착신자가 지정한 특정 대기음이 발신 단말기(100)에 전송되도록 한다.
한편, 발신자 측의 기지국 제어기(BSC : Base Station Controller)(110)에서는, 상기 착신 교환기(130)와 발신 교환기(120)를 통해 전송되는 PCM 방식의 착신 측의 음성을 보코더(Vocoder)(111)를 이용하여 압축하여 발신 단말기(100)로 전송한다. 상기 보코더로는, 셀룰러(Cellular) 방식의 무선 통신망에서는 9.6kbps의 EVRC를 이용하여 음성 압축하고, PCS(Personal Communication System) 방식의 이동 통신망에서는 9.6kbps의 EVRC 또는 13.3kbps의 QCELP 코덱을 이용하여 음성 압축한다.
또한, 상기 발신 기지국 제어기(110)에서는, 착신 대기음 구간 및 통화가 연결되어 끝날 때까지, 착신자 측에서 전송하는 착신 대기음 및 통화 목소리를 동일한 음성 압축 방식으로 변조하여 발신 단말기(100)로 전송한다. 따라서, 발신자가 이동 통신 단말기를 통해 통화를 시도하여, 통화로가 연결되고, 착신 대기음 구간에, 착신자가 지정한 특정 대기음, 특히 음악이 발신 단말기(100)에 전송되는 경우, 발신 기지국 제어기(110)에서는 전송되는 음악도 상기 보코더(111)를 통해 음성 압축한다.
한편, 음성 신호의 주파수 성분은 4 KHz 이하에 집중되어 있고 이러한 음성 신호를 압축할 목적으로 설계된 통상의 보코더는 입력 신호의 주파수 대역폭을 4 KHz 이하로 제한하여 사용하고 있다. 반면, 음성 신호를 포함하는 음악 등의 일반적인 오디오 신호는 4 KHz에서 20 KHz까지의 고주파에 해당하는 신호 성분을 포함하고 있기 때문에, 이러한 오디오 신호를 압축하기 위한 방법으로서 보코더를 사용하는 것은 상기 고주파 대역의 신호를 압축하지 못하는 근본적인 한계를 가질 수 밖에 없다. 따라서, 오디오 신호의 고주파 대역의 신호 성분을 제대로 압축하고 전송하기 위해서는 오디오 코딩 방식을 적용하는 것이 필수적이라고 할 수 있다.
현재 사용되고 있는 보코더 기반의 전송 시스템을 이용하여 압축된 오디오 비트 스트림 데이터를 전송하기 위해서는 다음과 같이 고려해야 할 문제들이 있다.
즉, 보코더의 경우에는 인코딩, 전송 및 디코딩의 기본 단위인 프레임의 출력 구간 길이가 통상적으로 20 msec인 반면에, 오디오 코더는 표본화 주파수에 따라 20 msec에서 100 msec까지 늘어 날 수 있다. 예컨대, MPEG-4 HE AAC 코더는 22050 Hz의 표본화 주파수를 갖는 신호에 대해 프레임당 약 93 msec의 출력 구간 길이를 갖는다.
상기 프레임 단위로 압축된 비트 스트림 데이터의 양은 통상적인 보코더의 경우 고정된 길이를 갖게 되는데, 예를 들어 8 kpbs EVRC 보코더는 Full Rate에서 패킷당 171 비트로 고정된 비트 스트림 데이터를 출력한다. 반면, 오디오 코더는 압축 효율을 높이기 위해 비트 스트림 데이터의 양을 프레임 단위로 가변으로 하는 경우가 일반적인데, 예를 들어 MPEG-4 HE AAC 코더로 22050 Hz의 표본화 주파수를 갖는 신호를 8 kbps로 압축하는 경우 프레임당 평균 743 비트의 가변 길이의 비트 스트림 데이터를 생성하게 된다.
프레임당 가변 길이를 갖는 오디오 비트 스트림을 보코더 패킷 구조에 실어 전송하기 위해서는 오디오 비트 스트림 데이터를 8 kbps EVRC의 경우 171 bit 단위의 보코더 패킷 단위로 분리해야 하는데, 이 경우 보코더 패킷 단위로 전송된 오디오 비트 스트림을 프레임 단위로 처리하기 위해서는 프레임의 경계를 검색하고 구분할 수 있는 방법이 고려되어야 한다.
상기 오디오 비트 스트림의 프레임 경계를 구분하기 위한 방법으로서, 통상적인 오디오 코더에서는 프레임 동기 정보와 오디오 설정 정보 등을 포함하는 프레임 헤더 데이터를 프레임 앞부분에 삽입하여 사용하게 된다.
하지만, 상기 프레임 헤더 데이터를 사용하는 방식을 적용할 경우에는, 전송 오류에 의해 패킷이 손실된 상황에서 손실 이후의 프레임 헤더를 검색하는 데 소요되는 시간이 길어지게 되는 바, 이 방식에서는 헤더에 포함된 프레임 동기 정보를 바이트 단위로 검색한 뒤 헤더의 내용을 검사하게 되므로, 검색 시간이 길어지게 된다는 문제점이 있다.
또 하나의 고려 사항은 프레임 헤더를 검색하는 과정의 정확성인데, 통상적인 비트 스트림에서는 전송 오류가 발생한 상황에서 헤더가 아닌 비트 스트림 데이터 영역이 헤더로 오인될 가능성이 있어서 프레임 헤더의 검색이 부정확하다는 문제점이 있다.
또한, 비트 스트림 데이터 양와 비교할 때 프레임 헤더 데이터가 차지하는 오버헤드의 문제인 바, 예를 들어 MPEG-4 HE AAC에서 사용하는 헤더 형식인 ADTS(Audio Data Transport Stream)의 경우 그 길이가 56 비트로서 평균 743 비트의 프레임 데이터에 대해 약 7.5%의 오버헤드를 갖게 된다는 문제점이 있다.
따라서, 본 발명은 상기한 종래의 문제점을 해결하기 위해 이루어진 것으로서, 그 목적은 오디오 비트 스트림 데이터를 통상의 보코더 패킷 단위로 분할하여 전송함으로써, 검색 속도의 문제와 정확성의 문제, 오버 헤드의 문제를 해결할 수 있도록 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법을 제공하는 것이다.
상기한 목적을 달성하기 위해 본 발명에 따르면, 오디오 비트 스트림을 보코 더 패킷 단위로 분할하는 단계와, 상기 각각 분할된 오디오 비트 스트림의 패킷에 부가 패킷 정보를 삽입하는 단계 및, 상기 분할된 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 단계로 이루어진 것을 특징으로 하는 보코더 전송 시스템에서의오디오 비트 스트림 전송 방법을 제공한다.
바람직하게, 상기 부가 패킷 정보에는 스타트 프레임 플래그(Start_Frame_Flag)와, 앤드 프레임 플래그(End_Frame_Flag), 프레임 인덱스(Frame_Index), 구성 플래그(Config_Flag), 채널 정보(Channel_Info), 샘플 레이트(Sample_Rate), 샘플 레이트 인덱스(Sample_rate_Index), 다음 프레임의 오프셋(Offset_to_Next_frame), 확장 플래그(Extension_Flag), 패딩 비트(Padding_Bit)가 포함되어 있는 것을 특징으로 한다.
이하, 상기한 바와 같이 구성된 본 발명에 대해 첨부도면을 참조하여 상세히 설명한다.
먼저, 본 발명에서는 예컨대 MPEG-4 HE AAC 오디오 프레임과 같은 오디오 프레임을 예컨대 EVRC(Enhanced Variable Rate Codec) 포맷의 음성 패킷과 같은 보코더 패킷 단위로 분할하고자 하는 것으로서, 분할된 패킷을 전송할 때 어느 하나의 패킷이나 프레임에 에러가 발생되어 데이터가 소실되는 경우에, 다음 프레임을 찾을 수 있도록 하는 동기 정보를 갖도록 하기 위해, 오디오 프레임에는 각 프레임의 시작을 나타내는 헤더 정보를 삽입하게 되는 바, 상기 헤더 정보는 MPEG-4에서 정의하는 ADTS 형식을 사용할 수 있도록 한다.
한편, 상기 ADTS 헤더 형식을 갖는 헤더 정보는 56 bit(7 byte)로 이루어지고, 표본화 주파수(Sampling Frequency), 채널 수, 프레임의 길이(Frame Length), 싱크 워드(Sync Word) 등의 다양한 정보를 포함하고 있는 바, 상기 ADTS 헤더는 정보의 길이가 길고, 불필요한 정보를 다수 포함하고 있기 때문에, 헤더 형식이 더 단순화되고 길이가 짧은 새로운 헤더 형식이 요구된다.
또한, 오디오 프레임에서 연속되는 프레임 간의 경계 부분에 포함되어 있는 패킷의 정보를 파악할 수 있는 부가 정보가 필요하고, 해당 프레임 간의 경계를 신속하게 찾을 수 있는 부가 정보가 필요하다.
이를 위해, 본 발명에서는 단순하면서 프레임 간의 경계를 신속하게 찾을수 있는 데이터 구성을 갖는 패킷 구조가 적용된다.
즉, 도 2는 본 발명에 따라 오디오 비트 스트림의 데이터를 보코더 패킷 단위로 분할하는데 있어 부가 패킷의 구조를 나타낸 도면으로서, 동 도면에서 패킷 구조에는 스타트 프레임 플래그(Start_Frame_Flag)와, 엔드 프레임 플래그(End_Frame_Flag), 프레임 인덱스(Frame_Index), 구성 플래그(Config_Flag), 채널 정보(Channel_Info), 표본화 주파수(Sample_Rate), 표본화 주파수 인덱스(Sample_rate_Index), 다음 프레임의 오프셋(Offset_to_Next_frame), 확장 플래그(Extention_Flag), 패딩 비트(Padding_bits)로 구성된다.
상기 스타트 프레임 플래그는 1 비트로 이루어진 것으로서, 해당 패킷이 오디오 프레임의 시작을 포함하고 있으면 "1"이고 아니면 "0"의 비트 값을 갖게 되고, 상기 엔드 프레임 플래그는 1 비트로 이루어진 것으로서, 해당 패킷이 오디오 프레임의 끝을 포함하고 있으면 "1"이고, 아니면 "0"의 비트 값을 갖게 된다. 상기 스타트 프레임 플래그 및 엔드 프레임 플래그를 사용하게 되면, 해당 패킷 내에 오디오 프레임의 경계가 포함되었는지의 여부를 정확하고 신속하게 판단할 수 있게 된다.
상기 프레임 인덱스는 1 비트로 이루어진 것으로서, 현재 패킷이 포함하는 오디오 프레임의 인덱스를 "0" 또는 "1"의 비트 값으로 표현하는 것인 바, 특정한 프레임에 대한 각 패킷에서의 프레임 인덱스가 "0"인 경우에, 그 이후의 오디오 프레임에 대한 각 패킷에서의 프레임 인덱스는 "1"로 표현된다. 즉, 상기 프레임 인덱스는 각각의 오디오 프레임마다 번갈아 "0" 또는 "1"의 비트 값을 반복할 수 있도록 함에 따라, 두 프레임의 경계를 포함하는 패킷이 손실되었을 경우 프레임 인덱스를 참조함으로써, 프레임 경계의 손실 유무를 알 수 있도록 한다.
여기서, 상기 프레임 인덱스를 갖는 특정 패킷이 현재 오디오 프레임과 다음 오디오 프레임의 경계 부분에 위치하는 패킷이면, 상기 프레임 인덱스에는 다음 오디오 프레임의 인덱스의 비트를 갖도록 한다.
상기 구성 플래그는 1 비트로 이루어진 것으로서, 해당 오디오 프레임에 오디오 설정 정보가 포함되어 있으면 "1"이고, 포함되어 있지 않으면 "0"의 비트 값을 갖게 되고, 상기 채널 정보는 1 비트로 이루어진 것으로서, 해당 오디오 비트 스트림의 오디오 채널에 대한 정보를 나타내는 바, 해당 오디오가 모노(Mono)이면 "0", 스테레오(Stereo)이면 "1"의 비트 값을 갖게 된다.
여기서, 상기 구성 플래그를 사용하게 되면, 채널 정보 및 표본화 주파수 등 의 오디오 설정 정보를 전송하는 시점을 선택할 수 있도록 하여 오버헤드를 줄일 수 있게 된다.
상기 표본화 주파수는 17 비트로 이루어진 것으로서, 오디오 신호의 주파수 설정 정보를 나타내고, 상기 표본화 주파수 인덱스는 2 비트로 이루어진 것으로서, 표본화 주파수의 인덱스값을 갖는 바, "1"이면 32,000 Hz, "2"이면 24,000 Hz, "3"이면 22,050 Hz의 값을 갖고, "0"이면 표본화 주파수를 통해 임의의 값을 가질 수 있도록 한다.
상기 다음 프레임의 오프셋은 8 비트로 이루어진 것으로서, 특정 패킷에 대해 스타트 프레임 인덱스의 값이 "1"이고, 앤드 프레임 인덱스의 값이 "1"인 경우에(즉, 해당 패킷이 이전 오디오 프레임의 끝인 동시에 다음 오디오 프레임의 시작인 경우), 현재의 패킷에 포함된 다음 프레임의 시작까지의 비트 값을 나타낸다. 상기 다음 프레임까지의 오프셋을 사용하게 되면, 프레임 경계를 검색하는 속도와 정확성을 높일 수 있게 된다.
상기 패딩 비트는 8 비트로 이루어진 것으로서, 상기 스타트 프레임 플래그가 "0"이고, 엔드 프레임 플래그가 "1"인 경우에, 현재 프레임 끝 다음 비트부터 현재 패킷의 끝까지의 비트수를 나타낸다. 상기 패딩 비트를 사용하게 되면, 해당 패킷이 프레임의 끝만을 포함하는 경우에 프레임의 끝 경계를 분명하게 알 수 있게 된다.
상기 확장 플래그는 1 비트로 이루어진 것으로서, 차후의 다음 기능으로의 사용을 위해 예비적으로 남겨 놓은 플래그이다.
하기의 표 1에서는, 상기 패킷 헤더 정보를 포함하는 오디오 데이터 패킷을 오디오 스트림 패킷(Packet for Audio Stream; 이하 PAS)이라고 명명한 경우에, 해당 PAS의 구조를 나타낸 것이다.
[표 1]
pas_sequence()
{
pas_header()
audio_data_frame()
}
pas_header()
{
start_frame_flag (1 bit)
end_frame_flag (1 bit)
frame_index (1 bit)
if(start_frame_flag = 1)
{
config_flag (1 bit)
if(config_flag = 1)
{
channel_info (1 bit)
sample_rate_index (2 bit)
if(sample_rate_index = 0)
sample_rate (17 bit)
}
if(end_frame_flag = 1)
offset_to_next_frame (8 bit)
}
extention_flag (1 bit)
if(extention_flag = 1)
{
/* reserved for future use */
}
}
다음에, 도 3은 본 발명에 따라 프레임 헤더의 스타트 프레임 플래그와 앤드 프레임 플래그가 적용된 경우의 각 프레임 별 패킷 구분 상태를 나타낸 도면이다.
도 3에 도시된 바와 같이, "10"은 스타트 프레임 플래그가 "1"이고, 엔드 프레임 플래그가 "0"인 것으로서 해당 패킷이 오디오 프레임의 시작 부분(Start of Frame)임을 나타내는 것이고, "00"은 스타트 프레임 플래그와 엔드 프레임 플래그가 각각 "0"인 것으로서 해당 패킷이 오디오 프레임의 중간(Middle of Frame)에 위 치하는 것으로 나타내는 것이며, "01"은 스타트 프레임 플래그가 "0", 엔드 프레임 플래그가 "1"인 것으로서 해당 패킷이 오디오 프레임의 끝 부분(End of Frame) 임을 나타내는 것이고, "11"은 스타트 프레임 플래그가 "1", 엔드 프레임 플래그가 "1"인 것으로서 해당 패킷이 현재 프레임의 끝 부분이면서 다음 프레임의 시작 부분에 위치하는 것을 나타낸다.
본 발명에서는 각 패킷의 스타트 프레임 플래그와 엔드 프레임 플래그를 통해서 해당 패킷이 오디오 프레임의 어느 위치에 있는 지를 파악할 수 있게 되고, 해당 패킷이 각 프레임의 경계 부분에 위치해 있는 상태를 파악할 수 있다.
다음에, 도 4는 본 발명에 따라 프레임 헤더의 프레임 인덱스가 적용된 경우의 각 프레임 구별 상태를 예시적으로 나타낸 도면이다.
도 4에 도시된 바와 같이, 각 패킷의 프레임 인덱스에는 각각의 오디오 프레임마다 "1" 또는 "0"의 값을 번갈아 삽입하게 되는데, 프레임의 경계를 포함하는 패킷이 손실된 경우에, 그 다음 패킷을 같은 프레임의 패킷으로 처리하는 오류를 피할 수 있도록 한다.
도 5는 본 발명에 따라 프레임 헤더에서 다음 프레임 오프셋 정보가 적용된 경우의 오프셋 상태를 예시적으로 나타낸 도면이다.
도 5에 도시된 바와 같이, 상기 다음 프레임의 오프셋은, 스타트 프레임 플래그와 엔드 프레임 플래그가 각각 "1"인 값을 갖는 패킷에 삽입되는 것으로서, 상기 스타트 프레임 플래그와 엔드 프레임 플래그가 "1"인 값을 갖는 패킷은 현재 오디오 프레임과 다음 오디오 프레임의 경계 부분의 패킷에 해당되는 것이고, 해당 패킷에서 다음 프레임의 시작까지의 비트수를 나타내게 된다.
즉, 상기 현재 프레임과 다음 프레임의 경계 부분에 대한 패킷에서, 오프셋 값에 의해 다음 프레임의 시작까지의 비트수를 알게 됨으로써, 프레임 경계를 신속하고 정확하게 찾을 수 있게 된다.
한편, 본 발명은 전술한 전형적인 바람직한 실시예들에만 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 여러 가지로 개량, 변경, 대체 또는 부가하여 실시할 수 있는 것임은 당해 기술분야에 통상의 지식을 가진 자라면 용이하게 이해할 수 있을 것이다. 이러한 개량, 변경, 대체 또는 부가에 의한 실시가 이하의 첨부된 특허청구범위의 범주에 속하는 것이라면 그 기술사상 역시 본 발명에 속하는 것으로 보아야 한다.
이상과 같이 본 발명에 따르면, 오디오 비트 스트림을 통상적인 보코더 패킷 전송 구조를 이용하여 전송하는 데 있어, 제공된 부가 패킷 정보 구조를 이용함으로써, 오디오 프레임의 경계를 신속하고 정확하게 검색할 수 있도록 하고, 패킷 손실의 경우에 효과적으로 대응할 수 있도록 하는 동시에 부가 정보의 오버헤드를 최소화할 수 있는 효과를 갖게 된다.

Claims (19)

  1. 오디오 비트 스트림을 보코더 패킷 단위로 분할하는 단계와,
    상기 분할된 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 단계로 이루어진 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  2. 제 1 항에 있어서,
    상기 오디오 비트 스트림은 MPEG-4 HE AAC(High-Efficiency Advanced Audio Coding) 포맷의 오디오 프레임 데이터이고, 상기 보코더 패킷은 EVRC(Enhanced Variable Rate Codec) 포맷의 음성 패킷인 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  3. 오디오 비트 스트림을 보코더 패킷 단위로 분할하는 단계와,
    상기 각각 분할된 오디오 비트 스트림의 패킷에 부가 패킷 정보를 삽입하는 단계 및,
    상기 분할된 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 단계로 이루어진 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  4. 제 3 항에 있어서,
    상기 오디오 비트 스트림은 MPEG-4 HE AAC(High-Efficiency Advanced Audio Coding) 포맷의 오디오 프레임 데이터이고, 상기 보코더 패킷은 EVRC(Enhanced Variable Rate Codec) 포맷의 음성 패킷인 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  5. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 해당 패킷이 전송 오디오 프레임의 시작 부분인지를 나타내는 스타트 프레임 플래그 정보와,
    해당 패킷이 전송 오디오 프레임의 끝 부분인지를 나타내는 엔드 프레임 플래그 정보가 포함되어 있는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  6. 제 5 항에 있어서,
    상기 스타트 프레임 플래그와 앤드 프레임 플래그는 각각 "1" 또는 "0"의 비트값으로 해당 패킷의 시작 부분 및 끝 부분 위치상태를 나타내는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  7. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 해당 패킷이 포함되어 있는 오디오 프레임에 대한 인덱스 값을 갖는 프레임 인덱스 정보를 갖춘 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  8. 제 7 항에 있어서,
    상기 프레임 인덱스는 연속되는 각각의 오디오 프레임 별로 번갈아 "0" 또는 "1"의 비트 값을 반복할 수 있도록 하는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  9. 제 8 항에 있어서,
    현재 오디오 프레임과 다음 오디오 프레임의 경계 부분에 위치하는 패킷의 프레임 인덱스에는 다음 오디오 프레임의 인덱스 비트값을 적용하도록 이루어진 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  10. 제 8 항에 있어서,
    현재 오디오 프레임과 다음 오디오 프레임의 경계 부분에 위치하는 패킷의 프레임 인덱스에는 현재 오디오 프레임의 인덱스 비트값을 적용하도록 이루어진 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  11. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 현재 오디오 프레임과 다음 오디오 프레임의 경계 부분에 위치한 패킷에서, 해당 패킷에 포함된 다음 프레임의 시작까지의 비트수를 갖는 다음 프레임의 오프셋 정보를 포함하는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  12. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 해당 패킷이 오디오 설정 정보를 포함하는 지를 나타내는 구성 플래그 정보를 포함하는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  13. 제 12 항에 있어서,
    상기 구성 플래그 정보는 해당 패킷이 오디오 설정 정보를 포함하는 지의 여부에 따라 "1" 또는 "0"의 비트값을 갖는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  14. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 해당 패킷의 오디오 채널 정보가 포함되어 있는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  15. 제 14 항에 있어서,
    상기 채널 정보는 오디오 채널이 모노(Mono) 또는 스테레오(Stereo)인지의 여부에 따라, "1" 또는 "0"의 비트 값을 갖는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  16. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 해당 패킷의 표본화 주파수를 나타내는 정보와, 그 표본화 주파수의 인덱스 정보를 포함하는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  17. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 오디오 프레임의 끝을 포함하는 패킷에서, 현재 프레임의 데이터를 제외한 나머지 영역을 나타내는 패딩 비트(Padding Bits) 정보를 포함하는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  18. 제 3 항에 있어서,
    상기 부가 패킷 정보에는 예비 영역으로서 확장 플래그 정보를 포함하는 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
  19. 제 3 항에 있어서,
    상기 부가 패킷 정보를 이용하여 프레임의 경계를 검색하도록 이루어진 것을 특징으로 하는 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법.
KR1020050102855A 2005-10-31 2005-10-31 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법 KR100726859B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050102855A KR100726859B1 (ko) 2005-10-31 2005-10-31 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050102855A KR100726859B1 (ko) 2005-10-31 2005-10-31 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법

Publications (2)

Publication Number Publication Date
KR20070046313A true KR20070046313A (ko) 2007-05-03
KR100726859B1 KR100726859B1 (ko) 2007-06-11

Family

ID=38271675

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050102855A KR100726859B1 (ko) 2005-10-31 2005-10-31 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법

Country Status (1)

Country Link
KR (1) KR100726859B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100746050B1 (ko) * 2006-06-09 2007-08-06 에스케이 텔레콤주식회사 오디오 코덱의 프레임 구성 방법
KR101484900B1 (ko) * 2009-12-21 2015-01-22 에코스타 어드밴스드 테크놀로지스 엘.엘.씨. 코덱이 적용된 프레임 크기로의 오디오 분할

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100254200B1 (ko) * 1997-11-20 2000-04-15 윤종용 보코더의 기능 추가를 위한 데이터 다운로드 방법
KR20000015093A (ko) * 1998-08-27 2000-03-15 김영환 Cdma 시스템에서의 이동통신 교환기 트렁크 할당방법
KR100311352B1 (ko) * 1999-07-21 2001-10-18 박종섭 범세계 이동통신 제어국 시스템의 디지털 신호 처리 장치 및 그를 이용한 셀렉터/트랜스코더
KR100566298B1 (ko) * 2003-08-18 2006-03-30 에스케이 텔레콤주식회사 가입자 기반 링백톤 서비스의 채널 코딩 적응형 음원 변환처리방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100746050B1 (ko) * 2006-06-09 2007-08-06 에스케이 텔레콤주식회사 오디오 코덱의 프레임 구성 방법
KR101484900B1 (ko) * 2009-12-21 2015-01-22 에코스타 어드밴스드 테크놀로지스 엘.엘.씨. 코덱이 적용된 프레임 크기로의 오디오 분할
US9338523B2 (en) 2009-12-21 2016-05-10 Echostar Technologies L.L.C. Audio splitting with codec-enforced frame sizes

Also Published As

Publication number Publication date
KR100726859B1 (ko) 2007-06-11

Similar Documents

Publication Publication Date Title
JP4365029B2 (ja) ディジタル通信システム内での音声およびデータ送信切換
EP1946517B1 (en) Audio data packet format and decoding method thereof and method for correcting mobile communication terminal codec setup error and mobile communication terminal performing same
US7450601B2 (en) Method and communication apparatus for controlling a jitter buffer
US20020001317A1 (en) System and method for voice and data over digital wireless cellular system
US20070224973A1 (en) Terminal for Multimedia Ring Back Tone Service and Metnod for Controlling Terminal
US20010036174A1 (en) System and method for voice and data over digital wireless cellular system
KR20070013330A (ko) 무선 통신 시스템을 통해 송신된 멀티미디어 데이터의 헤더압축
KR100726859B1 (ko) 오디오 비트 스트림을 보코더 패킷 단위로 전송하는 방법
KR100706968B1 (ko) 오디오 데이터 패킷 생성 장치 및 이의 복조 방법
US7813378B2 (en) Wideband-narrowband telecommunication
US7203637B1 (en) Transmission of compressed information with real time requirement in a packet oriented information network
KR20050119163A (ko) 데이터 프레임 사이즈를 조정하기 위한 선택적인 가변레이트 인코딩
KR100688889B1 (ko) 코덱 정보를 이용한 데이터 식별 방법 및 장치
US7313233B2 (en) Tone clamping and replacement
KR100723697B1 (ko) 멀티미디어 링백톤 서비스를 제공하는 방법 및 이동통신시스템과 멀티미디어 링백톤 서비스를 위한 이동통신단말기
KR100875936B1 (ko) 가변대역 멀티코덱 음성 품질 측정 구간 일치를 위한 방법및 그 장치
KR100688890B1 (ko) 멀티미디어 코덱을 이용한 링백톤 서비스 방법 및 그시스템
JPS6121652A (ja) 音声パケツト圧縮装置
KR100723679B1 (ko) 착신 대기음 구간에서 cdma 이동통신망의 음성슬롯데이터 구조를 이용해 he aac 비트스트림을 전송하는방법
WO2015163750A2 (ko) 무선 통신 시스템에서 음성 데이터를 송신 및 수신하기 위한 장치 및 방법
KR20070089425A (ko) 멀티미디어 링백톤 대체음 서비스에서 부가 정보를 이용한오디오 데이터 전송 방법, 시스템 및 장치
JP2001308919A (ja) 通信装置
KR100704848B1 (ko) 착신 대기음 구간에서의 코덱 변경 및 적응 방법
KR100668686B1 (ko) 이동통신 단말기에서의 코덱 설정 오류 수정 방법 및 이를수행하는 이동통신 단말기
KR100793294B1 (ko) 광대역 코드 분할 다중화 시스템에서 멀티미디어 링백톤대체음 서비스를 위한 오디오 프레임 생성 방법, 시스템 및장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130503

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140402

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee