KR20090059263A - 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템 - Google Patents

휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템 Download PDF

Info

Publication number
KR20090059263A
KR20090059263A KR1020070126014A KR20070126014A KR20090059263A KR 20090059263 A KR20090059263 A KR 20090059263A KR 1020070126014 A KR1020070126014 A KR 1020070126014A KR 20070126014 A KR20070126014 A KR 20070126014A KR 20090059263 A KR20090059263 A KR 20090059263A
Authority
KR
South Korea
Prior art keywords
terminal
sub
content
streaming
priority
Prior art date
Application number
KR1020070126014A
Other languages
English (en)
Other versions
KR101472748B1 (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 KR1020070126014A priority Critical patent/KR101472748B1/ko
Priority to US12/328,303 priority patent/US8041828B2/en
Publication of KR20090059263A publication Critical patent/KR20090059263A/ko
Priority to US14/057,792 priority patent/USRE44989E1/en
Application granted granted Critical
Publication of KR101472748B1 publication Critical patent/KR101472748B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/756Media network packet handling adapting media to device capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/56Allocation or scheduling criteria for wireless resources based on priority criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템에 관한 것이다.
이러한 본 발명은, 근거리 통신 네트웍을 형성하는 다수개의 휴대 단말기가 각자의 메모리 여유분에 따라 각 휴대 단말기들의 버퍼 사이즈를 결정하고, 결정된 버퍼 사이즈를 이용하여 버퍼링 시간간격을 계산 후, 스트리밍 컨텐츠 중 자신의 버퍼링 시간간격에 해당하는 서브 컨텐츠를 수신한다. 그리고 마스터 단말기는 서브 컨텐츠 재생 중에 다른 휴대 단말기들로부터 서브 컨텐츠를 수신하여 재생할 수 있는 분산 스트리밍 서비스 제공 방법 및 시스템에 관한 것이다.
분산 스트리밍, 마스터, 슬레이브, 스트리밍 서버

Description

휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템{Service Supporting Method And System of Distribution Streaming of Portable Device}
본 발명은 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템에 관한 것으로, 근거리 통신 네트웍을 형성하는 서비스 그룹에 속한 휴대 단말기들 각각의 개별적 메모리 잔여량을 기준으로, 스트리밍 서버가 전송하는 스트리밍 컨텐츠를 부분적으로 수신하고, 마스터 단말기에서 각 휴대 단말기들이 버퍼링한 서브 컨텐츠들을 취합하여 재생할 수 있도록 지원하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템에 관한 것이다.
스트리밍(streaming) 서비스는 1995년 리얼네트워크사가 개발한 리얼 오디오(real audio)에서 처음으로 선보였다. 스트리밍 기법은 인터넷에서 영상이나 음향, 애니메이션 등의 파일을 하드디스크 드라이브에 다운로드받아 재생하던 것을 다운로드 없이 실시간으로 재생해 주는 기법이다.
스트리밍 서비스는 전송되는 데이터가 마치 물이 흐르는 것처럼 처리된다고 해서 "스트리밍(streaming)"이라는 명칭이 붙여졌다. 이러한 스트리밍 서비스는 파일이 모두 전송되기 전이라도 클라이언트 또는 플러그인(plug-in)이 데이터의 표현 을 시작하게 되어 있다. 따라서 스트리밍 서비스는 재생시간이 단축되며 하드디스크 드라이브의 용량도 영향을 거의 받지 않는다.
그러나 스트리밍 서비스는 오디오와 같이 전송 용량이 작은 환경에서는 실시간으로 전송 및 재생이 가능하지만, 영상과 같은 대용량을 전송해야 하는 환경에서는 스트리밍 서비스를 이용하는 단말기의 특성 및 단말기가 형성하고 있는 네트웍의 특성에 큰 영향을 받는다. 즉, 고화질의 영상을 수신하여 재생하기 위해서는 광 네트웍과 같은 데이터 전송이 빠른 네트웍과, 이에 연결될 수 있는 고사양의 단말기가 필요하다.
그러나 휴대 단말기와 같이 이동통신 네트웍을 통하여 데이터를 전송해야 하는 환경에서는 네트웍이 지원하는 대역폭이 작을뿐더러, 휴대 단말기의 데이터 처리 속도 예를 들면 버퍼링 등에 대한 사양도 낮아서 좋은 화질의 영상을 끊김 없이 수신하여 실시간으로 청취하는 것은 불가능에 가깝다.
따라서 상술한 바와 같은 종래의 문제점을 감안한 본 발명의 목적은 근거리 통신 네트웍을 형성하는 다수개의 휴대 단말기를 이용하여 메모리 잔여량을 기준으로 버퍼 사이즈를 할당함으로써, 컨텐츠 수신을 최적화하는 한편, 수신된 컨텐츠를 마스터 단말기에서 재생하도록 제어함으로써 영상의 집중도를 개선할 수 있는 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템을 제공함에 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시 예에 따른 휴대 단말기의 분산 스트리밍 서비스 제공 방법은,
상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시 예에 따른 휴대 단말기의 분산 스트리밍 서비스 제공 시스템은
본 발명의 실시 예에 따른 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템에 따르면, 휴대 단말기들의 메모리 잔여량에 따라 버퍼 사이즈를 가변적으로 조절하여 데이터를 수신함으로써, 데이터 송수신 시 버퍼링의 최적화하고, 마스터 단말기에서 해당 컨텐츠를 전체 재생함으로써, 영상 집중도를 개선할 수 있다.
이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명의 실시 예에 따른 동작을 이해하는데 필요한 부분만이 설명되며, 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
대표적으로, 스트리밍 데이터는 비디오 데이터, 오디오 데이터 등이 될 수 있다. 또한, 멀티미디어 기기, 즉 휴대 단말기에서는 대부분 스트리밍 데이터를 사 용하고 있다. 본 발명의 실시 예에서 스트리밍 데이터 재생 장치는 이러한 스트리밍 데이터를 재생하기 위한 장치로 휴대 단말기에 포함된다.
또한, 이러한 스트리밍 데이터 재생을 위한 휴대 단말기는 다른 기능 모듈들이 포함되어야 한다. 예컨대, 휴대 단말기는 스트리밍 데이터를 소정의 디스플레이 장치에 표시하기 위해서 해당 디스플레이 장치에 맞도록 아날로그 신호를 디지털 신호로 변환하는 ADC(Analog to Digital Convertor), 해당 스트리밍 데이터의 포맷에 따른 코덱(CODEC) 및 화면 크기에 맞도록 데이터를 압축 신장하는 컬러 컨버터(color converter) 등을 포함할 수 있다. 그리고 상기 휴대 단말기는 상술한 장치 및 저장 장치 등을 컨트롤하기 위한 컨트롤러 등을 포함할 수 있다. 이러한 장치의 구성에 대한 상세한 설명은 생략하기로 한다. 이는 불필요한 설명을 생략함으로써 본 발명의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.
또한, 본 발명의 실시 예에 따른 스트리밍 데이터 재생 장치를 포함할 수 있는 휴대 단말기들은, 이동통신 단말기, 디지털 방송 단말기, 개인 정보 단말기(PDA, Personal Digital Assistant), 스마트 폰(Smart Phone), 3G 단말기 예를 들면, IMT-2000(International Mobile Telecommunication 2000) 단말기, WCDMA(Wideband Code Division Multiple Access) 단말기 및 UMTS(Universal Mobile Telecommunication Service) 단말기 등과 같은 모든 정보통신기기 및 GAME Consoles, CE Device, MP3 플레이어, 디지털 카메라, 셋탑 박스(Set top boxes), 퍼스널 컴퓨터(PC, Personal Computer) 등과 같은 멀티미디어 기기와, 그에 대한 응용에도 적용될 수 있음은 자명할 것이다.
이하 설명에서, 휴대 단말기는 그 역할에 따라 마스터 단말기 및 슬레이브 단말기로서 구분하여 설명하기로 한다. 즉, 휴대 단말기는 메모리 잔여량에 따라 마스터 단말기 또는 슬레이브 단말기로 결정된다. 이에 따라, 이하에서는 서비스 그룹에 포함되는 휴대 단말기들을 경우에 따라서 마스터 단말기 또는 슬레이브 단말기로 명명하거나, 휴대 단말기로서 지칭하여 설명하기로 한다.
또한, 이하 설명에서 스트리밍 컨텐츠는 스트리밍 서버가 전송하는 다양한 컨텐츠 중 특정 휴대 단말기가 요청한 컨텐츠 이거나, 방송 컨텐츠 등이 될 수 있다. 그리고 서브 컨텐츠는 스트리밍 컨텐츠 중 각 휴대 단말기가 수신하여 버퍼링하는 부분을 의미할 수 있다.
먼저, 본 발명의 실시 예에 따른 분산 스트리밍 서비스 제공 시스템의 개략적인 구성을 설명하기로 한다. 도 1은 본 발명의 실시 예에 따른 분산 스트리밍 서비스 제공 시스템의 각 구성을 블록도로서 개략적으로 나타낸 것이다.
상기 도 1을 참조하면, 본 발명의 실시 예에 따른 분산 스트리밍 서비스 제공 시스템은 다수개의 휴대 단말기들(A1, A2 …. An)을 포함하는 서비스 그룹(100)과, 상기 서비스 그룹(100)에 스트리밍 컨텐츠를 제공하는 스트리밍 서버(200)를 포함할 수 있다.
상기 서비스 그룹(100)은 분산 스트리밍 서비스를 이용하는 다수개의 휴대 단말기들(A1, A2 …. An)을 포함하는 그룹으로서, 각 휴대 단말기들(A1, A2 …. An)은 근거리 통신 네트웍을 형성하고 있다. 이에 따라, 각 휴대 단말기들(A1, A2 …. An)은 근거리 통신 네트웍을 기반으로 각자의 메모리 잔여량에 대한 정보를 송수신하고, 가장 큰 메모리 잔여량을 가진 휴대 단말기를 마스터 단말기(A1)로 설정한다. 그러면 마스터 단말기(A1)는 슬레이브 단말기들(A2 …. An)의 메모리 잔여량을 기준으로 각각 우선순위와 버퍼 사이즈를 할당한다. 이때, 마스터 단말기(A1)는 메모리 잔여량이 큰 단말기들부터 우선순위가 높도록 순서를 할당한다.
상기 서비스 그룹(100)에 속한 상기 휴대 단말기들(A1, A2 …. An)은 상기 스트리밍 서버(200)가 전송할 컨텐츠가 매우 크거나, 실시간으로 방송되는 컨텐츠들인 경우, 휴대 단말기들(A1, A2 …. An)의 버퍼 사이즈들을 반복적으로 적용하여 서브 컨텐츠들을 수신할 수 있다. 예를 들어, 스트리밍 서버(200)가 전송할 컨텐츠가 60분 동안 지속적으로 플레이되는 컨텐츠이며, 이를 수신할 서비스 그룹(100)의 휴대 단말기들(A1, A2 …. An)이 3대이고, 휴대 단말기들의 버퍼 사이즈는 각각 "10초", "5초", "3초"동안 플레이될 서브 컨텐츠들을 버퍼링할 수 있다고 가정한다. 이와 같은 경우, 휴대 단말기들(A1, A2 …. An)은 60분짜리 컨텐츠를 각각 "10초", "5초", "3초", "10초", "5초"... 등의 버퍼링 시간간격 단위로 반복적으로 서브 컨텐츠들을 수신할 수 있다. 서비스 그룹(100)에 속한 단말기들의 세부 구성 및 컨텐츠 할당에 대하여 도 2 및 도 3을 참조하여 보다 상세히 후술하기로 한다.
상기 스트리밍 서버(200)는 스트리밍 컨텐츠를 각 휴대 단말기들(A1, A2 …. An)에게 스트리밍(Streaming)으로 전송한다.
도 2는 본 발명의 휴대 단말기의 구성을 보다 상세히 나타낸 도면이다.
설명에 앞서, 도 2에 도시된 휴대 단말기는 서비스 그룹(100) 중 마스터 단 말기(A1)의 구성을 나타낸 것으로, 슬레이브 단말기들(A2 …. An) 또한 상기 마스터 단말기(A1)와 유사한 구성을 가질 수 있을 것이다. 이에 따라, 이하에서는 마스터 단말기(A1)와 슬레이브 단말기들(A2 …. An)의 구성 및 역할에 대하여 복합적으로 기재하기로 한다.
상기 도 2를 참조하면, 본 발명의 휴대 단말기들(A1, A2 …. An)은 무선주파수부(110), 입력부(120), 오디오 처리부(130), 표시부(140), 근거리 통신 모듈(150), 메모리(160) 및 제어부(170)의 구성을 포함할 수 있다.
상기 무선주파수부(110)는 상기 휴대 단말기들(A1, A2 …. An)이 이동통신 단말기의 기능을 가지는 경우 포함되는 구성으로서, 제어부(170)의 제어에 따라 통화 호 송신 및 수신을 수행한다. 이를 위하여 상기 무선주파수부(110)는 송신되는 신호의 주파수를 상승변환 및 증폭하는 무선 주파수 송신부와, 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 무선 주파수 수신부 등을 포함할 수 있다.
특히, 본 발명의 무선주파수부(110)는 제어부(170) 제어에 따라 스트리밍 서버(200)와 통신채널을 형성한다. 그리고 무선주파수부(110)는 스트리밍 서버(200)가 전송하는 스트리밍 컨텐츠 중 버퍼 사이즈를 고려하여 계산된 타이밍에 해당하는 서브 컨텐츠를 수신할 수 있다. 예를 들어, 마스터 단말기(A1)가 가지는 메모리 잔여량이 스트리밍 컨텐츠를 버퍼링하는데 "3초"의 버퍼 사이즈에 해당하며, 제1 슬레이브 단말기는 "2초", 제2 슬레이브 단말기는 "1초"의 버퍼 사이즈를 가진다고 가정하면, 각 휴대 단말기들(A1, A2 …. An)은 자신의 버퍼 사이즈와 다른 휴대 단말기들의 버퍼 사이즈를 고려하여 자신이 수신할 스트리밍 컨텐츠의 버퍼링 시간간격을 획득할 수 있다. 즉, 제1 슬레이브 단말기의 버퍼링 시간간격은 4초~6초 사이가 될 것이다. 이와 같이, 각 휴대 단말기들(A1, A2 …. An)은 계산된 버퍼링 시간간격에 무선주파수부(110)를 활용하여 스트리밍 컨텐츠 중 자신이 버퍼링할 서브 컨텐츠를 수신할 수 있다.
상기 입력부(120)는 숫자 또는 문자 정보를 입력받고 각종 기능들을 설정하기 위한 다수의 입력키 및 기능키들을 포함한다. 이러한 기능키들은 특정 기능을 수행하도록 설정된 방향키, 사이드 키 및 단축키 등을 포함할 수 있다. 또한 입력부(120)는 사용자 설정 및 마스터 단말기(A1)의 기능 제어와 관련하여 입력되는 키 신호를 생성하여 제어부(170)로 전달한다.
특히, 입력부(120)는 본 발명의 분산 스트리밍 서비스 기반의 서비스 청취를 위한 다양한 입력신호를 생성하여 제어부(170)에 전달한다. 여기서 다양한 입력신호는 분산 스트리밍 서비스 청취를 위한 메뉴 등의 옵션 선택을 위한 입력신호, 슬레이브 단말기들과 근거리 통신 채널을 형성하기 위해 필요한 입력 신호, 스트리밍 서버(200)로부터 수신한 서브 컨텐츠들을 재생하기 위해 필요한 입력 신호 등을 포함한다.
상기 오디오 처리부(130)는 메모리에 저장된 오디오 파일의 재생 및 음성 통화시 수신되는 오디오 신호 출력을 위한 스피커(SPK), 마스터 단말기(A1)가 이동통신 단말기로서 동작할 경우 타 단말기에 전송하기 위하여 사용자의 음성 신호를 수집하는 마이크(MIC)를 포함한다. 특히, 오디오 처리부(130)는 스트리밍 서버(200)가 전송한 서브 컨텐츠들을 마스터가 재생하고자 할 경우, 서브 컨텐츠들에 포함된 오디오 신호를 출력한다.
상기 표시부(140)는 상기 마스터 단말기(A1) 사용에 따른 다양한 화면 예를 들면 대기화면, 메뉴 화면, 통화 화면 등에 관련된 화면 인터페이스를 제공한다. 여기서 표시부(140)는 LCD(Liquid Crystal Display)가 적용될 수 있으며, 이 경우 표시부(140)는 LCD 제어부, 데이터를 저장할 수 있는 메모리 및 LCD 표시소자 등을 구비할 수 있다. 상기 LCD를 터치스크린 방식으로 구현하는 경우, 표시부(140) 화면은 입력부로 동작될 수 있다.
특히, 본 발명의 표시부(140)는 분산 스트리밍 서비스 기반의 오디오 비디오 청취를 선택하기 위한 메뉴 화면, 메뉴 선택 시 슬레이브 단말기들(A2 …. An)과 근거리 통신채널을 형성하는 과정을 나타내는 화면, 마스터 단말기(A1)에서 각 슬레이브 단말기들(A2 …. An)의 리스트를 나타내는 화면, 마스터 단말기(A1) 및 슬레이브 단말기들(A2 …. An)과 스트리밍 서버(200) 간에 통신 채널을 형성하기 위한 화면, 스트리밍 서버(200)로부터 서브 컨텐츠를 수신하는 경우에 대응하는 화면 등을 표시한다. 이러한 표시부(140)의 화면 인터페이스에 대하여 제어부(170) 설명과 함께 보다 상세히 설명하기로 한다.
상기 근거리 통신 모듈(150)은 슬레이브 단말기들(A2 …. An)과 근거리 통신채널을 형성하기 위한 구성이다. 이러한 근거리 통신 모듈(150)은 블루투스 모듈, IRDA(Infrared Data Association), 지그비 등 다양한 근거리 통신 모듈로 형성될 수 있다. 한편, 근거리 통신 모듈(150)에 의하여 각 휴대 단말기들 간에 근거리 통신채널이 형성되면, 근거리 통신 모듈(150)은 각 휴대 단말기들의 메모리 잔여량 에 대한 정보를 송수신한다. 바람직하게는 최초, 분산 스트리밍 서비스를 이용하기 위한 옵션을 활성화한 휴대 단말기가 타 단말기들로부터 메모리 잔여량에 대한 정보를 수집한다. 이후, 메모리 잔여량을 수집한 휴대 단말기는 메모리 잔여량을 비교하여 잔여량이 가장 큰 휴대 단말기를 마스터 단말기로 지정하고, 해당 휴대 단말기에게 근거리 통신 네트웍의 마스터 단말기로서의 제어권을 이양한다. 본 발명에서는 A1 휴대 단말기를 메모리 잔여량이 가장 큰 마스터 단말기로서 가정하여 설명하기로 한다.
상기 메모리(160)는 본 발명의 실시 예에 따른 기능 동작에 필요한 응용 프로그램을 비롯하여, 다양한 응용 프로그램을 저장한다. 여기서, 다양한 응용 프로그램은 근거리 통신 모듈을 활성화하기 위한 응용 프로그램, 수신된 컨텐츠를 재생하기 위한 재생 응용 프로그램, 스트리밍 서버(200)에 접속하기 위한 응용 프로그램, 스트리밍 서버(200)로부터 스트리밍 컨텐츠를 실시간으로 다운로드하기 위한 프로토콜 예를 들면 RTSP(Real Time Streaming Protocol)등을 포함하며, 휴대 단말기의 추가 옵션에 따른 응용 프로그램 예를 들면, 단말기에 설치된 카메라 동작을 위한 응용 프로그램, 메모리에 저장된 오디오 파일 재생 응용 프로그램 등을 포함할 수 있다. 그리고 메모리(160)는 각 휴대 단말기들 및 마스터 단말기(A1)가 스트리밍 서버(200)로부터 서브 컨텐츠를 수신하는 경우, 서브 컨텐츠를 버퍼링하는 기능을 수행할 수 도 있다. 이러한 메모리(160)는 크게 프로그램 영역과 데이터 영역을 포함할 수 있다.
상기 프로그램 영역은 마스터 단말기(A1)를 부팅시키는 운영체제(OS, Operating System), 분산 스트리밍 서비스 지원을 응용 프로그램, 메시지 처리를 위한 메시지 서비스 응용 프로그램, 마스터 단말기(A1)의 기타 옵션(options) 기능 예컨대, 소리 재생 기능, 이미지 또는 동영상 재생 기능, 모바일 방송 신호 수신 등에 필요한 응용 프로그램 등을 저장한다. 그리고 프로그램 영역은 사용자 요청에 상응하여 상기한 각 기능을 활성화하는 경우, 제어부(170)의 제어 하에 해당 응용 프로그램들을 이용하여 각 기능을 제공하게 된다. 분산 스트리밍 서비스 지원을 위한 응용 프로그램은 근거리 통신모듈을 활성화하기 위한 응용 프로그램, 스트리밍 서버(200)로부터 서브 컨텐츠 수신을 위한 응용 프로그램, 스트리밍 컨텐츠 수신을 위한 프로토콜 및 서브 컨텐츠 재생을 위한 응용 프로그램 등을 포함할 수 있다.
상기 데이터 영역은 마스터 단말기(A1)의 사용에 따라 발생하는 데이터가 저장되는 영역으로서, 마스터 단말기(A1)가 제공하는 다양한 옵션 기능과 관련한 사용자 데이터들 예컨대, 앞서 설명한 동영상, 폰북 정보, 오디오 데이터 및 해당 컨텐츠 또는 사용자 데이터들에 대응하는 정보 등을 저장할 수 있다. 특히, 데이터 영역은 슬레이브 단말기들(A2 …. An)의 메모리 잔여량에 대한 정보, 메모리 잔여량을 기반으로 생성된 버퍼 사이즈에 대한 정보 등을 저장할 수 있다. 그리고 데이터 영역은 스트리밍 서버(200)로부터 서브 컨텐츠를 수신하는 경우, 이를 임시 저장할 수 있다. 또한, 마스터 단말기(A1)의 데이터 영역은 슬레이브 단말기들(A2 …. An)이 전달하는 서브 컨텐츠들을 임시저장한 후, 제어부(170) 제어에 따라 표시부(140)에 전달할 수 있다. 서브 컨텐츠들의 구분 및 수신과 재생에 대하여 도 3을 참조하여 보다 상세히 후술하기로 한다.
상기 제어부(170)는 마스터 단말기(A1)와 슬레이브 단말기들의 전반적인 동작 및 마스터 단말기(A1)와 슬레이브 단말기들(A2 …. An)의 내부 블록들 간의 신호 흐름을 제어한다. 특히, 본 발명의 제어부(170)는 분산 스트리밍 서비스를 제공하기 위하여 각 구성간의 신호 흐름과, 슬레이브 단말기들(A2 …. An)로부터의 데이터 수신 및 스트리밍 서버(200)로부터 서브 컨텐츠를 수신하는 과정 등을 제어한다.
이를 보다 상세히 설명하면, 특정 휴대 단말기의 제어부(170)는 사용자의 입력에 따라 분산 스트리밍 서비스를 선택할 수 있는 항목을 포함하는 휴대 단말기의 다양한 옵션 메뉴를 표시한다. 그리고 제어부(170)는 사용자의 입력에 따라 입력부(120)로부터 분산 스트리밍 서비스 형태의 오디오 비디오 청취를 원하는 입력신호가 수신되면, 무선주파수부(110)를 활성화하여 스트리밍 서버(200)에 접속한다. 스트리밍 서버(200)에 접속하는 과정에서 제어부(170)는 웹 브라우저를 운용하여 스트리밍 서버(200)가 제공하는 웹 페이지를 표시하도록 제어할 수 있다. 다음으로 제어부(170)는 웹 페이지에 포함된 특정 스트리밍 컨텐츠를 지정하는 입력신호가 발생하면, 이를 스트리밍 서버(200)에 전달하고, 해당 스트리밍 컨텐츠에 대한 정보 예를 들면, 전체 크기, 전송 특성, 요약 정보 등을 다운로드 받을 수 있다. 여기서 본 발명의 실시 예에 따른 휴대 단말기들(A1, A2 …. An)은 분산 스트리밍 서비스 선택 시, 스트리밍 서버(200)에 접속하기 전에 스트리밍 서버(200)가 제공할 스트리밍 컨텐츠를 함께 다운로드 받아 청취할 다른 단말기들을 취합하는 과정 을 먼저 수행할 수 있다. 즉, 특정 휴대 단말기의 제어부(170)는 스트리밍 서버(200)에 접속하여 다운로드 받을 스트리밍 컨텐츠에 대한 사전 정보를 획득하기 전에, 근거리 통신 모듈(150)을 활성화할 수 있다. 이에 따라 제어부(170)는 다른 휴대 단말기들과 근거리 통신 네트웍을 형성하는 페어링 과정을 수행한다. 여기서 특정 휴대 단말기의 제어부(170)는 다른 휴대 단말기들의 메모리 잔여량에 대한 정보를 요청하여 수집하고, 수집된 각 휴대 단말기들(A1, A2 …. An)의 메모리 잔여량을 크기에 따라 정렬한다. 이후 특정 휴대 단말기의 제어부(170)는 메모리 잔여량이 가장 큰 휴대 단말기를 마스터 단말기로 지정하고, 마스터 단말기에게 근거리 통신 네트웍을 제어할 수 있는 제어권과 각 휴대 단말기들(A1, A2 …. An)의 메모리 잔여량에 대한 정보를 전달한다. 그러면 마스터 단말기의 제어부는 각 단말기들의 메모리 잔여량을 기반으로 하여 버퍼링 사이즈를 결정한 후, 결정된 버퍼링 사이즈를 각 슬레이브 단말기들에게 전달한다.
각 슬레이브 단말기들의 제어부는 마스터 단말기가 전달한 버퍼링 사이즈와 자신의 우선순위를 이용하여 버퍼링 시간간격을 계산할 수 있다. 이를 보다 상세히 설명하면, 마스터 단말기는 가장 우선순위가 높은 휴대 단말기로서 스트리밍 컨텐츠에 대하여 자신의 버퍼 사이즈에 해당하는 서브 컨텐츠를 버퍼링하도록 버퍼링 시간간격을 결정한다. 예를 들어, 마스터 단말기는 자신의 버퍼 사이즈가 10초 동안 재생할 스트리밍 컨텐츠를 버퍼링할 수 있는 크기를 가지는 경우, 스트리밍 서버(200)와의 프로토콜에 정의되는 시간간격 범위(range)를 조절하여 해당 서브 컨텐츠를 수신할 수 있다. 예를 들어, 마스터 단말기가 RTSP 기반으로 스트리밍 컨 텐츠를 수신할 경우, 마스터 단말기는 시간간격 범위를 0초 ~ 10초로 조절하고, 스트리밍 컨텐츠가 전송하는 스트리밍 컨텐츠 중에 해당 시간간격 즉 10초 동안의 RTP(Real Time Protocol) 패킷을 수신한다. 이와 동일한 방법으로, 메모리 잔여량을 기반으로 두 번째 우선순위를 가지는 슬레이브 단말기는 자신의 버퍼 사이즈가 5초 동안의 스트리밍 컨텐츠를 버퍼링할 수 있는 사이즈를 가지는 경우, 스트리밍 컨텐츠를 수신하는 RTSP 플레이 방법(Play Method) 중 범위(range)를 15초 ~ 20초 동안으로 설정하여 해당 서브 컨텐츠를 버퍼링한다. 다른 슬레이브 단말기도 자신의 우선순위와 버퍼 사이즈를 기반으로 해당 서브 컨텐츠를 버퍼링할 수 있다.
다시 말하여, 마스터 단말기는 순번이 낮은 즉, 나중에 재생될 데이터를 받을 슬레이브 단말기의 버퍼링 시간을 가장 보다 크게 할당한다. 예를 들어, N번째 슬레이브 단말기의 버퍼링 시간 간격이 T(n)이라 할 경우, N+1 번째 슬레이브 단말기의 버퍼링 시간 간격 T(n+1) = T(n) + a가 될 수 있다. 여기서 a 는 설계자가 정하는 임의의 실험적 값이 될 수 있다. 예를 들어 설명하면, 4개의 휴대 단말기들이 분산 스트리밍 서비스 이용에 참여하고, a = 1이며, 마스터 단말기가 2초이고, 다른 휴대 단말기들의 버퍼 사이즈가 각각 1초씩이라 할 경우, 다른 슬레이브 단말기 예를 들어 제1 슬레이브 단말기의 버퍼링 시간 간격은 마스터 단말기 다음의 1초가 될 수 있다. 동일한 방식으로 제2 슬레이브 단말기의 버퍼링 시간간격은 2초, 제3 슬레이브 단말기의 버퍼링 시간간격은 3초가 될 수 있다. 각 휴대 단말기는 마스터 단말기가 할당한 버퍼 사이즈를 이용하여 재생하여야 할 서브 컨텐츠의 시간 간격을 계산할 수 있다. 이에 따라, 각 휴대 단말기는 각 시간 간격을 가 지고 레인지(range) 값을 조정하여 데이터를 받아 버퍼를 채울 수 있다. 각 휴대 단말기는 버퍼링이 완료되면, 근거리 통신 네트웍을 이용하여 마스터 단말기에게 버퍼링된 데이터를 전송하며, 이때 슬레이브 단말기들 간 충돌을 방지하기 위하여 메모리 잔여량 순으로 결정된 슬레이브 단말기들의 우선순위대로 순차적으로 전송한다.
재생 종료를 원하는 경우 즉, 사용자 인터럽트를 받아 종료할 경우, 마스터 단말기는 종료 명령을 각 슬레이브 단말기들에 전달할 수 있다. 또한, 슬레이브 단말기가 스트리밍 서버(200)로부터 종료에 해당하는 티어다운(tear down) 메시지를 받으면, 슬레이브 단말기들은 티어다운 메시지를 마스터 단말기로 전송한 후, 마스터 단말기가 다시 슬레이브 단말기들에 전송하여 종료 과정을 수행할 수 있다. 종료 명령이 전송된 후, 각 휴대 단말기들의 페어링을 해제하여 근거리 통신 네트웍을 제거할 수 있다.
한편, 각 휴대 단말기들(A1, A2 …. An)의 제어부(170)는 자신의 메모리 잔여량을 고려하여 스트리밍 서버(200)로부터 서브 컨텐츠를 다운로드 받을 대역폭을 협상할 수 있다. 즉, 마스터 단말기(A1)는 가장 큰 메모리 잔여량을 이용하여 가장 큰 서브 컨텐츠를 받게 됨으로 스트리밍 서버(200)로부터 다른 휴대 단말기들에 비하여 큰 대역폭을 할당받아 해당 서브 컨텐츠를 다운로드 받을 수 있다.
스트리밍 서버(200)로부터 실시간으로 방송되는 오디오 비디오를 다운로드 받아 청취하는 경우, 즉, 소수의 휴대 단말기들의 메모리를 반복적으로 이용하여 스트리밍 서버(200)로부터 서브 컨텐츠를 다운로드 받아 재생하는 경우, 마스터 단 말기(A1)의 제어부(170)는 마지막 슬레이브 단말기의 서브 컨텐츠를 수신하여 재생하면서, 스트리밍 서버(200)로부터 다음에 재생해야 할 서브 컨텐츠를 버퍼링하도록 제어할 수 있다. 이때, 다른 슬레이브 단말기들(A2 …. An) 또한 마스터 단말기(A1)가 결정한 버퍼링 사이즈를 기반으로 해당 버퍼링 시간간격에 서브 컨텐츠를 수신할 수 있다.
도 3은 본 발명의 실시 예에 따른 휴대 단말기들의 버퍼 사이즈와 버퍼링된 서브 컨텐츠 구분을 설명하기 위한 도면이다.
설명에 앞서, 이하 설명에서는 제1 내지 제3 휴대 단말기가 있다고 가정하며, 제1 휴대 단말기가 가장 큰 메모리 잔여량을 가지고 있고, 제2 휴대 단말기가 제1 휴대 단말기 다음으로 큰 메모리 잔여량을 가지고 있으며, 제3 휴대 단말기가 가장 작은 메모리 잔여량을 가지고 있는 것으로 가정하기로 한다.
상기 도 3을 참조하면, A1은 제1 휴대 단말기의 메모리 잔여량 또는 버퍼 사이즈 및 그에 따라 스트리밍 서버가 전송하는 스트리밍 컨텐츠 중 수신하여 버퍼링하는 서브 컨텐츠의 크기를 의미할 수 있다. 이와 유사하게, A2는 제2 휴대 단말기의 메모리 잔여량 또는 버퍼 사이즈 및 버퍼링되는 서브 컨텐츠 크기, A3은 제3 휴대 단말기의 메모리 잔여량 또는 버퍼 사이즈 및 버퍼링 되는 서브 컨텐츠 크기를 의미할 수 있다. 설명의 편의상, A1 메모리 잔여량을 가지는 제1 휴대 단말기가 마스터 단말기이며 분산 스트리밍 서비스를 이용하기 위한 메뉴를 활성화하였다고 가정하면, 제1 휴대 단말기는 앞서 설명한 바와 같이, 스트리밍 서버에 접속하여, 다운로드 받고자 하는 특정 컨텐츠를 지정할 수 있다. 이후, 제1 휴대 단말기 는 근거리 통신 네트웍을 형성하여 각 휴대 단말기들의 메모리 잔여량에 대한 정보를 취합하여 상호 비교한 후, 메모리 잔여량이 가장 큰 자신이 마스터 단말기(A1)로 동작하게 된다. 마스터 단말기(A1)는 각 메모리 잔여량인 "A1, A2, A3"에 대한 정보를 기반으로 각 휴대 단말기들이 버퍼링할 서브 컨텐츠들의 버퍼 사이즈를 결정한다. 그리고 마스터 단말기(A1)는 결정된 버퍼 사이즈를 각 휴대 단말기들에게 우선순위에 대한 정보와 함께 전달한다. 그러면 각 휴대 단말기들은 자신의 우선순위와 버퍼 사이즈를 알게 되고, 이를 기반으로 자신의 버퍼링 시간간격을 계산한다. 버퍼링 시간간격 계산이 완료되면, 각 휴대 단말기들은 RTSP와 같은 프로토콜을 기반으로 자신의 버퍼링 범위에 해당하는 서브 컨텐츠를 버퍼링한다. 그러면, 스트리밍 서버(200)가 전송하는 스트리밍 컨텐츠는 도 3에 도시된 바와 같이, A1, A2, A3 크기로 각 휴대 단말기들에 의해 버퍼링된다. 여기서 A1 서브 컨텐츠는 0초부터 10초에 걸쳐 재생되어야할 서브 컨텐츠라면, A2는 11초부터 15초에 걸쳐 재생되어야할 서브 컨텐츠가 될 수 있으며, A3 서브 컨텐츠는 15초부터 18초에 걸쳐 재생되어야할 서브 컨텐츠가 될 수 있다. A1 서브 컨텐츠를 버퍼링하는 제1 휴대 단말기는 A1 서브 컨텐츠를 재생할 재생 응용 프로그램을 활성화하여 A1 서브 컨텐츠를 재생한다. 제1 휴대 단말기는 A1 서브 컨텐츠가 재생이 완료될 즈음에 제2 휴대 단말기로부터 A2 서브 컨텐츠를 수신할 수 있다. 즉, 제2 휴대 단말기는 제1 휴대 단말기의 버퍼링 시간간격과 근거리 통신의 속도를 고려하여 결정된 자신의 버퍼링 시간간격을 기반으로 A2 서브 컨텐츠를 수신하고, 이를 A1 서브 컨텐츠가 재생 완료될 시기 예를 들면, 9초가 될 경우, A2 서브 컨텐츠를 제1 휴대 단말기에 전송할 수 있다. 이와 같은 방식으로 제3 휴대 단말기는 A3 서브 컨텐츠를 적절한 시각에 제1 휴대 단말기에 전송할 수 있다. 한편, 제1 휴대 단말기는 A3 서브 컨텐츠를 재생하는 과정 중에, 재생이 완료될 즈음에 A3 서브 컨텐츠 다음으로 재생해야할 서브 컨텐츠를 스트리밍 서버(200)로부터 수신하여 버퍼링할 수 있다. 그 크기는 A1 서브 컨텐츠와 유사한 크기가 될 수 있다. 새로 수신하는 A1 서브 컨텐츠 다음으로 재생되어야할 서브 컨텐츠가 있는 경우, 제2 휴대 단말기는 마스터 단말기의 버퍼링 시간간격을 기준으로 서브 컨텐츠를 수신한 후, 앞서 설명한 과정을 반복 수행한다. 이러한 과정은 종료를 위한 명령어 발생 또는 스트리밍 서버(200)의 종료 알림에 대한 메시지가 수신될 때까지 반복적으로 수행될 수 있다.
이상에서는 본 발명의 실시 예에 따른 분산 스트리밍 서비스 제공을 위한 시스템의 구성과 각 구성에 포함되는 세부 구성에 대하여 살펴보았다. 이하에서는 이러한 시스템을 기반으로 제공되는 본 발명의 분산 스트리밍 서비스 제공 방법에 대하여 살펴보기로 한다.
도 4는 본 발명의 실시 예에 따른 분산 스트리밍 서비스 제공에 있어서, 마스터 단말기(A1)의 동작 과정을 나타낸 도면이며, 도 5는 본 발명의 분산 스트리밍 서비스 시스템을 구성하는 마스터 단말기, 슬레이브 단말기들 및 스트리밍 서버 간에 송수신되는 신호 흐름을 개략적으로 나타낸 도면이다.
상기 도 4 및 도 5를 참조하면, 본 발명의 분산 스트리밍 서비스 제공 방법은 먼저, S101 단계에서 특정 휴대 단말기가 분산 스트리밍 서비스를 이용할지 여부를 확인한다. 이 단계는 다수개의 휴대 단말기 중 특정 휴대 단말기가 분산 스 트리밍 서비스를 이용하기 위한 메뉴 옵션을 선택함에 따라 진행될 수 있다. 특정 휴대 단말기는 S101 단계에서 분산 스트리밍 서비스를 이용하지 않는 경우 S103 단계로 분기하여 휴대 단말기의 해당 기능 예를 들면, 음성 통화 기능, 화상 통화 기능, 파일 재생 기능 카메라 기능 활성화에 따른 기능 지원을 수행할 수 있다.
S101 단계에서 특정 휴대 단말기 사용자가 분산 스트리밍 서비스를 이용하기 위한 옵션을 선택하면, 해당 휴대 단말기는 주변 다른 휴대 단말기와 근거리 통신 네트웍을 형성한다. 즉, 해당 휴대 단말기는 주변 다른 휴대 단말기와 페어링 과정을 수행하여 마스터-슬레이브 구조를 가지는 서비스 그룹을 형성한다. 이후, 서비스 그룹에 속한 휴대 단말기들은 S107 단계에서, 각 단말기들의 정보 예를 들면 메모리 잔여량에 대한 정보를 교환한다. 즉, 해당 휴대 단말기는 슬레이브 단말기들로부터 분산 스트리밍에 이용할 메모리 잔여량에 대한 정보를 요청하고 다른 휴대 단말기들로부터 메모리 잔여량에 대한 정보를 모두 수집한다. 여기서 해당 휴대 단말기는 메모리 잔여량의 크기 순서를 기준으로 가장 큰 메모리 잔여량을 가진 단말기를 마스터 단말기(A1)로 지정하여 근거리 통신 네트웍에 대한 제어권과 슬레이브 단말기들(A2 …. An)의 메모리 잔여량 정보를 전달한다. 이렇게 지정된 마스터 단말기(A1)는 마스터 단말기(A1)의 메모리 잔여량을 제외하고 가장 큰 크기의 메모리 잔여량을 가진 단말기를 두 번째 슬레이브 단말기로 지정한다. 이와 같은 방식으로 서비스 그룹은 메모리 잔여량의 크기를 기준으로 마스터 단말기(A1)와 우선순위를 가지는 슬레이브 단말기들(A2 …. An)을 지정한다.
다음으로, 마스터 단말기(A1)는 S108 단계에서 메모리 잔여량을 기반으로 각 휴대 단말기들의 버퍼 사이즈를 결정한다. 이 버퍼 사이즈는 스트리밍 서버(200)가 전송하는 스트리밍 컨텐츠를 실시간으로 버퍼링할 버퍼의 크기를 의미할 수 있다. 예를 들어, 마스터 단말기(A1)가 스트리밍 컨텐츠를 10초 동안 버퍼링할 메모리 잔여량을 가지는 경우, 첫 번째 슬레이브 단말기는 10초보다 작은 크기 예를 들면 스트리밍 컨텐츠를 5초 동안 버퍼링할 버퍼 사이즈를 가질 수 있다. 여기서, 10초 또는 5초와 같은 버퍼 사이즈의 크기는 하나의 예로서, 다른 값이 될 수 도 있을 것이다.
버퍼 사이즈가 결정되면, 마스터 단말기는 S109 단계에서 각 휴대 단말기에게 결정된 버퍼 사이즈를 통보한다. 그러면, 각 휴대 단말기들은 통보 받은 버퍼 사이즈를 이용하여 버퍼링 시간간격을 계산하고, 버퍼링 시간간격 계산이 완료되면, S110 단계에서 스트리밍 서버와 각각 통신채널을 형성한다. 여기서, 버퍼링 시간간격 계산은 각 휴대 단말기들이 버퍼 사이즈를 기반으로 계산하는 것으로, 우선순위에 있어서, 자신보다 앞선 우선순위를 가지는 휴대 단말기의 버퍼링 시간간격과 근거리 통신 속도를 고려하여 결정된다.
버퍼링 시간간격의 계산이 완료되면, 각 휴대 단말기는 S111 단계에서 앞서 설정한 버퍼 사이즈와 버퍼링 시간간격을 기반으로 스트리밍 컨텐츠 중 일부인 서브 컨텐츠를 수신하여 버퍼링한다. 이때, 각 휴대 단말기는 스트리밍 컨텐츠 중 자신의 버퍼링 시간간격에 해당하는 서브 컨텐츠를 수신하기 위하여 특정 프로토콜의 시간 범위를 조정할 수 있다.
다음으로, 마스터 단말기(A1)는 자신의 버퍼 사이즈만큼에 해당하는 서브 컨 텐츠를 모두 버퍼링하면, 수신된 서브 컨텐츠를 표시부에 출력하도록 제어한다. 설명의 편의상 마스터 단말기가 수신한 서브 컨텐츠를 제1 서브 컨텐츠라 명명하며, 그 다음 휴대 단말기들의 우선순위에 따라 버퍼링한 서브 컨텐츠들을 제2 내지 제N 서브 컨텐츠라고 가정하기로 한다. 그러면, 마스터 단말기(A1)는 버퍼링된 제1 서브 컨텐츠를 재생하기 위한 컨텐츠 재생 응용 프로그램을 활성화하여, 수신된 제1 서브 컨텐츠를 재생한다. 이하, 설명의 편의상 마스터 단말기(A1)가 재생하는 서브 컨텐츠를 M번째 서브 컨텐츠로 명명하기로 한다. 여기서, M은 순서를 지정할 수 있는 임의의 수가 될 수 있다. 상술한 바와 같이, 마스터 단말기(A1)는 S113 단계에서 M번째 서브 컨텐츠를 재생하고, S115 단계에서 재생이 완료되는지 여부를 확인한다. S115 단계에서 재생이 완료되지 않은 경우, 마스터 단말기(A1)는 S113 단계로 분기하여 M번째 서브 컨텐츠 재생을 제어한다. S115 단계에서 M번째 서브 컨텐츠 재생이 완료되면, 마스터 단말기(A1)는 S117 단계에서 종료 여부를 확인한다.
S117 단계에서, 종료에 대한 별도의 명령 수신이 없으면, 마스터 단말기(A1)는 S119 단계로 분기하여 다음번 서브 컨텐츠 즉, M+1번째 서브 컨텐츠를 가지고 있는 M+1번째 슬레이브 단말기로부터 M+1 번째 서브 컨텐츠를 수신한다. 그런 후, 마스터 단말기(A1)는 M+1번째 서브 컨텐츠를 M번째 서브 컨텐츠로 치환하고, S113 단계로 분기하여 M번째 서브 컨텐츠 재생을 제어한다. 여기서, M+1번째 서브 컨텐츠를 M번째 서브 컨텐츠로 치환하는 과정은 순서의 반복적인 과정 설명을 수학적으로 유도하기 위한 것으로, 별도의 치환과정은 생략될 수 있다.
한편, 상기 S119 단계에서, 각 슬레이브 단말기들(A2 ... An)은 스트리밍 서버로부터 서브 컨텐츠를 수신하여 버퍼링하는 시간과, 마스터 단말기(A1)에 서브 컨텐츠를 전송하는데 소요되는 시간을 고려하여 서브 컨텐츠를 마스터 단말기(A1)에 전송할 수 있다.
한편, 본 발명의 휴대 단말기들은 스트리밍 컨텐츠가 상기 휴대 단말기들의 전체 버퍼 사이즈보다 큰 경우, 마지막 슬레이브 단말기가 수신한 서브 컨텐츠 다음에 해당하는 서브 컨텐츠들을 우선순위별로 버퍼 사이즈만큼 수신하여 실시간 방송 컨텐츠나 대용량의 컨텐츠를 수신하여 재생할 수 있다.
본 발명의 실시 예에 따른 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템에서, 스트리밍 서버가 제공하는 서브 컨텐츠들의 비용 분배는 각 휴대 단말기들의 개수로 나누어 각 휴대 단말기에 부과될 수 있으며, 또한 스트리밍 서버의 분산 스트리밍 서비스 정책에 따라 정의될 수 있다.
상술한 바와 같이, 본 발명의 실시 예에 따른 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템은 메모리 잔여량을 기준으로 순서가 정의된 다수개의 휴대 단말기가 스트리밍 서버로부터 메모리 잔여량에 대비되는 크기의 서브 컨텐츠를 버퍼링하여, 마스터 단말기에서 재생시킴으로써, 컨텐츠 전송의 효율을 개선시킴과 아울러, 컨텐츠 재생 시, 집중도를 개선시킬 수 있다.
이상 본 발명을 몇 가지 바람직한 실시 예를 사용하여 설명하였으나, 이들 실시 예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술 분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위 에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.
도 1은 본 발명의 실시 예에 따른 분산 스트리밍 서비스 제공 시스템의 구성을 개략적으로 나타낸 도면,
도 2는 본 발명의 실시 예에 따른 휴대 단말기의 구조를 개략적으로 나타낸 블록도,
도 3은 본 발명의 실시 예에 따른 휴대 단말기들의 버퍼 사이즈 할당과 서브 컨텐츠 분할 수신을 설명하기 위한 도면,
도 4는 본 발명의 실시 예에 따른 마스터 단말기의 운용과정을 나타낸 순서도,
도 5는 본 발명의 실시 예에 따른 분산 스트리밍 서비스 시스템의 운용과정을 나타낸 신호 흐름도.

Claims (17)

  1. 마스터 단말기와 슬레이브 단말기를 포함하는 휴대 단말기들의 분산 스트리밍 서비스 제공 방법에 있어서,
    상기 마스터 단말기가 메모리 잔여량을 기준으로 각 휴대 단말기들의 버퍼 사이즈와 각 휴대 단말기들의 우선순위를 결정하는 과정;
    각 휴대 단말기들의 우선순위와 버퍼 사이즈를 기반으로 버퍼링 시간간격을 계산하는 과정;
    상기 각 휴대 단말기들이 상기 버퍼링 시간간격에 스트리밍 서버가 제공하는 스트리밍 컨텐츠의 일부에 해당하는 서브 컨텐츠들을 각각 수신하는 과정;
    상기 마스터 단말기가 상기 각 휴대 단말기들이 수신한 서브 컨텐츠들을 재생하는 과정;을 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  2. 청구항 1에 있어서,
    상기 스트리밍 컨텐츠가 상기 휴대 단말기들의 전체 버퍼 사이즈보다 큰 경우, 마지막 슬레이브 단말기가 수신한 서브 컨텐츠 다음에 해당하는 서브 컨텐츠들을 상기 우선순위별로 상기 버퍼 사이즈만큼 수신하는 과정을 더 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  3. 청구항 1에 있어서,
    상기 마스터 단말기가 메모리 잔여량을 기준으로 각 휴대 단말기들의 버퍼 사이즈와 각 휴대 단말기들의 우선순위를 결정하는 과정은
    상기 메모리 잔여량이 큰 휴대 단말기가 높은 우선순위를 가지도록 결정하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  4. 청구항 1에 있어서,
    상기 휴대 단말기들 간의 통신네트웍을 형성하는 과정;
    상기 휴대 단말기들의 메모리 잔여량에 대한 정보를 수집하는 과정;
    상기 메모리 잔여량을 각각 비교하여 가장 큰 메모리 잔여량을 가지는 휴대 단말기를 마스터 단말기로 결정하는 과정;을 더 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  5. 청구항 1에 있어서,
    상기 각 휴대 단말기들의 우선순위와 버퍼 사이즈를 기반으로 버퍼링 시간간격을 계산하는 과정은
    자신보다 높은 우선순위를 가지는 휴대 단말기의 버퍼링 시간간격과, 수신된 서브 컨텐츠를 상기 마스터 단말기에 전송하는 시간을 포함하여 계산하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  6. 청구항 1에 있어서,
    상기 각 휴대 단말기들이 상기 버퍼링 시간간격에 스트리밍 서버가 제공하는 스트리밍 컨텐츠의 일부에 해당하는 서브 컨텐츠들을 수신하는 과정은
    상기 각 휴대 단말기들이 상기 버퍼링 시간간격을 정의하는 프로토콜의 범위를 상기 버퍼링 시간간격에 대응시켜 조정하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  7. 청구항 1에 있어서,
    상기 마스터 단말기가 상기 각 휴대 단말기들이 수신한 서브 컨텐츠들을 재생하는 과정은
    상기 우선순위별로 구분되는 휴대 단말기들로부터 순위별로 해당 서브 컨텐츠들을 수신하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  8. 청구항 7에 있어서,
    상기 마스터 단말기가 상기 각 휴대 단말기들이 수신한 서브 컨텐츠들을 재생하는 과정은
    특정 우선순위를 가지는 휴대 단말기의 서브 컨텐츠 재생이 완료되기 이전에 상기 특정 우선순위 다음에 해당하는 우선순위를 가지는 휴대 단말기로부터 해당 서브 컨텐츠를 수신하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  9. 청구항 1에 있어서,
    상기 스트리밍 컨텐츠를 분산 스트리밍으로 수신하여 재생하는 서비스 메뉴를 선택하는 과정;
    다수개의 휴대 단말기들 중 특정 휴대 단말기가 스트리밍 서버에 접속하는 과정;
    상기 특정 휴대 단말기가 스트리밍 서버가 제공하는 상기 특정 스트리밍 컨텐츠를 선택하는 과정;을 더 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 방법.
  10. 휴대 단말기들의 분산 스트리밍 서비스 제공 시스템에 있어서,
    근거리 통신 네트웍을 형성하고, 메모리 잔여량을 기준으로 우선순위와 버퍼 사이즈가 결정되며, 결정된 버퍼 사이즈들로부터 각각의 버퍼링 시간간격을 계산한 후, 해당 버퍼링 시간간격 동안 스트리밍 컨텐츠의 일부에 해당하는 서브 컨텐츠들을 버퍼링하는 휴대 단말기들; 및
    상기 휴대 단말기들에게 상기 스트리밍 컨텐츠를 전송하는 스트리밍 서버;를 포함하는 것을 특징으로 하는 휴대 단말기들의 분산 스트리밍 서비스 제공 시스템.
  11. 청구항 10에 있어서,
    상기 휴대 단말기들은
    가장 큰 메모리 잔여량을 가지는 마스터 단말기;
    상기 마스터 단말기와 통신 채널을 형성하고, 상기 마스터 단말기로부터 우선순위와 버퍼 사이즈에 대한 정보를 수신하는 적어도 하나의 슬레이브 단말기;를 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 시스템.
  12. 청구항 11에 있어서,
    상기 마스터 단말기는
    상기 통신 네트웍을 형성하기 위한 제1 근거리 통신모듈;
    상기 스트리밍 서버로부터 상기 서브 컨텐츠를 수신하기 위한 제1 무선주파수부;
    상기 서브 컨텐츠를 임시저장하기 위한 제1 메모리;
    상기 서브 컨텐츠를 출력하기 위한 제1 표시부;
    상기 제1 근거리 통신모듈, 제1 상기 무선주파수부, 상기 제1 메모리 및 상기 제1 표시부를 각각 제어하고, 상기 휴대 단말기들의 메모리 잔여량을 기준으로 각 휴대 단말기들의 우선순위 및 버퍼 사이즈를 결정하는 제1 제어부;를 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 시스템.
  13. 청구항 12에 있어서,
    상기 슬레이브 단말기들은
    상기 결정된 우선순위와 버퍼 사이즈를 수신하기 위한 제2 근거리 통신모듈;
    상기 우선순위와 버퍼 사이즈를 이용하여 버퍼링 시간간격을 계산하는 제2 제어부;
    상기 제어부 제어에 따라 상기 계산된 버퍼링 시간간격에 상기 서브 컨텐츠를 수신하는 제2 무선주파수부;
    상기 서브 컨텐츠를 임시 저장하는 제2 메모리;를 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 시스템.
  14. 청구항 12에 있어서,
    상기 제1 메모리는
    상기 서브 컨텐츠들을 재생하기 위한 재생 응용 프로그램을 포함하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 시스템.
  15. 청구항 14에 있어서,
    상기 제1 제어부는
    상기 재생 응용 프로그램에 의해 재생되는 서브 컨텐츠가 재생 완료되기 이전에 현재 재생되는 서브 컨텐츠의 다음 우선순위를 가지는 휴대 단말기로부터 해당 서브 컨텐츠를 수신 저장하도록 제어하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 시스템.
  16. 청구항 13에 있어서,
    상기 제1 표시부는
    상기 마스터 단말기가 수신한 서브 컨텐츠와 상기 슬레이브 단말기들이 수신한 서브 컨텐츠를 우선순위에 따라 출력하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 시스템.
  17. 청구항 12에 있어서,
    상기 휴대 단말기는
    상기 스트리밍 컨텐츠가 상기 휴대 단말기들의 전체 버퍼 사이즈보다 큰 경우, 마지막 슬레이브 단말기가 수신한 서브 컨텐츠 다음에 해당하는 서브 컨텐츠들을 상기 우선순위별로 상기 버퍼 사이즈만큼 수신하는 것을 특징으로 하는 휴대 단말기의 분산 스트리밍 서비스 제공 시스템.
KR1020070126014A 2007-12-06 2007-12-06 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템 KR101472748B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020070126014A KR101472748B1 (ko) 2007-12-06 2007-12-06 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템
US12/328,303 US8041828B2 (en) 2007-12-06 2008-12-04 Method and system for distributed streaming service of portable devices
US14/057,792 USRE44989E1 (en) 2007-12-06 2013-10-18 Method and system for distributed streaming service of portable devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070126014A KR101472748B1 (ko) 2007-12-06 2007-12-06 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20090059263A true KR20090059263A (ko) 2009-06-11
KR101472748B1 KR101472748B1 (ko) 2014-12-15

Family

ID=40722818

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070126014A KR101472748B1 (ko) 2007-12-06 2007-12-06 휴대 단말기의 분산 스트리밍 서비스 제공 방법 및 시스템

Country Status (2)

Country Link
US (2) US8041828B2 (ko)
KR (1) KR101472748B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9715833B2 (en) * 2009-03-03 2017-07-25 Mobilitie, LLP System and method for wireless communication in an educational setting
US9232263B2 (en) * 2009-09-01 2016-01-05 International Business Machines Corporation Renderable content partitioning and portability
US8849819B2 (en) 2011-08-05 2014-09-30 Deacon Johnson System and method for controlling and organizing metadata associated with on-line content
US8718445B1 (en) 2013-09-03 2014-05-06 Penthera Partners, Inc. Commercials on mobile devices
US9244916B2 (en) * 2013-10-01 2016-01-26 Penthera Partners, Inc. Downloading media objects
CN106303287B (zh) * 2015-05-26 2019-06-25 中国移动通信集团公司 一种基于近场通信的多移动终端屏幕拼接方法、设备及系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060015904A1 (en) * 2000-09-08 2006-01-19 Dwight Marcus Method and apparatus for creation, distribution, assembly and verification of media
US6907501B2 (en) * 2002-01-25 2005-06-14 Ntt Docomo Inc. System for management of cacheable streaming content in a packet based communication network with mobile hosts
JP5021168B2 (ja) 2002-12-03 2012-09-05 シエル・インターナシヨネイル・リサーチ・マーチヤツピイ・ベー・ウイ 予混合圧縮着火(hcci)エンジンの性能を制御する方法及び装置
WO2004057455A2 (en) * 2002-12-20 2004-07-08 Koninklijke Philips Electronics N.V. Power saving method for portable streaming devices
US7085576B2 (en) * 2002-12-30 2006-08-01 Motorola, Inc. Method and apparatus for providing streaming information to a wireless mobile wireless device
KR101008619B1 (ko) * 2003-11-07 2011-01-17 엘지전자 주식회사 이동통신 단말기의 분산 다운로드 제어 시스템 및 그 방법
CN100355237C (zh) 2003-07-24 2007-12-12 Lg电子株式会社 用于在移动电话中再现多媒体内容的系统和方法
KR100662120B1 (ko) * 2003-10-20 2006-12-27 엘지전자 주식회사 홈 네트워킹에 의한 가전기기의 메모리 공용방법
WO2007073584A1 (en) * 2005-12-29 2007-07-05 Ozmiz Pty. Ltd. Method and system for displaying data on a mobile terminal
EP2005671B1 (en) * 2006-04-13 2011-06-08 Dolby Laboratories Licensing Corporation Estimating wireless processing device queue length and estimating signal reception quality in a wireless network
US20080109556A1 (en) * 2006-11-07 2008-05-08 Sony Ericsson Mobile Communications Ab Adaptive insertion of content in streaming media
US7865571B2 (en) * 2007-01-08 2011-01-04 Mspot, Inc. Method and apparatus for transferring digital content from a personal computer to a mobile handset
US8554784B2 (en) * 2007-08-31 2013-10-08 Nokia Corporation Discovering peer-to-peer content using metadata streams
US9047236B2 (en) * 2008-06-06 2015-06-02 Amazon Technologies, Inc. Client side stream switching

Also Published As

Publication number Publication date
US20090150558A1 (en) 2009-06-11
US8041828B2 (en) 2011-10-18
KR101472748B1 (ko) 2014-12-15
USRE44989E1 (en) 2014-07-01

Similar Documents

Publication Publication Date Title
CN103957227B (zh) 用于从个人计算机传送数字内容到移动手机的方法和设备
US20200177938A1 (en) Media broadcasting method, server, terminal device, and storage medium
US8880647B2 (en) Methods and systems for rapid data acquisition over the internet
JP5009911B2 (ja) メディアファイルによる携帯通信装置の更新
US8515338B2 (en) Systems and methods for synchronized playout of music on several personal digital music players
US7865572B2 (en) Method and apparatus for transferring digital content from a personal computer to a mobile handset
US8195572B2 (en) DRM content player and play method for portable terminal
USRE44989E1 (en) Method and system for distributed streaming service of portable devices
WO2021120892A1 (zh) 视频播放的控制方法、终端设备、服务器和存储介质
US20160337260A1 (en) Method and a media device for pre-buffering media content streamed to the media device from a server system
JP2015012612A (ja) 動画マルチメディアを利用した着信通知を提供するための方法およびシステム
JP5669818B2 (ja) マルチメディアコンテンツを受信及び送信するための方法並びに電子装置及びサーバー装置
CN109582274B (zh) 音量调节方法、装置、电子设备及计算机可读存储介质
KR102222375B1 (ko) 파일 관리 방법 및 그 전자 장치
KR20140054555A (ko) 알람 기능 운용 방법과 이를 지원하는 단말기
US20240137617A1 (en) Video playing method and apparatus, and storage medium
US20040229655A1 (en) Mobile terminal having time shift function and method thereof
WO2012017592A1 (ja) コンテンツ再生装置、コンテンツ再生方法、プログラム、及びコンテンツ配信システム
US20070067169A1 (en) Method for arbitrating audio data output apparatuses
JP2012060524A (ja) 再生装置、再生方法、及びプログラム
EP4096197A1 (en) Command buffering
JP2018026731A (ja) 情報処理装置及びその制御方法、コンピュータプログラム
KR20080093567A (ko) 이동통신 단말기 및 그의 동영상 목록 표시 방법
KR20160106346A (ko) 클라우드 스트리밍 서비스 시스템, 단말의 성능에 기반한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
EP1519529A1 (en) Content output device

Legal Events

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

Payment date: 20171129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181129

Year of fee payment: 5