KR101133906B1 - 합주 연주 서비스 제공 방법 및 시스템 - Google Patents

합주 연주 서비스 제공 방법 및 시스템 Download PDF

Info

Publication number
KR101133906B1
KR101133906B1 KR1020090130521A KR20090130521A KR101133906B1 KR 101133906 B1 KR101133906 B1 KR 101133906B1 KR 1020090130521 A KR1020090130521 A KR 1020090130521A KR 20090130521 A KR20090130521 A KR 20090130521A KR 101133906 B1 KR101133906 B1 KR 101133906B1
Authority
KR
South Korea
Prior art keywords
terminal
user
playback
information
sound source
Prior art date
Application number
KR1020090130521A
Other languages
English (en)
Other versions
KR20110073782A (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 KR1020090130521A priority Critical patent/KR101133906B1/ko
Publication of KR20110073782A publication Critical patent/KR20110073782A/ko
Application granted granted Critical
Publication of KR101133906B1 publication Critical patent/KR101133906B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2250/00Postage metering systems
    • G06Q2250/10Special services or fees, e.g. discounts, surcharges or adjustments

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

본 발명에 따라서 합주곡 연주 서비스 제공 시스템이 제공되는데, 상기 시스템은 사용자 단말기와 통신망을 통해 연결되고, 사용자가 요청한 합주곡을 구성하는 각 악기의 연주 음악 파일을 동기화 및 재가공하여, 상기 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기로 전송하여, 상기 사용자 단말기 및 재생 단말기 각각을 통해 각 악기의 연주 음악을 실시간으로 재생하도록 구성된다. 상기 시스템은 상기 시스템에 접속한 사용자가 자신의 단말기를 통해 원하는 합주곡 연주와관련한 정보를 입력할 수 있도록 해주는 사용자 인터페이스를 제공하는 합주곡 정보 입력 모듈과; 상기 사용자 단말기 및 재생 단말기의 IP 주소를 분석하고, 상기 합주곡 정보 입력 모듈을 통해 제공되는 합주곡 정보를 기초로 미디 데이터베이스를 검색하여, 상기 합주곡을 구성하는 악기의 미디 음원 파일을 찾아내어, 각 파일에 포함된 쉼표 시그널을 이용하여 각 음원을 분석하며, 상기 분석한 합주곡을 구성하는 각 악기의 미디 음원 파일을 추출하여 사용자 환경에 맞춰 동기화하여 전송 및 재생하고, 상기 미디 음원 파일의 재생 중에 지연이 발생하는 경우 그 지연을 제거하는 처리를 수행하는 AET 모듈과; 상기 AET 모듈에 의해 분석된 상기 사용자 단말기 및 재생 단말기의 IP 주소를 서로 매칭시켜 저장하는 단말기 정보 DB와; 상기 AET 모듈에 의해 분석된 합주곡을 구성하는 각 악기의 미디 음원 파일에 대한 정보를 저장하는 시맨틱 테이블 DB와; 상기 합주곡을 구성하는 각 악기의 미디 음원 파일을 저장하는 미 디 DB를 포함한다.

Description

합주 연주 서비스 제공 방법 및 시스템{METHOD AND SYSTEM OF PROVIDING CONCERTED MUSIC SERVICE}
본 발명은 합주 연주 서비스 제공 방법 및 시스템에 관한 것으로서, 보다 구체적으로는 사용자의 요청에 의해 선택된 음악 파일을 추출하여, 사용자의 환경에 맞춰 상기 추출된 음악 파일의 합주 연주 서비스를 제공하는 방법 및 시스템에 관한 것이다.
최근의 웹은 Web 2.0의 웹으로서, 기존의 인터넷 유저와는 다른 형태의 유저가 활동하고 있다. 이들은 소비자로서의 역할을 하는 기존의 인터넷 유저의 역할에서 한 발 더 나아가 자신이 직접 참여하고, 자신의 요구를 만족시키기 위한 적극적인 인터넷 유저로 발전하고 있다.
적극적인 인터넷 유저의 활동을 통하여 개인의 취향과 필요를 충족시키기 위한 다양한 소셜 네트워킹(Social Networking)이 형성되었으며, 확산된 소셜 네트워크로서의 여러 종류의 소셜 미디어(Social Media)가 공유되고 있다. 수 많은 소셜 미디어의 종류 중에서도, 인터넷 유저의 만족감을 증대시키기 위한 실감형 서비스 를 제공할 수 있는 실감형 미디어가 각광받고 있다. 실감형 서비스란 기존의 3D에서의 서비스를 실세계로 반영함으로써 실제로 유저의 감각을 자극하여, 느낄 수 있는 서비스를 만끽할 수 있도록 하는 4D로의 진화를 의미한다.
한편, 많은 유저들이 음악 콘텐츠를 널리 활용하고 있다. 단순한 음악 파일 외에, 근래에 들어와서는 마치 음악회에서의 오케스트라를 즐기는 것과 같은 합주 연주 서비스도 제공되고 있다. 그러나, 이러한 합주 연주 서비스는 유저 입장에서 다음과 같은 문제점이 있다.
먼저, 합주 연주 서비스 역시 단순한 음악 파일 제공 서비스와 그 형태가 같아, 유저는 합주 연주와 관련된 파일을 다운로드받아 재생하는 수준에 그친다. 즉 오케스트르와 같은 합주 연주는 여러 가지 악기에 의해 연주가 되지만, 사용자가 갖고 있는 재생 장치를 통해서는 그 각각의 악기 연주를 완벽하게 청취하는 것은 곤란하다.
상기와 같은 문제점은 개인용 컴퓨터에 여러 채널을 갖는 출력 장치를 연결하면 해결될 수도 있지만, 대학교 연구실과 같이 좁은 공간에 여러 대의 출력 장치를 설치하는 것은 공간상 문제를 야기할 수 있고, 또 비용도 적지 않게 소요된다.
또한, 어떤 유저는 합주 연주 음악 파일을 이용하여 자신의 음악적 스킬을 향상시키고자 할 수가 있을 것이다. 예컨대, 유명한 5중주 합주 연주와 관련하여, 자신은 피아노를 통해 그 합주 연주에 참여하려고 할 수 있다. 이때, 5중주 중 피아노 관련 악기 연주는 재생이 되지 않아야, 자신의 음악 연습을 수행할 수 있게 되지만, 기존의 음악 제공 서비스는 피아노를 포함하여 악기 5개의 음악을 모두 한 번에 재생하기 때문에, 자신이 피아노를 연주하여도 그 연주가 합주 연주에 부합되는지 여부를 정확히 파악할 수 없는 문제점이 노출된다.
본 발명은 상기와 같은 종래 기술에서 나타나는 문제점을 해결하기 위한 것으로서, 그 한 가지 목적은 합주 연주를 재생하기 위하여, 각 악기 연주를 출력하는 스피커와 같은 복수 개의 출력 장치를 별도로 구비하지 않고도, 사용자가 원하는 합주 연주 음악가 완벽하게 재생되어 사용자에게 제공될 수 있도록 해주는 합주 연주 서비스 제공 방법 및 시스템을 제공하는 것이다.
본 발명의 다른 목적은 합주곡 전체를 하나의 단말기 혹은 복수의 단말기를 통해 재생하는 것이 아니라, 합주곡을 구성하는 악기 각각의 연주 음악을 복수의 각 단말기를 통해 재생함으로써, 마치 오케스트라 홀에서 합주곡을 듣는 것과 같은 느낌 혹은 만족감을 제공할 수 있는 합주 연주 서비스 제공 방법 및 시스템을 제공하는 것이다.
본 발명의 다른 목적은 여러 악기로 연주되는 합주 연주 음악 파일 중 사용자의 선택에 따라 원하는 악기 음악만을 추출하여 동기화시켜 제공하는 합주 연주 서비스 제공 방법 및 시스템을 제공하는 것이다.
본 발명의 다른 목적은 사용자가 갖는 재생 장치의 하드웨어 성능을 고려하여, 음악 파일의 재생 지연 없이 네트워크를 이용하여 합주 연주가 재생될 수 있도록 해주는 합주 연주 서비스 제공 방법 및 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 여러 대의 재생 장치를 통해 합주 연주가 재생될 때 합주 연주를 구성하는 음원을 동기화하여, 각 음원 간의 지연 없이 합주 연주 파일이 재생될 수 있도록 해준는 합주 연주 서비스 제공 방법 및 시스템을 제공하는 것이다.
상기 목적을 달성하기 위하여, 본 발명에 따라서 합주곡 연주 서비스 제공 시스템이 제공되는데, 상기 시스템은 사용자 단말기와 통신망을 통해 연결되고, 사용자가 요청한 합주곡을 구성하는 각 악기의 연주 음악 파일을 동기화 및 재가공하여, 상기 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기로 전송하여, 상기 사용자 단말기 및 재생 단말기 각각을 통해 각 악기의 연주 음악을 실시간으로 재생하도록 구성된다. 상기 시스템은 상기 시스템에 접속한 사용자가 자신의 단말기를 통해 원하는 합주곡 연주와관련한 정보를 입력할 수 있도록 해주는 사용자 인터페이스를 제공하는 합주곡 정보 입력 모듈과; 상기 사용자 단말기 및 재생 단말기의 IP 주소를 분석하고, 상기 합주곡 정보 입력 모듈을 통해 제공되는 합주곡 정보를 기초로 미디 데이터베이스를 검색하여, 상기 합주곡을 구성하는 악기의 미디 음원 파일을 찾아내어, 각 파일에 포함된 쉼표 시그널을 이용하여 각 음원을 분석하며, 상기 분석한 합주곡을 구성하는 각 악기의 미디 음원 파일을 추출하여 사용자 환경에 맞춰 동기화하여 전송 및 재생하고, 상기 미디 음원 파일의 재생 중에 지연이 발생하는 경우 그 지연을 제거하는 처리를 수행하는 AET 모듈과; 상기 AET 모듈에 의해 분석된 상기 사용자 단말기 및 재생 단말기의 IP 주소를 서로 매칭시켜 저장하는 단말기 정보 DB와; 상기 AET 모듈에 의해 분석된 합주곡을 구성하는 각 악기의 미디 음원 파일 에 대한 정보를 저장하는 시맨틱 테이블 DB와; 상기 합주곡을 구성하는 각 악기의 미디 음원 파일을 저장하는 미디 DB를 포함한다.
한 가지 실시예에 있어서, 상기 AET 모듈은 상기 시스템에 접속한 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기를 검색하여, 해당 IP 주소와 상기 사용자 단말기 및 재생 단말기 각각을 서로 매칭시켜, 상기 단말기 정보 DB에 저장하고, 상기 사용자가 입력한 합주곡 정보에 기초하여, 그 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 DB로부터 찾아내어, 각 음원 파일을 분석하여, 각 악기의 총 재생 시간을 추출하고, 각 음원 파일이 갖고 있는 쉼표 시그널을 분석하여, 쉼표의 갯수, 쉼표가 나타나는 시간(Asrp), 쉼표의 지속 시간에 대한 정보를 추출하여, 상기 추출된 정보를 포함하는 시맨틱 테이블을 작성하여, 상기 시맨틱 테이블 DB에 저장하는 분석 유닛과; 상기 분석 유닛에 의해 분석된 정보에 기반하여, 상기 미디 DB로부터 실제로 제공될 상기 합주곡의 각 악기의 미디 음원 파일을 추출하는 추출 유닛과; 상기 추출 유닛에 의해 추출된 복수의 미디 음원 파일에 대해 동기화 작업을 수행한 후, 상기 단말기 정보 DB를 참조하여, 상기 사용자 단말기 및 재생 단말기 각각으로 상기 각 미디 음원 파일을 전송하여 재생하며, 각 미디 음원 파일의 재생 중 그 파일에 포함된 쉼표 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 각 파일의 실제 재생 시간과 상기 시맨틱 테이블 DB에 저장된 각 음원 파일의 재생 시간의 일치 여부를 판단하여, 두 재생 시간이 일치하지 않아 지연이 발생하면, 그 지연을 제거하는 프로세스를 수행하도록 구성된 동기화/전송 유닛을 포함할 수 있다.
한 가지 실시예에 있어서, 상기 동기화/전송 유닛은 상기 두 재생 시간이 일치하면 재생을 그대로 계속하고, 상기 두 재생 시간이 일치하지 않는다고 판단하면, 상기 시맨틱 테이블 DB에 저장된 시맨틱 테이블의 쉼표의 지속 시간을 늘이거나 줄여, 두 재생 시간의 불일치를 조정하도록 구성될 수 있다.
한 가지 실시예에 있어서, 상기 동기화/전송 유닛은, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 늦은 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 단축하여, 그 미디 음원 파일이 단축 시간만큼 빨리 재생되도록 하고, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 이른 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 늘려, 그 미디 음원 파일이 단축 시간만큼 늦게 재생되도록 하여, 상기 두 재생 시간의 불일치를 조정하도록 구성될 수 있다.
한 가지 실시예에 있어서, 상기 합주곡 정보 입력 모듈은 상기 사용자가 자신의 단말기와 연결되어 있는 상기 재생 단말기를 검색하여, 자신의 단말기 및 각 재생 단말기를 통해 상기 합주곡의 어떤 악기가 연주되어야 하는지를 지정할 수 있 도록 해주는 옵션을 포함하는 사용자 인터페이스를 제공하도록 구성될 수 있다.
한 가지 실시예에 있어서, 상기 분석 유닛은 상기 사용자가 지정한 특정 단말기에서의 특정 악기의 재생 정보도 해당 단말기에 매칭시켜 상기 단말기 정보 DB에 저장하고, 상기 동기화/전송 유닛은 상기 단말기 정보 DB를 참조하여, 상기 사용자가 지정한 사용자 단말기 및 재생 단말기로 사용자가 지정한 악기의 미디 음원 파일을 전송하여 재생하도록 구성될 수 있다.
한 가지 실시예에 있어서, 상기 합주곡 정보 입력 모듈은 상기 사용자가 상기 합주곡 중 특정 악기의 재생을 배제하는 선택을 할 수 있도록 해주는 옵션을 포함하는 사용자 인터페이스를 제공하도록 구성될 수 있다.
한 가지 실시예에 있어서, 사용자가 특정 악기의 재생을 배제하는 정보를 입력하면, 상기 분석 유닛은 사용자가 제외한 악기의 미디 음원 파일을 제외한 나머지 악기의 미디 음원 파일만을 분석하도록 구성될 수 있다.
본 발명의 다른 양태에 따라서, 사용자가 요청한 합주곡을 구성하는 각 악기의 연주 음악 파일을 동기화 및 재가공하여, 통신망을 통해 연결되어 있는 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기로 전송하여, 상기 사용자 단말기 및 재생 단말기 각각 을 통해 각 악기의 연주 음악을 실시간으로 재생하여 주는 합주곡 연주 서비스 제공 방법이 제공된다. 상기 방법은 (A) 사용자가 자신의 단말기를 통해 원하는 합주곡 연주와 관련하여 입력한 정보를 수신하는 단계와; (B) 상기 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기를 검색하여, 해당 IP 주소와 상기 사용자 단말기 및 재생 단말기 각각을 서로 매칭시켜, 단말기 정보 DB에 저장하는 단계와; (C) 상기 수신된 합주곡 정보를 기초로 미디 데이터베이스를 검색하여, 상기 합주곡을 구성하는 악기의 미디 음원 파일을 찾아내어, 각 파일에 포함된 쉼표 시그널을 이용하여 각 음원을 분석하여 그 결과를 시맨틱 테이블 DB에 저장하는 단계와; (D) 상기 분석한 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 데이터베이스로부터 추출하는 단계와; (E) 상기 추출된 각 미디 음원 파일을 동기화하여 전송 및 재생함과 아울러, 상기 미디 음원 파일의 재생 중에 지연이 발생하는 경우 그 지연을 제거하는 처리를 수행하는 단계를 포함하는 것을 특징으로 한다.
한 가지 실시예에 있어서, 상기 (C) 단계는 상기 수신된 합주곡 정보에 기초하여, 그 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 DB로부터 찾아내어, 각 음원 파일을 분석하여, 각 악기의 총 재생 시간을 추출하고, 각 음원 파일이 갖고 있는 쉼표 시그널을 분석하여, 쉼표의 갯수, 쉼표가 나타나는 시간(Asrp), 쉼표의 지속 시간에 대한 정보를 추출하여, 상기 추출된 정보를 포함하는 시맨틱 테이블을 작성하여, 상기 시맨틱 테이블 DB에 저장하는 것을 포함하고, 상기 (E) 단계는 상기 추출된 복수의 미디 음원 파일에 대해 동기화 작업을 수행한 후, 상기 단말기 정보 DB를 참조하여, 상기 사용자 단말기 및 재생 단말기 각각으로 상기 각 미디 음원 파일을 전송하여 재생하며, 각 미디 음원 파일의 재생 중 그 파일에 포함된 쉼표 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 각 파일의 실제 재생 시간과 상기 시맨틱 테이블 DB에 저장된 각 음원 파일의 재생 시간의 일치 여부를 판단하여, 두 재생 시간이 일치하지 않아 지연이 발생하면, 그 지연을 제거하는 프로세스를 수행할 수 있다.
한 가지 실시예에 있어서, 상기 (E) 단계는 상기 두 재생 시간이 일치하면 그대로 재생을 계속하고, 상기 두 재생 시간이 일치하지 않는다고 판단하면, 상기 시맨틱 테이블 DB에 저장된 시맨틱 테이블의 쉼표의 지속 시간을 늘이거나 줄여, 두 재생 시간의 불일치를 조정할 수 있으며, 구체적으로는 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 늦은 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 단축하여, 그 미디 음원 파일이 단축 시간만큼 빨리 재생되도록 하고, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 이른 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 늘려, 그 미디 음원 파일이 단축 시간만큼 늦게 재생되도록 하여, 상기 두 재생 시간의 불일치를 조정할 수 있다.
한 가지 실시예에 있어서, 상기 (A) 단계에 있어서, 상기 사용자의 단말기 및 각 재생 단말기를 통해 상기 합주곡의 어떤 악기가 연주되어야 하는지를 지정한 정보를 수신하는 것을 더 포함할 수 있고, 이 경우 상기 (B) 단계에 있어서, 상기 사용자가 지정한 특정 단말기에서의 특정 악기의 재생 정보도 해당 단말기에 매칭시켜 상기 단말기 정보 DB에 저장하고, 상기 (E) 단계에 있어서, 상기 단말기 정보 DB를 참조하여, 상기 사용자가 지정한 사용자 단말기 및 재생 단말기로 사용자가 지정한 악기의 미디 음원 파일을 전송하여 재생할 수 있다.
한 가지 실시예에 있어서, 상기 (A) 단계에 있어서, 상기 합주곡 중 특정 악기의 재생을 배제하는 정보를 수신하는 것을 더 포함할 수 있고, 특정 악기의 재생을 배제하는 정보가 수신되는 경우, 상기 (B) 단계에서 사용자가 제외한 악기의 미디 음원 파일을 제외한 나머지 악기의 미디 음원 파일만을 분석할 수 있다.
본 발명의 다른 양태에 따라서, 사용자가 요청한 합주곡을 구성하는 각 악기의 연주 음악 파일을 동기화 및 재가공하여, 통신망을 통해 연결되어 있는 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기로 전송하여, 상기 사용자 단말기 및 재생 단말기 각각을 통해 각 악기의 연주 음악을 실시간으로 재생하여 주는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체가 제공되는데, (a) 사용자가 자신의 단말기를 통해 원하는 합주곡 연주와 관련하여 입력한 정보를 수신하도록 프로그램된 명령어와; (b) 상기 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기를 검색하여, 해당 IP 주소와 상기 사용자 단말기 및 재생 단말기 각각을 서로 매칭시켜, 단말기 정보 DB에 저장하도록 프로그램된 명령어와; (c) 상기 수신된 합주곡 정보에 기초하여, 그 합주곡을 구성하는 각 악기의 미디 음원 파일을 미디 DB로부터 찾아내어, 각 음원 파일을 분석하여, 각 악기의 총 재생 시간을 추출하고, 각 음원 파일이 갖고 있는 쉼표 시그널을 분석하여, 쉼표의 갯수, 쉼표가 나타나는 시간(Asrp), 쉼표의 지속 시간에 대한 정보를 추출하여, 상기 추출된 정보를 포함하는 시맨틱 테이블을 작성하여, 시맨틱 테이블 DB에 저장하도록 프로그램된 명령어와; (d) 상기 분석한 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 데이터베이스로부터 추출하도록 프로그램된 명령어와; (e) 상기 추출된 복수의 미디 음원 파일에 대해 동기화 작업을 수행한 후, 상기 단말기 정보 DB를 참조하여, 상기 사용자 단말기 및 재생 단말기 각각으로 상기 각 미디 음원 파일을 전송하여 재생하며, 각 미디 음원 파일의 재생 중 그 파일에 포함된 쉼표 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 각 파일의 실제 재생 시간과 상기 시맨틱 테이블 DB에 저장된 각 음원 파일의 재생 시간의 일치 여부를 판단하여, 두 재생 시간이 일치하지 않아 지연이 발생하면, 그 지연을 제거하는 프로세스를 수행하도록 프로그램된 명령어를 포함하는 것을 특징으로 하며, 상기 (e)의 명령어는 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 늦은 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 단축하여, 그 미디 음원 파일이 단축 시간만큼 빨리 재생되도록 하고, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 이른 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 늘려, 그 미디 음원 파일이 단축 시간만큼 늦게 재생되도록 하여, 상기 두 재생 시간의 불일치를 조정하도록 프로그램될 수 있다.
한 가지 실시예에 있어서, 상기 (a)의 명령어는 또한 상기 사용자의 단말기 및 각 재생 단말기를 통해 상기 합주곡의 어떤 악기가 연주되어야 하는지를 지정한 정보를 수신하도록 프로그램될 수 있다.
한 가지 실시예에 있어서, 상기 (b)의 명령어는 상기 사용자가 지정한 특정 단말기에서의 특정 악기의 재생 정보도 해당 단말기에 매칭시켜 상기 단말기 정보 DB에 저장하도록 프로그램되어 있고, 상기 (e)의 명령어는 상기 단말기 정보 DB를 참조하여, 상기 사용자가 지정한 사용자 단말기 및 재생 단말기로 사용자가 지정한 악기의 미디 음원 파일을 전송하여 재생하도록 프로그램될 수 있다.
한 가지 실시예에 있어서, 상기 (a)의 명령어는 또한 상기 합주곡 중 특정 악기의 재생을 배제하는 정보를 수신하도록 프로그램될 수 있다.
한 가지 실시예에 있어서, 특정 악기의 재생을 배제하는 정보가 수신되는 경 우, 상기 (c)의 명령어는 사용자가 제외한 악기의 미디 음원 파일을 제외한 나머지 악기의 미디 음원 파일만을 분석하도록 프로그램될 수 있다.
본 발명에 따르면, 오케스트라 홀과 같은 특수한 장소가 아닌 사용자의 개인적인 공간에서도 동일한 효과의 합주 연주 서비스를 제공할 수 있다. 또한, 각 단말기를 통한 각 악기의 재생이 실시간으로 동기화되어 제공되므로, 사용자가 갖고 있는 단말기 각각의 재생 능력에 상관 없이 완벽한 조화를 이룬 합주 연주 서비스를 제공할 수 있다.
이하에서는 본 발명을 첨부 도면을 참조하여 더욱 구체적으로 설명한다. 이하의 설명에 있어서, 당업계에 널리 알려진 구성에 대한 설명은 생략한다. 한편, 각 모듈이나 유닛 등이 별도로 구성되는 것으로 설명하지만, 이는 설명의 편의를 위한 것임을 이해하여야 한다. 즉 이하의 각 구성 요소는 별개로, 혹은 별개의 서버로 구성될 수도 있고, 하나의 유닛이나 모듈, 하나의 서버 혹은 하나의 데이터베이스로 구성될 수도 있다는 것을 이해하여야 한다.
도 1에는 본 발명에 따른 합주 연주 서비스를 제공하는 시스템의 구성이 흐름도의 형태로 개략적으로 도시되어 있다.
도시한 바와 같이, 본 발명의 합주 연주 서비스 제공 시스템은 상기 시스템 과 유무선 통신망을 통해 연결된 사용자 단말기의 사용자가 자신이 원하는 합주 연주 파일(예컨대, 오케스트라 곡), 그 합주 연주 중 재생되기를 원하는 특정 악기를 선택할 수 있도록 해주는 사용자 인터페이스를 제공하는 합주곡 정보 입력 모듈(100), 상기 합주곡 정보 입력 모듈을 통해 제공되는 합주곡 정보를 분석하고, 그에 해당하는 합주곡을 추출하여 사용자 환경에 맞춰 동기화하여 재가공하여 전송하는 AET(Analyzer/Extractor/Transmit) 모듈(200), 사용자 단말기 정보 및 그 단말기와 접속되어 있고 독자적인 IP 주소를 갖고 있는 재생 단말기에 대한 정보를 각 단말기의 IP 주소와 매칭시켜 저장하는 단말기 정보 DB(300), 사용자가 요청한 합주곡의 미디 파일 분석 결과를 저장하는 시맨틱(semantic) 테이블 DB(320), 상기 합주 연주와 관련된 각 악기의 MIDI 음원 파일을 저장하는 MIDI DB(340)를 포함한다.
본 발명의 합주 연주 서비스 제공 시스템은 통신망, 예컨대 인터넷망 등을 통해 사용자의 단말기(예컨대, 퍼스널 컴퓨터)(400)와 연결된다. 따라서, 사용자가 자신의 단말기를 통해, 본 발명의 합주 연주 서비스 제공 시스템이 구축되어 있는 웹 상의 홈페이지에 접속하게 되면, 합주 연주 서비스 제공 시스템의 합주곡 정보 입력 모듈(100)은 사용자가 합주곡 연주와 관련한 각종 정보를 입력할 수 있도록 해주는 사용자 인터페이스(도시 생략)를 제공한다.
먼저, 사용자는 상기 사용자 인터페이스를 통해, 예컨대 합주곡의 타이틀, 선택적으로 합주곡 중 재생되기를 원하는 악기에 대한 정보, 사용자의 상황 정보(예컨대, 경쾌함, 우울함 등과 같은 상황 정보) 등을 입력한다.
다음에, 사용자는 경우에 따라서는, 상기 인터페이스를 통해 사용자 환경 정보를 입력할 수도 있다. 예컨대, 특정 공간(예컨대, 대학교 연구실)에는 1대의 단말기가 아니라, 복수의 단말기(500)가 랜 등에 의해 서로 연결되어 있을 수 있다. 각각의 단말기가 모두 켜져 있을 때에는, 사용자는 자신의 단말기(400)를 통해 그 단말기와 연결된 다른 단말기(500)를 검색할 수 있다. 따라서, 사용자는 상기 인터페이스를 통해 자신의 단말기와 연결되어 미디 파일을 재생할 수 있는 다른 단말기를 검색함과 아울러, 어느 단말기에서 합주곡 중 어떤 악기의 음이 재생될 지를 지정할 수가 있다. 사용자가 이러한 단말기 지정을 하면, 후술하는 분석 유닛(201)이 상기 지정된 단말기들의 IP 주소를 검색하고, 그 IP 주소와 해당 단말기를 매칭시켜 단말기 정보 DB(300)에 저장하고, 사용자가 각 단말기에서 재생될 합주곡의 악기를 지정하면, 그 정보를 상기 DB에 매칭시켜 저장한다. 그러나, 사용자가 이러한 지정을 하지 않으면, 후술하는 바와 같이 분석 유닛(201)이 사용자 단말기(400)와 접속되어 있는 다른 재생 단말기(예컨대, 인터넷 주소를 갖고 있는 컴퓨터, IP TV 등)(500)를 검색하여 찾아내고, 동기화 유닛에 의해, 단말기마다 재생될 미디 파일이 랜덤하게 지정되어, 동기화된 각각의 미디 파일이 해당 단말기로 전송되어 각 단말기에서 재생된다. 이에 대해서는 이하에서 보다 구체적으로 설명한다.
상기 사용자가 입력한 정보는 AET 모듈(200)을 통해 분석되어, 원하는 미디 파일이 사용자에게 전송되어 실시간으로 재생된다.
구체적으로, 분석 유닛(201)은 먼저 사용자가 입력한 합주곡에 대한 정보를 수집한다. 즉 입력된 합주곡 정보(즉, 합주곡 타이틀)를 토대로, 분석 유닛(201)은 미디 DB(400)를 검색하여, 해당 합주곡을 구성하는 악기의 미디 음원 파일을 찾아낸다. 즉 합주곡 정보에 대응하는 합주곡 미디 파일이 아니라, 그 합주곡을 구성하는 각 악기의 연주 미디 파일을 찾아낸다. 한편, 본 발명은 일반 MP3 파일이 아닌 미디 파일을 이용하여 합주곡 서비스를 제공하는데, 이 미디 파일은 MP3 파일과 달리 음원 재생이 일시적으로 정지하는 "쉼표" 시그널을 갖고 있어, 그 음원을 분석할 수 있다. 즉 분석 유닛은 해당 합주곡을 구성하는 각 악기의 음원 미디 파일을 상기 미디 DB로부터 찾아낸다. 이어서, 분석 유닛(201)은 악기의 타입(instrumnet), 미디 파일의 총 재생 시간(full-time), 쉼표의 갯수(num of rest pint), 쉼표가 나타나는 시간(rest point-time), 쉼표의 지속 시간(rest during-time)에 대한 정보를 각 음원 미디 파일을 분석하여 찾아낸 후, 그 정보를 도 3에 도시한 것과 같은 형태의 시맨틱 테이블(semantic table)을 생성하여, 시맨틱 테이블 DB(320)에 저장한다.
본 발명의 시맨틱 테이블에서 rest point-time은 음원이 잠시 멈추는 정확한 시간으로, 그리고 rest during-time은 그 멈추는 시간의 지속시간으로 정의되는데, 이를 통해 동기화/전송 유닛(203)이 추후 단말기에서 실제로 재생되는 음원이 멈춘 시간과 상기 rest point-time을 비교하여, 두 시간에 차이가 없다면 지연이 발생되지 않은 것으로 판단하고 그대로 계속 음원 재생을 수행하지만, 두 시간에 차이가 있다면, 후술하는 바와 같은 알고리즘을 이용하여 쉼표의 rest during-time을 조정하여, 즉 쉼표의 지속시간을 늘이거나 줄여, 다음에 나타날 음표의 시간을 조정함으로써, 동기화를 수행하게 된다. 즉 본 발명은 미디 파일이 갖고 있는 속성을 이용하여, 각 음원 미디 파일이 고유로 갖고 있는 정보를 분석하여 시맨틱 테이블을 생성함으로써, 재생 중에 발생할 수 있는 지연을 처리하여, 각 단말기에서 단말기의 재생 능력에 상관 없이 합주곡의 각 악기가 조화를 이루면서 재생될 수 있도록 해준다. 이는 본 발명의 중요한 특징적 구성으로서, 이하에서 보다 상세히 설명한다.
상기와 같은 합주곡 정보 분석과 더불어, 분석 유닛(201)은 본 발명의 시스템에 접속한 사용자의 단말기, 즉 IP 기반 출력 장치(재생 단말기)에 대한 정보를 분석한다. 즉 본 발명에 따르면, 사용자가 선택한 합주곡이 하나의 사용자 단말기가 아니라, 그 단말기와 연결된 복수의 TP 기반 출력 장치를 통해서 합주곡을 구성하는 각 악기의 연주가 출력되도록 한다.
즉 본 발명의 시스템에 접속한 사용자 단말기는 기본적으로 내장 혹은 외장 스피커를 구비하고 있어서, 본 발명의 시스템을 통해 전송되는 MIDI 파일은 기본적으로 상기 스피커를 통해서 재생된다. 한편, 최근에 IP TV와 같이 IP 주소를 갖는 장치가 한 대 이상 한 가정에 보급되는 경향이 많아지고 있으며, 복수 대의 컴퓨터를 갖고 있는 경우도 증가하고 있으며, 이들은 인터넷 망 등과 같은 통신망에 의해 서로 연결되어 있을 수 있다. 또한, 대학 연구실과 같은 장소에서는 1인당 한 대의 컴퓨터 단말기가 제공되어 있고, 이들은 랜과 같은 통신망에 의해 서로 연결되어 있어, 미디어를 공유할 수가 있다. 본 발명은 이러한 상황을 고려하여, 별도의 출력 장치를 제공하는 것이 아니라, 각각 IP 주소를 갖고 있는 재생 장치를 통해 합주 연구곡을 구성하는 각각의 악기의 미디 파일을 출력하는 것을 한 가지 목적으로 한다.
상기 목적을 달성하기 위해, 본 발명의 분석 유닛(201)은 일단 상기한 바와 같이, 사용자가 입력한 합주곡 정보를 분석함과 아울러, 사용자의 환경 정보를 분석한다. 즉 본 발명의 시스템에 접속한 사용자 단말기와 연결되어 있는 재생 장치를 IP 주소를 기반으로 검색한다. 예컨대, 사용자 단말기(400)와 연결되어 있고 독자적인 IP 주소를 갖고 있는 IP TV(500), 사용자 단말기(400)와 연결되어 있는 또 다른 사용자 단말기(500)를 IP 주소를 통해 찾아내고, IP 주소와 해당 단말기를 매칭시켜 단말기 정보 DB(300)에 저장한다. 사용자가 자신의 단말기(400)와 연결된 다른 재생 단말기를 상기와 같은 방식으로 입력한 경우에는 그 정보에 기초하여, 해당 재생 단말기의 IP 주소를 검색하여, IP 주소와 해당 재생 단말기를 매칭시켜 단말기 정보 DB(300)에 저장한다. 아울러, 사용자가 각 재생 단말기를 통해 재생될 합주곡의 악기를 지정한 경우에는, 분석 유닛(201)은 그 정보를 해당 단말기에 매칭시켜 단말기 정보 DB(300)에 저장한다.
분석 유닛(201)은 상기와 같은 사용자 환경 정보를 검색함과 아울러, 사용자에게 한 차원 높은 실감 효과를 제공하기 위해 온톨로지(Ontology) 개념을 반영하여 사용자의 상황에 적합한 음원이 출력되도록 분석을 수행한다. 구체적으로, 동일한 연주곡일지라고, 장조와 단조의 차이로 인해 분위기가 확연히 달라지는 곡도 있으며, 연주 속도의 차이로 인해 경쾌한 분위기와 느슨한 분위기로 연주 곡의 차이가 나타나기도 한다. 이러한 점을 고려하여, 분석 유닛(201)은 사용자가 입력한 상황 정보, 혹은 그러한 정보를 입력하지 않았다면 사용자의 상황, 예컨대 오전인지 혹은 오후인지를 구분하여, 동일한 곡이라도 오전에는 경쾌한 분위기에 해당하는 음원이 출력되도록 하고 저녁에는 조용한 분위기에 적합한 음원이 출력되도록 사용자가 선택한 곡을 사용자의 상황에 맞게 분석하고 그 분석한 정보를 추출 유닛(202)으로 전달한다.
추출 유닛(202)은 상기 분석 유닛에서 분석하여 제공한 정보를 토대로 미디 파일이 저장된 미디 데이터베이스(340)를 검색하여, 실제로 제공될 미디 파일을 추출한다. 미디 데이터베이스(340)에는 합주곡 전체가 하나의 미디 파일로 저장되어 있을 뿐만 아니라, 합주곡을 구성하는 각 악기의 미디 파일이 서로 연관되어 저장 되어 있다. 따라서, 추출 유닛(202)은 사용자가 하나의 단말기만을 이용하여 합주곡을 재생하고자 하는 경우에는 합주곡 전체에 대한 하나의 미디 파일만을 추출하지만, 이는 본 발명이 지향하고자 하는 파일 추출이 아니다. 즉 본 발명은 본 발명의 시스템에 접속한 사용자 단말기(400)에 또 다른 하나 이상의 단말기(컴퓨터 단말기, IP TV 등)(500)가 접속되어 있는 것을 전제로 하며, 이들 각각의 단말기를 통해 각각의 미디 파일을 재생하여, 마치 오케스트라 홀에서 합주곡을 듣는 것과 같은 서비스를 제공하는 것을 목적으로 하는 것이다.
추출 유닛(202)에 의해 추출된 각각의 미디 파일은 동기화/전송 유닛(203)으로 전달된다. 동기화/전송 유닛(203)은 합주곡을 구성하는 각 악기의 미디 파일 사이의 동기화를 제어하는 부분이다. 즉 본 발명에 따르면, 한 가지의 미디 파일만을 추출하여 사용자에게 제공하는 것이 아니라, 합주곡을 구성하는 각 악기, 즉 복수의 미디 파일이 추출되고, 이를 다수의 재생 단말기를 통해 재생한다. 이때, 사용자가 어느 단말기에서 어느 악기가 재생될지를 지정하지 않았다면, 동기화/재생 유닛(203)은 단말기 정보 DB(300)을 참조하여, 추출된 복수의 미디 음원 파일 각각을 복수의 단말기 각각에 전송하여 재생하고, 사용자가 그러한 정보를 지정하였다면, 사용자가 지정한 악기의 미디 음원 파일을 해당 단말기로 전송하여 재생한다.
한편, 다수의 악기로 이루어진 미디 파일을 다수의 재생 단말기를 통해 현실 감 있게 서비스하기 위해서는 각 악기별로 연주의 지연이 발생하지 않도록 혹은 그러한 지연이 발생하였을 때 지연을 해소하기 위한 조치가 필요하다.
도 4는 미디 파일 간의 지연을 처리하기 위한 블록도이다. 즉 하나의 재생 단말기가 아니라, 복수의 재생 단말기를 통해 합주 서비스가 제공되므로, 단말기가 갖고 있는 능력에 따라, 재생 속도 등의 차이가 발생할 수 있고, 이로 인해 악기별로 지연이 발생하여 실감 있는 합주 서비스가 제공되지 않을 수가 있다. 본 발명은 이를 처리하기 위해 다음과 같은 알고리즘을 채택한다.
본 발명에 따라 합주 연주 서비스를 제공하기 위해 가장 핵심적으로 처리해야 할 부분은 미디 파일 간의 동기화를 제어하는 부분이다. 즉, 하나의 미디 파일만을 이용하는 것이 아니라 다수의 미디 파일을 다수의 재생 장치를 통해 동시에 실행하기 때문에, 각 미디 파일 간의 시간 동기화가 이루어져야 하며, 이러한 미디 파일간의 시간 동기화, 즉 조화는 합주 연주 서비스의 필수 조건이다.
만약 합주를 하기 위한 음원이 악기 별로 모두 동시에 시작하고 종료 시간 또한 동일하다면 음원 간의 동기화를 맞춰주는 별도의 처리 과정이 없더라도 사용자에게 조화로운 합주 서비스를 제공할 수 있을 것이다. 그러나, 대부분의 합주를 위한 연주곡들은 다양한 악기별로 다양한 시작 및 종료 시간을 갖고 있고, 악기마다의 음원의 특징을 가지고 있으며, 더욱이 각 재생 단말기의 재생 능력에 따라 미 디 음원 파일의 재생 속도에 차이가 발생할 수 있으므로, 동기화/전송 유닛(203)은 합주곡의 재생시 악기별로 동기화를 맞춰 재생시킨다. 또한, 본 발명에서는 동기화/전송 유닛(203)은 미디 파일 내에 있는 "쉼표(빈 공간)"를 이용하여 음원이 잠시 멈춰 있는 동안 지연 처리 제거 프로세스를 수행한다. 즉 동기화/전송 유닛(203)은 재생 중에 있는 미디 파일 내의 쉼표의 위치를 파악하여, 그 순간의 타임을 기존에 재생되도록 설정된 타임과 비교를 한다. 이를 통해 느리거나 빠른 정보를 파악하여, 쉼표인 빈 공간을 줄이거나 늘이는 방법으로 유동적으로 미디 파일 간의 동기화를 맞추도록 한다.
보다 구체적으로, 도 4에 도시한 바와 같이, 동기화/전송 유닛(203)은 미디 음원 파일이 종료되는 시점까지 쉼표 시그널이 발생하면, 해당 음원이 정상적으로 재생되고 있는지 여부를 시맨틱 테이블 DB(320)를 참조하여 판단한다. 지연이 없다고 판단되면, 정상적으로 연주를 진행하지만, 지연이 있다고 판단되면 그러한 지연 요소를 해결한다. 이와 같이 지연의 유무를 판단하기 위하여 동기화/전송 유닛(203)은 시매틱 테이블 DB(320)를 참조하여, 현재의 음원 재생 시간과 기존의 재생 시간을 비교하고, 이를 이용하여 지연을 판단하고 지연이 발생하면 그러한 지연을 제거함으로써, 조화로운 합주 연주가 각 단말기를 통해 재생되도록 한다.
도 5는 동기화/전송 유닛(203)이 지연을 처리하는 알고리즘을 나타낸다. 도 5에서, Acrp는 실제 연주의 쉼표 구간 시작 시간(current rest point-time)을 나타 내고, Asrp는 시맨틱 테이블 DB(320)에 저장되어 있는 해당 악기의 미리 정해진 쉼표 구간 시작 시간(rest point-time)을 나타낸다. 동기화/전송 유닛(203)은 Acrp와 Asrp를 비교하여, 미디 음원 파일간의 동기화를 제어한다.
먼저, 동기화/분석 유닛(203)은 실제 연주되는 어떤 악기의 Acrp와 시맨틱 테이블 DB(320)의 Asrp를 비교하고, 그 비교 결과 두 시간이 일치한다면, 동기화/분석 유닛(203)은 지연이 없다고 판단하고, 그대로 연주를 진행한다(첫 번째 if문). 그러나, Acrp가 Asrp보다 큰 경우, 동기화/분석 유닛(203)은 지연이 발생하였다고 판단하고, 이러한 지연을 제거한다. 예컨대, 동기화/분석 유닛(203)은 시맨틱 테이블 DB(320)를 참조하여, 실제 쉼표 시작 시간(Asrp)은 6초 시점에서 시작되어야 하는데, 실제 재생되는 악기의 미디 음원 파일은 7초 시점에서 쉼표가 나온 경우, 1초의 지연이 발생하였다고 판단한다. 다음에, 동기화/분석 유닛(203)은 7초에서 6초를 뺀 1초라는 지연 시간을 gap에 저장하고, 쉼표 기간이 끝난 후 다시 재생되는 시간을 조정한다. 즉 1초라는 지연이 발생하였는데, 만약 쉼표 후의 연주가 10초에 시작되는 것이라면, 그러한 지연을 유지할 경우 11초에서 연주가 다시 시작되므로, 1초라는 gap의 쉼표 지연 시간을 쉼표의 지속 시간, 즉 rest during-time에서 빼 연주가 11초가 아닌 10초에 시작되도록 조정한다(두 번째 if문). 즉 실제 쉼표 시작 시간이 미리 지정된 쉼표 시작 시간보다 늦은 경우, 쉼표 지속 시간을 줄여, 즉 단축하여 악기가 해당 지연 시간만큼 빨리 다시 재생되도록 하여, 악기의 지연 시간을 제거하는 것이다. 이와 달리, 실제 쉼표 시작 시간이 미리 지 정된 쉼표 시작 시간보다 일찍 나온 경우에는 상기 방식과 유사하지만, 지연 시간을 더해, 쉼표 지속 시간을 해당 지연 시간만큼 늘려, 악기가 해당 지연 시간만큼 늦게 다시 재생되도록 한다(세 번째 if문). 한편, 도 5의 알고리즘에서 δ는 재생 단말기의 성능에 의해 나타나는 지연을 의미하는 것으로, 해당 재생 단말기의 성능에 따라 정확한 값을 표현하기 위해 삽입된 것이다. 즉 시스템에서 단말기로 소정의 서비스를 실시간으로 전송하게 되면, 중간에 시간 차이로 인한 오류가 발생한다. 예컨대, 본 발명에 따라 합주 연주곡 전송시, 음이 다른 음보다 조금 늦게 처리되어 전송되면 음악의 흐름이 제대로 이루어지지 않을 수 있으므로, 시간 관련 오류(jitter)를 보정하기 위해 δ를 삽입한다. 이러한 시간 관련 오류 보정 기술 자체는 동기화 처리시 이미 널리 알려진 것이므로, 그 상세한 설명은 생략한다.
실시예 1
도 6에는 본 발명의 한 가지 실시예에 따라 합주 연주 서비스를 제공하는 흐름도가 도시되어 있다.
먼저, 본 발명에 따라 합주 연주속 서비스를 제공하는 시스템이 구축되어 있는 웹 상의 홈페이지에 사용자가 단말기를 이용하여 접속하면, 각종 정보를 입력할 수 있는 사용자 인터페이스가 제공된다.
상기 인터페이스를 이용하여, 사용자는 듣고자 하는 합주곡의 타이틀 정보, 자신의 개인적 상태(즐거움, 우울함 등)에 대한 정보를 입력한다. 한편, 사용자는 합주곡을 구성하는 악기 중 특정 악기에 대한 재생을 원하지 않는 경우, 그에 대한 정보도 함께 입력할 수 있다(S610).
이어서, 분석 유닛(201)은 본 발명의 시스템에 접속한 사용자 단말기(400) 및 그 단말기와 접속된 다른 재생 단말기(500)를 IP 주소를 기반으로 하여 검색하고, 찾아낸 IP 주소와 해당 단말기를 매칭시켜 단말기 정보 DB(300)에 저장한다(S620). 또한, 분석 유닛(201)은 사용자가 입력한 합주곡 타이틀 정보에 기반하여, 사용자의 기분에 상응하는 곡조의 합주곡을 구성하는 악기의 미디 음원 파일을 미디 DB(340)을 통해 검색하여, 그 파일을 분석하는 작업을 수행한다. 즉 각 악기의 미디 음원 파일을 분석하여, 전체 재생 시간을 분석하고, 미디 파일 중의 "쉼표" 시그널을 분석하여, 쉼표의 갯수, 쉼표가 나타나는 시간 및 그 쉼표의 지식 시간에 대한 정보를 분석한 후, 시맨틱 테이블을 작성하여 시맨틱 테이블 DB(320)에 저장한다(S630). 한편, 사용자가 합주곡 중 특정 악기의 재생을 배제하는 정보를 입력한 경우, 분석 유닛(201)은 사용자가 입력한 합주곡을 구성하는 모든 악기의 미디 파일을 검색하는 것이 아니락, 사용자가 제외한 악기의 미디 파일을 제외한 나머지 악기의 미디 파일만을 분석한다.
상기 분석 유닛(201)에 의해 분석된 정보에 기반하여, 추출 유닛(202)은 미디 DB(340)로부터 실제로 제공될 각 악기의 미디 음원 파일을 추출하여 동기화/전송 유닛(203)으로 전달한다(S640).
동기화/전송 유닛(203)은 추출된 복수의 미디 음원 파일 각각에 대해 동기화 작업을 수행한 후, 단말기 정보 DB(300)를 참조하여, 사용자 단말기 및 재생 단말기로 전송하여 재생한다(S650). 또한, 동기화/전송 유닛(203)은 미디 파일의 재생 중 미디 파일 중에 포함된 "쉼표" 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 악기의 실제 재생 시간과 시맨틱 테이블 DB(320)에 저장된 악기의 재생 시간이 일치하는지를 판단한다. 두 재생 시간이 일치하면 재생 시간의 조정 없이 계속 연주가 재생되도록 하지만, 두 시간에 차이가 발생하는 경우, 도 5에 도시한 알고리즘을 이용하여, 쉼표의 지속 시간을 늘이거나 줄임으로써, 각 단말기에서 재생되는 미디 음원 파일 간의 동기화를 도모하여, 조화를 이룬 합주 연주가 각 단말기를 통해 재생되도록 제어한다.
실시예 2
상기 실시예 1은 사용자가 자신의 단말기와 접속된 다른 재생 단말기를 통해 재생되는 합주곡의 각 악기를 지정하지 않은 예이다. 이하에서는, 사용자가 각 단말기를 지정하고, 지정된 단말기를 통해 특정 악기의 미디 파일이 재생되도록 하는 실시예에 대해 설명한다. 한편, 실시예 1과 중복되는 부분에 대한 설명은 생략한다.
먼저, 본 발명의 시스템에 접속한 사용자는 상기 인터페이스를 통해 각종 정 보를 입력함과 아울러, 자신의 단말기와 접속되어 있고 또 독자적인 IP 주소를 갖고 있는 재생 단말기(IP TV, 개인용 컴퓨터 등)를 검색하고, 자신의 단말기 및 각 재생 단말기를 통해 합주곡의 어떤 악기가 연주되어야 하는지를 지정한다(S710). 또한, 사용자는 합주곡 중 특정 악기의 재생을 배제하는 정보를 입력할 수도 있다.
이어서, 분석 유닛(201)은 본 발명의 시스템에 접속한 사용자 단말기(400) 및 그 단말기와 접속된 다른 재생 단말기(500)의 IP 주소를 검색하고, 검색된 IP 주소와 해당 단말기를 매칭시켜 단말기 정보 DB(300)에 저장함과 아울러, 사용자가 지정한 특정 단말기에서의 특정 악기의 재생 정보도 해당 단말기에 매칭시켜 상기 DB에 저장한다(S720). 또한, 분석 유닛(201)은 사용자가 입력한 합주곡 타이틀 정보에 기반하여, 사용자의 기분에 상응하는 곡조의 합주곡을 구성하는 악기의 미디 음원 파일을 미디 DB(340)을 통해 검색하여, 그 파일을 분석하여, 전체 재생 시간, 쉼표의 갯수, 쉼표가 나타나는 시간 및 그 쉼표의 지식 시간에 대한 정보를 포함하는 시맨틱 테이블을 작성하여 시맨틱 테이블 DB(320)에 저장한다(S730). 한편, 사용자가 합주곡 중 특정 악기의 재생을 배제하는 정보를 입력한 경우, 분석 유닛(201)은 사용자가 입력한 합주곡을 구성하는 모든 악기의 미디 파일을 검색하는 것이 아니라, 사용자가 제외한 악기의 미디 파일을 제외한 나머지 악기의 미디 파일만을 분석한다.
상기 분석 유닛(201)에 의해 분석된 정보에 기반하여, 추출 유닛(202)은 미 디 DB(340)로부터 실제로 제공될 각 악기의 미디 음원 파일을 추출하여 동기화/전송 유닛(203)으로 전달한다(S640).
동기화/전송 유닛(203)은 추출된 복수의 미디 음원 파일 각각에 대해 동기화 작업을 수행한 후, 단말기 정보 DB(300)를 참조하여, 사용자가 지정한 해당 단말기 및 재생 단말기로 해당 악기 미디 파일을 전송하여, 사용자의 의사에 따라 특정 단말기에서 특정 악기의 연주가 재생되도록 한다(S750). 또한, 동기화/전송 유닛(203)은 미디 파일의 재생 중 미디 파일 중에 포함된 "쉼표" 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 악기의 실제 재생 시간과 시맨틱 DB(320)에 저장된 악기의 재생 시간이 일치하는지를 판단하고, 판단 결과에 따라 지연 시간 제거 처리 작업을 수행한다.
이상 본 발명을 바람직한 실시예를 참조하여 설명하였지만, 본 발명이 상기 실시예에 제한되지 않는다는 것을 이해하여야 한다. 후술하는 특허청구범위 내에서 다양하게 상기 실시예를 변형/수정할 수 있으며, 이들은 모두 본 발명의 범위 내에 속하는 것이다. 따라서, 본 발명은 특허청구범위 및 그 균등물에 의해서만 제한된다.
도 1은 본 발명의 한 가지 실시예에 따른 합주 연주 서비스 제공 시스템의 전체적인 구성을 개략적으로 보여주는 도면이다.
도 2는 도 1에 도시한 시스템의 AET 모듈의 구성 및 그 동작을 보여주는 도면이다.
도 3은 본 발명의 한 가지 실시예에 따라 생성되는 시맨틱 테이블의 구성을 보여주는 도면이다.
도 4는 동기화/전송 유닛에서 지연 처리를 수행하는 과정을 보여주는 흐름도이다.
도 5는 동기화/전송 유닛에서 지연 처리를 수행하는 알고리즘의 한 가지 양태를 보여주는 도면이다.
도 6은 본 발명의 한 가지 실시예에 따라 합주 연주 서비스를 제공하는 과정을 보여주는 흐름도이다.
도 7은 본 발명의 다른 실시예에 따라 합주 연주 서비스를 제공하는 과정을 보여주는 흐름도이다.

Claims (22)

  1. 사용자 단말기와 통신망을 통해 연결되고, 사용자가 요청한 합주곡을 구성하는 각 악기의 연주 음악 파일을 동기화 및 재가공하여, 상기 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기로 전송하여, 상기 사용자 단말기 및 재생 단말기 각각을 통해 각 악기의 연주 음악을 실시간으로 재생하는 합주곡 연주 서비스 제공 시스템으로서,
    상기 시스템에 접속한 사용자가 자신의 단말기를 통해 원하는 합주곡 연주와관련한 정보를 입력할 수 있도록 해주는 사용자 인터페이스를 제공하도록 구성된 합주곡 정보 입력 모듈과;
    상기 사용자 단말기 및 재생 단말기의 IP 주소를 분석하고, 상기 합주곡 정보 입력 모듈을 통해 제공되는 합주곡 정보를 기초로 미디 데이터베이스를 검색하여, 상기 합주곡을 구성하는 악기의 미디 음원 파일을 찾아내어, 각 파일에 포함된 쉼표 시그널을 이용하여 각 음원을 분석하며, 상기 분석한 합주곡을 구성하는 각 악기의 미디 음원 파일을 추출하여 사용자 환경에 맞춰 동기화하여 전송 및 재생하고, 상기 미디 음원 파일의 재생 중에 지연이 발생하는 경우 그 지연을 제거하는 처리를 수행하도록 구성된 AET 모듈과;
    상기 AET 모듈에 의해 분석된 상기 사용자 단말기 및 재생 단말기의 IP 주소를 서로 매칭시켜 저장하는 단말기 정보 DB와;
    상기 AET 모듈에 의해 분석된 합주곡을 구성하는 각 악기의 미디 음원 파일 에 대한 정보를 저장하는 시맨틱 테이블 DB와;
    상기 합주곡을 구성하는 각 악기의 미디 음원 파일을 저장하는 미디 DB와;
    을 포함하는 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  2. 청구항 1에 있어서, 상기 AET 모듈은
    상기 시스템에 접속한 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기를 검색하여, 해당 IP 주소와 상기 사용자 단말기 및 재생 단말기 각각을 서로 매칭시켜, 상기 단말기 정보 DB에 저장하고, 상기 사용자가 입력한 합주곡 정보에 기초하여, 그 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 DB로부터 찾아내어, 각 음원 파일을 분석하여, 각 악기의 총 재생 시간을 추출하고, 각 음원 파일이 갖고 있는 쉼표 시그널을 분석하여, 쉼표의 갯수, 쉼표가 나타나는 시간(Asrp), 쉼표의 지속 시간에 대한 정보를 추출하여, 상기 추출된 정보를 포함하는 시맨틱 테이블을 작성하여, 상기 시맨틱 테이블 DB에 저장하도록 구성된 분석 유닛과;
    상기 분석 유닛에 의해 분석된 정보에 기반하여, 상기 미디 DB로부터 실제로 제공될 상기 합주곡의 각 악기의 미디 음원 파일을 추출하도록 구성된 추출 유닛과;
    상기 추출 유닛에 의해 추출된 복수의 미디 음원 파일에 대해 동기화 작업을 수행한 후, 상기 단말기 정보 DB를 참조하여, 상기 사용자 단말기 및 재생 단말기 각각으로 상기 각 미디 음원 파일을 전송하여 재생하며, 각 미디 음원 파일의 재생 중 그 파일에 포함된 쉼표 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 각 파일의 실제 재생 시간과 상기 시맨틱 테이블 DB에 저장된 각 음원 파일의 재생 시간의 일치 여부를 판단하여, 두 재생 시간이 일치하지 않아 지연이 발생하면, 그 지연을 제거하는 프로세스를 수행하도록 구성된 동기화/전송 유닛
    을 포함하는 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  3. 청구항 2에 있어서, 상기 동기화/전송 유닛은 상기 두 재생 시간이 일치하면 재생을 그대로 계속하고, 상기 두 재생 시간이 일치하지 않는다고 판단하면, 상기 시맨틱 테이블 DB에 저장된 시맨틱 테이블의 쉼표의 지속 시간을 늘이거나 줄여, 두 재생 시간의 불일치를 조정하도록 구성되는 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  4. 청구항 3에 있어서, 상기 동기화/전송 유닛은, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 늦은 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 단축하여, 그 미디 음원 파일이 단축 시간만큼 빨리 재생되도록 하고, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 이른 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 늘려, 그 미디 음원 파일이 단축 시간만큼 늦게 재생되도록 하여, 상기 두 재생 시간의 불일치를 조정하도록 구성되는 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  5. 청구항 2 내지 청구항 4 중 어느 한 항에 있어서, 상기 합주곡 정보 입력 모듈은 상기 사용자가 자신의 단말기와 연결되어 있는 상기 재생 단말기를 검색하여, 자신의 단말기 및 각 재생 단말기를 통해 상기 합주곡의 어떤 악기가 연주되어야 하는지를 지정할 수 있도록 해주는 옵션을 포함하는 사용자 인터페이스를 제공하도록 구성된 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  6. 청구항 5에 있어서, 상기 분석 유닛은 상기 사용자가 지정한 특정 단말기에서의 특정 악기의 재생 정보도 해당 단말기에 매칭시켜 상기 단말기 정보 DB에 저장하고, 상기 동기화/전송 유닛은 상기 단말기 정보 DB를 참조하여, 상기 사용자가 지정한 사용자 단말기 및 재생 단말기로 사용자가 지정한 악기의 미디 음원 파일을 전송하여 재생하도록 구성된 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  7. 청구항 6에 있어서, 상기 합주곡 정보 입력 모듈은 상기 사용자가 상기 합주곡 중 특정 악기의 재생을 배제하는 선택을 할 수 있도록 해주는 옵션을 포함하는 사용자 인터페이스를 제공하도록 구성된 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  8. 청구항 7에 있어서, 사용자가 특정 악기의 재생을 배제하는 정보를 입력하면, 상기 분석 유닛은 사용자가 제외한 악기의 미디 음원 파일을 제외한 나머지 악 기의 미디 음원 파일만을 분석하도록 구성된 것을 특징으로 하는 합주곡 연주 서비스 제공 시스템.
  9. 사용자가 요청한 합주곡을 구성하는 각 악기의 연주 음악 파일을 동기화 및 재가공하여, 통신망을 통해 연결되어 있는 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기로 전송하여, 상기 사용자 단말기 및 재생 단말기 각각을 통해 각 악기의 연주 음악을 실시간으로 재생하여 주는 합주곡 연주 서비스 제공 시스템을 이용한 합주곡 연주 서비스 제공 방법으로서,
    (A) 사용자가 자신의 단말기를 통해 원하는 합주곡 연주와 관련하여 입력한 정보를 상기 시스템의 합주곡 정보 입력 모듈에 의해 수신하는 단계와;
    (B) 상기 시스템의 분석 유닛이 상기 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기를 검색하여, 해당 IP 주소와 상기 사용자 단말기 및 재생 단말기 각각을 서로 매칭시켜, 단말기 정보 DB에 저장하는 단계와;
    (C) 상기 분석 유닛이 상기 수신된 합주곡 정보를 기초로 미디 데이터베이스를 검색하여, 상기 합주곡을 구성하는 악기의 미디 음원 파일을 찾아내어, 각 파일에 포함된 쉼표 시그널을 이용하여 각 음원을 분석하여 그 결과를 시맨틱 테이블 DB에 저장하는 단계와;
    (D) 상기 시스템의 추출 유닛이 상기 분석한 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 데이터베이스로부터 추출하는 단계와;
    (E) 상기 시스템의 동기화/전송 유닛이 상기 추출된 각 미디 음원 파일을 동기화하여 전송 및 재생함과 아울러, 상기 미디 음원 파일의 재생 중에 지연이 발생하는 경우 그 지연을 제거하는 처리를 수행하는 단계
    를 포함하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  10. 청구항 9에 있어서, 상기 (C) 단계는, 상기 분석 유닛이 상기 수신된 합주곡 정보에 기초하여, 그 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 DB로부터 찾아내어, 각 음원 파일을 분석하여, 각 악기의 총 재생 시간을 추출하고, 각 음원 파일이 갖고 있는 쉼표 시그널을 분석하여, 쉼표의 갯수, 쉼표가 나타나는 시간(Asrp), 쉼표의 지속 시간에 대한 정보를 추출하여, 상기 추출된 정보를 포함하는 시맨틱 테이블을 작성하여, 상기 시맨틱 테이블 DB에 저장하는 것을 포함하고,
    상기 (E) 단계는, 상기 동기화/전송 유닛이 상기 추출된 복수의 미디 음원 파일에 대해 동기화 작업을 수행한 후, 상기 단말기 정보 DB를 참조하여, 상기 사용자 단말기 및 재생 단말기 각각으로 상기 각 미디 음원 파일을 전송하여 재생하며, 각 미디 음원 파일의 재생 중 그 파일에 포함된 쉼표 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 각 파일의 실제 재생 시간과 상기 시맨틱 테이블 DB에 저장된 각 음원 파일의 재생 시간의 일치 여부를 판단하여, 두 재생 시간이 일치하지 않아 지연이 발생하면, 그 지연을 제거하는 프로세스를 수행하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  11. 청구항 10에 있어서, 상기 (E) 단계는, 상기 동기화/전송 유닛이 상기 두 재생 시간이 일치하면 그대로 재생을 계속하고, 상기 두 재생 시간이 일치하지 않는다고 판단하면, 상기 시맨틱 테이블 DB에 저장된 시맨틱 테이블의 쉼표의 지속 시간을 늘이거나 줄여, 두 재생 시간의 불일치를 조정하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  12. 청구항 11에 있어서, 상기 (E) 단계는, 상기 동기화/전송 유닛이 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 늦은 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 단축하여, 그 미디 음원 파일이 단축 시간만큼 빨리 재생되도록 하고, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 이른 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 늘려, 그 미디 음원 파일이 단축 시간만큼 늦게 재생되도록 하여, 상기 두 재생 시간의 불일치를 조정하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  13. 청구항 9 내지 청구항 12 중 어느 한 항에 있어서, 상기 (A) 단계에 있어서, 상기 합주곡 정보 입력 모듈이 상기 사용자의 단말기 및 각 재생 단말기를 통해 상기 합주곡의 어떤 악기가 연주되어야 하는지를 지정한 정보를 수신하는 것을 더 포함하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  14. 청구항 13에 있어서, 상기 (B) 단계에 있어서, 상기 분석 유닛이 상기 사용자가 지정한 특정 단말기에서의 특정 악기의 재생 정보도 해당 단말기에 매칭시켜 상기 단말기 정보 DB에 저장하고, 상기 (E) 단계에 있어서, 상기 동기화/전송 유닛이 상기 단말기 정보 DB를 참조하여, 상기 사용자가 지정한 사용자 단말기 및 재생 단말기로 사용자가 지정한 악기의 미디 음원 파일을 전송하여 재생하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  15. 청구항 14에 있어서, 상기 (A) 단계에 있어서, 상기 합주곡 정보 입력 모듈이 상기 합주곡 중 특정 악기의 재생을 배제하는 정보를 수신하는 것을 더 포함하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  16. 청구항 15에 있어서, 특정 악기의 재생을 배제하는 정보가 수신되는 경우, 상기 (C) 단계에서 상기 분석 유닛이 사용자가 제외한 악기의 미디 음원 파일을 제외한 나머지 악기의 미디 음원 파일만을 분석하는 것을 특징으로 하는 합주곡 연주 서비스 제공 방법.
  17. 사용자가 요청한 합주곡을 구성하는 각 악기의 연주 음악 파일을 동기화 및 재가공하여, 통신망을 통해 연결되어 있는 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기로 전송하여, 상기 사용자 단말기 및 재생 단말기 각각을 통해 각 악기의 연주 음악을 실시간으로 재생하여 주는 합주곡 연주 서비스 제공 시스템에 사용하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체로서, 상기 프로그램은,
    (a) 상기 시스템의 합주곡 정보 입력 모듈이 사용자가 자신의 단말기를 통해 원하는 합주곡 연주와 관련하여 입력한 정보를 수신하도록 프로그램된 명령어와;
    (b) 상기 시스템의 분석 유닛이 상기 사용자 단말기 및 그 단말기와 통신망을 통해 연결되어 있고 독자적인 IP 주소를 갖고 있는 하나 이상의 재생 단말기를 검색하여, 해당 IP 주소와 상기 사용자 단말기 및 재생 단말기 각각을 서로 매칭시켜, 단말기 정보 DB에 저장하도록 프로그램된 명령어와;
    (c) 상기 분석 유닛이 상기 수신된 합주곡 정보에 기초하여, 그 합주곡을 구성하는 각 악기의 미디 음원 파일을 미디 DB로부터 찾아내어, 각 음원 파일을 분석하여, 각 악기의 총 재생 시간을 추출하고, 각 음원 파일이 갖고 있는 쉼표 시그널을 분석하여, 쉼표의 갯수, 쉼표가 나타나는 시간(Asrp), 쉼표의 지속 시간에 대한 정보를 추출하여, 상기 추출된 정보를 포함하는 시맨틱 테이블을 작성하여, 시맨틱 테이블 DB에 저장하도록 프로그램된 명령어와;
    (d) 상기 시스템의 추출 유닛이 상기 분석한 합주곡을 구성하는 각 악기의 미디 음원 파일을 상기 미디 데이터베이스로부터 추출하도록 프로그램된 명령어와;
    (e) 상기 시스템의 동기화/전송 유닛이 상기 추출된 복수의 미디 음원 파일에 대해 동기화 작업을 수행한 후, 상기 단말기 정보 DB를 참조하여, 상기 사용자 단말기 및 재생 단말기 각각으로 상기 각 미디 음원 파일을 전송하여 재생하며, 각 미디 음원 파일의 재생 중 그 파일에 포함된 쉼표 시그널을 이용하여, 재생 시간을 지속적으로 모니터링하여, 각 파일의 실제 재생 시간과 상기 시맨틱 테이블 DB에 저장된 각 음원 파일의 재생 시간의 일치 여부를 판단하여, 두 재생 시간이 일치하지 않아 지연이 발생하면, 그 지연을 제거하는 프로세스를 수행하도록 프로그램된 명령어
    를 포함하는 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
  18. 청구항 17에 있어서, 상기 (e)의 명령어는 상기 동기화/전송 유닛이 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 늦은 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 단축하여, 그 미디 음원 파일이 단축 시간만큼 빨리 재생되도록 하고, 상기 각 악기의 미디 음원 파일의 재생 중에 실제 쉼표 시작 시간이 상기 시맨틱 테이블 DB에 저장된 쉼표 시작 시간보다 이른 경우에는 쉼표 지속 시간을 해당 지연 시간만큼 늘려, 그 미디 음원 파일이 단축 시간만큼 늦게 재생되도록 하여, 상기 두 재생 시간의 불일치를 조정하도록 프로그램된 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
  19. 청구항 17 또는 청구항 18에 있어서, 상기 (a)의 명령어는 또한 상기 합주곡 정보 입력 모듈이 상기 사용자의 단말기 및 각 재생 단말기를 통해 상기 합주곡의 어떤 악기가 연주되어야 하는지를 지정한 정보를 수신하도록 프로그램된 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
  20. 청구항 19에 있어서, 상기 (b)의 명령어는 상기 분석 유닛이 상기 사용자가 지정한 특정 단말기에서의 특정 악기의 재생 정보도 해당 단말기에 매칭시켜 상기 단말기 정보 DB에 저장하도록 프로그램되어 있고, 상기 (e)의 명령어는 상기 동기화/전송 유닛이 상기 단말기 정보 DB를 참조하여, 상기 사용자가 지정한 사용자 단말기 및 재생 단말기로 사용자가 지정한 악기의 미디 음원 파일을 전송하여 재생하도록 프로그램된 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
  21. 청구항 20에 있어서, 상기 (a)의 명령어는 또한 상기 합주곡 정보 입력 모듈이 상기 합주곡 중 특정 악기의 재생을 배제하는 정보를 수신하도록 프로그램된 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
  22. 청구항 21에 있어서, 특정 악기의 재생을 배제하는 정보가 수신되는 경우, 상기 (c)의 명령어는 상기 분석 유닛이 사용자가 제외한 악기의 미디 음원 파일을 제외한 나머지 악기의 미디 음원 파일만을 분석하도록 프로그램된 것을 특징으로 하는 컴퓨터 판독 가능한 기록 매체.
KR1020090130521A 2009-12-24 2009-12-24 합주 연주 서비스 제공 방법 및 시스템 KR101133906B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090130521A KR101133906B1 (ko) 2009-12-24 2009-12-24 합주 연주 서비스 제공 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090130521A KR101133906B1 (ko) 2009-12-24 2009-12-24 합주 연주 서비스 제공 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20110073782A KR20110073782A (ko) 2011-06-30
KR101133906B1 true KR101133906B1 (ko) 2012-04-12

Family

ID=44404254

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090130521A KR101133906B1 (ko) 2009-12-24 2009-12-24 합주 연주 서비스 제공 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101133906B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101365592B1 (ko) * 2013-03-26 2014-02-21 (주)테일러테크놀로지 Mgi음악 파일 생성 시스템 및 방법
KR101495879B1 (ko) * 2013-12-27 2015-02-25 광운대학교 산학협력단 입체 음향 실시간 생성 장치 및 이를 구비하는 입체 음향 실시간 재생 시스템
KR102524871B1 (ko) * 2020-06-25 2023-04-26 최인욱 휴대 단말기를 이용한 실시간 미디 기반 음악 방송의 서비스 방법 및 미디 기반의 음악 방송을 실시간 전송하는 휴대 단말기
KR102149440B1 (ko) * 2020-07-28 2020-08-31 (주)뮤직몹 데이터 그룹 재생 처리시스템
KR102488838B1 (ko) * 2022-03-11 2023-01-17 (주)더바통 악보 기반 다자간 사운드 동기화 시스템 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001356764A (ja) 2000-06-14 2001-12-26 Web Logic:Kk 音声情報配信方法及び携帯通信機器を使用した合奏方法
KR20070053505A (ko) * 2005-11-21 2007-05-25 삼성전자주식회사 다수의 단말기를 이용한 다채널 음향 출력방법 및 장치
KR20070082117A (ko) * 2006-02-15 2007-08-21 주식회사 케이티 온라인 음악 동기 재생 서비스 제공 시스템 및 방법
KR20070098804A (ko) * 2004-12-14 2007-10-05 소니 가부시끼 가이샤 악곡 데이터 재구성 장치, 악곡 데이터 재구성 방법, 음악콘텐츠 재생 장치 및 음악 콘텐츠 재생 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001356764A (ja) 2000-06-14 2001-12-26 Web Logic:Kk 音声情報配信方法及び携帯通信機器を使用した合奏方法
KR20070098804A (ko) * 2004-12-14 2007-10-05 소니 가부시끼 가이샤 악곡 데이터 재구성 장치, 악곡 데이터 재구성 방법, 음악콘텐츠 재생 장치 및 음악 콘텐츠 재생 방법
KR20070053505A (ko) * 2005-11-21 2007-05-25 삼성전자주식회사 다수의 단말기를 이용한 다채널 음향 출력방법 및 장치
KR20070082117A (ko) * 2006-02-15 2007-08-21 주식회사 케이티 온라인 음악 동기 재생 서비스 제공 시스템 및 방법

Also Published As

Publication number Publication date
KR20110073782A (ko) 2011-06-30

Similar Documents

Publication Publication Date Title
Rottondi et al. An overview on networked music performance technologies
US20200313782A1 (en) Personalized real-time audio generation based on user physiological response
US11829680B2 (en) System for managing transitions between media content items
KR101133906B1 (ko) 합주 연주 서비스 제공 방법 및 시스템
JP2020522083A (ja) 強化型コンテンツ追跡システム及び方法
US20140288686A1 (en) Methods, systems, devices and computer program products for managing playback of digital media content
US20060060065A1 (en) Information processing apparatus and method, recording medium, program, and information processing system
US11755280B2 (en) Media content system for enhancing rest
WO2016188211A1 (zh) 音频处理方法、装置及系统
GB2539875A (en) Music Context System, Audio Track Structure and method of Real-Time Synchronization of Musical Content
US11721312B2 (en) System, method, and non-transitory computer-readable storage medium for collaborating on a musical composition over a communication network
US20200162769A1 (en) Identifying media content for simultaneous playback
US20160196812A1 (en) Music information retrieval
US20090314154A1 (en) Game data generation based on user provided song
JP2001331176A (ja) 楽曲再生方法、マルチメディアデータ再生方法、サーバクライアントシステムおよびサーバ装置
US11574627B2 (en) Masking systems and methods
JP2004233698A (ja) 音楽支援装置、音楽支援サーバ、音楽支援方法およびプログラム
KR101547525B1 (ko) 사용자의 입력을 반영한 자동 음악 선곡 장치 및 방법
JP2010237553A (ja) カラオケネットワークシステム、視聴側カラオケ装置
JP2014153516A (ja) 判定装置
JP2014123085A (ja) カラオケにおいて歌唱に合わせて視聴者が行う身体動作等をより有効に演出し提供する装置、方法、およびプログラム
US20240135908A1 (en) System and method for enhanced audio data transmission and digital audio mashup automation
US20240233694A9 (en) System and method for enhanced audio data transmission and digital audio mashup automation
CN103594105A (zh) 一种使用cd光碟在自动演奏钢琴上进行演奏的方法
TW201415884A (zh) 人聲訊號與其文字說明資料的同步之系統及其方法

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
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: 20150224

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee