KR20100074132A - 디지털 신호 정렬을 위한 시스템, 방법 및/또는 장치 - Google Patents

디지털 신호 정렬을 위한 시스템, 방법 및/또는 장치 Download PDF

Info

Publication number
KR20100074132A
KR20100074132A KR1020107005782A KR20107005782A KR20100074132A KR 20100074132 A KR20100074132 A KR 20100074132A KR 1020107005782 A KR1020107005782 A KR 1020107005782A KR 20107005782 A KR20107005782 A KR 20107005782A KR 20100074132 A KR20100074132 A KR 20100074132A
Authority
KR
South Korea
Prior art keywords
digital signal
signal samples
sequence
reordering
encoded
Prior art date
Application number
KR1020107005782A
Other languages
English (en)
Other versions
KR101181027B1 (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 오픈 인터페이스 노쓰 어메리카, 인코포레이티드
Publication of KR20100074132A publication Critical patent/KR20100074132A/ko
Application granted granted Critical
Publication of KR101181027B1 publication Critical patent/KR101181027B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

디지털 신호 샘플 값들의 세트의 순서화 및/또는 순서변경와 연관된 방법들, 장치들, 디바이스들 및 시스템들의 실시예들이 개시된다.

Description

디지털 신호 정렬을 위한 시스템, 방법 및/또는 장치{SYSTEM, METHOD, AND/OR APPARATUS FOR DIGITAL SIGNAL SORTING}
본 발명에 개시된 주제는 2007년 8월 17일자로 "SYSTEM, METHOD, AND/OR APPARATUS FOR DIGITAL SIGNAL SORTING"란 명칭으로 출원된 미국 시리즈 넘버 11/840,887호의 우선권을 청구하며, 이는 본 발명에 참조로 통합된다.
본 발명은 디지털 신호들을 정렬(sorting)하는 것과 관련된다.
다양한 상황들에서, 디지털 신호들과 같은 신호들을 압축하는 능력을 갖는 것이 요구된다. 이를 달성하기 위한 방안들이 엔지니어들, 과학자들 및 기술자들에 의해 지속적으로 연구되고 있다.
본 발명의 주제는 특히 명세서의 결론 부분에서 개시되고 명확히 청구된다. 그러나, 본 발명의 목적, 특징 및 장점들과 함께 동작 구성 및 방법으로서의 청구되는 주제는 첨부되는 도면들을 참조할 때 하기의 상세한 설명을 참조로 보다 명확히 이해될 것이다.
도 1은 가능한 일 실시예에 따른, 디지털 신호들을 정렬하기 위한 개략도;
도 2a는 도 1의 실시예에 따라, 정렬되지 않은(unsorted) 디지털 신호들의 세트에 대한 개략도;
도 2b는 도 1 및 도 2의 실시예에 따라, 정렬된 디지털 신호들의 세트에 대한 개략도;
도 3은 또 다른 가능한 실시예에 따른, 정렬 프로세스(sort process)의 흐름도; 그리고
도 4는 도 3의 실시예에 대한 순서변경 프로세스(reorder process)의 흐름도.
하기의 상세한 설명에서, 다수의 특정 세부설명들은 청구되는 주제의 전반적 이해를 돕기 위해 제시된다. 그러나, 이러한 특정 세부설명들 없이도 청구되는 주제가 당업자에 의해 실행할 수 있다는 것이 이해될 것이다. 다른 예들에서, 당업자들에게 공지된 방법들, 과정들 및/또는 콤포넌트들은 청구되는 주제가 불분명해지지 않도록 하기 위해 상세하게 설명되지 않는다.
본 명세서 전반에서 참조되는 "일 실시예(one embodiment)" 또는 "(an embodiment)"는 상기 실시예와 관련하여 개시되는 특정 피쳐(feature), 구조, 또는 특징이 청구되는 주제의 적어도 하나의 일 실시예에 포함된다는 것을 의미한다. 따라서, 본 명세서의 다양한 위치들에서의 "일 실시예에서" 및/또는 "실시예"란 문구는 모두 동일한 실시예 또는 본 발명에 개시된 임의의 하나의 특정 실시예로 반드시 참조되는 것은 아니다. 또한, 특정 피쳐들, 구조들 및/또는 특징들은 하나 이상의 실시예들에서 다양한 방식으로 조합될 수 있다. 물론, 일반적으로 이들 및 다른 논점들(issues)이 특정 문맥에 따라 변경될 수 있다. 따라서, 이러한 용어들의 사용 및 설명의 특정 문맥은 특정 문맥에 대해 유추되는 추론들과 관련한 유용한 가이던스를 제공할 수 있다.
마찬가지로, 본 발명에서 사용되는 "및", "또는" 및 "및/또는"이란 용어들은 적어도 부분적으로는 이들이 사용되는 문맥에 따라 관련되는 다양한 의미들을 포함할 수 있다. 통상적으로, A, B 및/또는 C와 같은 리스트와 관련하여 사용되는 경우, "및/또는"은 A, B, 또는 C 뿐만 아니라 A, B 및 C를 의미하도록 의도된다. 이는 단지 예시적인 예들을 나타내는 것으로 청구되는 주제는 이러한 예로 제한되지 않는다는 것을 주목해야 한다.
별다르게 특별히 언급되지 않는다면, 본 명세서 전반에서, "프로세싱(processing)", "컴퓨팅(computing)", "계산(calculating)", "선택(selecting)", "형성(forming)", "인에이블링(enabling)", "방해(inhibiting)", "식별(identifying)", "개시(initiating)", "질의(querying)", "획득(obtaining)", "호스팅(hosting)", "유지(maintaining)", "표현(representing)", "변조(modifying)", "수신(receiving)", "전송(transmitting)" "정렬(storing)", "인증(authenticating)", "권한부여(authorizing)", "호스팅(hosting)", "결정(determining)" 및/또는 이와 유사한 용어들은, 시스템의 프로세서들, 메모리들, 레지스터들, 및/또는 다른 정보 저장기, 전송, 수신 및/또는 디스플레이 디바이스들 내에서전자, 자기, 및/또는 다른 물리적 성질들로서 표현될 수 있는 데이터를 조정 및/또는 변환할 수 있는 컴퓨터 및/또는 다른 컴퓨팅 플랫폼과 같은 시스템에 의해 수행될 수 있는 동작들(actions) 및/또는 프로세스들로 간주된다. 따라서, 컴퓨팅 플랫폼은 신호들 또는 전자 데이터 형태의 데이터를 저장 및/또는 처리하기 위한 능력을 포함하는 시스템 또는 디바이스로 간주된다. 따라서, 본 문맥에서, 컴퓨팅 플랫폼은 하드웨어, 소프트웨어, 펌웨어 및/또는 이들의 조합을 포함할 수 있다. 또한, 특별하게 별다른 언급이 없다면, 흐름도들 또는 그외의 것들을 참조로 본 발명에 개시되는 프로세스는 전체적으로, 또는 부분적으로 컴퓨팅 플랫폼에 의해 실행 및/또는 제어될 수 있다.
도 1은 가능한 일 실시예, 여기서는 실시예(100)에 따라 신호들을 정렬하기 위한 시스템 또는 프로세스의 개략도를 나타낸다. 이러한 특정 실시예에서, 하기의 상세한 설명에서 언급되는 바와 같이, 디지털 신호들이 정렬된다. 이러한 상황들에서, 예를 들어, 압축(compression) 또는 압축해제(decompression) 방식과 같은 인코딩 방법의 일부로서 디지털 신호들을 정렬(sort) 및/또는 정렬하지 않는(unsort) 것이 바람직할 수 있다. 예를 들어, 일부 상황들하에서, 인접한 신호들 간의 크기 차에 적어도 부분적으로 기초하여 디지털 신호들의 정렬된 세트를 인코딩함으로써 원하는 압축을 달성하는 것이 가능할 수 있다. 따라서, 이러한 상황들하에서, 신호들을 정렬하고 정렬된 신호들에 대한 순열(permutation)값을 생성하는 것이 바람직할 수 있다. 이런 방식으로, 여전히 압축해제 방식의 일부로서 신호들이 복구(restored)되는 것을 허용하면서 바람직한 압축을 달성하는 방식으로 신호들이 인코딩될 수 있다.
청구되는 주제는 이러한 범주로 제한되지 않는다; 그러나, 실시예(100)는 오디오 샘플 또는 오디오 디지털 신호 샘플과 관련하여 개시된다. 본 발명에서 사용되는 "오디오 샘플(audio sample)" 또는 "오디오 디지털 신호(audio digital signal)는 오디오 콘텐츠의 하나 이상의 양상들에 해당하는 하나 이상의 값들을 갖는 디지털 신호 샘플 값들의 그룹 또는 하나의 디지털 신호 샘플 값을 의미할 수 있다; 그러나, 물론 오디오 디지털 신호 샘플들은 예시적 예로서만 제공된다는 것이 이해될 것이다. 신호들의 형태인 오디오 콘텐츠 이외에(beyond), 신호들의 다양성들 및 다수의 다른 형태들이 청구되는 주제에 따라 정렬될 수 있다. 단지 몇 가지 예들을 제공하기 위해, 텍스트 디지털 신호 샘플들, 이미지 디지털 신호 샘플들 및/또는 비디오 디지털 신호 샘플들이 정렬될 수 있다. 이러한 상황에서, 사람의 청각 및/또는 시각적 감지를 이용하여 사람에 의해 감지될 수 있는 콘텐츠(content)를 포함하는 임의의 형태의 콘텐츠 또는 데이터가 청구되는 주제에 따라 정렬되고 디지털 신호에서 이용가능하게 구성될 수 있다. 일부 상황들하에서 디지털 신호들을 정렬하는 것이 바람직할 수 있으며, 이는 정렬된 디지털 신호들이 예를 들어, 하나 이상의 압축 방식에서 사용하기에 바람직할 수 있기 때문이다. 단지 일례로서, 인접한 값들 간의 일련의 차들로서 정렬된 디지털 샘플들의 세트를 표현하는 것이 가능할 수 있고 이는 바람직한 압축을 산출할 수 있다. 그러나, 이는 단지 정렬된 디지털 신호들의 사용가능성의 예로 청구되는 주제가 이와 관련하여 제한되는 것이 아님을 주목해야 한다.
그럼에도 불구하고, 이러한 오디오 신호 예를 지속하며, 오디오 샘플은 디지털 신호 형태로 이용가능한 오디오 신호 콘텐츠의 일부를 포함할 수 있다. 예를 들어, 일반성을 잃지 않고, 오디오 샘플은 메모리 공간을 점유할 수 있는 양과 관련하여 특정한 크기를 가질 수 있고, 이는 특정 디지털 신호 샘플 레이트로 재생(played)될 경우 특정 시간량 동안 지속될 수 있으며, 재생될 경우 오디오 콘텐츠는 특정 오디오 주파수 범위 내에서 가청(audible) 사운드들을 나타낼 수 있고, 및/또는 오디오 샘플은 오디오 콘텐츠와 연관될 수 있는 하나 이상의 다른 특징들을 나타낼 수 있다.
이러한 특정 실시예에 대한 본 예를 지속하며, 오디오 디지털 신호 샘플들은 도 1에 도시된 블록 110 및/또는 112와 같이 하나 이상의 데이터 블록들로 그룹화될 수 있다. 본 발명에서 사용되는 "블록(block)"은 오디오 디지털 신호 샘플 값들의 그룹으로 간주될 수 있다. 통상적으로, 필수적인 것은 아니지만, 블록에서 각각의 오디오 디지털 신호 샘플 값은 자체적으로 특정 특징들의 세트를 가질 수 있다. 다시, 이는 특히 오디오 샘플들과 관련되는 단지 일례이며 청구되는 주제가 이와 관련하여 제한되지 않는다.
도 1과 관련하여, 청구되는 주제가 이와 관련한 범주로 제한되는 것은 아니지만, 실시예(100)는 오디오 샘플이 일련의 연이은(consecutive) 펄스-코드-변조(PCM: Pulse-Code-Modulated) 오디오 디지털 신호 샘플 값들로 인코딩될 수 있는 압축 방식을 포함할 수 있다. 본 발명에서 사용되는 "인코딩(encoding)"이란 용어는 하나의 포맷에서 또 다른 포맷으로의 변환, 이를 테면 신호를 콘텐츠의 수치적 표현(numerical representation), 데이터 또는 다른 정보, 예를 들어, 이를 테면 이진 디지털 포맷으로의 변환하는 것으로 간주될 수 있다. 예를 들어, 인코딩은 신호를 이를 테면 1 또는 0과 같은 이진 디지털 신호 샘플들 또는 일련의 비트들로 변환하는 것을 포함할 수 있다. 본 발명에서 사용되는 것처럼, "디코딩(decoding)"이란 용어는 인코딩된 값으로부터 기본 의미(underlying meaning), 데이터, 또는 정보를 추출하는 것을 의미할 수 있다. 예를 들어, 디코딩은 일련의 비트들로부터 콘텐츠, 데이터 또는 다른 정보를 추출하는 것을 포함할 수 있다. 본 발명에서 사용되는 것처럼, "펄스 코드 변조(pulse code modulated)"란 용어는 아날로그 신호의 디지털 표현을 의미할 수 있다. 예를 들어, 펄스 코드 변조 신호는 크기가 규칙적인 간격으로 샘플링되는 아날로그 신호의 디지털 표현을 포함할 수 있다. 샘플링된 크기들은 예를 들어, 일련의 디지털 심볼들로 양자화(quantized)될 수 있다.
단지 일례로써, 블록들(110 및/또는 112)은 11개의 연이은 샘플 값들과 같이, 오디오 샘플의 하나 이상의 연이은 오디오 디지털 신호 샘플 값들을 포함할 수 있다. 본 실시예는 11개의 오디오 샘플 값들과 관련하여 개시되었지만, 물론 예를 들어 샘플 값들과 관련하여 작은 및/또는 큰 블록 길이들이 대안적으로 사용될 수 있다. 예를 들어, 오디오 블록들(110 및/또는 112)은 일부 상황하에서 짝수의 샘플 값들을 포함할 수 있고 또 다른 상황하에서 홀수의 샘플 값들을 포함할 수 있다. 따라서, 청구되는 주제는 임의의 특정 수의 디지털 신호 샘플 값들로 제한되지 않는다.
다시 도 1을 참조로, PCM 오디오 디지털 신호 샘플 값들은 예를 들어 블록들(110 및/또는 112)과 같이 하나 이상의 그룹들로 조직된(organized) 일련의 부호있는 정수 값(signed integer value)들로 표현될 수 있다. 따라서, 본 예에서, 일부 상황들하에, 블록들(110 및/또는 112)의 값들은 11개의 연이은 오디오 샘플 값들의 블록들로 그룹화되는 일련의 부호있는 정수 값들로 표현될 수 있다.
실시예(100)는 오름차순(ascending order)으로 블록(110 및/또는 112)을 정렬하도록 동작하여, 정렬된 블록의 연속하는 오디오 샘플 값들이 선행하는(preceding) 오디오 샘플 값들 보다 높은 정수 값들을 가질 수 있다. 예를 들어, 실시예(100)는 정렬 모듈(113)을 포함할 수 있다. 일부 상황들하에서, 정렬 모드(113)는 예를 들어, 110 및/또는 112와 같은 PCM 오디오 샘플 값들의 블록들을 정렬된 시퀀스의 오디오 샘플 값들(114)로 정렬되도록 동작할 수 있다. 오름차순 정렬로 도시되었지만, 정렬된 시퀀스의 오디오 샘플들(114)은 대안적으로 예를 들어 내림차순 정렬(descending sort)과 같이 다르게 배열된 정렬들을 포함할 수 있다. 본 발명에서 사용되는 것처럼, "정렬(sort)"이란 용어는 데이터 및/또는 디지털 신호 샘플 값들의 하나 이상의 특징들에 적어도 부분적으로 기초하여 데이터 및/또는 디지털 신호 샘플 값들을 연이어 배열하는 것을 의미할 수 있다. 예를 들어, 하나 이상의 오디오 디지털 신호 샘플 값들의 정렬은 각각의 오디오 디지털 신호 샘플 값들의 크기에 적어도 부분적으로 기초하여 하나 이상의 오디오 디지털 신호 샘플들을 배열하는 것을 포함할 수 있다. 물론, 이는 단지 정렬과 관련된 예시적인 예들이며 청구되는 주제가 이와 관련하여 제한되는 것이 아님을 주목해야 한다.
실시예에서, 정렬 프로세스는 116의 값으로서 도 1에 도시된 순열값(permutation value)을 생성할 수 있고, 여기서 순열값은 정렬되기 이전의 순서로 블록들(110 및/또는 112)에 PCM 오디오 디지털 신호 샘플 값들을 복구하는데 이용하기 위한 정보를 포함할 수 있다. 본 발명에서 사용되는 것처럼, "순열값(permutation value)"이란 용어는 적어도 부분적으로는 샘플 값들이 정렬되기 이전에 정렬된 샘플 값들의 세트의 순서를 표시할 수 있는 정보를 의미할 수 있다. 예를 들어, "순열값"은 일부 상황들하에서, 정렬된 오디오 샘플들의 세트에 대한 순서를 재구성(reproduce)하는데 이용될 수 있는 심볼을 포함할 수 있다. 일 실시예에서, 순열값(116)은 정렬된 데이터의 블록과 연관될 수 있으며, 정렬된 데이터의 블록을 순서변경(reorder)하기 위한 정보를 제공할 수 있는 심볼을 포함할 수 있다. 통상적으로, 필수적인 것은 아니지만, 순서변경 프로세스는 하기 보다 상세히 개시되는 것처럼, 보다 일반적인 디코딩 프로세스의 일부일 수 있다. 예를 들어, 일반성을 잃지 않고, 실시예에서, 디코딩 프로세스는 블록들(110 및/또는 112)에 해당하는 정렬된 샘플 값들의 순서를 복구하기 위해 적어도 부분적으로 순열값을 사용할 수 있다. 이들은 단지 순열값과 관련한 예시적 예들이며 청구되는 주제가 이와 관련하여 제한되지 않는다는 것을 주목해야 한다.
실시예에서, 순열값(116)은 적어도 부분적으로 PCM 오디오 디지털 신호 샘플 값들과 동시발생적으로(contemporaneously) 및/또는 동시적으로(concurrently) 계산될 수 있다. 예로써, 블록들(110 및/또는 112)에서 정렬된 오디오 디지털 신호 샘플 값들과 연관된 정렬되지 않은(unsorted) 샘플 값들이 하기와 같이 표현될 수 있다 가정한다:
{VO, V1 , V2,... Vn}
정렬 프로세스의 일 실시예에서, 특정 블록의 세트 값들에 대해, 제 1 값 VO는 임의의 n 위치로 이동하고, 제 2 값 V1는 임의의 n-1 위치로 이동하는 방식으로, 값들이 이동할 수 있다. 이는 전체 n!(n factorial) 가능 순열값들을 산출하며, 각각의 순열값은 블록에 대해 전체 가능한 고유(unique) 순서들로부터의 특정 고유 순서에 해당한다.
순열값을 인코딩하는데 잠재적으로 다양한 방법들이 이용가능하다. 청구 되는 주제의 범주가 임의의 특정 방식으로 제한되지 않는다. 오히려, 다양한 방식들이 사용될 수 있다. 몇 가지 예들이 하기에 제공된다. 순열값은 ceil(log2(p)) 넘버의 비트들에서 이진으로 이동(move)을 인코딩함으로써 인코딩될 수 있고, 여기서 p는 특정 이동에 대해 가능한 값들의 수이다. 오디오 샘플들의 블록이 11개의 오디오 샘플들을 포함하는 실시예에서, 이러한 방안은 대략 4+4+4+3+3+3+3+2+2+1 비트들, 또는 29 비트들로 인코딩될 수 있는 순열값을 산출한다. 대안적으로, 보다 콤팩트한(compact) 결과를 생성하기 위해 다른 방식을 사용하여 순열을 인코딩하는 것이 바람직할 수 있다. 예를 들어, 단지(a few as) log2(n) 비트들의 순열을 인코딩하는 것이 바람직할 수 있으며, 여기서 n은 오디오 값들의 블록에서의 값들의 수에 해당한다. 예를 들어, n이 11인 경우, 일부 상황들하에서, 단지 25.25 비트들의 순열값이 인코딩되는 것이 바람직할 수 있다. 물론 이는 단지 순열값을 인코딩하는 것과 관련된 예시적 예들이며 청구되는 주제가 이러한 특정 예로 제한되는 것은 아니다.
순열값을 인코딩하기 위한 또 다른 가능한 기술은 팩토라딕스(factoradics)의 사용을 수반할 수 있다. 본 예에서, n 오디오 샘플 값들의 블록이 정렬될 경우, 하기에 보다 상세히 개시되는 것처럼, 특정 일 실시예에서, 개별 값들의 이동들은 M0 내지 Mn으로 넘버링될 수 있다. 일례로, 11개의 블록 길이를 사용함으로써, 각각의 이동은 M0 내지 M10으로 넘버링될 수 있다. 예를 들어, 본 실시예에서, 순열값은 하기 식에 따라 인코딩될 수 있다:
Figure pct00001
본 예에서, 순열값은 연속하는 큰 팩토리얼들로 곱해지는 각각의 이동들의 합을 포함한다. 예를 들어, 블록(110)이 11개의 값들을 포함한다 가정하면, 정렬된 샘플들(114)과 연관된 순열값(116)은 일부 상황들 하에서, 대략 26 비트들로 인코딩될 수 있다. 다시, 이는 단지 순열값들과 관련한 예시적인 예이며 청구되는 주제가 이와 관련하여 제한되는 것은 아니다.
삽입 정렬 프로세스를 이용하는 실시예에서, 순열값의 인코딩은 하기 개시되는 것처럼, 정렬 프로세스와 동시적으로 발생할 수 있다. 물론, 청구되는 주제는 삽입 정렬 프로세스를 이용하는 범주로 제한되지 않는다. 물론, 임의의 정렬 프로세스가 사용될 수 있다. 그러나, 예를 들어 앞서 제시된 것처럼 삽입 정렬을 사용하는 실시예에서, 정렬 모듈(113)은 블록(110)과 같은 오디오 샘플 값들의 블록을 처리할 수 있고 순열 인코딩(116)과 동시적으로, 정렬된 샘플들(114)과 같은 정렬될 샘플들의 세트를 생성할 수 있다. 일반성을 손실하지 않고, 예시를 위해 특정 예가 하기에 개시된다.
도 2a는 실시예에 따라 정렬되지 않은 오디오 샘플들(200)의 세트에 대한 정렬 프로세스를 나타내는 개략도이다. 다시 본 실시예에서, 정렬 프로세스는 삽입 정렬을 포함한다. 예를 들어, 삽입 정렬은 정렬되지 않은 값들의 세트로부터 연속하는 값들을 선택하고(taking) 정렬된 값들의 세트에서 특정 값을 삽입할 위치를 결정함으로써 정렬된 값들의 세트를 구축할 수 있다. 본 실시예에서, 제로-기반 인덱싱(zero-based indexing)을 사용할 경우, 정렬된 값들의 세트는 제 1 값이 위치 0에 삽입되도록 초기에 비게된다(empty). 본 실시예에서, 정렬되지 않은 값들의 세트로부터 다음 값은 위치 0 또는 위치 1중 하나에 삽입될 수 있다. 또한, 정렬되지 않은 값들의 세트로부터의 제 3 값은 위치 0, 위치 1, 또는 위치 2에 삽입될 수 있다. 정렬 프로세스는 정렬되지 않은 값들의 세트로부터 모든 값들이 위치에 삽입될 때까지 지속될 수 있다. 본 실시예에서, 값이 삽입되는 포인트의 한쪽 측면 상의 값들은 차후(subsequent) 값에 대한 룸(room)을 만들기 위해 왼쪽으로 또는 오른쪽으로 이동된다. 또한, 적어도 부분적으로 특정 값을 삽입하기 위한 포인트가 선택되어, 특정 값이 삽입되는 포인트의 한쪽 측면 상에서 값들 사이에 특정 값이 있게 된다. 따라서, 출력 리스트는 값들의 정렬된 세트를 포함할 수 있다. 본 실시예에서, 순열값은 값들이 삽입되는 일련의 위치들에 대응할 수 있다. 예를 들어, N 오디오 샘플 값들의 세트에 대해, N!의 상이한 삽입 위치 조합이 제공된다.
다시 도 2a를 참조로, 본 실시예에서, 정렬 프로세스는 정렬되지 않은 오디오 샘플들의 세트에서 제 1 값(201)으로 시작된다. 본 예에서, 정렬 프로세스는 제 1 값(201)에 대한 0 삽입 위치를 생성한다. 다음, 정렬 프로세스는 다음 값(202)으로 진행되고 상기 값이 제 1 값(201) 보다 큰지 또는 작은지를 결정한다. 본 예에서, 제 2 값(202)은 제 1 값(201) 이후 삽입되고 1의 삽입 위치가 할당되도록 제 1 값(201)보다 크다. 정렬 프로세스는 정렬되지 않은 오디오 샘플들(200)의 차후 값들을 통해 진행되며 각각의 값에 대해, 적어도 부분적으로 상기 값들의 비교에 기초하여 상기 값에 대한 삽입 위치 또는 자리(location)를 결정한다. 본 발명의 예를 참조로, 프로세스는 제 3 값(203)으로 진행되어 삽입 위치를 결정하며, 이는 제 3 값(203)은 제 1 값(201)보다 크고 제 2 값(202) 보다 작기 때문이다. 따라서, 제 3 값(203)은 제 1 값(201) 이후에 그리고 제 2 값(202) 이전에 삽입된다. 또한, 정렬 프로세스는 제 3 값(203)에 대해 1의 삽입 위치를 할당한다. 다시, 본 발명의 예를 참조로, 정렬 프로세스는 제 4 값(204)으로 진행된다. 이 값은 제 1 값(201), 제 2 값(202), 및 제 3 값(203) 보다 크다. 따라서, 정렬 프로세스는 제 4 값(204)을 제 2 값(202) 이후에 삽입하며 이를 3의 삽입 위치에 할당한다. 마지막으로, 본 발명의 예에서, 정렬 프로세스는 제 5 값(205)으로 진행된다. 이 값은 제 1 값(201) 보다 작고 정렬 프로세스는 제 1 값(201) 앞에(in front of) 제 5 값(205)을 삽입한다. 또한, 제 5 값(205)에는 0의 삽입 값이 할당된다. 본 실시예에서, 정렬 프로세스는 일 실시예에서 삽입 값들의 세트를 포함하는 순열값(212)과 함께 오디오 샘플 값들(210)의 정렬된 세트를 생성한다. 물론, 이는 단지 정렬 프로세스와 관련한 예시적 예들로 청구되는 주제가 이와 관련하여 제한되는 것이 아니라는 것을 주목해야한다.
도 2b는 정렬된 오디오 샘플들(210)로부터 오디오 샘플들(200)의 순서를 복구하기 위한 비정렬(unsorting) 또는 순서변경(reordering) 프로세스를 나타내는 개략도이다. 다시 도 2b를 참조로, 순서변경 프로세스는 정렬되지 않은 오디오 샘플들(200)의 순서를 복구하기 위해 적어도 부분적으로 순열값(212)을 사용한다. 실시예에서, 순서변경 프로세스는 순열값(212)으로서 표현되는 삽입 값들의 순서를 전환(reversing)함으로써, 적어도 부분적으로 정렬되지 않은 오디오 샘플들(200)의 순서를 복구할 수 있다. 이는 정렬된 오디오 샘플 값들(210)로부터 오디오 샘플 값들을 제거하는데 이용될 수 있는 제거 위치들(220)의 리스트를 산출한다. 값이 제거됨에 따라, 우측 또는 좌측에 대한 값들은 갭에 근사하게 이동된다. 도 2b에 도시된 예에서, 제 1 제거 위치는 위치 0이다. 따라서, 순서변경 프로세스는 라인 221로부터 0 위치에서 값을 제거하며 복구된 리스트에 상기 값을 배치한다. 제거 포인트들의 리스트(220)에서 다음 제거 위치는 3이다. 따라서, 순서변경 프로세스는 라인 222로부터 3 위치에서 상기 값을 제거하며 복구된 리스트(220)의 다음 위치에 상기 값을 배치한다. 다음 제거 위치는 1이며, 이는 라인 223으로부터 1 위치에서 값을 제거하고 복구된 리스트(220)의 다음 위치에 상기 값을 배치하는 순서변경 프로세스를 산출한다. 다음 제거 포인트는 다시 1이며, 이에 따라 순서변경 프로세스는 라인 224의 1 위치로부터 값들을 제거하고 이를 복구된 리스트(220)의 다음 위치에 배치한다. 마지막으로, 최종 제거 위치는 0이며, 순서변경 프로세스는 복구된 리스트(220)의 다음 위치에 0 위치로부터의 나머지 값을 배치한다. 이는 단지 순서변경 프로세스와 관련한 예시적인 예들로, 청구되는 주제가 이와 관련하여 제한되지 않는다는 것을 주목해야 한다.
이러한 특정 실시예에서, 제거 위치들은 순열값을 디코딩하기 위한 하나 이상의 오퍼레이션들(operations)을 수행함으로써 결정될 수 있다. 예를 들어, 순열값이 팩토라딕스(factoradics)를 사용하여 인코딩될 경우, 연속하는 작은 팩토리얼들(factorials)로 순열값을 나눔으로써 제거 위치들이 결정될 수 있다. 정렬된 디지털 신호 샘플들의 세트가 n 값들을 포함하는 경우, 제 1 제거 위치는 n!로 순열값을 나눔으로써 결정될 수 있다. 제 2 제거 위치는 n-1!로 제 1 계산의 나머지를 나눔으로써 결정될 수 있다. 차후 제거 위치들은 마찬가지로 모든 제거 위치들이 결정될 때까지 연속하는 작은 팩토리얼들로 이전 계산으로부터의 나머지를 나눔으로써 결정될 수 있다. 보다 특정한 예에 대해, 정렬된 디지털 신호들의 세트에서 11개 값들이 있는 경우, 제 1 제거 위치는 11!로 순열값을 나누는 방식으로 결정될 수 있다. 모든 제거 위치들이 결정될 때까지, 제 2 제거 위치가 11-1!로 제 1 계산으로부터의 나머지를 나누는 방식으로 결정될 수 있다. 물론, 이는 단지 순서변경 프로세스와 관련한 예시적 예들이며 청구되는 주제가 이들로 제한되는 것이 아니라는 것을 주목해야 한다.
순서변경 모듈(118)과 같은 순서변경 모듈은 샘플 값들의 정렬된 세트를 순서변경하기 위해 이용될 수 있다. 본 실시예에서, 순서변경 모듈(118)은 정렬된 샘플들(114) 및 순열값(116)을 처리하도록 동작할 수 있다. 순서변경 모듈(118)은 정렬된 샘플들(114) 및 순열값(116)에 기초하여 블록들(110 및/또는 112)을 복구하기 위해 추가로 동작할 수 있다. 예를 들어, 순서변경 모듈(118)은 순열값(116)에 대해 하나 이상의 오퍼레이션들을 수행함으로써 일련의 제거 포인트들을 결정하도록 동작할 수 있다. 예를 들어, 순열값(116)이 팩토라딕스를 사용하여 인코딩될 경우, 순서변경 모듈(118)은 n!로 순열값(116)을 나누거나, 또는 등가 오퍼레이션을 수행하게 동작할 수 있고, 여기서 n은 제 1 제거 위치를 얻기 위해 정렬된 샘플들(114)의 디지털 신호 샘플 값들의 수와 같다. 또한, 순서변경 모듈(118)은 제 2 제거 위치를 결정하기 위해 제 1 계산으로부터의 나머지를 n-1!로 나누도록 추가로 동작할 수 있다. 순서변경 모듈(118)은 제거 위치들이 결정될 때까지, 연속하는 작은 팩토리얼들로 계산의 나머지를 나누는 것을 지속할 수 있다. 이들은 단지 순서변경 프로세스와 관련한 예시적 예들이며 청구되는 주제가 이러한 예들로 제한되지 않는다는 것을 주목해야 한다. 실시예에서, 순서변경 모듈(118)은 적어도 부분적으로, 결정된 제거 위치들에 기초하여 개별 값들을 추출하고 정렬되기 이전에 이들의 순서로 블록들(110 및/또는 112)의 샘플들의 세트를 복구하도록 추가로 동작할 수 있지만, 청구되는 주제가 이와 관련하여 제한되는 것은 아니다.
도 3은 실시예에 따른 정렬 프로세스(300)를 나타내는 흐름도이다. 흐름도 블록 310과 관련하여, 정렬 프로세스(300)는 디지털 신호 샘플들의 세트로 시작된다. 앞서 언급된 것처럼, 디지털 신호 샘플들의 세트는 예를 들어, 블록들(110 및/또는 112)처럼, 하나 이상의 그룹들로 분류되는(organized) 일련의 서명된 정수 값들로서 표현되는 하나 이상의 PCM 오디오 값들을 포함할 수 있다. 이는 단지 디지털 신호 샘플 값들과 관련한 예로 청구되는 주제가 이와 관련하여 제한되는 것은 아니다. 흐름도 블록 320와 관련하여, 정렬 프로세스(300)는 디지털 신호 샘플 값들의 하나 이상의 특징들에 기초하여 디지털 신호 샘플들의 값들의 세트에 대해 순서변경할 수 있다. 예를 들어, 정렬 프로세스(300)는 디지털 신호 샘플 값들과 연관된 정수 값에 기초하여 디지털 신호 샘플 값들을 순서변경할 수 있다. 또한, 정렬 프로세스(300)는 예를 들어, 오름차순 및/또는 내림차순으로 디지털 신호 샘플 값들을 순서변경할 수 있다. 단지 일례로, 정렬 프로세스(300)는 도 2a와 관련하여 앞서 개시된 삽입 정렬과 같은 하나 이상의 삽입 정렬 프로세스들을 사용하여 디지털 신호 샘플 값들을 순서변경할 수 있다.
흐름도 블록 330을 참조로, 정렬 프로세스(300)는 디지털 신호 샘플 값들의 특정한 순서변경에 대응하는 순열값을 인코딩하도록 추가로 동작할 수 있다. 예를 들어, 순열값은 팩토라딕스를 이용하는 것을 포함하여 앞서 개시된 것처럼 다양한 방식으로 인코딩될 수 있다. 앞서 개시된 것처럼, 개별 신호 값들의 이동 및 정렬되는 디지털 샘플 값들의 세트는 M0 내지 M10으로 넘버링될 수 있다. 본 예에서, 순열값은 하기 식에 따라 인코딩될 수 있다:
Figure pct00002
본 실시예에서, 순열값은 연속하는 큰 팩토리얼들로 각각 곱해지는 각각의 이동들의 합을 포함할 수 있다. 일부 상황들하에서, 이는 인코딩된 순열값으로부터 개별 이동을 인코딩하기 위한 계산적 장점을 산출할 수 있다. 앞서 언급된 것처럼, 정렬된 샘플들은 정렬된 샘플들의 세트로부터 인접한 값들 간의 차를 인코딩하기 위해 하나 이상의 Rice 코딩 기술들을 이용하는 압축 방식과 같이, 하나 이상의 압축 방식들에서 유용할 수 있다. 물론, 이는 단지 순열값과 관련한 예시적 예이며 청구되는 주제가 이와 관련하여 제한되는 것은 아니다.
도 4는 실시예에 다른 순서변경 프로세스(400)의 흐름도이다. 흐름도 블록 410을 참조로, 순서변경 프로세스(400)는 인코딩된 순열값 및/또는 디지털 신호 샘플 값들의 순서 세트를 수신할 수 있다. 본 예에서, 디지털 신호 샘플 값들의 순서화된 세트는 정렬된 디지털 신호 샘플 값들의 세트를 포함할 수 있다. 앞서 언급된 것처럼, 정렬된 디지털 신호 샘플 값들의 세트는 예를 들어, 내림차순 또는 오름차순을 제공하기 위해 삽입 정렬 프로세스를 사용하여 크기대로(by magnitude) 정렬된다. 또한, 앞서 언급된 것처럼, 인코딩된 순열값은 정렬 프로세스 동안 정렬되지 않은 디지털 신호 샘플 값들의 이동 또는 하나(one)를 표현하는 수를 포함할 수 있으며 팩토라딕스를 사용하여 인코딩될 수 있다. 그러나, 이는 단지 정렬된 디지털 신호 샘플 값들 및/또는 순열값의 세트와 관련하여 예시적 예들로 청구되는 주제가 이와 관련하여 제한되는 것이 아니라는 것을 주목해야 한다.
흐름도 블록 420과 관련하여, 순서변경 프로세스(400)는 인코딩된 순열값을 디코딩할 수 있다. 예를 들어, 순열값이 팩토라딕스를 사용하여 인코딩될 경우, 제거 위치들은 연속하는 작은 팩토리얼들로 순열값을 나눔으로써 결정될 수 있다. 예를 들어, 정렬된 디지털 신호 샘플 값들의 세트가 n 값을 포함할 때, 제 1 제거 위치는 n!로 순열값을 나눔으로써 결정될 수 있다. 제 2 제거 위치는 제 1 계산의 나머지를 n-1!로 나눔으로써 결정될 수 있다. 차후 제거 위치들은 마찬가지로 제거 위치들이 결정될 때까지 연속하는 작은 팩토리얼들로 이전 계산으로부터의 나머지를 나눔으로써 결정될 수 있다. 대안적으로, 실시예에서, 나눗셈(division) 대신, 곱셈(multiplication) 프로세스가 이용될 수 있다. 예를 들어, 순열값의 스케일 근사치(scale approximation)는 1/NL로 곱해질 수 있다. 다음 이 값은 제 1 제거 포인트를 결정하기 우측으로 이동될 수 있다. 그러나, 라운딩 에러들(rounding errors)로 인해, 일부 상황들하에서, 이러한 프로세스는 정확한 값 보다는 큰 제거 포인트 값을 생성한다. 이러한 형태의 에러는 제 1 제거 포인트에 대한 N!와 같이, 적절한 팩토리얼 값으로 결정된 제거 포인트 값을 곱하고 상기 곱(product)이 순열값보다 크지 않다는 것을 증명함으로써 검출될 수 있다. 상기 곱이 순열값보다 큰 경우, 결정된 제거 포인트 값의 1씩 감소는 특정 제거 포인트에 대한 정확한 값을 산출한다. 마찬가지로 유사한 곱셈(multiplication) 및 검증 프로세스가 차후 제거 포인트들을 결정하는데 이용될 수 있다. 보다 특정한 예에 대해, 정렬된 디지털 신호 샘플 값들의 세트에 11 값들이 있는 경우, 제 1 제거 위치는 디코딩된 순열 값을 11!로 나눔으로써 결정될 수 있다. 제거 위치들이 결정될 때까지, 제 2 제거 위치는 제 1 계산으로부터의 나머지를 11-1!로 나누는 방식으로 결정될 수 있다. 물론, 이들은 단지 순서정렬 프로세스와 관련한 예시적 예들이며 청구되는 주제가 이와 관련하여 제한되지 않는다는 것을 주목해야 한다.
흐름도 블록 430을 참조로, 순서정렬 프로세스(400)는 디지털 신호 샘플 값들의 순서화된 세트가 정렬되기 이전에 이들의 순서로 복귀될 수 있도록, 디코딩된 순열값 및/또는 결정된 제거 위치들을 이용할 수 있다. 예를 들어, 제 1 제거 위치는 디지털 신호 샘플 값들의 순서화되지 않은 세트의 최종 값을 제거하는데 이용될 수 있다. 마찬가지로, 차후 제거 위치들은 정렬 이전에 디지털 신호 샘플 값들의 세트의 순서가 복구될 때까지 이용될 수 있다. 순서변경 프로세스는 하나 이상의 압축 방식들에서처럼 인코딩되는 오디오 샘플들의 세트를 재구성하는데 유용할 수 있다. 예를 들어, 오디오 샘플들의 순서화된 세트는 정렬된 오디오 샘플들의 세트로부터 인접 샘플들 간의 하나 이상의 차들을 Rice 코딩에 의해 적어도 부분적으로 인코딩될 수 있고, 이러한 차들의 Rice 디코딩 이후, 샘플들의 오리지널 순서화된 세트가 재구성되고 순서변경 프로세스는 오디오 샘플들의 오리지널 순서를 저장하는데 이용될 수 있다. 물론 이들은 단지 디지털 신호 샘플들의 순서화된 세트의 순서변경와 관련한 예시적 예들이며 청구되는 주제가 이와 관련하여 제한되지 않는다는 것이 주목된다.
상기 설명에서, 청구되는 주제에 대한 다양한 양상들이 개시되었다. 설명을 위해, 특정 개수, 시스템 및/또는 구성들은 청구되는 주제의 전반적 이해를 위해 개시되었다. 그러나, 본 발명의 장점을 이해하는 당업자들은 청구되는 주제가 특정 사항 없이도 본 발명의 장점이 실행될 수 있다는 것을 인식할 것이다. 다른 예들에서, 당업자들에 의해 인식되는 특징은 청구되는 주제의 명료화를 위해 생략 및/또는 요약되었다. 소정의 특징들이 본 발명에 예시 및/또는 개시되었지만, 다양한 변조, 치환, 변환 및/또는 등가물을 당업자들은 구현할 것이다. 물론, 첨부되는 청구항들은 청구되는 주제의 실제 범주에서 이러한 변형 및/또는 변화를 모두 포함하도록 의도된 것임이 이해될 것이다.

Claims (64)

  1. 압축 방식(compression scheme)에 이용하기 위한 디지털 신호 샘플들을 정렬하는(sorting) 방법으로서,
    디지털 신호 샘플들의 세트를 순서변경하는(reordering) 단계 ―상기 세트는 초기(initial) 배열을 가지며 상기 순서변경하는 단계는 상기 디지털 신호 샘플들의 하나 이상의 특징들에 적어도 부분적으로 기초함―; 및
    특정한 순서변경에 해당하는 순열(permutation)을 인코딩하는 단계
    를 포함하며, 상기 순열의 인코딩 및 정렬은 동시에 수행되는, 디지털 신호 샘플들을 정렬하는 방법.
  2. 제 1 항에 있어서,
    순차적(sequential) 디지털 신호 샘플들의 상기 세트는 사람들(humans)에 의해 감지될 수 있는 콘텐츠를 포함하는, 디지털 신호 샘플들을 정렬하는 방법.
  3. 제 2 항에 있어서,
    상기 콘텐츠는 사운드, 이미지들, 비디오 및/또는 텍스트를 표현하는 신호들을 포함하는, 디지털 신호 샘플들을 정렬하는 방법.
  4. 제 1 항에 있어서,
    상기 디지털 신호 샘플들의 상기 하나 이상의 특징들은 각각의 샘플들의 크기를 포함하는, 디지털 신호 샘플들을 정렬하는 방법.
  5. 제 4 항에 있어서,
    상기 순서변경하는 단계는 임의의 정렬(sorting) 프로세스를 포함하는, 디지털 신호 샘플들을 정렬하는 방법.
  6. 제 5 항에 있어서,
    상기 정렬 프로세스는 삽입 정렬(insertion sort)을 포함하는, 디지털 신호 샘플들을 정렬하는 방법.
  7. 제 1 항에 있어서,
    상기 순열은 상기 순서변경단계 이전의 순서로 순서변경된 세트를 복귀시키도록 동작할 수 있는 오러페이션들의 시퀀스를 포함하는, 디지털 신호 샘플들을 정렬하는 방법.
  8. 제 7 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 팩토라딕스(factoradics)를 사용하여 인코딩되는, 디지털 신호 샘플들을 정렬하는 방법.
  9. 제 6 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 연속하는 큰 팩토리얼들(factorials)로 연속 오퍼레이션들(successive operations)을 곱함으로써 인코딩되는, 디지털 신호 샘플들을 정렬하는 방법.
  10. 제 9 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 곱셈 결과들을 합함으로써 추가로 인코딩되는, 디지털 신호 샘플들을 정렬하는 방법.
  11. 압축해제 방식에 이용하기 위한 디지털 신호 샘플들의 세트를 복구하는(restoring) 방법으로서,
    인코딩된 순열값을 디코딩하는 단계; 및
    디지털 신호 샘플들의 순서화된 세트를 순서변경하는 단계
    를 포함하며, 상기 디지털 신호 샘플들은 상기 디지털 신호 샘플들의 하나 이상의 특징들에 따라 순서화되었으며, 상기 순열값은 상기 디지털 신호 샘플들의 순서화와 동시에 인코딩되었으며, 상기 순서변경하는 단계는 디코딩된 순열값에 적어도 부분적으로 기초하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  12. 제 11 항에 있어서,
    상기 디지털 신호 샘플들의 세트는 사람들에 의해 인식될 수 있는 콘텐츠를 포함하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  13. 제 12 항에 있어서,
    상기 콘텐츠는 사운드, 이미지들, 비디오 및/또는 텍스트를 표현하는 신호들을 포함하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  14. 제 11항에 있어서,
    상기 디지털 신호 샘플들의 순서화된 세트는 크기에 따라 순서화된 상기 디지털 신호 샘플들의 세트를 포함하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  15. 제 13항에 있어서,
    상기 디지털 신호 샘플들의 순서화된 세트는 임의의 정렬 프로세스에 따라 순서화되는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  16. 제 15 항에 있어서,
    상기 정렬 프로세스는 삽입 정렬을 포함하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  17. 제 11 항에 있어서,
    상기 인코딩된 순열값은 디지털 신호 샘플들의 세트를 순서화하는데 이용하기 위한 오퍼레이션들의 시퀀스를 포함하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  18. 제 16 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 삽입 포인트들의 시퀀스를 포함하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  19. 제 18 항에 있어서,
    상기 순서변경하는 단계는 디지털 신호 샘플들의 세트의 오리지널 순서를 복구하기 위해 제거 포인트들의 시퀀스로서 상기 삽입 포인트들의 시퀀스를 이용하는 단계를 포함하는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  20. 제 19 항에 있어서,
    상기 삽입 포인트들의 시퀀스는 팩토라딕스를 사용하여 디코딩되는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  21. 제 19 항에 있어서,
    상기 순열값을 N!로 나눈 결과를 결정함으로써 제 1 제거 포인트가 디코딩되며, 상기 N은 디지털 신호 샘플들의 세트의 값들의 수인, 디지털 신호 샘플들의 세트를 복구하는 방법.
  22. 제 21 항에 있어서 ,
    연속하는 작은 팩토리얼들로 이전에 결정된 결과의 나머지를 나눈 결과를 결정함으로써 차후 제거 포인트들이 디코딩되는, 디지털 신호 샘플들의 세트를 복구하는 방법.
  23. 컴퓨터 판독가능 매체를 포함하는 물품(article)으로서,
    상기 컴퓨터 판독가능 매체에는, 실행될 경우 압축 방식에 사용하기 위한,
    디지털 신호 샘플들의 세트를 순서변경하는 단계―상기 세트는 초기 배열을 가지며 상기 순서변경하는 단계는 상기 디지털 신호 샘플들의 하나 이상의 특징들에 적어도 부분적으로 기초함―; 및
    특정 순서변경에 해당하는 순열을 인코딩하는 단계
    의 방법을 산출하는 명령들이 저장되며, 상기 순열의 인코딩 및 정렬은 동시에 수행되는, 물품.
  24. 제 23 항에 있어서,
    순차적인 디지털 신호 샘플들의 상기 세트는 사람들에 의해 인식될 수 있는 콘텐츠를 포함하는, 물품.
  25. 제 24 항에 있어서,
    상기 콘텐츠는 사운드, 이미지들, 비디오 및/또는 텍스트를 표현하는 신호들을 포함하는, 물품.
  26. 제 23 항에 있어서,
    상기 디지털 신호 샘플들의 상기 하나 이상의 특징들은 각각의 샘플들의 크기를 포함하는, 물품.
  27. 제 26 항에 있어서,
    상기 순서변경하는 단계는 임의의 정렬 프로세스를 포함하는, 물품.
  28. 제 27 항에 있어서,
    상기 정렬 프로세스는 삽입 정렬을 포함하는, 물품.
  29. 제 23 항에 있어서,
    상기 순열은 상기 순서변경하는 단계 이전의 순서로 순서변경된 세트를 복귀시키도록 동작가능한 오퍼레이션들의 시퀀스를 포함하는, 물품.
  30. 제 29 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 팩토라딕스를 사용하여 인코딩되는, 물품.
  31. 제 26 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 연속하는 큰 팩토리얼들로 연속하는 오퍼레이션들을 곱함으로써 인코딩되는, 물품.
  32. 제 31 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 곱셈 결과들을 합함으로써 추가로 인코딩되는, 물품.
  33. 컴퓨터 판독가능 매체를 포함하는 물품(article)으로서,
    상기 컴퓨터 판독가능 매체에는, 실행될 경우 압축해제(decompression) 방식에 사용하기 위한,
    인코딩된 순열값을 디코딩하는 단계; 및
    디지털 신호 샘플들의 순서화된 세트를 순서변경하는 단계
    를 포함하는 방법을 산출하는 명령들이 저장되며,
    상기 디지털 신호 샘플들은 상기 디지털 신호 샘플들의 하나 이상의 특징들에 따라 순서화되었으며, 상기 순열값은 상기 디지털 신호 샘플들의 순서화와 동시에 인코딩되었으며, 상기 순서변경하는 단계는 디코딩된 순열값에 적어도 부분적으로 기초하는, 물품.
  34. 제 33 항에 있어서,
    상기 디지털 신호 샘플들의 세트는 사람들에 의해 인식될 수 있는 콘텐츠를 포함하는, 물품.
  35. 제 34 항에 있어서,
    상기 콘텐츠는 사운드, 이미지들, 비디오 및/또는 텍스트를 표현하는 신호들을 포함하는, 물품.
  36. 제 33 항에 있어서,
    상기 디지털 신호 샘플들의 순서화된 세트는 크기에 따라 순서화된 디지털 신호 샘플들의 세트를 포함하는, 물품.
  37. 제 35 항에 있어서,
    상기 디지털 신호 샘플들의 순서화된 세트는 임의의 정렬 프로세스에 따라 순서화되는, 물품.
  38. 제 37 항에 있어서,
    상기 정렬 프로세스는 삽입 정렬을 포함하는, 물품.
  39. 제 33 항에 있어서
    상기 인코딩된 순열값은 디지털 신호 샘플들의 세트를 순서화하는데 이용하기 위한 오퍼레이션들의 시퀀스를 포함하는, 물품.
  40. 제 39 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 삽입 포인트들의 시퀀스를 포함하는, 물품.
  41. 제 40 항에 있어서,
    상기 순서변경하는 단계는 상기 디지털 신호 샘플들의 세트의 오리지널 순서를 저장하기 위해 제거 포인트들의 시퀀스로서 상기 삽입 포인트들의 시퀀스를 사용하는 단계를 포함하는, 물품.
  42. 제 41 항에 있어서,
    상기 삽입 포인트들의 시퀀스는 팩토라딕스를 사용하여 인코딩되는, 물품.
  43. 압축 방식에 사용하기 위한 장치로서,
    디지털 신호 샘플들의 세트를 순서변경하도록 동작가능한 컴퓨팅 플랫폼(computing platform)을 포함하며,
    상기 세트는 초기 배열을 가지며 상기 순서변경은 상기 디지털 신호 샘플들의 하나 이상의 특징들에 적어도 부분적으로 기초하며,
    상기 컴퓨팅 플랫폼은 특정 순서변경에 해당하는 순열을 인코딩하도록 동작가능하며 상기 순열의 인코딩 및 정렬을 동시에 하도록 동작가능한, 장치.
  44. 제 43 항에 있어서,
    순차적인 디지털 신호 샘플들의 상기 세트는 사람들에 의해 인식될 수 있는 콘텐츠를 포함하는, 장치.
  45. 제 44 항에 있어서,
    상기 콘텐츠는 사운드, 이미지들, 비디오, 및/또는 텍스트를 표현하는 신호들을 포함하는, 장치.
  46. 제 43 항에 있어서,
    상기 디지털 신호 샘플들의 상기 하나 이상의 특징들은 각각의 샘플들의 크기를 포함하는, 장치.
  47. 제 46 항에 있어서,
    상기 순서변경는 임의의 정렬 프로세스를 포함하는, 장치.
  48. 제 47 항에 있어서,
    상기 정렬 프로세스는 삽입 정렬을 포함하는, 장치.
  49. 제 43 항에 있어서,
    상기 순열은 상기 순서변경 이전의 순서로 순서화된 세트를 복귀시키도록 동작가능한 오퍼레이션들의 시퀀스를 포함함하는, 장치.
  50. 제 49 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 팩토라딕스를 사용하여 인코딩되는, 장치.
  51. 제 48 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 연속하는 큰 팩토리얼들로 연속 오퍼레이션들을 곱함으로써 인코딩되는, 장치.
  52. 제 51 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 곱셈 결과들을 합함으로써 추가로 인코딩되는, 장치.
  53. 압축해제 방식에 사용하기 위한 장치로서,
    인코딩된 순열값을 디코딩하도록 동작가능한 컴퓨팅 플랫폼(computing platform)을 포함하며,
    상기 컴퓨팅 플랫폼은 디지털 신호 샘플들의 순서화된 세트를 순서변경하도록 추가로 동작가능하며, 상기 디지털 신호 샘플들은 상기 디지털 신호 샘플들의 하나 이상의 특징들에 따라 순서화되었으며, 상기 순열값은 상기 디지털 신호 샘플들의 순서화와 동시에 인코딩되었으며, 상기 순서변경은 상기 인코딩된 순열값에 적어도 부분적으로 기초하는, 장치.
  54. 제 53 항에 있어서,
    상기 디지털 신호 샘플들의 세트는 사람들에 의해 인식가능한 콘텐츠를 포함하는, 장치.
  55. 제 54 항에 있어서,
    상기 콘텐츠는 사운드, 이미지들, 비디오 및/또는 텍스트를 표현하는 신호들을 포함하는, 장치.
  56. 제 53 항에 있어서,
    상기 디지털 신호 샘플들의 순서화된 세트는 크기에 따라 순서화된 디지털 신호 샘플들의 세트를 포함하는, 장치.
  57. 제 55 항에 있어서,
    상기 디지털 신호 샘플들의 순서화된 세트는 임의의 정렬 프로세스에 따라 순서화되는, 장치.
  58. 제 57 항에 있어서,
    상기 정렬 프로세스는 삽입 정렬을 포함하는, 장치.
  59. 제 53 항에 있어서,
    상기 인코딩된 순열값은 상기 디지털 신호 샘플들의 세트를 순서화하는데 이용하기 위한 오퍼레이션들의 시퀀스를 포함하는, 장치.
  60. 제 59 항에 있어서,
    상기 오퍼레이션들의 시퀀스는 삽입 포인트들의 시퀀스를 포함하는, 장치.
  61. 제 60 항에 있어서,
    상기 순서변경은 상기 디지털 신호 샘플들의 오리지널 순서를 복구하기 위해 제거 포인트들의 시퀀스로서 상기 삽입 포인트들의 시퀀스를 사용하는, 장치.
  62. 제 61 항에 이어서,
    상기 삽입 포인트들의 시퀀스는 팩토라딕스를 사용하여 디코딩되는, 장치.
  63. 도시된 및 개시된 본 발명의 특징들을 갖는 장치.
  64. 도시된 및 개시된 본 발명의 특징들을 갖는 방법.
KR1020107005782A 2007-08-17 2007-11-08 디지털 신호 정렬을 위한 시스템, 방법 및/또는 장치 KR101181027B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/840,887 2007-08-17
US11/840,887 US7724159B2 (en) 2007-08-17 2007-08-17 System, method, and/or apparatus for digital signal sorting
PCT/US2007/084188 WO2009025677A1 (en) 2007-08-17 2007-11-08 System, method, and/or apparatus for digital signal sorting

Publications (2)

Publication Number Publication Date
KR20100074132A true KR20100074132A (ko) 2010-07-01
KR101181027B1 KR101181027B1 (ko) 2012-09-10

Family

ID=40362551

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107005782A KR101181027B1 (ko) 2007-08-17 2007-11-08 디지털 신호 정렬을 위한 시스템, 방법 및/또는 장치

Country Status (7)

Country Link
US (1) US7724159B2 (ko)
EP (1) EP2191382B1 (ko)
JP (1) JP2010537552A (ko)
KR (1) KR101181027B1 (ko)
CN (1) CN101802802A (ko)
TW (1) TW200926619A (ko)
WO (1) WO2009025677A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2978075A1 (en) * 2015-02-27 2016-09-01 Auro Technologies Nv Encoding and decoding digital data sets

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2505734B2 (ja) 1985-04-25 1996-06-12 キヤノン株式会社 伝送デ−タ作成装置
US5379351A (en) 1992-02-19 1995-01-03 Integrated Information Technology, Inc. Video compression/decompression processing and processors
US7007166B1 (en) 1994-12-28 2006-02-28 Wistaria Trading, Inc. Method and system for digital watermarking
JPH08204577A (ja) 1995-01-26 1996-08-09 Sega Enterp Ltd データ符号化装置、データ復号化装置、データ符号化方法、および、データ復号化方法
JPH09275503A (ja) * 1996-04-05 1997-10-21 Murata Mach Ltd ファクシミリ通信方法
JPH1042147A (ja) * 1996-07-23 1998-02-13 Murata Mach Ltd 通信端末装置
JP3339335B2 (ja) 1996-12-12 2002-10-28 ヤマハ株式会社 圧縮符号化復号方式
US6016112A (en) * 1996-12-23 2000-01-18 National Instruments Corporation System and method for reducing errors in an analog to digital converter
US6049298A (en) * 1996-12-23 2000-04-11 National Instruments Corp. System and method for generating a linearity error correction device for an analog to digital converter
JPH10243244A (ja) * 1997-02-26 1998-09-11 Murata Mach Ltd 通信端末装置
WO1998054841A1 (en) * 1997-05-30 1998-12-03 Kubota Systems Inc. Data compressing device by permutation encoding and decompressing device
JP3401762B2 (ja) * 1997-11-19 2003-04-28 日本電信電話株式会社 画像圧縮符号化・復号化方法、画像圧縮符号化・復号化装置、画像圧縮符号化伝送方法、画像圧縮符号化伝送システムおよび画像圧縮符号化・復号化プログラムを記録した記録媒体
US6629081B1 (en) * 1999-12-22 2003-09-30 Accenture Llp Account settlement and financing in an e-commerce environment
US7069234B1 (en) * 1999-12-22 2006-06-27 Accenture Llp Initiating an agreement in an e-commerce environment
US7167844B1 (en) * 1999-12-22 2007-01-23 Accenture Llp Electronic menu document creator in a virtual financial environment
US6885991B2 (en) 2000-12-07 2005-04-26 United Parcel Service Of America, Inc. Telephony-based speech recognition for providing information for sorting mail and packages
US7106972B2 (en) * 2001-04-04 2006-09-12 The Research Foundation Of The City University Of New York Methods of improving line of sight wireless optical communication through adverse environmental conditions
JP2005184419A (ja) 2003-12-19 2005-07-07 Hitachi Ltd 映像信号符号化装置および映像信号記録装置
US8521540B2 (en) * 2007-08-17 2013-08-27 Qualcomm Incorporated Encoding and/or decoding digital signals using a permutation value

Also Published As

Publication number Publication date
US7724159B2 (en) 2010-05-25
KR101181027B1 (ko) 2012-09-10
EP2191382A1 (en) 2010-06-02
JP2010537552A (ja) 2010-12-02
EP2191382A4 (en) 2011-09-14
TW200926619A (en) 2009-06-16
US20090045990A1 (en) 2009-02-19
EP2191382B1 (en) 2018-08-22
CN101802802A (zh) 2010-08-11
WO2009025677A1 (en) 2009-02-26

Similar Documents

Publication Publication Date Title
EP2191381B1 (en) Encoding and/or decoding digital content
US8205131B2 (en) Method for producing parity check matrix for low complexity and high speed decoding, and apparatus and method for coding low density parity check code using the same
JP4801776B2 (ja) データ圧縮
JP4374448B2 (ja) 多チャネル信号符号化方法、その復号化方法、これらの装置、プログラム及びその記録媒体
JP2010537245A5 (ko)
RU2414741C2 (ru) Способ создания многоканального сигнала
RU2007141934A (ru) Адаптивная группировка параметров для улучшенной эффективности кодирования
CN111541517B (zh) 一种列表极化码传播译码方法
JP5800915B2 (ja) オーディオ信号のトラックのパルス位置の符号化および復号化
JP2002534721A (ja) 無損失エンコーダにおけるサイド情報の効率的な符号化
US20220108681A1 (en) Deep neural network based non-autoregressive speech synthesizer method and system using multiple decoder
JP2006217340A5 (ko)
KR20090010932A (ko) 벡터 코딩/디코딩 방법 및 장치 그리고 스트림 미디어플레이어
CN105409129B (zh) 编码器设备、解码器设备和方法
CN114640354A (zh) 数据压缩方法、装置、电子设备及计算机可读存储介质
CN1926768B (zh) 信号处理装置和方法
KR101181027B1 (ko) 디지털 신호 정렬을 위한 시스템, 방법 및/또는 장치
CN111446973B (zh) 基于多翻转比特集合的极化码置信传播译码方法
JP4436315B2 (ja) 畳み込み符号化器、通信装置、及び畳み込み符号化方法
WO2011162723A1 (en) Entropy encoder arrangement and entropy decoder arrangement
JP4960791B2 (ja) ベクトル量子化符号化装置、ベクトル量子化復号化装置、それらの方法、それらのプログラム、及びそれらの記録媒体
CN101677247B (zh) 循环码权重解码器的解码方法
JP3272214B2 (ja) 格子量子化器および入力ベクトルを格子量子化するための方法
JPH0714205B2 (ja) 順次再生ベクトル量子化符号化・復号化装置
JP2002344332A (ja) 軟入力軟出力復号方法及び軟入力軟出力復号装置

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 7