이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
이하의 설명에 있어서, 신호 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 신호 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다. 특히 신호 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호 또는 정보의 "수신"에 있어서도 동일하다. 또한 본 명세서에 있어서, 2 이상의 데이터 또는 정보가 "관련"된다는 것은 하나의 데이터(또는 정보)를 획득하면, 그에 기초하여 다른 데이터(또는 정보)의 적어도 일부를 획득할 수 있음을 의미한다.
또한, 제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.
도 1은 본 발명의 일 실시예에 따른 온라인 노래방 서비스 시스템을 나타낸 도면이다.
도 1을 참조하면, 온라인 노래방 서비스 시스템(100)은 관리 서버(102), 반주 재생 장치(104), 및 사용자 단말기(106)를 포함할 수 있다.
반주 재생 장치(104) 및 사용자 단말기(106)는 각각 통신 네트워크를 통해 관리 서버(102)와 통신 가능하게 연결된다. 몇몇 실시예들에서, 통신 네트워크는 인터넷, 하나 이상의 로컬 영역 네트워크(local area networks), 광역 네트워크(wire area networks), 셀룰러 네트워크, 모바일 네트워크, 그 밖에 다른 종류의 네트워크들, 또는 이러한 네트워크들의 조합을 포함할 수 있다.
관리 서버(102)는 온라인 노래방 서비스를 관리하기 위한 서버 컴퓨팅 장치일 수 있다. 관리 서버(102)는 사용자 단말기(106)로부터 수신되는 가상 노래방 개설 요청에 따라 복수의 사용자들을 위한 가상 노래방을 개설할 수 있다. 관리 서버(102)는 사용자 단말기(106)로부터 노래 선곡을 수신할 수 있다. 관리 서버(102)는 선곡된 노래에 대한 반주를 반주 재생 장치(104)로 전송할 수 있다. 또한, 관리 서버(102)는 선곡된 노래에 대응하는 영상(예를 들어, 선곡된 노래의 뮤직 비디오 또는 배경 영상 등)을 반주 재생 장치(104)로 전송할 수 있다. 상기 영상에는 선곡된 노래에 대한 가사 정보가 포함될 수 있다.
반주 재생 장치(104)는 관리 서버(102)로부터 수신한 반주(즉, 선곡된 노래에 대한 반주)를 스피커로 출력할 수 있다. 반주 재생 장치(104)는 관리 서버(102)로부터 수신한 영상(즉, 선곡된 노래에 대응하는 영상)을 화면에 디스플레이 할 수 있다. 반주 재생 장치(104)는 반주가 플레이 됨에 따라 해당 노래의 가사를 화면에 표시할 수 있다. 이 경우, 반주 재생 장치(104)는 화면을 구비하는 컴퓨팅 장치(예를 들어, TV, 노트북, 모니터 등)가 사용될 수 있다.
반주 재생 장치(104)는 반주가 출력되는 경우 동기 신호를 함께 출력할 수 있다. 여기서, 동기 신호는 비가청 주파수 대역의 신호일 수 있다. 즉, 동기 신호는 사용자들의 귀에 들리지 않는 신호일 수 있다. 동기 신호에는 해당 동기 신호가 반주의 전체 플레이 시간 중 어느 시간대에 발생되는 것인지에 대한 시간 정보(예를 들어, 타임 스탬프 등)가 포함될 수 있다. 예를 들어, 상기 시간 정보는 동기 신호에 워터마크 형태로 삽입될 수 있다.
예시적인 실시예에서, 반주 재생 장치(104)는 반주를 제1 스피커를 통해 출력하고, 동기 신호를 제2 스피커를 통해 출력할 수 있다. 또는, 반주 재생 장치(104)는 반주와 동기 신호를 합성하여 하나의 스피커를 통해 출력할 수도 있다. 반주 재생 장치(104)는 반주가 출력되는 동안 기 설정된 주기로 동기 신호를 출력할 수 있다. 예를 들어, 동기 신호는 해당 노래의 마디마다 발생되어 출력될 수 있으나 이에 한정되는 것은 아니다.
반주 재생 장치(104)는 각 사용자 단말기(106)들로부터 가창 녹음 패킷을 수신할 수 있다. 반주 재생 장치(104)는 수신한 가창 녹음 패킷에서 동기 신호의 시간 정보를 추출하고, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간을 비교하여 해당 가창 녹음 패킷에 포함된 가창 음성의 출력 처리를 결정할 수 있다.
예시적인 실시예에서, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간 간의 시간 차이가 기 설정된 제1 시간 범위 이내(예를 들어, 20ms 미만)인 경우, 반주 재생 장치(104)는 수신한 가창 녹음 패킷에 포함된 해당 사용자의 가창 음성을 스피커로 출력할 수 있다.
여기서, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간 간의 시간 차이는 반주와 사용자의 가창 음성 간의 지연 시간(이하, "동기화 지연 시간"으로 지칭할 수 있음)일 수 있다. 동기화 지연 시간은 사용자 단말기(106)에서 발생되는 지연 시간(예를 들어, 사용자의 가창 음성을 획득하는 시간, 가창 녹음 패킷을 생성하는 시간 등을 포함), 사용자 단말기(106)와 반주 재생 장치(104) 간의 네트워크에 의한 지연 시간, 및 반주 재생 장치(104)에서 발생되는 지연 시간(예를 들어, 가창 녹음 패킷을 수신 처리하는 시간, 가창 녹음 패킷에 포함된 사용자의 가창 음성을 스피커로 출력하는 시간 등을 포함)을 포함할 수 있다.
또한, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간 간의 시간 차이가 기 설정된 제2 시간 범위 이내(예를 들어, 20ms ~ 70 ms)인 경우, 반주 재생 장치(104)는 해당 사용자의 가창 음성을 에코 처리하여 스피커로 출력할 수 있다. 이때, 동기화 지연 시간이 기 설정된 제2-1 시간 범위(예를 들어, 20ms ~ 40 ms) 이내인 경우, 반주 재생 장치(104)는 해당 사용자의 가창 음성을 제1 레벨로 에코 처리하여 스피커로 출력할 수 있다. 동기화 지연 시간이 기 설정된 제2-2 시간 범위(40ms ~ 70 ms) 이내인 경우, 반주 재생 장치(104)는 해당 사용자의 가창 음성을 제1 레벨보다 높은 제2 레벨로 에코 처리하여 스피커로 출력할 수 있다.
또한, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간 간의 시간 차이가 기 설정된 제3 시간 범위 (예를 들어, 70 ms)를 초과하는 경우, 반주 재생 장치(104)는 해당 사용자의 가창 음성을 뮤트(mute)(음소거) 시킬 수 있다.
예를 들어, 제1 사용자 단말기(106-1)의 동기화 지연 시간이 10ms, 제2 사용자 단말기(106-2)의 동기화 지연 시간이 15ms, 제3 사용자 단말기(106-3)의 동기화 지연 시간이 30ms, 제4 단말기(106-4)의 동기화 지연 시간이 75ms인 경우, 반주 재생 장치(104)는 제1 사용자 및 제2 사용자의 가창 음성을 그대로 스피커로 출력할 수 있다. 그리고, 반주 재생 장치(104)는 제3 사용자의 가창 음성은 에코 처리하여 스피커로 출력할 수 있다. 또한, 반주 재생 장치(104)는 제4 사용자의 가창 음성은 음소거 처리할 수 있다.
여기서, 기 설정된 제1 시간 범위는 동기화 지연 시간이 발생하더라도 사용자가 듣기에 시간차이를 잘 느끼지 못하는 시간 범위로 설정할 수 있다. 기 설정된 제2 시간 범위는 동기화 지연 시간에 따른 시간 차이를 사용자가 어느 정도 인식하게 되는 시간 범위로 설정할 수 있다. 기 설정된 제3 시간 범위는 동기화 지연 시간에 따른 시간 차이로 인해 사용자들의 가창 음성이 돌림 노래 처럼 느껴지는 시간 범위로 설정할 수 있다.
또한, 기 설정된 제1 시간 범위, 제2 시간 범위, 및 제3 시간 범위는 사용자 단말기(106)에서 발생되는 지연 시간, 사용자 단말기(106)와 반주 재생 장치(104) 간의 네트워크에 의한 지연 시간, 및 반주 재생 장치(104)에서 발생되는 지연 시간 등을 고려하여 적절하게 설정할 수 있다.
사용자 단말기(106)는 온라인 노래방 서비스를 이용하는 사용자가 소지하는 단말기일 수 있다. 사용자 단말기(106)는 온라인 노래방 서비스를 이용하는 사용자의 모바일 단말기(예를 들어, 스마트 폰, 태블릿 PC, 웨어러블 기기 등) 일 수 있다. 사용자 단말기(106)는 마이크를 구비할 수 있다. 사용자 단말기(106)는 반주 재생 장치(104)에 무선 접속될 수 있다.
사용자 단말기(106)에는 온라인 노래방 서비스를 제공하기 위한 어플리케이션이 설치될 수 있다. 상기 어플리케이션은 사용자 단말기(106)의 컴퓨터 판독 가능 저장 매체에 저장될 수 있다. 상기 어플리케이션은 사용자 단말기(106)의 프로세서에 의해 실행 가능한 명령어의 소정의 집합을 포함한다. 상기 명령어는 사용자 단말기(106)의 프로세서로 하여금 예시적인 실시예에 따른 동작을 수행하게 할 수 있다. 사용자 단말기(106)의 컴퓨터 판독 가능 저장 매체는 사용자 단말기(106) 상에서 상기 어플리케이션과 같은 명령어 집합을 실행하기 위한 운영 체제의 컴포넌트들을 포함한다. 예를 들어, 이러한 운영 체제는 애플(Apple) 사의 iOS 또는 구글(Google) 사의 Android 일 수 있다.
예시적인 실시예에서, 복수의 사용자 단말기(106)는 동일 IP 주소에 무선 접속할 수 있는 거리에 위치할 수 있다. 복수의 사용자들은 반주 재생 장치(104)의 화면을 보면서 반주 재생 장치(104)에서 출력되는 반주에 따라 노래를 부를 수 있다. 복수의 사용자 단말기(106) 중 어느 하나의 사용자 단말기(106)는 관리 서버(102)에 접속하여 가상 노래방 개설 요청을 전송할 수 있다. 복수의 사용자 단말기(106)는 관리 서버(102)에 의해 개설된 가상 노래방에 입장하여 노래를 선곡할 수 있다.
사용자 단말기(106)는 반주 재생 장치(104)에서 출력되는 동기 신호를 획득할 수 있다. 사용자 단말기9106)는 동기 신호에서 시간 정보(해당 동기 신호가 반주의 전체 플레이 시간 중 어느 시간대에 발생되는 것인지에 대한 시간 정보)를 검출할 수 있다. 또한, 사용자 단말기(106)는 반주에 따라 노래를 부르는 해당 사용자의 가창 음성을 녹음할 수 있다. 사용자 단말기(106)는 동기 신호의 시간 정보 및 가창 음성을 포함하는 가창 녹음 패킷을 생성할 수 있다. 사용자 단말기(106)는 가창 녹음 패킷을 반주 재생 장치(104)로 전송할 수 있다.
개시되는 실시예에 의하면, 반주 재생 장치(104)에서 반주가 재생되는 동안 동기 신호를 출력하고, 사용자 단말기(106)에서 동기 신호를 획득한 후 동기 신호의 시간 정보를 포함한 가창 녹음 패킷을 생성하고 전송함으로써, 반주 재생 장치(104)에서 사용자 단말기(106)의 가창 녹음 중 지연 시간이 기 설정된 시간을 초과한 것에 대해서는 에코 처리 또는 음소거 처리 할 수 있으며, 그로 인해 복수의 사용자들이 노래방을 이용하더라도 사용자들의 가창 음성이 돌림 노래처럼 들리는 것을 방지할 수 있게 된다.
한편, 다른 실시예로, 반주 재생 장치(104)에서 동기 신호를 출력할 때마다 서로 다른 패턴의 동기 신호를 출력하고, 출력한 동기 신호의 시간 정보를 기록할 수 있다. 그리고, 사용자 단말기(106)에서 반주 재생 장치(104)로부터 획득한 동기 신호를 획득한 후, 획득한 동기 신호를 가창 녹음 패킷에 포함시켜 반주 재생 장치(104)로 전송할 수 있다. 그러면, 반주 재생 장치(104)에서 가창 녹음 패킷에 포함된 동기 신호와 대응되는 패턴의 동기 신호를 확인하고, 확인된 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간을 비교하여 가창 음성의 출력 처리를 결정할 수 있다.
도 2는 본 발명의 일 실시예에 따른 온라인 노래방 서비스 방법을 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
도 2를 참조하면, 관리 서버(102)는 선곡된 노래에 대한 반주 및 선곡된 노래에 대응하는 영상을 반주 재생 장치(104)로 전송한다(S 101). 즉, 관리 서버(102)는 사용자 단말기(106)의 가상 노래방 개설 요청에 가상 노래방을 개설하고, 사용자 단말기(106)의 노래 선곡에 따라 선곡된 노래에 대한 반주 및 선곡된 노래에 대응하는 영상을 반주 재생 장치(104)로 전송할 수 있다.
그러나, 이에 한정되는 것은 아니며 관리 서버(102)가 사용자 단말기(106)로부터 수신한 노래 선곡에 대한 정보를 반주 재생 장치(104)로 전달하고, 반주 재생 장치(104)에서 기 저장된 노래 관련 정보들 중 선곡된 노래와 매칭된 반주 및 영상을 추출할 수도 있다.
다음으로, 반주 재생 장치(104)는 반주 및 동기 신호를 스피커로 출력한다(S 103). 반주 재생 장치(104)는 반주가 재생되는 동안 주기적으로 동기 신호를 반주와 함께 출력할 수 있다. 동기 신호에는 해당 동기 신호가 반주의 전체 플레이 시간 중 어느 시간대에 발생되는 것인지에 대한 시간 정보(예를 들어, 타임 스탬프 등)가 포함될 수 있다.
다음으로, 각 사용자 단말기(106)는 반주 재생 장치(104)에서 출력되는 동기 신호를 획득하고, 획득한 동기 신호에서 시간 정보를 검출하며, 사용자의 가창 음성을 획득하여 가창 녹음 패킷을 생성한다(S 105). 여기서, 가창 녹음 패킷은 패킷 헤더 및 페이로드를 포함할 수 있다. 패킷 헤더는 패킷 아이디, 동기 신호의 시간 정보, 및 페이로드 정보(예를 들어, 페이로드의 길이, 페이로드의 데이터 타입 등에 대한 정보)를 포함할 수 있다. 페이로드는 사용자의 녹음된 가창 음성을 포함할 수 있다. 각 사용자 단말기(106)는 반주 재생 장치(104)로부터 동기 신호가 획득될 때마다 가창 녹음 패킷을 생성할 수 있다.
다음으로, 각 사용자 단말기(106)는 가창 녹음 패킷을 반주 재생 장치(104)로 전송한다(S 107).
다음으로, 반주 재생 장치(104)는 가창 녹음 패킷에서 동기 신호의 시간 정보를 추출하고, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간을 비교한다(S 109).
단계 S 109의 비교 결과, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간 간의 시간 차이(즉, 동기화 지연 시간)가 기 설정된 제1 시간 범위 이내인 경우, 반주 재생 장치(104)는 해당 가창 녹음 패킷에 포함된 사용자의 가창 음성을 스피커로 출력한다(S 111).
단계 S 109의 비교 결과, 동기화 지연 시간이 기 설정된 제2 시간 범위 이내인 경우, 반주 재생 장치(104)는 해당 가창 녹음 패킷에 포함된 사용자의 가창 음성을 에코 처리하여 스피커로 출력한다(S 113).
단계 S 109의 비교 결과, 동기화 지연 시간이 기 설정된 제3 시간 범위 이내인 경우, 반주 재생 장치(104)는 해당 가창 녹음 패킷에 포함된 사용자의 가창 음성을 음소거 처리한다(S 115).
도 3은 본 발명의 일 실시예에 따른 반주 재생 장치의 구성을 나타낸 블록도이다.
도 3을 참조하면, 반주 재생 장치(104)는 통신부(111), 반주 재생부(113), 동기 신호 생성부(115), 스피커(117), 표시부(119), 및 출력 처리 판단부(121)를 포함할 수 있다.
통신부(111)는 관리 서버(102)와 통신 가능하게 연결될 수 있다. 통신부(111)는 관리 서버(102)로부터 선곡된 노래에 대한 반주 및 선곡된 노래에 대응하는 영상을 수신할 수 있다. 또한, 통신부(111)는 각 사용자 단말기(106)와 통신 가능하게 연결될 수 있다. 통신부(111)는 각 사용자 단말기(106)로부터 가창 녹음 패킷을 수신할 수 있다.
반주 재생부(113)는 통신부(111)가 수신한 반주를 재생시킬 수 있다. 재생되는 반주는 스피커(117)에 의해 출력될 수 있다.
동기 신호 생성부(115)는 동기 신호를 생성할 수 있다. 생성되는 동기 신호는 스피커(117)에 의해 출력될 수 있다. 동기 신호를 출력하는 스피커는 반주를 출력하는 스피커와는 다른 스피커일 수 있다. 즉, 스피커(117)는 복수 개의 스피커를 포함할 수 있다. 동기 신호 생성부(115)는 각 동기 신호에 시간 정보를 포함시킬 수 있다.
표시부(119)는 통신부(111)가 수신한 영상을 화면에 표시할 수 있다. 표시부(119)는 스피커(117)를 통해 출력되는 반주의 플레이 시간과 매칭하여 그에 대응하는 영상을 화면에 표시할 수 있다.
출력 처리 판단부(121)는 통신부(111)가 수신한 가창 녹음 패킷에서 동기 신호의 시간 정보를 추출하고, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간을 비교하여 가창 녹음 패킷에 포함된 가창 음성의 출력 처리를 결정할 수 있다.
도 4는 본 발명의 일 실시예에 따른 사용자 단말기의 구성을 나타낸 블록도이다.
도 4를 참조하면, 사용자 단말기(106)는 마이크(131), 시간 정보 검출부(133), 가창 녹음 패킷 생성부(135), 및 통신부(137)를 포함할 수 있다.
마이크(131)는 소리 신호를 획득할 수 있다. 구체적으로, 마이크(131)는 반주 재생 장치(104)에서 출력되는 동기 신호를 획득할 수 있다. 또한, 마이크(131)는 반주에 따라 노래를 부르는 사용자의 가창 음성을 획득할 수 있다.
시간 정보 검출부(133)는 마이크(131)에서 획득한 동기 신호에서 시간 정보를 검출할 수 있다.
가창 녹음 패킷 생성부(135)는 동기 신호의 시간 정보 및 사용자의 가창 음성을 기반으로 가창 녹음 패킷을 생성할 수 있다.
통신부(137)는 생성된 가창 녹음 패킷을 반주 재생 장치(104)로 전송할 수 있다.
도 5는 본 발명의 다른 실시예에 따른 온라인 노래방 서비스 시스템을 나타낸 도면이다. 이하에서는 도 1에 도시된 실시예와 차이가 나는 부분을 중점적을 설명하기로 한다.
도 5를 참조하면, 온라인 노래방 서비스 시스템(200)은 관리 서버(202), 반주 재생 장치(204), 및 사용자 단말기(206)를 포함할 수 있다.
관리 서버(202)는 사용자 단말기(206)로부터 수신되는 가상 노래방 개설 요청에 따라 가상 노래방을 개설할 수 있다. 관리 서버(202)는 사용자 단말기(206)로부터 노래 선곡을 수신할 수 있다. 관리 서버(202)는 선곡된 노래에 대한 반주 및 선곡된 노래에 대응하는 영상을 각 반주 재생 장치(204)로 전송할 수 있다.
반주 재생 장치(204)는 제1 반주 재생 장치(204-1), 제2 반주 재생 장치(204-2), 및 제3 반주 재생 장치(204-3)를 포함할 수 있다. 여기서는 설명의 편의상 반주 재생 장치(204)가 3개인 것으로 설명하나, 반주 재생 장치(204)의 개수가 이에 한정되는 것은 아니다. 제1 반주 재생 장치(204-1), 제2 반주 재생 장치(204-2), 및 제3 반주 재생 장치(204-3) 서로 다른 장소에 설치될 수 있다. 제1 반주 재생 장치(204-1), 제2 반주 재생 장치(204-2), 및 제3 반주 재생 장치(204-3)는 반주 및 동기 신호를 스피커로 각각 출력할 수 있다.
제1 반주 재생 장치(204-1), 제2 반주 재생 장치(204-2), 및 제3 반주 재생 장치(204-3)는 각각 제1 사용자 단말기(206-1) 내지 제3 사용자 단말기(206-3)로부터 수신한 가창 녹음 패킷에서 동기 신호의 시간 정보를 추출하고, 추출한 동기 신호의 시간 정보와 가창 녹음 패킷의 수신 시간을 비교하여 각 사용자들의 가창 음성의 출력 처리를 결정할 수 있다.
사용자 단말기(206)는 제1 사용자 단말기(206-1), 제2 사용자 단말기(206-2), 및 제3 사용자 단말기(206-3)를 포함할 수 있다. 제1 사용자 단말기(206-1), 제2 사용자 단말기(206-2), 및 제3 사용자 단말기(206-3)는 각각 원격지에 위치할 수 있다. 여기서는 설명의 편의상 사용자 단말기(206)가 3개인 것으로 설명하나, 사용자 단말기(206)의 개수가 이에 한정되는 것은 아니다.
제1 사용자 단말기(206-1)는 제1 반주 재생 장치(204-1)가 설치되는 영역에 위치할 수 있다. 제1 사용자 단말기(206-1)의 사용자(즉, 제1 사용자)는 제1 반주 재생 장치(204-1)의 화면을 보면서 노래를 부를 수 있다. 제1 사용자 단말기(206-1)는 제1 반주 재생 장치(204-1)로부터 동기 신호를 획득하고, 획득한 동기 신호의 시간 정보를 검출하여 가창 녹음 패킷을 생성할 수 있다. 제1 사용자 단말기(206-1)는 가창 녹음 패킷을 제1 반주 재생 장치(204-1), 제2 반주 재생 장치(204-2), 및 제3 반주 재생 장치(204-3)로 각각 전송할 수 있다.
제2 사용자 단말기(206-2)는 제2 반주 재생 장치(204-2)가 설치되는 영역에 위치할 수 있다. 제2 사용자 단말기(206-2)의 사용자(즉, 제2 사용자)는 제2 반주 재생 장치(204-2)의 화면을 보면서 노래를 부를 수 있다. 제2 사용자 단말기(206-2)는 제2 반주 재생 장치(204-2)로부터 동기 신호를 획득하고, 획득한 동기 신호의 시간 정보를 검출하여 가창 녹음 패킷을 생성할 수 있다. 제2 사용자 단말기(206-2)는 가창 녹음 패킷을 제1 반주 재생 장치(204-1), 제2 반주 재생 장치(204-2), 및 제3 반주 재생 장치(204-3)로 각각 전송할 수 있다.
제3 사용자 단말기(206-3)는 제3 반주 재생 장치(204-3)가 설치되는 영역에 위치할 수 있다. 제3 사용자 단말기(206-3)의 사용자(즉, 제3 사용자)는 제3 반주 재생 장치(204-3)의 화면을 보면서 노래를 부를 수 있다. 제3 사용자 단말기(206-3)는 제3 반주 재생 장치(204-3)로부터 동기 신호를 획득하고, 획득한 동기 신호의 시간 정보를 검출하여 가창 녹음 패킷을 생성할 수 있다. 제3 사용자 단말기(206-3)는 가창 녹음 패킷을 제1 반주 재생 장치(204-1), 제2 반주 재생 장치(204-2), 및 제3 반주 재생 장치(204-3)로 각각 전송할 수 있다.
도 6은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 관리 서버(예를 들어, 관리 서버(102))일 수 있다. 또한, 컴퓨팅 장치(12)는 반주 재생 장치(예를 들어, 반주 재생 장치(104))일 수 있다. 또한, 컴퓨팅 장치(12)는 사용자 단말기(예를 들어, 사용자 단말기(106))일 수 있다.
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.