KR101555792B1 - 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체 - Google Patents

멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체 Download PDF

Info

Publication number
KR101555792B1
KR101555792B1 KR20140168439A KR20140168439A KR101555792B1 KR 101555792 B1 KR101555792 B1 KR 101555792B1 KR 20140168439 A KR20140168439 A KR 20140168439A KR 20140168439 A KR20140168439 A KR 20140168439A KR 101555792 B1 KR101555792 B1 KR 101555792B1
Authority
KR
Grant status
Grant
Patent type
Prior art keywords
chunk
real
step
time
broadcast server
Prior art date
Application number
KR20140168439A
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
Grant date

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4722End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content

Abstract

본 발명은 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체에 관한 것이다. 본 발명에 따른 실시간 방송 서버로부터 시간 단위로 나뉜 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법은, 상기 실시간 방송 서버로부터 각 비트레이트에 대응되는 청크 주소를 적어도 하나 포함하는 플레이 리스트를 수신하는 단계와; 상기 수신한 플레이 리스트에 포함된 각 청크 주소를 이용하여 상기 실시간 방송 서버에 기 설정된 시작 청크 번호에 대응되는 청크부터 순차적으로 요청하여 수신하고 재생을 위해 임시 저장하는 단계와; 상기 실시간 방송 서버로부터 수신된 상기 시작 청크 번호에 대응되는 청크부터 순차적으로 재생을 시작하는 단계를 포함하는 단계를 포함하는 것을 특징으로 한다.

Description

멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체{COMMUNICATION APPARATUS FOR RECEIVING MULTIMEDIA CHUNK, CONTROL METHOD THEREOF, AND RECORDING MEDIUM FOR RECORDING PROGRAM FOR EXECUTING THE CONTROL METHOD}

본 발명은 실시간 방송 서버로부터 시간 단위로 나뉜 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체에 관한 것이다.

최근 기술의 발전과 더불어 실시간 멀티미디어 콘텐츠의 제공과 관련된 각종 서비스들이 등장하고 있다.

예를 들어 각 통신사 가입자는 자신의 통신 단말기를 이용하여 인터넷망의 서버에 접속하여 멀티미디어 콘텐츠를 다운로드 받을 수 있는 것이다. 일 예로 이동통신사 가입자는 자신의 스마트폰을 이용하여 웹 서버로부터 스트리밍 방식으로 실시간 동영상을 시청할 수 있다.

실시간 동영상 서버는 일반적으로 애플(APPLE)사가 주도한 HLS(HTTP LIVE STREAMING) 규격에 따라 동영상 스트리밍 방식으로 실시간 동영상 콘텐츠를 제공하고 있는데, 도 1은 이러한 HLS 규격에 따른 동영상 청크가 실시간으로 생성되어 실시간 동영상 서버에 저장되어 있는 상태를 나타낸 도면이다.

실시간 동영상 서버는 도 1에 도시된 바와 같이 제1 플레이 리스트(제1 m3u8 파일), 제2 플레이 리스트(제2 m3u8 파일), 적어도 하나의 청크를 구비할 수 있다. 여기서 청크는 어느 하나의 실시간 멀티미디어 콘텐츠의 일부에 해당하는 것으로서, 예를 들어 동일한 시간 단위로 쪼개어진 부분 콘텐츠에 해당할 수 있다. 실시간 동영상 서버는 특정 버퍼에 실시간 멀티미디어 콘텐츠로부터 생성한 기 설정된 개수의 청크를 저장해 두고, 새로운 청크를 생성할 때마다 가장 오래된 청크에 그 새로 생성한 청크를 덮어씌우는 방식으로 청크들을 관리한다. 따라서 실시간 방송 등은 N 개의 청크가 사이클링(cycling) 방식으로 생성되는 구조로 이루어진 것이다.

동 도면에 도시된 바와 같이 제1 플레이 리스트에(제1 m3u8 파일)는 각 비트 레이트(bit rate) 대응되는 제2 플레이 리스트(500kbps 화질의 제2 m3u8, 1000kbps 화질의 제2 m3u8, 1500kbps 화질의 제2 m3u8)가 포함되어 있을 수 있고, 그 각각의 제2 플레이 리스트(500kbps 화질의 제2 m3u8, 1000kbps 화질의 제2 m3u8, 1500kbps 화질의 제2 m3u8)에는 각 청크에 대응되는 청크 주소가 포함되어 있다.

따라서 사용자 통신 단말기는 먼저 제1 플레이 리스트를 수신하고, 그 중 어느 하나의 비트레이트에 대응되는 제2 m3u8 파일을 수신한 후, 해당 제2 m3u8 파일에 포함된 청크 주소를 이용하여 필요한 청크를 실시간 동영상 서버에 요청하여 수신하는 것이다.

통신 단말기는 바로 이전 청크를 수신할 때의 다운로드 속도를 판별하여 다음에 청크를 수신할 때의 비트레이트를 결정한다. 비트레이트가 결정되면 통신 단말기는 그 결정된 비트레이트에 대응되는 제2 플레이 리스트에서 필요한 청크 주소를 획득하고 그 획득된 청크 주소를 이용하여 실시간 동영상 서버로부터 청크를 요청하여 수신하는 것이다.

통신 단말기가 실시간 동영상 서버에 청크를 요청할 때는 단말기 모델별로 기 설정된 시작 청크 번호에 대응되는 청크부터 시작하는데, 이에 대해 도 2를 참조하여 설명하면 다음과 같다.

도 2는 실시간 동영상 서버에서 관리하고 있는 10개의 청크를 나타내고 있다. 앞서 설명한 바와 같이 실시간 동영상 서버는 소정 개수(도 2에서는 10개)의 청크를 유지하는데, 실시간 동영상 콘텐츠로부터 새로운 청크가 생성될 때마다 가장 오래된 청크를 제거하고 새로운 청크를 추가한다. 도 2에서 각 청크는 6초 분량의 부분 콘텐츠인 것을 일 예로 한다.

이때 통신 단말기에 시작 청크 번호가 '8'로 설정되어 있는 경우, 통신 단말기는 실시간 동영상 서버에 8번째 청크부터 요청하여 다운로드 받게 된다. 따라서 통신 단말기에는 8번째 청크, 9번째 청크, 10번째 청크가 저장되게 되고, 재생은 8번째 청크부터 이루어진다.

8번째 청크의 재생이 끝난 시점에 통신 단말기는 새로운 플레이 리스트를 수신하고, 그 플레이 리스트에 포함된 11번째 청크 주소를 이용하여 실시간 동영상 서버에 11번째 청크를 요청하여 다운로드 받게 되는데, 이때 통신 상황이 악화되는 경우 동영상 끊김 현상이 발생할 수 있다.

즉, 통신 단말기에는 현재 9번째 청크와 10번째 청크만이 저장되어 있는데 이는 12초의 여유가 있음을 의미한다. 그런데 통신 상황이 악화되어 11번째 청크를 수신하는데 12초가 경과하는 경우에는 동영상 재생에 끊김 현상이 발생하게 되는 것이다.

그렇다고 시작 청크 번호를 항상 도 2(b)와 같이 고정적으로'1'로 설정한 경우에는 동영상 재생 끊김 현상이 발생할 가능성은 줄일 수 있지만, 시간적으로 한참 지난 과거의 영상을 재생(도 2의 예에서 1분 전의 영상을 재생하는 것)하는 것이 되어서 예를 들어 1월1일 타종 행사 생방송과 같이 딜레이 없는 실시간 방송이 필요한 경우에는 큰 문제를 야기하게 된다.

그럼에도 종래의 통신 단말기는 시작 청크 번호가 고정적으로 설정되어 있어서, 사용자의 요구 또는 망 상태나 채널 장르 등의 상황에 맞게 능동적으로 조정되지 못하는 불편함이 있었다.

이 외에도 종래의 통신 단말기는 망 상태에 따라 특정 비트레이트에 대응되는 청크를 수신함에 있어서 여러 가지 비효율적인 면을 많이 가지고 있어서, 이에 대한 개선이 시급한 상황이다.

공개특허 제10-2013-0093810

http://helloworld.naver.com/helloworld/7122

본 발명은 상기한 종래의 문제점을 해결하기 위해 안출된 것으로서, 그 목적은 실시간 멀티미디어 청크를 수신함에 사용자의 요구 또는 망 상태나 채널 장르 등의 상황에 맞게 능동적으로 시작 청크 번호가 조정되도록 하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체를 제공하는 것이다.

본 발명의 다른 목적은 통신 망 상태에 따라 가장 적절한 비트레이트를 판단하지 못한 종래의 문제점을 개선한 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체를 제공하는 것이다.

상기한 목적을 달성하기 위해 본 발명에 따른 실시간 방송 서버로부터 시간 단위로 나뉜 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법은, 상기 실시간 방송 서버로부터 각 비트레이트에 대응되는 청크 주소를 적어도 하나 포함하는 플레이 리스트를 수신하는 단계와; 상기 수신한 플레이 리스트에 포함된 각 청크 주소를 이용하여 상기 실시간 방송 서버에 기 설정된 시작 청크 번호에 대응되는 청크부터 순차적으로 요청하여 수신하고 재생을 위해 임시 저장하는 단계와; 상기 실시간 방송 서버로부터 수신된 상기 시작 청크 번호에 대응되는 청크부터 순차적으로 재생을 시작하는 단계를 포함하되, 상기 단계는, 네트워크 상태를 판단한 결과 이전 상태보다 개선되고 있는 상태인 경우에는, (b1) 이전에 수신한 복수 개의 청크들의 다운로드 속도 평균을 산출하는 단계와; (b2) 상기 (b1) 단계에서 산출한 다운로드 속도 평균을 기초로 네트워크의 허용 비트레이트를 판단하는 단계와; (b3) 상기 (b2) 단계에서 판단된 네트워크의 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하는 단계를 포함하고, 네트워크 상태를 판단한 결과 이전 상태보다 악화되고 있는 상태인 경우에는 (b4) 바로 이전에 수신한 청크의 다운로드 속도를 기초로 네트워크의 허용 비트레이트를 판단하는 단계와;(b5) 상기 (b4) 단계에서 판단된 네트워크의 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하는 단계를 포함하는 것을 특징으로 한다.

또, 상기한 목적을 달성하기 위해 본 발명에 따른 실시간 방송 서버로부터 시간 단위로 나뉜 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법은, 상기 실시간 방송 서버로부터 각 비트레이트에 대응되는 청크 주소를 적어도 하나 포함하는 플레이 리스트를 수신하는 단계와; 상기 수신한 플레이 리스트에 포함된 각 청크 주소를 이용하여 상기 실시간 방송 서버에 기 설정된 시작 청크 번호에 대응되는 청크부터 순차적으로 요청하여 수신하고 재생을 위해 임시 저장하는 단계와; 상기 실시간 방송 서버로부터 수신된 상기 시작 청크 번호에 대응되는 청크부터 순차적으로 재생을 시작하는 단계를 포함하되, 상기 단계는, (b1) 이전에 수신한 청크의 다운로드 속도에 따른 네트워크의 허용 비트레이트를 판단하는 단계와; (b2) 상기 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하던 중 기 설정된 시간 동안의 해당 청크의 부분 수신량을 이용하여 네트워크 상태의 악화 여부를 판단하는 단계와; (b3) 상기 (b2) 단계의 판단 결과 네트워크 상태가 악화되었다고 판단하는 경우 수신되고 있던 해당 청크의 수신을 포기하고 새로운 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하는 단계를 포함하여 구성된다.

이상 설명한 바와 같이 본 발명에 따르면, 시작 청크 번호가 사용자의 요구 또는 망 상태나 채널 장르 등의 상황에 맞게 능동적으로 조정될 수 있어서, 다양한 실시간 멀티미디어 서비스에 대한 고객 만족도를 높일 수 있다.

또한 약전계와 같이 통신망 상황이 고품질로 안정화되어 있지 않은 상태의 경우에 멀티미디어 청크를 수신하는 속도와 멀티미디어 청크의 품질에 대한 적절한 타협점을 찾음으로써 고객들의 실시간 방송 시청과 관련한 불만을 최소화시킬 수 있다.

도 1은 종래의 HLS 규격에 따른 서비스 제공을 위해 실시간 방송 서버에 저장되고 있는 플레이 리스트와 청크를 나타낸 도면이고,
도 2는 청크의 시작 점이 각기 다른 청크 그룹의 일 예들을 나타낸 도면이고,
도 3은 본 발명의 일 실시예에 따른 통신 단말기를 포함하는 전체 통신 시스템의 개략 구성도이고,
도 4는 도 3의 통신 단말기의 기능 블록도이고,
도 5 내지 도 8은 본 발명의 일 실시예에 따른 제어 흐름도이다.

이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.

이하 본 발명에 따른 각 실시예는 본 발명의 이해를 돕기 위한 하나의 예에 불과하고, 본 발명이 이러한 실시예에 한정되는 것은 아니다. 특히 본 발명은 각 실시예에 포함되는 개별 구성, 개별 기능, 또는 개별 단계 중 적어도 어느 하나 이상의 조합으로 구성될 수 있다.

본 발명의 일 실시예에 따른 통신 단말기(100)를 포함하는 전체 통신 시스템의 개략 구성은 도 3에 도시된 바와 같다.

동 도면에 도시된 바와 같이 전체 통신 시스템은 통신 단말기(100)와 실시간 방송 서버(200)를 포함하여 구성될 수 있다.

여기서 실시간 방송 서버(200)는 실시간 멀티미디어 콘텐츠를 소정의 단위로 나누어 통신 단말기(100)에 전송하는 기능을 수행한다. 본 실시예에서 실시간 방송 서버(200)는 실시간 방송 콘텐츠를 시간 단위로 구분한 조각 즉, 청크(chunk)를 생성하여 통신 단말기(100)의 요청에 따라 제공하는 것을 일 예로 한다. 이때 실시간 방송 서버(200)는 청크 주소를 포함하는 플레이 리스트도 구비하여 통신 단말기(100)에 전송할 수도 있다.

여기서 실시간 방송 서버(200)는 6초 단위의 청크를 10개까지 생성하고 새로운 청크가 생성될 때마다 가장 오래된 청크를 삭제하고 새로 생성된 청크를 추가하는 방식으로 청크들을 관리하는 것으로 가정한다. 이 경우 플레이 리스트도 새로운 청크가 생성될 때마다 갱신될 수 있다.

플레이 리스트에는 각 비트레이트에 따른 청크 주소가 구분되어 포함되어 있을 수도 있는데, 여기서 비트레이트에 따른 청크 주소가 구분되어 포함되어 있다는 것은 어느 하나의 플레이 리스트에 직접 각 비트레이트에 따른 청크 주소가 모두 포함되어 있다는 것을 의미할 수도 있고, 또는 플레이 리스트가 제1 플레이 리스트와 제2 플레이 리스트로 구별된 상태에서 제1 플레이 리스트에는 각 비트레이트에 따른 복수 개의 제2 플레이 리스트가 포함되어 있고 각 제2 플레이 리스트에 해당 비트레이트에 따른 청크 주소가 포함되어 있는 경우를 의미할 수도 있다.

이처럼 실시간 방송 서버(200)는 동영상 라이브 스트리밍(Live Streaming) 방식으로 실시간 멀티미디어 콘텐츠를 제공할 수 있는데, 여기서 동영상 라이브 스트리밍이란 텔레비전 생방송처럼 촬영한 정보를 실시간으로 사용자의 동영상 플레이어로 보내 재생하도록 하는 방식을 말한다. 온 디맨드 스트리밍(On-Demand Streaming)에서는 촬영과 편집을 거쳐 동영상 파일을 제작한 다음 사용자의 요구가 있을 때 동영상을 재생할 수 있도록 하지만, 라이브 스트리밍에서는 비디오와 오디오를 실시간으로 인코딩해 많은 사용자에게 동시에 보낼 수 있어야 한다는 점에서 차이가 있다.

본 실시예에서 실시간 방송 서버(200)는 HLS(HTTP Live Streaming) 프로토콜을 이용하여 실시간 멀티미디어 콘텐츠를 제공하는 것을 일 예로 하는데, 여기서 HLS는 Apple에서 iOS 3.0과 QuickTime X를 위해 2009년에 내놓은 프로토콜이다. 이 프로토콜에서는 스트리밍 데이터를 MPEG-2 Transport Stream에 담아 시간 단위로 잘게 쪼개서(앞서 언급한 청크에 해당함) 전송한다. 그리고 어떤 파일을 재생해야 하는 지에 대한 정보는 m3u8 파일을 이용하여 통신 단말기(100)에 전달할 수 있다.

이러한 실시간 방송 서버(200)의 기능은 기 공지된 것이므로 보다 상세한 설명은 생략한다.

통신 단말기(100)는 상술한 실시간 방송 서버(200)에 청크 주소를 포함하는 플레이 리스트 및 청크를 수신하여 재생하는 기능을 수행하는데, 통신 단말기(100)는 유, 무선 통신 단말기(100)를 모두 포함하지만, 본 실시예에서는 도 3에 도시된 바와 같이 이동통신 단말기(100)인 것을 일 예로 한다.

여기서 통신 단말기(100)는 앞서 언급한 바와 같이 실시간 방송 서버(200)와 HLS(HTTP LIVE STREAMING) 규격에 따라 통신하는 것을 일 예로 한다.

이러한 통신 단말기(100)의 기능 블록은 도 4에 도시된 바와 같다.

동 도면에 도시된 바와 같이 통신 단말기(100)는 사용자 인터페이스부(140), 시작 위치 설정부(110), 요청 수신부(120), 재생부(130), 디스플레이부(150)를 포함하여 구성될 수 있다.

디스플레이부(150)는 메뉴표시는 물론이고, 실시간 멀티미디어 콘텐츠가 표시되는 것으로서, 예를 들어 전력 소모가 적은 LCD(Liquid Crystal Display)를 포함하여 구성될 수 있다.

사용자 인터페이스부(140)는 사용자의 명령을 입력받는 것으로서, 적어도 하나의 누름 버튼이 구비된 키 패드를 포함하여 구성될 수도 있고, 또는 터치스크린의 일부에 해당하는 터치 패드를 포함하여 구성될 수도 있다.

즉, 사용자는 사용자 인터페이스부(140)를 이용하여 메뉴 표시 조작이나 후술하는 시작 청크 번호를 선택하여 입력할 수 있다.

시작 위치 설정부(110)는 사용자의 선택 입력에 따라 시작 청크 번호를 설정하는 기능을 수행한다. 예를 들어 시작 위치 설정부(110)에는 소정의 저장부(미 도시함)가 구비되어 있어서 사용자에 의해 선택된 시작 청크 번호가 설정 저장될 수 있다.

여기서 시작 청크 번호는 동영상 수신 및 재생을 시작할 최초의 청크를 지정하기 위한 정보이다. 이에 대한 상세한 설명은 후술토록 한다.

다른 예로써, 시작 위치 설정부(110)는 네트워크 상태와 사용자에 의해 선택된 콘텐츠 장르 중 적어도 어느 하나에 따라 시작 청크 번호를 동적으로 설정할 수도 있다.

예를 들어 사용자는 사용자 인터페이스부(140)를 조작하여 시청하고자 하는 실시간 방송을 선택할 수 있는데, 통신 단말기(100)에는 각 실시간 방송마다의 장르 정보가 포함되어 있는 경우, 시작 위치 설정부(110)는 사용자에 의해 선택된 실시간 방송의 장르를 확인한 후 해당 장르에 적합하도록 시작 청크 번호를 설정하는 것이다.

예를 들어 실시간 방송의 장르가 "최신성"에 중점을 둔 장르와 "안정성"에 중점을 둔 장르로 구분되는 경우, 시작 위치 설정부(110)는 "최신성"에 중점을 둔 장르의 경우에는 시작 청크 번호를 '8', '9', '10'과 같이 높은 번호로 설정하고, "안정성"에 중점을 둔 장르의 경우에는 시작 청크 번호를 '1', '2', '3'등과 같이 낮은 번호로 설정할 수 있다.

또한, 시작 위치 설정부(110)는 네트워크(즉, 통신망)의 상태를 감지하여 네트워크의 상태가 양호한 경우(예를 들어 통신 트래픽이 낮거나 전파 수신 상태가 양호한 경우)에는 시작 청크 번호를 '8', '9', '10'과 같이 높은 번호로 설정하고, 네트워크의 상태가 양호하지 않은 경우(예를 들어 통신 트래픽이 높거나 전파 수신 상태가 양호하지 않은 경우)에는 시작 청크 번호를 '1', '2', '3'등과 같이 낮은 번호로 설정할 수 있다.

여기서 네트워크의 상태는 그 이전에 수신된 청크의 다운로드 속도를 기초로 판별할 수도 있다.

요청 수신부(120)는 실시간 방송 서버(200)로부터 소정 개수의 청크 주소를 포함하는 플레이 리스트를 수신하고, 그 수신한 플레이 리스트에 포함된 청크 주소를 이용하여 실시간 방송 서버(200)에 시작 위치 설정부(110)에 의해 설정된 시작 청크 번호에 대응되는 청크부터 순차적으로 요청하여 수신하고 재생을 위해 임시 저장하는 기능을 수행한다.

예를 들어 실시간 방송 서버(200)로부터 수신한 플레이 리스트에 10개의 청크 주소가 순차적으로 포함되어 있고 시작 위치 설정부(110)에 설정된 시작 청크 번호가 '8'인 경우, 요청 수신부(120)는 플레이 리스트에 포함된 10개의 청크 주소 중 8번째에 위치한 청크 주소부터 시작하여 9번째 청크 주소 및 10번째 청크 주소를 이용하여 실시간 방송 서버(200)에 해당 청크들을 요청하여 수신하는 것이다.

다른 예로써 시작 청크 번호가 '1'로 설정되어 있는 경우 요청 수신부(120)는 플레이 리스트에 포함된 청크 주소 중 첫 번째 청크 주소부터 시작하여 모든 청크 주소를 순차적으로 이용하여 실시간 방송 서버(200)로부터 청크들을 수신하는 것이다.

여기서 요청 수신부(120)는 실시간 방송 서버(200)로부터 플레이 리스트를 주기적으로(예를 들어 하나의 청크가 재생되는 시간 간격으로써 6초 간격) 실시간 방송 서버(200)에 요청하여 수신할 수 있다.

요청 수신부(120)는 실시간 방송 서버(200)로부터 수신한 청크들을 재생을 위해 일시 저장할 수 있다. 예를 들어 후술하는 바와 같이 수신한 청크들은 순차적으로 재생될 수 있는데, 이때 요청 수신부(120)는 현재 재생되고 있는 청크 이후에 재생되어야할 청크들은 실시간 방송 서버(200)로부터 수신되는 즉시 임시 저장해 놓을 수 있는 것이다.

요청 수신부(120)는 이전에 수신한 복수 개의 청크들의 다운로드 속도 평균을 산출하고, 그 산출한 다운로드 속도 평균을 기초로 네트워크의 허용 비트레이트를 판단하며, 그 판단된 네트워크의 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버(200)에 요청하여 수신할 수도 있다.

예를 들어 평균 산출 개수가 3개로 설정되어 있고, 현재 4 번째 청크를 다운로드 받아야할 상황이라면, 요청 수신부(120)는 1 번째 ~ 3 번째 청크들의 다운로드 속도 평균을 산출하고 그 산출한 다운로드 속도 평균을 기초로 네트워크의 허용 비트레이트를 판단하는 것이다. 여기서 1 번째 ~ 3 번째 청크들의 다운로드는 앞서 설명한 바와 같이 플레이 리스트에 포함된 1 번째 ~ 3 번째 청크 주소를 이용하여 다운로드 받는 것이다.

그 후 5 번째 청크를 다운로드 받아야할 경우에는 요청 수신부(120)는 2 번째 ~ 4 번째 청크들의 다운로드 속도 평균을 산출하고 그 산출한 다운로드 속도 평균을 기초로 네트워크의 허용 비트레이트를 판단하는 것이다.

허용 비트레이트가 판단되면 요청 수신부(120)는 그 판단된 네트워크의 허용 비트레이트에 대응되는 청크를 실시간 방송 서버(200)에 요청하여 수신한다.

구체적인 예를 든다면, 도 1에 도시된 바와 같이 플레이 리스트가 제1 플레이 리스트(즉, 제1 m3u8)와 제2 플레이 리스트(즉, 500kbps 화질의 제2 m3u8, 1000kbps 화질의 제2 m3u8, 1500kbps 화질의 제2 m3u8)로 구성되어 있는 경우, 요청 수신부(120)는 먼저 제1 m3u8에 포함된 3 개의 제2 m3u8 중, 500kbps 화질의 제2 m3u8 파일을 실시간 방송 서버(200)로부터 수신하고 그 500kbps 화질의 제2 m3u8 파일에 포함된 1 번째 ~ 3 번째 청크 주소를 이용하여 1 번째 ~ 3 번째 청크들을 다운로드 받은 후, 4 번째 청크를 수신할 때는 앞서 다운로드 받은 1 번째 ~ 3 번째 청크들의 다운로드 속도 평균을 이용하는 것이다.

일 예로 1 번째 ~ 3 번째 청크들의 다운로드 속도 평균이 1500kpbs 화질의 청크들을 수신하기에는 적절하지 않지만 1000kbps 화질의 청크를 수신하기에 적절한 경우, 요청 수신부(120)는 실시간 방송 서버(200)로부터 수신한 1000kbps 화질의 제2 m3u8 파일에 포함된 4 번째 청크 주소를 이용하여 4 번째 청크를 수신한다. 이 경우 1000kbps가 네트워크의 허용 비트레이트가 되는 것이다.

그 후, 5 번째 청크를 수신할 때에는 요청 수신부(120)는 2 번째 ~ 4 번째 청크들의 다운로드 속도 평균을 이용하여 네트워크의 허용 비트레이트를 판단하고 해당하는 청크를 실시간 방송 서버(200)에 요청하여 다운로드 받는다.

여기서 상술한 복수 개 청크들의 다운로드 평균을 내어 허용 비트레이트를 판단하는 것은 네트워크 상태가 개선되는 경우에만 적용하고, 네트워크 상태가 악화되는 경우에는 바로 이전에 다운로드한 청크의 다운로드 속도에 기초하여 허용 비트레이트를 판단할 수 있는 것이다.

즉, 요청 수신부(120)는 먼저 네트워크 상태가 개선되는지 악화되는지를 판단하고, 네트워크 상태가 개선되는 경우에는 앞서 설명한 과정 즉, 이전에 수신한 복수 개의 청크들의 다운로드 속도 평균을 산출하고 그 산출한 다운로드 속도 평균을 기초로 네트워크의 허용 비트레이트를 판단하며 그 판단된 네트워크의 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버(200)에 요청하여 수신하고, 반면에 네트워크 상태가 악화되는 경우에는 바로 이전에 수신한 청크의 다운로드 속도에 따라 네트워크의 허용 비트레이트를 판단한 후 해당 판단된 네트워크 허용 비트레이트에 대응되는 청크를 실시간 방송 서버(200)에 요청하여 수신할 수도 있다.

네트워크 상태가 개선되는지 악화되는지 이전에 다운로드된 청크들의 다운로드 속도를 이용하여 판단할 수 있다. 예를 들어 1000kbps 화질의 6 번째 청크를 다운로드 받았는데, 그 6 번째 청크의 다운로드 속도가 기 설정한 속도를 초과한 경우에는 네트워크 상태가 개선되었다고 판단하고, 만일 그 6 번째 청크의 다운로드 속도가 기 설정한 속도 이하가 되는 경우에는 네트워크 상태가 악화되었다고 판단하는 것이다.

이렇게 네트워크 상태에 따라 다른 기준을 세우는 이유는 청크의 다운로드에 과도한 시간이 걸리는 것을 방지하기 위함이다. 즉, 네트워크 상태가 개선되었다고 섣부르게 판단하여 높은 화질의 청크를 요청하여 다운로드 받게 되면 네트워크 상태가 다시 악화되는 경우 해당 청크의 다운로드 시간이 과다하게 발생할 수 있고, 또한 반대로 네트워크 상태가 악화된 경우에는 기다릴 필요없이 즉시 낮은 화질의 청크를 요청하여 다운로드하는 것이 청크의 다운로드 시간을 줄일 수 있는 방안이기 때문이다.

상술한 설명에서는 판단된 허용 비트레이트에 대응되는 청크를 수신하는 것을 일 예로 하였지만, 요청 수신부(120)는 판단된 허용 비트레이트에 기 설정된 마진율을 나눈 값에 대응되는 청크를 실시간 방송 서버(200)에 요청하여 수신할 수도 있다.

예를 들어 이전 청크를 받은 속도가 1000kbps를 넘으면 다음 청크는 1000kpbs 짜리 영상을 받고, 1500kbps도 넘으면 1500kbps 짜리 영상을 받을 수도 있지만, 약전계 상태에서는 언제 망이 다시 안 좋아질지 모르기 때문에 1000kbps가 조금 넘는다고 바로 1000kbps 짜리 청크를 받는 것보다는 500kbps 짜리 청크를 두 개 수신하는 것이 안정성 측면에서 훨씬 이득이다.

따라서 마진율이 1.5로 설정되어 있는 경우 요청 수신부(120)는 이전 청크의 다운로드 속도가 1500kbps를 초과하는 경우 1500kpbs 짜리 청크 대신에 1500/1.5=1000에 해당하는 즉, 1000kbps 짜리 청크를 요청하여 수신하는 것이다.

이는 앞서 설명한 복수 개의 청크를 평균내어 판단하는 경우에도 적용될 수 있음은 물론이다.

또한, 요청 수신부(120)는 청크의 다운로드 중에 네트워크 상태가 악화되었다고 판단하는 경우 그 다운로드 받던 청크의 수신을 중단하고 새로운 비트레이트(예를 들어 가장 낮은 비트레이트)에 대응되는 청크를 실시간 방송 서버(200)에 요청하여 수신할 수도 있다.

예를 들어 요청 수신부(120)는 바로 이전에 수신한 청크의 다운로드 속도에 따른 네트워크의 허용 비트레이트를 판단하고 그 판단된 허용 비트레이트에 대응되는 청크를 실시간 방송 서버(200)에 요청하여 수신하던 중 기 설정된 시간 동안의 해당 청크의 부분 수신량을 이용하여 네트워크 상태의 악화 여부를 판단하고, 네트워크 상태가 악화되었다고 판단하는 경우 수신되고 있던 해당 청크의 수신을 포기하고 새로운 비트레이트(즉, 플레이 리스트에 있는 가장 낮은 비트레이트)에 대응되는 청크를 실시간 방송 서버(200)에 요청하여 수신할 수 있는 것이다.

가령 1000kbps 화질의 6 번째 청크를 수신하던 중에 해당 청크의 수신량을 기초로 판단한 결과 다운로드 속도가 1000kbps에 미치지 못하는 경우 요청 수신부(120)는 그 1000kbps 화질의 청크 수신을 종료하고, 500kbps 화질의 6 번째 청크를 다시 실시간 방송 서버(200)에 요청하여 수신하는 것이다.

이 또한 앞서 설명한 복수 개의 청크를 평균내어 판단하는 경우에도 적용될 수 있음은 물론이다.

한편, 재생부(130)는 실시간 방송 서버(200)로부터 수신된 시작 청크 번호에 대응되는 청크부터 순차적으로 재생을 시작한다. 예를 들어 재생부(130)는 시작 청크 번호가 '8'로 설정되어 있어서 플레이 리스트에 8번째로 포함되어 있는 청크 주소부터 시작하여 청크들을 다운로드 받는 경우, 그 8번째 청크 주소에 대응되는 청크부터 재생을 시작하고, 다른 예로써, 시작 청크 번호가 '1'로 설정되어 있어서 플레이 리스트에 첫 번째로 포함되어 있는 청크 주소부터 시작하여 청크들을 다운로드 받는 경우, 그 첫 번째 청크 주소에 대응되는 청크부터 재생을 시작하는 것이다.

이하에서는 도 5를 참조하여 본 발명의 제1 실시예에 따른 통신 단말기(100)의 제어 흐름을 설명한다.

사용자의 요청에 따라 통신 단말기(100)는 시작 청크 번호 설정 메뉴를 표시한다(단계 S1).

사용자의 설정 입력이 있는 경우(단계 S3) 통신 단말기(100)는 시작 청크 번호를 설정하여 저장한다(단계 S5). 도 5에서는 사용자의 입력에 따라 시작 청크 번호를 설정하는 것을 일 예로 하였으나, 앞서 언급한 바와 같이 통신 단말기(100)는 통신망 상태나 사용자에 의해 선택된 방송 장르에 따라 시작 청크 번호를 자동으로 설정할 수도 있다.

통신 단말기(100)는 또한 사용자가 실시간 방송 수신을 명령하는 경우, 실시간 방송 서버(200)에 플레이 리스트를 요청하여 수신하고(단계 S7), 그 플레이 리스트에 포함되어 있는 청크 주소를 이용하여 앞서 설정된 시작 청크 번호에 대응되는 청크부터 다운로드 받고 임시 저장한다(단계 S9).

또한 통신 단말기(100)는 시작 청크 번호에 대응되는 청크가 다운로드 된 이후에는 해당 청크를 재생하고(단계 S11), 실시간 방송 서버(200)에 플레이 리스트를 새로 요청하여 수신한다(단계 S13). 여기서 플레이 리스트는 실시간 방송 서버(200)에서 새로운 청크가 생성될 때마다 갱신되므로 다시 다운로드 받는 것이다.

통신 단말기(100)는 새로운 플레이 리스트에 포함된 청크 주소를 이용하여 순서에 따른 새로운 청크를 실시간 방송 서버(200)에 요청하여 수신 및 저장한다(단계 S15).

예를 들어 단계 S7에서 수신한 플레이 리스트에 1 번째 ~ 10 번째 청크 주소가 포함되어 있어서 1 번째 ~ 10 번째 청크를 실시간 방송 서버(200)에 요청하여 다운로드 받은 후에는, 단계 S13에서 수신한 플레이 리스트에 포함된 11 번째 청크 주소를 이용하여 실시간 방송 서버(200)에 11 번째 청크를 요청하여 다운로드 받는다.

이어서 통신 단말기(100)는 다음 순서의 청크를 재생한다. 예를 들어 현재 3 번째 청크를 재생한 상태인 경우 통신 단말기(100)는 4 번째 청크를 재생시킬 수 있다.

이러한 과정 즉, 새로운 플레이 리스트를 수신하여 새로운 청크를 수신하고, 순서대로 청크를 재생하는 과정은 반복될 수 있다.

이하에서는 도 6을 참조하여 본 발명의 제2 실시예에 따른 통신 단말기(100)의 제어과정을 설명한다.

본 실시예에서 플레이 리스트에는 각 비트레이트에 따른 청크 주소가 구분되어 포함되어 있다고 가정한다.

통신 단말기(100)는 실시간 방송 서버(200)에 플레이 리스트를 요청하여 수신하는데(단계 S21), 플레이 리스트에 각 비트레이트에 대응되는 제1 청크 주소, 제2 청크 주소와, 제3 청크 주소가 포함되어 있는 경우 통신 단말기(100)는 제일 낮은 비트레이트에 대응되는 제1 청크, 제2 청크와, 제3 청크를 실시간 방송 서버(200)에 요청하여 수신하고, 임시 저장한다(단계 S23).

이어서 통신 단말기(100)는 제1 청크를 재생한다(단계 S25).

이때 제1 청크 내지 제3 청크의 다운로드 속도 평균을 산출하고(단계 S27), 그 산출된 다운로드 속도 평균에 대응되는 허용 비트레이트를 판단한다(단계 S29).

새로운 플레이 리스트를 실시간 방송 서버(200)에 요청하여 수신한 후(단계 S31), 통신 단말기(100)는 그 새로운 플레이 리스트에 포함된 청크 주소를 이용하여 허용 비트레이트에 대응되는 제4 청크를 실시간 방송 서버(200)에 요청하여 수신하고 임시 저장한다(단계 S33).

지금까지 제1 청크만이 재생된 상태이므로, 통신 단말기(100)는 제2 청크를 재생하고(단계 S35), 제2 청크, 제3 청크와 제4 청크의 다운로드 속도 평균을 산출한 후(단계 S37), 그 산출된 다운로드 속도 평균에 대응되는 허용 비트레이트를 판단한다(단계 S39).

통신 단말기(100)는 다시 새로운 플레이 리스트를 실시간 방송 서버(200)에 요청하여 수신한 후(단계 S41), 단계 S39에서 판단된 허용 비트레이트에 대응되는 제5 청크를 실시간 방송 서버(200)에 요청하여 수신하고 저장한다(단계 S43).

이이서 통신 단말기(100)는 현재까지 제2 청크가 재생되었으므로 제3 청크를 재생한다(단계 S45).

이후에 수신한 제4 청크 및 제5 청크를 재생할 수 있는데, 이는 앞서 제1 청크 내지 제3 청크를 재생하는 과정과 차이가 없으므로 더 이상의 설명은 생략한다.

이하에서는 도 7을 참조하여 본 발명의 제3 실시예에 따른 통신 단말기(100)의 제어 과정을 설명한다. 본 실시예에서도 도 6과 마찬가지로 플레이 리스트에는 각 비트레이트에 따른 청크 주소가 구분되어 포함되어 있다고 가정한다.

우선, 본 실시예를 설명함에 있어서 통신 단말기(100)에는 실시간 방송 서버(200)로부터 수신한 제1 청크, 제2 청크와, 제3 청크가 저장되어 있는 상태라고 가정한다.

먼저, 통신 단말기(100)는 수신된 제1 청크를 재생시킨다(단계 S55).

이어서 통신 단말기(100)는 제3 청크가 수신되었을 때의 다운로드 속도를 참조하여 네트워크 허용 비트레이트를 판단한다(단계 S57). 즉, 현재 통신망에서 이용 가능한 최대의 비트레이트가 얼마인지를 판단하는 것이다.

또한 통신 단말기(100)는 새로운 플레이 리스트를 실시간 방송 서버(200)에 요청하여 수신하고(단계 S59), 허용 비트레이트를 마진율로 나눈 값에 대응되는 제4 청크를 새로운 플레이 리스트에 포함된 청크 주소를 이용하여 실시간 방송 서버(200)에 요청하여 수신한 후 저장한다(단계 S61).

이어서 제1 청크 다음 순번인 제2 청크를 재생시킨다(단계 S63).

그리고 통신 단말기(100)는 제4 청크의 다운로드 속도에 따른 네트워크 허용 비트레이트를 판단하고(단계 S65), 새로운 플레이 리스트를 실시간 방송 서버(200)에 요청하여 수신한다(단계 S67).

새로 판단된 허용 비트레이트를 마진율로 나눈 값에 대응되는 제5 청크를 새로 수신된 플레이 리스트에 포함된 청크 주소를 이용하여 실시간 방송 서버(200)에 요청하여 수신한 후 저장한다(단계 S69).

이어서 통신 단말기(100)는 제2 청크 다음 순번인 제3 청크를 재생시킨다(단계 S71).

상술한 과정은 제4 청크, 제5 청크 등 순차적으로 청크를 재생하는 과정에서 반복적으로 이루어질 수 있다.

이하에서는 도 8을 참조하여 본 발명의 제4 실시예에 따른 통신 단말기(100)의 제어 과정을 설명한다. 우선, 본 실시예에서 도 7을 참조한 실시예와 마찬가지로 실시간 방송 서버(200)로부터 수신한 제1 청크, 제2 청크와, 제3 청크가 통신 단말기(100)에 저장되어 있는 상태라고 가정한다.

이 상태에서 통신 단말기(100)는 제1 청크를 재생시킨다(단계 S85).

이어서 통신 단말기(100)는 제3 청크가 수신되었을 때의 다운로드 속도를 참조하여 네트워크 허용 비트레이트를 판단한다(단계 S87).

그리고 통신 단말기(100)는 새로운 플레이 리스트를 실시간 방송 서버(200)에 요청하여 수신하고(단계 S89), 앞서 판단된 네트워크 허용 비트레이트에 대응되는 제4 청크를 새로운 플레이 리스트에 포함된 제4 청크 주소를 이용하여 실시간 방송 서버(200)에 요청하여 수신한다(단계 S91).

이때 통신 단말기(100)는 제4 청크 수신 중 네트워크 상태의 악화 여부를 판단하는데(단계 S93), 예를 들어 제4 청크의 전체 데이터 중에서 기 설정된 시간 동안 다운로드된 양을 확인하여 네트워크 상태의 악화 여부를 판단할 수 있다.

만일 네트워크 상태가 악화되지 않은 경우에는(단계 S95) 통신 단말기(100)는 수신 완료된 제4 청크를 저장한 후(단계 S96) 순번에 따라 제2 청크를 재생시키고(단계 S99), 네트워크 상태가 악화된 경우에는(단계 S95) 통신 단말기(100)는 현재 비트레이트 품질을 가진 제4 청크의 수신을 중단한 후(단계 S97) 제일 낮은 비트레이트에 대응되는 제4 청크를 실시간 방송 서버(200)에 다시 요청하여 수신 및 저장한다(단계 S98).

한편, 상술한 각 실시예를 수행하는 과정은 소정의 기록 매체(예를 들어 컴퓨터로 판독 가능한)에 저장된 프로그램에 의해 이루어질 수 있음은 물론이다.

또한, 본 발명은 상기한 특정 실시예에 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 여러 가지로 변형 및 수정하여 실시할 수 있는 것이다. 이러한 변형 및 수정이 첨부되는 특허청구범위에 속한다면 본 발명에 포함된다는 것은 자명할 것이다.

100 : 통신 단말기 200 : 실시간 방송 서버
110 : 시작 위치 설정부 120 : 요청 수신부
130 : 재생부 140 : 사용자 인터페이스부
150 : 디스플레이부

Claims (3)

  1. 실시간 방송 서버로부터 시간 단위로 나뉜 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법에 있어서,
    (a) 상기 실시간 방송 서버로부터 각 비트레이트에 대응되는 청크 주소를 적어도 하나 포함하는 플레이 리스트를 수신하는 단계와;
    (b) 상기 수신한 플레이 리스트에 포함된 각 청크 주소를 이용하여 상기 실시간 방송 서버에 기 설정된 시작 청크 번호에 대응되는 청크부터 순차적으로 요청하여 수신하고 재생을 위해 임시 저장하는 단계와;
    (c) 상기 실시간 방송 서버로부터 수신된 상기 시작 청크 번호에 대응되는 청크부터 순차적으로 재생을 시작하는 단계를 포함하되,
    상기 (b) 단계는,
    네트워크 상태를 판단한 결과 이전 상태보다 개선되고 있는 상태인 경우에는, (b1) 이전에 수신한 복수 개의 청크들의 다운로드 속도 평균을 산출하는 단계와; (b2) 상기 (b1) 단계에서 산출한 다운로드 속도 평균을 기초로 네트워크의 허용 비트레이트를 판단하는 단계와; (b3) 상기 (b2) 단계에서 판단된 네트워크의 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하는 단계를 포함하고,
    네트워크 상태를 판단한 결과 이전 상태보다 악화되고 있는 상태인 경우에는 (b4) 바로 이전에 수신한 청크의 다운로드 속도를 기초로 네트워크의 허용 비트레이트를 판단하는 단계와;(b5) 상기 (b4) 단계에서 판단된 네트워크의 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하는 단계를 포함하는 것을 특징으로 하는 통신 단말기의 제어방법.
  2. 실시간 방송 서버로부터 시간 단위로 나뉜 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법에 있어서,
    (a) 상기 실시간 방송 서버로부터 각 비트레이트에 대응되는 청크 주소를 적어도 하나 포함하는 플레이 리스트를 수신하는 단계와;
    (b) 상기 수신한 플레이 리스트에 포함된 각 청크 주소를 이용하여 상기 실시간 방송 서버에 기 설정된 시작 청크 번호에 대응되는 청크부터 순차적으로 요청하여 수신하고 재생을 위해 임시 저장하는 단계와;
    (c) 상기 실시간 방송 서버로부터 수신된 상기 시작 청크 번호에 대응되는 청크부터 순차적으로 재생을 시작하는 단계를 포함하되,
    상기 (b) 단계는,
    (b1) 이전에 수신한 청크의 다운로드 속도에 따른 네트워크의 허용 비트레이트를 판단하는 단계와;
    (b2) 상기 허용 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하던 중 기 설정된 시간 동안의 해당 청크의 부분 수신량을 이용하여 네트워크 상태의 악화 여부를 판단하는 단계와;
    (b3) 상기 (b2) 단계의 판단 결과 네트워크 상태가 악화되었다고 판단하는 경우 수신되고 있던 해당 청크의 수신을 포기하고 새로운 비트레이트에 대응되는 청크를 상기 실시간 방송 서버에 요청하여 수신하는 단계를 포함하는 것을 특징으로 하는 통신 단말기의 제어방법.
  3. 제1항 또는 제2항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
KR20140168439A 2014-11-28 2014-11-28 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체 KR101555792B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20140168439A KR101555792B1 (ko) 2014-11-28 2014-11-28 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20140168439A KR101555792B1 (ko) 2014-11-28 2014-11-28 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체

Publications (1)

Publication Number Publication Date
KR101555792B1 true KR101555792B1 (ko) 2015-09-25

Family

ID=54249121

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20140168439A KR101555792B1 (ko) 2014-11-28 2014-11-28 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체

Country Status (1)

Country Link
KR (1) KR101555792B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101640452B1 (ko) * 2015-12-01 2016-07-18 (주)판도라티비 스트리밍 미디어 서비스 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010531590A (ja) 2007-07-02 2010-09-24 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010531590A (ja) 2007-07-02 2010-09-24 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101640452B1 (ko) * 2015-12-01 2016-07-18 (주)판도라티비 스트리밍 미디어 서비스 장치 및 방법

Similar Documents

Publication Publication Date Title
US6782550B1 (en) Program guide with a current-time bar
US8532464B2 (en) Methods and systems for use in controlling playback of content in relation to recorded content
US20100115123A1 (en) Apparatus and methods for broadcasting
US20100180289A1 (en) System and/or method for distributing media content and providing an option to maintain an advertising experience
US20050091690A1 (en) Method and system for controlling recording and playback of interactive applications
US20100199312A1 (en) Meta channel based media system control technolgy
US20100199318A1 (en) Meta channel network-based content download technology
US20090292819A1 (en) System and method for adaptive segment prefetching of streaming media
US20070174866A1 (en) Rule-based playlist engine
US20100115575A1 (en) System and method for recording and distributing media content
US20110107374A1 (en) Media content watch list systems and methods
US20110145856A1 (en) Controlling ad delivery for video on-demand
US20130311670A1 (en) Enforcement of trick-play disablement in adaptive bit rate video content delivery
US20140026052A1 (en) Systems and methods for rapid content switching to provide a linear tv experience using streaming content distribution
US8762564B1 (en) Method and system for dynamically selecting, assembling and inserting content into stream media
US20120284765A1 (en) Sharing of Subscriber-Recorded Digital Video Recorder Content
JP2004140584A (ja) コンテンツ配信・再生システム、広告コンテンツ挿入方法及びクライアント端末
US8701145B1 (en) Commercials on mobile devices
US20090161765A1 (en) Enabling Trick Plays during VBR Playback of a CBR Transmitted Media File
US20090282454A1 (en) Electronic devices and methods that insert addressable chapter marks relative to advertising content in video streams
CN1558665A (zh) 一种网络多媒体信息快速播放方法及相应的机顶盒设备
CN101345853A (zh) 一种获取视频资源截取时间点的方法及系统
US20140250230A1 (en) Media manifest file generation for adaptive streaming cost management
US20150325268A1 (en) Downloading videos with commercials to mobile devices
US20140297881A1 (en) Downloading and adaptive streaming of multimedia content to a device with cache assist

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant