KR20100085555A - 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치 - Google Patents

객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치 Download PDF

Info

Publication number
KR20100085555A
KR20100085555A KR1020090004906A KR20090004906A KR20100085555A KR 20100085555 A KR20100085555 A KR 20100085555A KR 1020090004906 A KR1020090004906 A KR 1020090004906A KR 20090004906 A KR20090004906 A KR 20090004906A KR 20100085555 A KR20100085555 A KR 20100085555A
Authority
KR
South Korea
Prior art keywords
constraint
volume
information
constraints
vol
Prior art date
Application number
KR1020090004906A
Other languages
English (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 한국전자통신연구원
Priority to KR1020090004906A priority Critical patent/KR20100085555A/ko
Publication of KR20100085555A publication Critical patent/KR20100085555A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/60Receiver circuitry for the reception of television signals according to analogue transmission standards for the sound signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

본 발명은 여러 개의 오디오 객체를 한 파일에 저장할 때, 각 객체간의 재생 관계 및 재생 볼륨에 대한 강제/제약 조건을 미리 정의하여 객체기반 오디오 파일 내에 저장하고, 단말에서는 이를 효율적으로 해석함으로써, 음원 제작자가 일반 사용자에게 객체기반 오디오 서비스를 제공하는 데 있어 강제 및 제약을 손쉽게 가할 수 있게 하는 방법 및 그 장치를 제공하는데 그 목적이 있다.
객체기반, 오디오 신호, 강제제약정보, 강제조건, 객체관계

Description

객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨 정보 저장 및 해석 방법, 그리고 장치{REPRESENTATION AND ANALYSIS METHOD FOR PLAYBACK RELATIONSHIP AND VOLUME CONSTRAINTS OF TRACKS FOR OBJECT BASED AUDIO SERVICE AND THE SYSTEM THEREOF}
본 발명은 객체 기반 오디오 서비스를 제공하기 위해 다수 개의 오디오 객체들을 선택하고 믹싱하는데 있어서 각 객체간의 재생 관계 및 재생 볼륨 정보 등을 객체기반 오디오 비트스트림 내에서 효율적으로 전송하고, 전송된 비트스트림을 효율적으로 해석하는 방법 및 장치에 관한 것이다.
TV 방송, 라디오 방송, DMB 등과 같은 방송서비스를 통해 제공되는 오디오 신호에는 여러 가지 음원으로부터 획득된 오디오 신호가 합성되어 하나의 오디오 신호로 저장/전송된다. 이와 같은 환경에서는 시청자가 전체 오디오 신호의 세기 등을 조절하는 것은 가능하나, 오디오 신호 내에 포함된 각 음원 별 오디오 신호의 세기를 조절하는 등과 같은 음원 별 오디오 신호의 특성제어는 불가능하게 된다. 그러나, 콘텐츠를 저작할 때, 각 음원 별 오디오 신호를 합성하지 않고, 독립적으로 저장하면, 단말에서 각 음원 별 오디오 신호에 대한 세기 등을 제어하면서 시청 할 수 있다. 이와 같이 저장/송신단에서 여러 개의 오디오 신호를 독립적으로 저장/전송하여, 청취자가 수신기에서 각각의 오디오 신호를 적절히 제어하면서 청취할 수 있도록 하는 오디오 서비스를 객체기반 오디오 서비스라 한다.
객체기반 오디오 서비스에서는 청취자가 각 객체들의 음의 세기 등과 같은 특징들을 사용자가 자유로이 제어 가능함을 기본으로 하지만 저작자의 취향이나 특정 응용분야에 따라 청취자가 각 객체를 제어하는 있어서 자율성에 제약을 가해야 할 필요성이 있다. 예를 들어, 객체기반 음악 서비스의 경우 사용자가 한번에 한 악기의 연주를 재생시키고 이를 동시 녹음함으로써 객체 별 음원을 복제할 수 있으며, 특히 보컬 객체에 대한 솔로 재생 및 추출/복제에 대해서는 현재 대부분의 뮤지션들이 우려를 표명하고 있다. 이 경우, 특정 객체가 솔로로 재생되는 것을 막기 위해 특정 객체 재생 시, 자동적으로 타 객체를 일정 볼륨 이상으로 동반 재생시키는 등의 대안이 있을 수 있으며 이를 위해 각 객체 별 재생 관계 및 재생 볼륨을 기술하는 정보를 파일 내에 저장하는 기술과 플레이어에서 이러한 이를 효과적으로 해석하는 기술이 필요하다.
본 발명은 상기 문제점을 해결하기 위하여 제안된 것으로, 여러 개의 오디오 객체를 한 파일에 저장할 때, 각 객체간의 재생 관계 및 재생 볼륨에 대한 강제/제약 조건을 미리 정의하여 객체기반 오디오 파일 내에 저장하고, 단말에서는 이를 효율적으로 해석함으로써, 음원 제작자가 일반 사용자에게 객체기반 오디오 서비스를 제공하는 데 있어 강제 및 제약을 손쉽게 가할 수 있게 하는 방법 및 그 장치를 제공하는데 그 목적이 있다.
하기에서 도면을 통하여 상세히 설명되는 수단을 제공한다.
상기와 같은 본 발명은, 객체기반 오디오 서비스와 같이 사용자가 각 멀티미디어 객체를 자유로이 제어할 수 있는 서비스에서 저작자의 취향이나 특정 응용분야에 따라 사용자가 각 객체를 제어하는 있어서 자율성에 제약을 가해야 할 필요성이 있는 경우, 각 멀티미디어 객체 별 재생 관계 및 재생 특징을 기술하는 정보를 파일 내에 효율적으로 저장하며 단말에서 이러한 이를 효과적으로 해석하여 재생할 수 있게 하는 효과가 있다.
상기 목적을 달성하기 위해 본 발명은, 객체기반 오디오 파일 저작 시 오디오 객체 간에 재생 관계 및 재생 볼륨에 대한 강제/제약 조건을 기술하여 파일 내 에 저장하는 방법과 전송된 객체기반 오디오 파일을 단말에서 재생 할 때 저장된 강제조건을 해석하는 방법에 관한 것이다.
본 발명은 도 1과 같이 객체기반 오디오 파일 내 강제/제약 정보의 저장 및 전송된 객체기반 오디오 파일의 강제/제약 정보를 객체기반 오디오 단말에서 해석하는 과정으로 구성될 수 있다. 객체기반 오디오 플레이어(101)에서는 객체기반 오디오 파일(102) 내에 포함된 오디오 객체(트랙) 정보와 강제/제약 정보를 강제/제약 정보 해석 모듈(103)에 입력하고 강제/제약 정보 해석 모듈(103)에서는 이를 해석하여 오디오 객체(트랙)의 복호화(104) 전에 복호화 할 트랙을 취사선택하고 이후 믹싱 단계에서 트랙의 재생 볼륨 정보에 제약을 가한다. 따라서 각 트랙의 선택 및 재생 볼륨 제어에 대한 사용자 입력이 들어왔을 때, 강제/제약 정보를 반영한 객체기반 오디오 플레이어의 동작이 이루어질 수 있다.
참고로, 객체란 오디오 트랙이나 그룹을 말하며, 그룹이란 오디오 트랙들 혹은 그룹으로 이루어진 집합을 말한다.
통상적으로 객체기반 오디오 서비스를 통해 사용자는 오디오 객체 별 재생을 제어할 수 있으며, 구체적으로는 오디오 객체 선택, 객체 별 재생 볼륨 제어 그리고 객체 별 equalization 제어 등이 가능하다. 이러한 사용자의 자율적 제어에 가할 필요가 있는 강제들은 선택 강제(selection constraint)와 볼륨 강제(volume constraint)가 있을 수 있다.
각각에 대해 살펴보면, 선택 강제 관계는, 사용자의 객체 선택에 있어 강제를 가하는 것이며, 선택 강제에는 재생 개수 제한, 객체 배제, 항상 재생, 객체 얽힘 등의 강제가 있다.
첫째로, 재생 개수 제한 관계는 프로듀서 등이 특정 객체의 집합을 설정하고 이에 제한을 걸어, 사용자가 선택하여 동시에 재생할 수 있는 객체의 최소/최대 개수를 설정하는 것을 말한다. 예로, 프로듀서가 [보컬, 기타, 피아노, 드럼] 객체의 집합에 최소 1개, 최대 3개의 재생 개수 제한을 걸었다면, 사용자는 이 집합에 대하여 1개 이상 그리고 3개 이하의 객체만을 선택할 수 있다.
둘째로, 객체 배제 관계는 특정 객체가 사용자에 의해 선택되었을 때 특정 타 객체가 선택될 수 없는 것을 말한다. 예로, 한 곡에 대해 각 객체가 여러 장르로 연주한 것이 하나의 객체기반 오디오 서비스로 제공될 때, 사용자는 각 객체 별로 한 개의 장르에 대해 선택이 가능하다. 즉, 기타연주가 classic 버전, rock 버전, jazz 버전 등이 동시에 존재할 때 사용자는 이들 중 한 개만을 선택하여 들을 수 있다. 이는 객체기반 오디오 콘텐츠가 너무나도 다양하게 재생될 수 있으므로 음원 제작자가 사용자에게 효과적인 음원 청취에 대한 어느 정도의 가이드 라인을 제공하는 역할을 수행할 수 있다.
셋째로, 항상 재생 관계는 특정 객체가 항상 재생되어야 함을 말한다. 예로, 항상 피아노 반주가 재생되어야 함을 강제해 놓는다면 각 객체 하나만의 솔로 재생 및 추출/복제를 막는 역할을 수행할 수 있다.
넷째로, 객체 얽힘 관계는 특정 객체가 사용자에 의해 선택되었을 때 특정 타 객체가 자동적으로 선택되는 것을 말한다. 예로, 사용자가 보컬 객체만을 선택하였을 때 기타 객체가 자동적으로 선택되어 재생됨으로써 보컬 객체만의 솔로 재생 및 추출/복제를 막는 역할을 수행할 수 있다.
볼륨 강제에는 볼륨 동등 제약, 볼륨 우세 제약, 볼륨 열세 제약, 볼륨 한계 제약이 있다.
첫째로, 볼륨 동등 제약은 특정 객체의 재생에 있어서 특정 타 객체와의 볼륨 비율 혹은 차이를 그대로 유지되어야 함을 말한다. 즉, vol(A) = vol(B) x aAB 의 관계를 유지하는 것이며, 여기에서 aAB 는 객체 A와 B의 볼륨 비율을 말한다. 이는 파일 생성시 각 객체의 초기 볼륨 값을 저장하여 aAB = vol(A) / vol(B) 과 같이 계산하거나 비율을 직접적으로 저장함으로써 얻을 수 있다.
둘째로, 볼륨 우세 제약은 특정 객체가 특정 타 객체보다 항상 크거나 같도록 재생되어야 함을 말한다.즉, vol(A) ≥ vol(B) * aAB 임을 항상 유지하여야 하며, 여기에서 aAB 는 객체 A와 B의 볼륨 비율을 말한다. 이는 파일 생성시 각 객체의 초기 볼륨 값을 저장하여 aAB = vol(A) / vol(B) 과 같이 계산하거나 비율을 직접적으로 저장함으로써 얻을 수 있다.
셋째로, 볼륨 열세 제약은 특정 객체가 특정 타 객체보다 항상 작거나 같도록 재생되어야 함을 말한다.즉, vol(A) ≤ vol(B) * aAB 임을 항상 유지하여야 하며, 여기에서 aAB 는 객체 A와 B의 볼륨 비율을 말한다. 이는 파일 생성시 각 객체의 초기 볼륨 값을 저장하여 aAB = vol(A) / vol(B) 과 같이 계산하거나 비율을 직접적으로 저장함으로써 얻을 수 있다.
넷째로, 볼륨 열세 한계 제약은 특정 객체 재생 시 재생 볼륨에 최대/최소 값을 설정하는 것을 말한다.
상기의 선택 강제 및 볼륨 제약들은 서로의 조합을 통해 더 효과적으로 사용될 수 있다. 즉, 단순히 재생 볼륨의 최대값 혹은 최소값을 설정하는 것뿐만 아니라 객체 얽힘/배제 관계와 수반되어 객체 간의 재생 볼륨 크기 관계를 설정하는 것을 말한다. 예로, '객체 A가 선택된 경우, 객체 B도 또한 선택된다'의 객체 얽힘 관계 설정 시, 이 경우 '객체 A는 객체 B보다 큰 볼륨으로 재생되며 객체 B는 볼륨 30 이상으로만 재생된다.' 의 재생 볼륨에 대한 제약이 가해짐으로써 솔로 재생 및 음원 추출/복제를 막기 위해 더욱 효과적인 제약이 가해질 수 있는 것이다.
상기의 강제/제약 정보를 기술 및 저장하는 방법의 일 실시 예로 현재 표준화가 진행중인 MPEG-A Interactive Music Application Format (IMAF)의 파일 구조를 이용하여 표현하는 방법에 대하여 설명하겠다. 참고로, IMAF는 ISO 파일 포맷(ISO Base Media File Format; ISO-BMFF)을 기반으로 하는 파일 포맷이며, ISO-BMFF 및 ISO-BMFF 을 기반으로 하는 파일 포맷에서는 각각의 멀티미디어 콘텐 츠를 한 개의 트랙이라고 가정한다. 따라서 여러 개의 객체를 ISO-BMFF을 기반으로 저장할 때 각각은 개별적인 트랙으로 저장된다.
강제/제약 정보는 객체기반 오디오 재생에 관여하는 정보이므로 오디오에 대한 일반적인 descriptive metadata와는 성격이 다르다. 따라서 descriptive metadata의 저장을 목적으로 하는 Meta box('meta')에 저장하여 관리하기 보다는 프리젠테이션을 위한 메타 데이터의 저장을 목적으로 하는 Movie box('moov') 내에서 강제/제약 정보를 저장하기 위한 새로운 박스를 정의하여 저장/관리하는 것이 더욱 효율적이다. 이에 대한 syntax 및 semantics는 다음과 같다.
우선, 강제/제약 정보 전체를 포함하고 있는 Constraints Container Box를 살펴보면,
본 박스에서는 선택 강제 및 볼륨 제약 정보의 개수를 기술한다.
i. Constraints Container Box
Box Type: 'cnco'
Container: Movie Box ('moov')
Mandatory: Yes
Quantity: only one
Syntax
aligned(8) class ConstraintsContainerBox extends Box('cnco'){
unsigned int(32) num_sel_constraints;
unsigned int(32) num_vol_constraints;
}
semantics
num_sel_constraints - 선택 강제 정보의 개수
num_vol_constraints - 볼륨 제약 정보의 개수
Constraints Container Box 내에는 Selection Constraint Box 및 Volume Constraint Box가 위치하며 각 박스에서는 개개의 선택 강제 혹은 볼륨 제약 정보를 포함한다.
ii. Selection Constraint Box
Box Type: 'slct'
Container: Constraints Container Box ('cnco')
Mandatory: Yes
Quantity: one or more
Syntax
aligned(8) class SelectionConstraintBox extends FullBox('slct', version=0){
unsigned int(16) select_constraint_ID;
unsigned int(16) select_constraint_type;
unsigned int(16) number_source_elements;
unsigned int(16) source_element_ID[number_source_elements];
if(select_constraint_type == 0){
unsigned int(16) min_number_elements;
unsigned int(16) max_number_elements;
}
if(select_constraint_type == 3{
unsigned int(16) number_target_elements;
unsigned int(16) target_element_ID[number_target_elements];
}
semantics
select_constraint_ID - 해당 선택 강제의 ID
select_constraint_type - 선택 강제에 대한 타입을 나타내는 플래그
select _ constraint _ type Meaning
0 재생 개수 제한 (MINMAX)
1 객체 배제 (EXCLU)
2 항상 재생 (NOTMUTE)
3 객체 얽힘 (IMPLY)
number_source_elements - 선택 강제에 관련된 트랙(혹은 그룹)의 수
source_element_ID[number_source_elements] - 선택 강제에 관련된 트랙(혹은 그룹)의 ID를 요소로 갖는 어레이. 이 어레이의 요소가 0인 경우에는, 파일 내에 저장된 모든 오디오 트랙이 해당 선택 강제 관계를 가짐을 의미함.
min_number_elements - 재생 개수 제한 관계에서의 최소 재생 개수
max_number_elements - 재생 개수 제한 관계에서의 최대 재생 개수
number_target_elements - 객체 얽힘 강제에 의해 영향을 받는 트랙(혹은 그룹)의 개수
target_element_ID[number_target_elements] - 객체 얽힘 강제에서 source_element에 의해 영향을 받는 트랙(혹은 그룹)의 ID를 요소로 갖는 어레이. 만약, source_element_ID가 0의 값인 경우에는, target_element_ID 또한 0의 값을 갖는다.
iii. Volume Constraint Box
Box Type: 'vlct'
Container: Constraints Container Box ('cnco')
Mandatory: Yes
Quantity: one or more
Syntax
aligned(8) class VolumeConstraintBox extends FullBox('vlct', version=0){
unsigned int(16) vol_constraint_ID;
unsigned int(16) vol_constraint_type;
unsigned int(16) number_source_elements;
unsigned int(16) source_element_ID[number_source_elements];
if(vol_constraint_type == 6){
unsigned int(16) min_vol;
unsigned int(16) max_vol;
}else{
unsigned int(16) ref_source_vol[number_element];
if(vol_constraint_type ~= 0) && (vol_constraint_type ~= 1){
unsigned int(16) number_target_elements;
unsigned int(16) target_element_ID[number_target_elements];
unsigned int(16) ref_target_vol[number_target_elements];
}
}
}
semantics
vol_constraint_ID - 해당 볼륨 제약의 ID
vol_constraint_type - 볼륨 제약에 대한 타입을 나타내는 플래그
vol _ constraint _ type Meaning
0 비율 동등 관계를 가진 볼륨 동등 제약 (EQUIV-R)
1 차이 동등 관계를 가진 볼륨 동등 제약 (EQUIV-D)
2 비율 우세 관계를 가진 볼륨 우세 제약 (UPPER-R)
3 차이 우세 관계를 가진 볼륨 우세 제약 (UPPER-D)
4 비율 열세 관계를 가진 볼륨 열세 제약 (LOWER-R)
5 차이 열세 관계를 가진 볼륨 열세 제약 (LOWER-D)
6 볼륨 한계 제약 (LIMIT)
number_source_elements - 볼륨 제약에 관련된 트랙(혹은 그룹)의 수
source_element_ID[number_source_elements] - 볼륨 제약에 관련된 트랙(혹은 그룹)의 ID를 요소로 갖는 어레이. 이 어레이의 요소가 0인 경우에는, 파일 내에 저장된 모든 오디오 트랙이 해당 선택 강제 관계를 가짐을 의미함.
min_vol - 볼륨 한계 제약에서의 최소 볼륨 값
max_vol - 볼륨 한계 제약에서의 최대 볼륨 값
ref_source_vol[number_element] - 볼륨 동등/우세/열세 제약에 관련된 트랙 간의 볼륨 비율 혹은 차이를 계산하는데 있어 기준이 되는 볼륨 값
number_target_elements - 볼륨 우세/열세 제약에 있어서 source_element에 의해 영향을 받는 트랙(혹은 그룹)의 개수
target_source_element_ID[number_source_elements] - 볼륨 우세/열세 제약에 있어서 source_element에 의해 영향을 받는 트랙(혹은 그룹)의 ID를 요소로 갖는 어레이. 만약, source_element_ID가 0의 값인 경우에는, target_element_ID 또한 0의 값을 갖는다.
ref_target_vol[number_source_element] - 볼륨 우세/열세 제약에 있어서 영향을 받는 트랙(혹은 그룹) 간의 볼륨 비율 혹은 차이를 계산하는데 있어 기준이 되는 볼륨 값
상기의 일 실시 예와 같이, 오디오 객체에 대한 재생 강제/제약 정보가 Movie Box('moov') 내에 저장되는 경우 [표 1]와 같은 box order를 갖게 된다. 여기에서 box order는 계층적인 구조를 나타내며 왼쪽의 column 일수록 higher level을 의미한다. 낸다. 일 예로, Track Header Box('tkhd)'는 Track Box('trak') 내에 존재하며, Track Box('trak')는 Movie Box('moov') 내에 존재한다.
강제/제약 정보를 저장하는 방법은 상기와 같이 코드 타입으로 박스에 저장하는 방법 이외에도 논리/관계 연산자 기반의 표현을 이용하여 xml과 같은 언어로 간단히 기술하는 방법도 있다.
[표 1]
moov container for all the metadata
cnco container for the constraints
slct selection constraint box , container for the selection constraints information
vlct volume constraint box , container for the volume constraints information
mvhd movie header , overall declarations
trak container for an individual track or stream
tkhd track header , overall information about the track
tref track reference container
edts edit list container
elst an edit list
mdia container for the media information in a track
mdhd media header , overall information about the media
hdlr handler , declares the media ( handler ) type
minf media information container
vmhd video media header , overall information ( video track only )
smhd sound media header , overall information ( sound track only )
hmhd hint media header , overall information ( hint track only )
nmhd Null media header , overall information ( some tracks only )
dinf data information box , container
dref data reference box , declares source (s) of media data in track
stbl sample table box , container for the time / space map
stsd sample descriptions ( codec types , initialization etc .)
stts ( decoding ) time - to - sample
(...)
또한, 객체기반 오디오 파일 내에 다객체 오디오 부호화를 통한 오디오 비트스트림이 저장되어 있는 경우에도 상기와 같이 프리젠테이션 메타데이터를 추가하여, 객체기반 오디오 단말에서 다객체 오디오 비트스트림을 복호화 하여 재생할 경우에도 파일 내에 저장되어 있는 강제/제약 정보가 반영되어 동작될 수 있다.
한편, 앞서 설명한 것처럼 객체기반 오디오 파일 내에 강제/제약 정보가 담겨 전송되었을 때 이러한 정보를 해석하여 단말에서 효율적으로 동작하게 하는 강 제/제약 해석기(103)의 매커니즘은 다음과 같다.
가) 파일 내에 저장되어 있는 각 선택 강제 및 볼륨 제약 데이터의 종류를 파악한다.
즉, 해당 강제/제약 데이터가 재생 개수 제한, 객체 배제, 항상 재생, 객체 얽힘 및 볼륨 동등 제약, 볼륨 우세 제약, 볼륨 열세 제약, 볼륨 한계 제약 중 어떤 것에 해당하는지를 파악한다.
나) 강제/제약 조건에 관련된 객체을 파악한다. 즉, 강제/제약 조건에 해당하는 트랙(혹은 그룹)과 그에 영향을 받는 트랙(및 그룹)을 파악한다.
다) 전제 조건에 해당하는 혹은 전제 조건에 영향을 받는 그룹이 다수인 경우, 그 간의 관계 또한, 파악한다. 예를 들어, 'and', 'or' 등.
라) 파악된 정보를 기반으로 그룹 간에 강제/제약 관계를 매핑한다.
마) 단말에서 특정 그룹에 대한 선택 및 볼륨 제어에 대해 사용자의 인터랙션이 있는 경우, 해석된 강제/제약 조건에 비추어 조건을 만족시키는 경우에만 해당 그룹 ID와 볼륨 값을 출력하여 단말이 동작하게 한다.
강제/제약 조건의 종류와 관계된 그룹(들)을 파악한 후 각 그룹간의 강제/제약 관계를 매핑 하는데 있어 혹은 사용자의 인터랙션이 파일 내 저장되어 있는 강제/제약 관계를 만족하는지 확인하는데 있어 일 실시 예로, 논리/관계 연산자를 이용한 수식으로 변환하여 해석하는 방법이 있다. 예를 들어,.
1) 객체 얽힘 관계(implication)
아래와 같은 논리/관계 연산자를 이용한 수식으로 변경 가능하다.
'X 이면 Y 이다'의 명제를 아래와 같이 표로 구성할 수 있으며 그 결과, (~X)∪Y 의 식을 얻을 수 있다.
X
True False
Y True T T
False F T
따라서, 상기 명제에 따른 식을 '객체 A가 선택되면, 객체 B 또한 선택된다'라는 객체 얽힘 관계에 적용하면 다음과 같이 표현될 수 있다.
If (A) then (B)
⇔ (~A)∪(B)
⇔ OR(NOT(A), B )
2) 객체 배제 관계(exclusion)
'X 이면 Y가 아니다. 또한 Y이면 X가 아니다'의 명제를 아래와 같이 표로 구성할 수 있으며, 그 결과 (X∩(~Y))∪((~X) ∩Y)의 식을 얻을 수 있다.
X
True False
Y True T F
False F T
따라서, 상기 명제에 따른 식을 '객체 A가 선택되면, 객체 B는 선택될 수 없다. 또한 객체 B가 선택되면 객체 A는 선택될 수 없다.' 라는 객체 배제 관계는 다음과 같이 표현될 수 있다.
If (A) then (~B) and If (B) then (~A)
⇔ (A∩(~B))∪((~A) ∩B)
⇔ OR((AND(A, NOT(B)), (AND(NOT(A), B)))
3) 볼륨 한계 제약(volume limitation)
'객체 A는 볼륨값 xx 이하로 재생될 수 없다'라는 재생 볼륨 제약은 다음과 같이 표현될 수 있다.
vol(A) ≤ xx
예로, '그룹 A가 선택되면, 그룹 B가 와 C 또한 선택된다', '그룹 B가 선택되면 그룹 D는 선택될 수 없다'는 강제/제약 조건이 있는 객체기반 오디오 파일의 경우, 강제/제약 해석기의 동작은 다음과 같다.
우선 강제/제약 조건에 대한 해석을 수행한다.
가) 강제/제약 조건의 종류
A. 첫번째 강제/제약 조건: '객체 얽힘'
B. 두번째 강제/제약 조건: '객체 배제'
나) 관련 그룹 분류
A. 첫번째 조건: 강제/제약 조건에 해당하는 그룹 → 'A' / 영향을 받는 그룹들 → 'B, C'
B. 두번째 조건: 강제/제약 조건에 해당하는 그룹 → 'B, D'
다) 그룹 간의 관계
A. 첫번째 조건: 강제/제약 조건에 해당하는 그룹 → none / 영향을 받는 그룹 간 → 'and'
B. 두번째 조건: 강제/제약 조건에 해당하는 그룹 → none / 영향을 받는 그룹 간 → none
라) 매핑
A. 객체 얽힘의 관계는 다음과 같은 수식으로 해석됨.
If (A) then (B and C)
⇔ (~A)∪(B∩C)
OR ( NOT (A), AND (B,C) ) → [식 1]
B. 객체 배제의 관계를 다음과 같은 수식으로 해석됨.
If (B) then (~D) and If (D) then (~B)
⇔ (B∩(~D))∪((~B) ∩D)
OR (( AND (B, NOT (D)), ( AND ( NOT (B), D))) [식 2]
C. 따라서, 변환된 식에 따라 관련 그룹 간에 관계가 아래와 같이 매핑됨. 즉, 두 강제/제약 조건을 동시에 '참'을 만족해야만 객체기반 오디오 플레이어가 동작하게 되므로,
[식 3]
AND ([식 1], [식 2])
⇔ AND(OR ( NOT (A), AND (B,C) ), OR (( AND (B, NOT (D)),
( AND ( NOT (B), D))))
마) 단말에서 특정 그룹에 대한 선택 및 볼륨 제어에 대해 사용자의 인터랙션이 있는 경우, 강제/제약 정보 해독 모듈에서 상기의 최종 수식이 참인지 거짓인지를 판단하여 '참'인 경우에만 단말이 동작하게 한다.
즉, 상기의 예에서 사용자가 객체기반 오디오 단말에서 그룹 A를 선택하면 [식 3]에 기반하여 자동적으로 그룹 B와 그룹 C가 선택된다. 이 경우, 사용자가 그룹 D를 선택하고자 하더라도 [식 3]이 '거짓'이 되므로 사용자는 그룹 D는 선택할 수 없다.
또한, 단말에서 특정 그룹에 대한 선택 및 볼륨 제어에 대해 사용자의 인터 랙션이 있는 경우, 해석된 강제/제약 조건에 비추어 조건을 만족시키는지를 확인하는데 있어 일 실시 예로, 아래와 같은 pseudo-code를 실행함으로써 그 결과 값이 참인지 거짓인지를 확인하는 방법이 있다.
선택 강제에 대한 pseudo-code는 다음과 같다. 참고로, 아래의 표에 공통적으로 쓰이는 기호와 그에 대한 설명은 아래와 같다.
- NUM(A) : 집합 A의 요소 개수
- VOL(A) : 집합 A의 요소의 볼륨 값
- U : 사용자에 의해 선택된 요소들의 집합
- S : source_element_ID[number_source_elements] 내에 정의된 요소(트랙 혹은 그룹)들의 집합.
- T : target_elements_ID[number_target_elements] 내에 정의된 요소(트랙 혹은 그룹)들의 집합
select _ constraint _ type pseudo code
MINMAX IF (min_number_elements ≤ NUM(U∩S)} ≤ max_number_elements) THEN True
ELSE False
ENDIF
EXCLU IF (NUM(U∩S) ≤ 1) THEN True
ELSE False
ENDIF
NOTMUTE IF (S⊂U) THEN True
ELSE False
ENDIF

혹은, IF (VOL(S)>0) THEN True
ELSE False
ENDIF
IMPLY IF (NOT(S⊂U) OR (T⊂U)) THEN True
ELSE False
ENDIF
볼륨 제약에 대한 pseudo-code는 다음과 같다. 참고로, 아래의 표에 공통적으로 쓰이는 기호와 그에 대한 설명은 아래와 같다.
- RATIO(A) : 벡터 A의 요소들 간의 상대적인 비율
- DIFF(A) : 벡터 A의 요소들 간의 차이
- VOL(A) : 벡터 A의 요소들의 볼륨 벡터
- S: source_element_ID[num_source_elements]내에 정의된 요소들의 벡터
- T: target_element_ID[num_target_elements] 내에 정의된 요소들의 벡터
- Vs: ref_source_volnum_source_elements] 내에 정의된 요소들의 벡터
- Vt: ref_target_vol[num_target_elements] 내에 정의된 요소들의 벡터
- ./ : element-wise (floating point) 나누기 연산
- .* : element-wise (floating point) 곱하기 연산
- .≥: element-wise equal to or larger than
- .≤: element-wise equal to or smaller than
vol _ constraint _ type pseudo code
EQUIV-R IF RATIO(VOL(S}) == RATIO(Vs) THEN True
ELSE False
ENDIF
EQUIV-D IF DIFF(VOL(S)) == DIFF(Vs) THEN True
ELSE False
ENDIF
UPPER-R IF VOL(S) .≥ (Vs ./ Vt) .* VOL(T) THEN True
ELSE False
ENDIF
UPPER-D IF VOL(S) .≥ VOL(T) + (Vs - Vt) THEN True
ELSE False
ENDIF
LOWER-R IF VOL(S) .≤ (Vs ./ Vt) .* VOL(T) THEN True
ELSE False
ENDIF
LOWER-D IF VOL(S) .≤ VOL(T) + (Vs - Vt) THEN True
ELSE False
ENDIF
LIMIT IF (FOR all s∈S, min_volume ≤ VOL(s) ≤ max_volume) THEN True
ELSE False
ENDIF
볼륨 제약에 대한 pseudo-code의 실행 후 FALSE의 결과가 나오게 되면, 플레이어에서는 이 값을 TRUE로 만들기 위한 동작을 수행한다. 예를 들어, 트랙 A, B, C가 비율 동등 관계를 가진 볼륨 동등 제약 관계에 있다고 하자. 사용자가 트랙 A의 볼륨을 증가시키면, 플레이어에서 이 동작이 파일 내 저장된 볼륨 동등 제약 관계를 따르는지 검증하게 된다. 즉, 상기의 pseudo-code를 실행한다. 그 결과 FALSE 값이 출력되면, 플레이어는 트랙 B와 트랙 C 가 트랙 A와 같은 볼륨 비율을 유지하기 위하여 해당 볼륨 비율 만큼 볼륨이 증가하게끔 동작시킨다.
이와 같이, 강제/제약 정보 해석 모듈(103)에서는 상기 방법과 같이 논리/관계 연산자 기반의 수식뿐만 아니라 상기의 pseudo-code 등을 이용함으로써 강제/제약 정보를 효과적으로 해석할 수 있으며, 또한 사용자 인터랙션이 강제/제약 조건이 변환 된 결과 식을 '참' 으로 만족하는지 그렇지 않은지 판단함으로써 객체기반 오디오 플레이어의 동작에 효율적으로 올바른 강제/제약을 가할 수 있으며 이로써, 객체기반 오디오 플레이어의 동작에 효율적으로 올바른 강제/제약을 가할 수 있다.
도 1은 관련 기술을 설명하기 위한 도면이다.

Claims (1)

  1. 발명의 상세한 설명 및 도면에 의한 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨 정보 저장 및 해석 방법.
KR1020090004906A 2009-01-21 2009-01-21 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치 KR20100085555A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090004906A KR20100085555A (ko) 2009-01-21 2009-01-21 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090004906A KR20100085555A (ko) 2009-01-21 2009-01-21 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치

Publications (1)

Publication Number Publication Date
KR20100085555A true KR20100085555A (ko) 2010-07-29

Family

ID=42644455

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090004906A KR20100085555A (ko) 2009-01-21 2009-01-21 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치

Country Status (1)

Country Link
KR (1) KR20100085555A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106415711A (zh) * 2014-05-30 2017-02-15 索尼公司 信息处理装置和信息处理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106415711A (zh) * 2014-05-30 2017-02-15 索尼公司 信息处理装置和信息处理方法

Similar Documents

Publication Publication Date Title
US8976983B2 (en) Method for generating and playing object-based audio contents and computer readable recording medium for recoding data having file format structure for object-based audio service
US8644970B2 (en) Method and an apparatus for processing an audio signal
US11132984B2 (en) Automatic multi-channel music mix from multiple audio stems
KR102178231B1 (ko) 인코딩된 오디오 메타데이터-기반 등화
KR100868475B1 (ko) 객체기반 오디오 서비스를 위한 다중객체 오디오 콘텐츠파일의 생성, 편집 및 재생 방법과, 오디오 프리셋 생성방법
US20120183148A1 (en) System for multichannel multitrack audio and audio processing method thereof
CN101542597A (zh) 用于编码和解码基于对象的音频信号的方法和装置
KR20140046980A (ko) 오디오 데이터 생성 장치 및 방법, 오디오 데이터 재생 장치 및 방법
US20110069934A1 (en) Apparatus and method for providing object based audio file, and apparatus and method for playing back object based audio file
KR102370672B1 (ko) 오디오 데이터 제공 방법 및 장치, 오디오 메타데이터 제공 방법 및 장치, 오디오 데이터 재생 방법 및 장치
KR20100085555A (ko) 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치
KR101999351B1 (ko) 객체기반 오디오 컨텐츠의 생성/재생 방법 및 객체기반 오디오 서비스를 위한 파일 포맷 구조를 가진 데이터를 기록한 컴퓨터 판독 가능 기록 매체
KR20100084874A (ko) 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치
KR20100053103A (ko) 객체 기반 오디오 서비스를 위한 객체 간 재생 관계와 볼륨정보 저장 및 해석 방법, 그리고 장치
KR102149019B1 (ko) 객체기반 오디오 컨텐츠의 생성/재생 방법 및 객체기반 오디오 서비스를 위한 파일 포맷 구조를 가진 데이터를 기록한 컴퓨터 판독 가능 기록 매체
KR20110066877A (ko) 객체 기반 오디오 서비스를 위한 오디오 저작 장치 및 오디오 재생 장치, 이를 이용하는 오디오 저작 방법 및 오디오 재생 방법
KR20110085155A (ko) 실시간 스트리밍을 위한 오디오 생성장치, 오디오 재생장치 및 그 방법
TWI407362B (zh) 播放裝置及其音頻輸出方法
KR101125364B1 (ko) 객체기반 오디오 파일 제공 장치 및 객체기반 오디오 파일 재생 장치, 그리고, 객체기반 오디오 파일 제공 방법 및 객체기반 오디오 재생 방법
Stewart et al. Interactive music applications and standards
KR20220030983A (ko) 오디오 메타데이터 제공 장치 및 방법, 오디오 데이터 제공 장치 및 방법, 오디오 데이터 재생 장치 및 방법
KR20210021516A (ko) 오디오 메타데이터 제공 장치 및 방법, 오디오 데이터 제공 장치 및 방법, 오디오 데이터 재생 장치 및 방법
JP2020120377A (ja) オーディオオーサリング装置、オーディオレンダリング装置、送信装置、受信装置、及び方法
Sarisky Multi-Perspective Surround Sound Audio Recording

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination