KR101671311B1 - 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법 - Google Patents

클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법 Download PDF

Info

Publication number
KR101671311B1
KR101671311B1 KR1020140023622A KR20140023622A KR101671311B1 KR 101671311 B1 KR101671311 B1 KR 101671311B1 KR 1020140023622 A KR1020140023622 A KR 1020140023622A KR 20140023622 A KR20140023622 A KR 20140023622A KR 101671311 B1 KR101671311 B1 KR 101671311B1
Authority
KR
South Korea
Prior art keywords
audio data
video data
data
audio
encoded video
Prior art date
Application number
KR1020140023622A
Other languages
English (en)
Other versions
KR20150101838A (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 KR1020140023622A priority Critical patent/KR101671311B1/ko
Priority to PCT/KR2015/001920 priority patent/WO2015130126A1/ko
Publication of KR20150101838A publication Critical patent/KR20150101838A/ko
Application granted granted Critical
Publication of KR101671311B1 publication Critical patent/KR101671311B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/18Arrangements for synchronising broadcast or distribution via plural systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/02Arrangements for generating broadcast information; Arrangements for generating broadcast-related information with a direct linking to broadcast information or to broadcast space-time; Arrangements for simultaneous generation of broadcast information and broadcast-related information
    • H04H60/07Arrangements for generating broadcast information; Arrangements for generating broadcast-related information with a direct linking to broadcast information or to broadcast space-time; Arrangements for simultaneous generation of broadcast information and broadcast-related information characterised by processes or methods for the generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream

Abstract

본 발명은 비디오 데이터와 오디오 데이터의 역다중화 과정 및 비디오 데이터와 오디오 데이터의 동기화 과정 없이 바로 디코딩할 수 있도록 함으로써 클라우드 스트리밍 서비스의 대기 시간(Latency)를 최소화할 수 있는 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법에 관한 것으로서, 클라우드 서비스 장치가, 사용자 장치에서 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 동기를 맞추어 전송하되, 상기 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 순차 전송하고, 사용자 장치는 상기 클라우드 스트리밍 서비스 장치로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하고, 수신 순서에 따라서 상기 부호화된 비디오 데이터 및 오디오 데이터를 복호화하여 출력하도록 구현된다.

Description

클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법 {Cloud stream service system, apparatus and cloud streaming service method thereof}
본 발명은 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법에 관한 것으로서, 더욱 상세하게는 비디오 데이터와 오디오 데이터의 역다중화 과정 및 비디오 데이터와 오디오 데이터의 동기화 과정 없이 바로 디코딩할 수 있도록 함으로써 클라우드 스트리밍 서비스의 대기 시간(Latency)를 최소화할 수 있는 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법에 관한 것이다.
이동통신망 및 단말기 사양의 발전에 따라, 이동통신단말기는 종래의 단순한 통신장치 또는 정보 제공 장치의 범주를 벗어나 현대인의 필수 소지품이 되었고, 토탈 엔터테인먼트 기기로 진화해 가고 있는 추세에 있다.
최근에는 성능이 낮은 클라이언트 단말기가 대용량의 영상 처리가 포함된 컨텐츠를 이용하기 어렵다는 점을 해결할 수 있는, 원격지에 있는 클라우드 서버(Cloud server)를 통해 해당 데이터를 처리하도록 하고, 그 처리된 결과 화면만을 클라이언트 단말기에서 수신하여 디스플레이하는 클라우딩 컴퓨팅(Cloud computing) 기술이 사용되고 있다.
따라서, 클라우드 컴퓨팅 환경에서는 개별 기술에 대한 전문성 없이도 서비스를 이용하는 형태로 IT(Information Technology) 환경을 구축하고 이용할 수 있게 되었다.
특히, 클라우드 컴퓨팅 기술을 기반으로, 게임, VOD, 실시간 방송 컨텐츠 등을 서버 측에서 실행한 후, 그 실행 화면을 스트리밍 방식으로 사용자 장치로 전송하여, 사용자 장치에서는 입력 및 출력만 이루어지게 함으로써, 사용자 장치의 사양 및 성능에 관계없이 사용자가 원하는 컨텐츠를 이용할 수 있도록 하는 것을 클라우드 스트리밍 서비스라 한다.
그런데, 통신망을 통해 비디오 데이터 및 오디오 데이터가 결합된 멀티미디어 데이터를 스트리밍 방식으로 전송할 경우, 네트워크 전송 대역폭, 단말의 멀티미디어 데이터 처리 능력, 동기화 등 여러 문제들이 존재한다.
특히, 비디오 데이터와 오디오 데이터의 동기화 문제를 위하여, 기존의 멀티미디어 스트리밍 서비스 시스템들은 타임 스탬프값을 이용한다.
그러나, 이러한 방법은 실제 동기화가 수행되는 시스템에 대한 성능 평가가 필요하고, 타임 체크로 인한 시스템 자원의 낭비를 발생시킨다. 또한, 비디오/오디오 데이터를 인코딩하는 시점과 비디오/오디오 신호를 디코딩하는 시점의 시간 값의 차이를 일정하게 유지, 또는 비디오/오디오 디코딩 시점과 실제 표현 시점의 시간값 차이를 일정하게 유지하도록 하여 두 차이값이 일정 임계치를 넘거나 작은 경우 프레임 스킵이나 반복하여 동기를 맞추는 경우는 시간 값을 일정하게 유지하기 위하여 많은 계산과 반복을 생성시키며, 스킵으로 인한 지터의 발생을 초래할 수 있다.
또한, 기존의 스트리밍 서비스에서는, 멀티미디어 데이터를 전송하기 위하여, 비디오 데이터 및 오디오 데이터를 각각의 압축 프로토콜에 따라서 부호화한 후 다중화하여 전송하기 때문에, 사용자 장치 측에서, 수신된 스트림을 비디오 데이터와 오디오 데이터로 구분하는 역다중화 과정이 반드시 필요하다.
따라서, 클라우드 스트리밍 서비스를 제공하는데 있어서, 이러한 역다중화 및 동기화 처리에 따른 레이턴시(Latency)가 발생할 수밖에 없는 문제점이 있다.
한국등록특허 제10-0226528호, 1999년 07월 28일 등록 (명칭: 다중화 압축 화상/음성 데이터의 복호장치)
이에 본 발명은 동영상의 비디오 데이터 및 오디오 데이터를 클라우드 스트리밍 서비스하는데 있어서, 비디오 데이터와 오디오 데이터의 역다중화 과정 및 비디오 데이터와 오디오 데이터의 동기화 과정 없이 바로 디코딩할 수 있도록 함으로써 클라우드 스트리밍 서비스의 대기 시간(Latency)를 최소화할 수 있는 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법을 제공하고자 한다.
본 발명은 상술한 과제를 해결하기 위한 수단으로서, 통신망을 통해서 접속한 사용자 장치로 요청된 컨텐츠를 전송하는 서비스 통신부; 및 사용자 장치가 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 동기를 맞추어 전송하되, 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 상기 부호화된 비디오 데이터 및 오디오 데이터를 순차 전송하는 스트리밍 제어부를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치를 제공한다.
본 발명에 따른 클라우드 스트리밍 서비스 장치는, 비디오 데이터 및 오디오 데이터를 각각 부호화하여 출력하는 부호화부, 또는 비디오 데이터 및 오디오 데이터, 혹은 부호화된 비디오 데이터 및 오디오 데이터를 저장하는 서비스 저장부를 더 포함할 수 있다.
더하여, 본 발명에 따른 클라우드 스트리밍 서비스 장치는, 서비스 통신부를 통해서 사용자 장치와 두 개의 통신 채널을 연결하고, 상기 스트리밍 제어부가 상기 두 개의 통신 채널로 상기 부호화된 비디오 데이터 및 오디오 데이터를 각각 전송하도록 하거나, 서비스 통신부를 통해서 사용자와 장치와 하나의 통신 채널을 연결하고, 스트리밍 제어부가 하나의 통신 채널을 통해서 부호화된 비디오 데이터 및 오디오 데이터를 교대로 전송할 수 있다. 이때 본 발명에 의한 클라우드 스트리밍 서비스 장치의 스트리밍 제어부는, 부호화된 비디오 데이터 및 오디오 데이터를 전송 시, 비디오 데이터와 오디오 데이터를 구분할 수 있는 식별자를 더 포함하여 전송할 수 있다.
더하여, 본 발명에 따른 클라우드 스트리밍 서비스 장치는, 실시간 방송 데이터를 수신하여 상기 부호화부로 제공하는 실시간 방송 수신부를 더 포함할 수 있다.
더하여, 본 발명은 상술한 과제를 해결하기 위한 다른 수단으로서, 클라우드 스트리밍 서비스 장치에 접속하여, 클라우드 스트리밍 서비스 장치로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하고, 수신된 부호화된 비디오 데이터 및 오디오 데이터를 구분하여 비디오 디코딩부 및 오디오 디코딩부로 각각 전달하는 네트워크 수신부; 재생 시간에 맞추어 네트워크 수신부로부터 전달되는 부호화된 비디오 데이터를 순서대로 복호화하여 출력하는 비디오 디코딩부; 및 재생 시간에 맞추어 네트워크 수신부로부터 전달된 부호화된 오디오 데이터를 순서대로 복호화하여 출력하는 오디오 디코딩부를 포함하는 클라우드 스트리밍 서비스를 위한 사용자 장치를 제공할 수 있다.
본 발명에 따른 사용자 장치에 있어서, 비디오 디코딩부 및 오디오 디코딩부는, 동기화 처리 없이 네트워크 수신부로부터 전달된 순서대로 비디오 데이터 및 오디오 데이터를 각각 복호화할 수 있다.
여기서, 비디오 디코딩부는 네트워크 수신부로부터 전달된 부호화된 비디오 데이터를 저장하는 피딩 버퍼; 복호화중인 비디오 데이터를 저장하는 디코딩 버퍼; 및 복호화된 비디오 데이터를 저장하는 출력 버퍼를 포함하고, 오디오 디코딩부는 네트워크 수신부로부터 전달된 부호화된 오디오 데이터를 저장하는 피딩 버퍼; 복호화중인 오디오 데이터를 저장하는 디코딩 버퍼; 및 복호화된 오디오 데이터를 저장하는 출력 버퍼를 각각 포함할 수 있다.
더하여 본 발명에 따른 클라우드 스트리밍 서비스를 위한 사용자 장치에 있어서, 네트워크 수신부는 서로 다른 채널을 통해서 상기 부호화된 비디오 데이터 및 오디오 데이터를 각각 수신하며, 수신된 채널을 통해 부호화된 비디오 데이터와 오디오 데이터를 구분하거나, 부호화된 비디오 데이터 및 오디오 데이터와 함께, 데이터 종류를 구분하는 식별자를 더 수신하고, 수신한 식별자를 이용하여 부호화된 비디오 데이터와 오디오 데이터를 구분할 수 있다.
더하여 본 발명은 상술한 과제를 해결하기 위한 또 다른 수단으로서, 사용자 장치가 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 동기를 맞추어 전송하되, 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 순차 전송하는 클라우드 스트리밍 서비스 장치; 및 클라우드 스트리밍 서비스 장치로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하고, 수신 순서에 따라서 상기 부호화된 비디오 데이터 및 오디오 데이터를 복호화하여 출력하는 사용자 장치를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 시스템을 제공한다.
또한, 본 발명은 상술한 과제를 해결하기 위한 또 다른 수단으로서, 클라우드 스트리밍 서비스 장치가 사용자 장치에서 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 상기 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 순차 전송하는 단계; 및 상기 사용자 장치가 동기화 처리 없이, 클라우드 스트리밍 서비스 장치로부터 재생 시간에 맞추어 수신되는 부호화된 비디오 데이터 및 오디오 데이터를 복호화하여 출력하는 단계를 포함하는 클라우드 스트리밍 서비스 방법을 제공한다.
본 발명에 따른 클라우드 스트리밍 서비스 방법에 있어서, 전송하는 단계는, 부호화된 비디오 데이터 및 오디오 데이터를 서로 다른 통신 채널을 통해 각각 전송하거나, 부호화된 비디오 데이터 및 오디오 데이터를 교대로 전송하되, 비디오 데이터와 오디오 데이터를 구분할 수 있는 식별자만을 더 포함하여 전송할 수 있다.
더하여 본 발명은 상술한 클라우드 스트리밍 서비스 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체를 더 제공한다.
본 발명은 클라이언트 스트리밍 서비스 장치에서, 사용자 장치가 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 동기를 맞추어 전송하되, 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 상기 부호화된 비디오 데이터 및 오디오 데이터를 순차 전송함으로써, 상기 사용자 장치 측에서 역다중화 처리 및 비디오 및 오디오 신호 간의 동기화 처리없이 수신되는 대로, 바로 복호화하여 출력할 수 있으며, 그 결과, 역다중화 처리 및 동기화 처리에 소요되는 대기 시간을 줄일 수 있다.
도 1은 본 발명에 따른 클라우드 스트리밍 서비스 시스템에 나타낸 블럭도이다.
도 2는 본 발명에 따른 클라우드 스트리밍 서비스 장치의 구성을 나타낸 블럭도이다.
도 3은 본 발명에 따른 사용자 장치의 구성을 나타낸 블럭도이다.
도 4는 본 발명에 따른 클라우드 스트리밍 서비스 방법을 나타낸 메시지 흐름도이다.
도 5 및 도 6은 본 발명에 따른 클라우드 스트리밍 서비스 방법을 설명하기 위한 도면이다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
아울러, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
먼저, 도 1은 본 발명에 따른 클라우드 스트리밍 서비스 시스템에 나타낸 블럭도이다.
도 1을 참조하면, 본 발명에 따른 클라우드 스트리밍 서비스 시스템은, 통신망(10)을 통해서 연결된 클라우드 스트리밍 서비스 장치(100) 및 하나 이상의 사용자 장치(200)를 포함하여 이루어진다.
본 발명에 따른 클라우드 스트리밍 서비스 시스템은, 클라우드 스트리밍 서비스 장치(100)가, 사용자 장치(200)에서 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 동기를 맞추어 전송하되, 사용자 장치(200)에서의 재생 시간에 맞추어 프레임 단위로 상기 부호화된 비디오 데이터 및 오디오 데이터를 순차 전송함으로써, 상기 사용자 장치 측에서 역다중화 처리 및 비디오 및 오디오 신호 간의 동기화 처리없이 수신되는 대로 복호화하여 출력할 수 있으며, 그 결과, 역다중화 처리 및 동기화 처리에 소요되는 시간을 줄임으로써 사용자의 대기 시간을 최소화하는 것이다.
이러한 클라우드 스트리밍 서비스 시스템에 있어서, 클라우드 스트리밍 서비스 장치(100)는, 통신망(10)을 통해서 하나 이상의 사용자 장치(200)로 소정의 컨텐츠를 서비스하기 위한 서비스 제공자의 장치이다. 특히, 클라우드 스트리밍 서비스 장치(100)는 클라우드 컴퓨팅 기술을 기반으로 상기 컨텐츠를 서비스하는 것으로서, 사용자 장치(200)의 입력 신호에 따라서 게임, VOD, 실시간 방송 등 다양한 컨텐츠를 실행하고, 그 실행 결과를 스트리밍 방식으로 상기 사용자 장치(200)로 전송한다. 이때, 상기 실행 화면은 비디오 데이터 및 오디오 데이터를 포함할 수 있는 것으로서, 상기 클라우드 스트리밍 서비스 장치(100)는 상기 비디오 데이터 및 오디오 데이터를 각각의 압축 프로토콜에 따라서 부호화하여 전송한다.
특히 본 발명에 있어서, 상기 클라우드 스트리밍 서비스 장치(100)는 상기 비디오 데이터 및 오디오 데이터를 프레임 단위로 부호화하되, 부호화된 비디오 데이터 및 오디오 데이터를 다중화 처리 없이 비트 스트림 그대로 사용자 장치(200)로 전송한다.
아울러, 상기 클라우드 스트리밍 서비스 장치(100)는 상기 프레임단위의 부호화된 비디오 데이터 및 오디오 데이터를 사용자 장치(200)에서의 재생 시간에 맞추어 순차 전송한다. 예를 들어, 동영상의 압축율이 30fps(frame per second)인 경우, 상기 클라우드 스트리밍 서비스 장치(100)는 재생 시간에 맞추어 대략 33msec 주기로 부호화된 비디오 데이터 및 오디오 데이터를 전송할 수 있다. 아울러, 클라우드 스트리밍 서비스 장치(100)는 전송하는 비디오 데이터 및 오디오 데이터의 동기를 맞추어 전송하는 것이 바람직하다. 이때, 비디오 데이터 및 오디오 데이터를 일정 주기로 교대로 전송할 수 있다. 예를 들어, 비디오 데이터와 오디오 데이터 간의 데이터량을 기반으로 3번의 비디오 데이터를 전송 후에, 오디오 데이터를 1번 전송하는 것을 방식으로 교대로 전송할 수 있다. 그러나, 이는 일 실시 예에 불과하며 다양한 전송 방식을 이용할 수 있다.
예를 들어, 상기 상기 부호화된 비디오 데이터 및 오디오 데이터는 다중화되지 않고 비트 스트림 그대로 전송하기 때문에, 사용자 장치(200) 측에서 비디오 데이터와 오디오 데이터를 구분할 수 있도록 하기 위하여, 본 발명의 일 실시 예에서, 상기 클라우드 스트리밍 서비스 장치(100)는 상기 사용자 장치(200)와 서로 다른 두 개의 채널을 연결하고, 상기 두 개의 채널을 통해서 상기 부호화된 비디오 데이터와 오디오 데이터를 각각 전송한다. 즉, 두 개의 채널 중 하나로는 부호화된 비디오 데이터를 전송하고, 나머지 채널로는 부호화된 오디오 데이터를 전송한다. 또한, 본 발명의 다른 실시 예에서, 상기 클라우드 스트리밍 서비스 장치(100)는 비디오 데이터와 오디오 데이터를 구분하는 식별자를 설정하고, 상기 부호화된 비디오 데이터 및 오디오 데이터에 각각 해당 데이터가 비디오 데이터인지 오디오 데이터인지를 나타내는 식별자만을 더 부가하여 전송할 수 있다. 여기서 식별자는 예를 들어, 플래그(Flag)로 표현될 수 있다.
이에, 사용자 장치(200)는 상기 클라우드 스트리밍 서비스 장치(100)에 접속하여, 클라우드 스트리밍 서비스 장치(100)로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하면, 수신된 비디오 데이터 및 오디오 데이터를 그대로 각각 디코딩하여 출력할 수 있다.
즉, 사용자 장치(200)는 헤더 파싱을 통한 역다중화 처리나 동기화 처리를 수행할 필요없이, 구분되어 전송되는 부호화된 비디오 데이터 및 오디오 데이터를 수신되는 대로 복호화하여 출력한다.
여기서, 상술한 클라우드 스트리밍 서비스 장치(100)와 사용자 장치(200)를 연결하여 데이터를 전달하는 통신망(10)은, 현재 이용되거나 현재 개발 중으로 향후 이용 가능한 하나 이상의 통신 방식을 포함하여 이루어질 수 있다. 예를 들어, 통신망(10)은 WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax)와 같은 무선 통신, HSDPA(High Speed Downlink Packet Access), CDMA, LTE(Long Term Evolution) 등과 같은 이동통신, 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coax), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신 방식 중 적어도 하나에 따른 통신망 들의 결합으로 이루어질 수 있다.
따라서, 상술한 클라우드 스트리밍 서비스를 처리하기 위한 사용자 장치(200)는, 사용자가 이용하는 다양한 정보통신기기 중, 통신망(10)을 통해 통신 가능하다면 어떠한 것이라도 가능하다. 예를 들어, 사용자 장치(200)는, 멀티미디어 단말기, 유선 단말기, 고정형 단말기 및 IP(Internet Protocol) 단말기 등의 다양한 단말기에 적용될 수 있다. 또한, 클라이언트 단말기는 휴대폰, 스마트폰과 같은 이동통신단말기뿐만 아니라, PMP(Portable Multimedia Player), MID(Mobile Internet Device), 데스크톱PC(Desktop), 태블릿컴퓨터(Tablet PC), 노트북(Note book), 넷북(Net book) 등 다양한 장치가 될 수 있다.
이하 도 2 및 도 3를 참조하여 상기 클라우드 스트리밍 서비스 장치(100) 및 사용자 장치(200)의 구성 및 작용을 더 구체적으로 설명한다.
도 2는 본 발명에 따른 클라우드 스트리밍 서비스 장치의 구성을 나타낸 블럭도이다.
도 2를 참조하면, 본 발명에 따른 클라우드 스트리밍 서비스 장치(100)는 서비스 통신부(110)와, 스트리밍 제어부(120)와, 부호화부(130)와, 서비스 저장부(140)와, 실시간 방송 수신부(150)와, 클라우드 컴퓨팅 처리부(160)를 포함하여 이루어질 수 있다.
상기 서비스 통신부(110)는 통신망(10)을 통해 하나 이상의 사용자 장치(200)와 통신하기 위한 구성이다. 이러한 서비스 통신부(110)는 하나 이상의 전송 프로토콜을 기반으로 데이터를 송수신할 수 있다.
구체적으로 상기 서비스 통신부(110)는 서비스를 요청한 사용자 장치(200)와 통신 채널을 형성하고, 상기 형성된 통신 채널을 통해서 요청된 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 구분하여 상기 사용자 장치(200)로 전송한다. 더 구체적으로, 본 발명의 일 실시 예에서 상기 서비스 통신부(110)는 상기 사용자 장치(200)와 두 개의 통신 채널을 형성한 후, 상기 부호화된 비디오 데이터 및 오디오 데이터를 각각 할당된 통신 채널을 통해서 전송한다. 상기 두 개의 통신 채널은 포트 값을 달리하여 구분될 수 있다. 이때, 비디오 데이터가 전송되는 통신 채널과 오디오 데이터가 전송되는 통신 채널이 구분되어 있기 때문에, 사용자 장치(200)는 통신 채널을 기반으로 비디오 데이터와 오디오 데이터를 구분할 수 있다.
또한, 본 발명의 다른 실시 예에서, 상기 서비스 통신부(110)는 데이터 종류, 예를 들어, 비디오 데이터와 오디오 데이터를 구분하는 식별자를 상기 부호화된 비디오 데이터 및 오디오 데이터와 함께 전송한다. 이 경우, 사용자 장치(200)는 수신된 데이터에 포함된 식별자를 이용하여 비디오 데이터와 오디오 데이터를 구분할 수 있다. 상기 식별자는 예를 들어, 비디오와 오디오를 각각 지정하는 플래그(Flag)가 될 수 있다.
다음으로, 스트리밍 제어부(120)는 클라우드 스트리밍 서비스를 제어하기 위한 구성이다. 구체적으로 상기 스트리밍 제어부(120)는 상기 서비스 통신부(110)를 통해 접속된 사용자 장치(200)의 서비스 요청에 따라서, 상기 사용자 장치(200)가 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 사용자 장치(200)로 전송한다. 특히, 본 발명에 따른 스트리밍 제어부(120)는 상기 부호화된 비디오 데이터 및 오디오 데이터를 서로 동기를 맞추어 사용자 장치(200)로 전송하는데, 상기 부호화된 비디오 데이터 및 오디오 데이터를 재생 전에 미리 전송하는 것이 아니라, 상기 사용자 장치(200)에서의 재생 시간에 맞추어 프레임 단위로 상기 부호화된 비디오 데이터 및 오디오 데이터를 순차 전송한다. 예를 들어, 상기 스트리밍 제어부(120)는 압축율이 30fps인 동영상을 전송한다고 할 때, 특정 프레임에 대응하는 부호화된 비디오 데이터 및 오디오 데이터를 전송한 후, 33msec 후에 다음 프레임의 부호화된 비디오 데이터 및 오디오 데이터를 전송할 수 있다. 특히, 본 발명에 따른 스트리밍 제어부(120)는 부호화된 비디오 데이터 및 오디오 데이터에 대한 패킷화 및 다중화 처리 없이, 부호화된 비트 스트림 그대로 전송한다.
아울러, 상기 스트리밍 제어부(120)는 사용자 장치(200)에서 수신된 데이터가 비디오 데이터인지 오디오 데이터인지 구분할 수 있도록 부호화된 비디오 데이터 및 오디오 데이터에 데이터 종류를 구분할 수 있는 식별자를 포함시킬 수 있다.
다음으로, 상기 부호화부(130)는, 상기 부호화된 비디오 데이터 및 오디오 데이터를 생성하기 위한 구성이다. 즉, 부호화부(130)는 상기 사용자 장치(200)에서 요청한 컨텐츠의 비디오 데이터 및 오디오 데이터를 소정의 압축 프로토콜에 따라서 부호화한다. 이때, 비디오 데이터 및 오디오 데이터의 압축 방식은 서로 상이할 수 있다. 또한, 상기 부호화부(130)는 상기 서비스 저장부(140), 상기 실시간 방송 수신부(150), 및 클라우드 컴퓨팅 처리부(160)중 적어도 하나로부터 비디오 데이터 및 오디오 데이터를 전달받아 부호화를 수행할 수 있다.
상기 서비스 저장부(140)는 본 발명에 따른 클라우드 스트리밍 서비스 장치(100)의 동작에 필요한 데이터 및 프로그램을 저장하기 위한 구성으로서, 서비스 실행을 위한 프로그램 및 데이터들을 저장할 수 있다. 더 구체적으로, 서비스 저장부(140)는 사용자 장치(100)에 서비스할 컨텐츠 데이터를 저장할 수 있다. 이때, 상기 컨텐츠 데이터는 부호화 전의 비디오 데이터 및 오디오 데이터를 포함할 수 있으며, 경우에 따라서 상기 컨텐츠 데이터는 부호화된 비디오 데이터 및 오디오 데이터를 포함할 수 있다.
아울러, 본 발명에 따른 클라우드 스트리밍 서비스 장치(100)는 실시간으로 방송되는 컨텐츠를 사용자 장치(200)에 서비스할 수 있다.
이를 위하여, 상기 실시간 방송 수신부(150)는 외부 장치, 예를 들어, CATV 또는 IPTV 등의 방송 서비스 장치로부터 실시간으로 방송되는 컨텐츠를 수신할 수 있다.
아울러, 앞서 설명한 바와 같이, 클라우드 스트리밍 서비스는, 서버측에서 사용자가 요청한 컨텐츠를 대신 실행하거나 재생한 후, 그 출력(비디오 및 오디오)를 사용자 장치(200)로 전송하는 서비스이다.
이를 위하여, 본 발명에 따른 클라우드 스트리밍 서비스 장치(100)는 클라우드 컴퓨팅 처리부(160)을 더 포함할 수 있다.
상기 클라우드 컴퓨팅 처리부(160)는 사용자 장치(300)가 요청한 컨텐츠를 사용자 장치(300)를 대신하여 실행하거나 재생한 후, 그에 따른 비디오 데이터 및/또는 오디오 데이터를 출력한다. 이때, 상기 클라우드 컴퓨팅 처리부(160)는 사용자 장치(300)로부터 전송된 입력 신호에 따라서 상기 컨텐츠의 실행 또는 재생을 수행한다.
따라서, 사용자 장치(300)에서 요청된 컨텐츠가 게임 등의 어플리케이션을 포함하는 경우, 해당 컨텐츠는 클라우드 컴퓨팅 처리부(160)에서 실행하고, 그 실행 결과로 출력된 비디오 데이터 및 오디오 데이터를 부호화부(130)를 통해 부호화한 후, 스트리밍 제어부(120)를 통해서 사용자 장치(200)로 전송하게 된다.
다른 예로, 사용자 장치(300)에서 요청된 컨텐츠가 실시간 방송을 포함하는 경우, 해당 컨텐츠는 실시간 방송 수신부(150)로 수신되어, 부호화부(130)를 통해 부호화된 후, 스트리밍 제어부(120)를 통해서 사용자 장치(200)로 전송된다.
아울러, 사용자 장치(300)에서 요청한 컨텐츠는 서로 다른 종류의 컨텐츠를 하나 이상 포함할 수 있다. 예를 들어, 실시간 방송 및 채팅 어플리케이션을 포함할 수 있다. 이에, 상기 클라우드 컴퓨팅 처리부(160)는, 서비스 저장부(140)에 하나 이상의 컨텐츠의 출력을 믹싱하여 출력할 수 있다.
따라서, 상기 클라우드 스트리밍 서비스 장치(100)는, 서비스 통신부(100)와, 스트리밍 제어부(120)와, 부호화부(130)와, 서비스 저장부(140)와, 실시간 방송 수신부(150)와, 클라우드 컴퓨팅 처리부(160) 중 둘 이상의 구성 간의 연동을 통해서, 본 발명에 따른 클라우드 스트리밍 서비스를 제공하게 된다.
다음으로, 도 3은 본 발명에 따른 사용자 장치(200)의 구성을 나타낸 블럭도이다.
도 3을 참조하면, 본 발명에 따른 사용자 장치(200)는, 네트워크 수신부(210)와, 비디오 디코딩부(220)와, 오디오 디코딩부(230)를 포함하여 이루어질 수 있다.
참고로, 도 3에서는 본 발명에 따른 클라우드 스트리밍 서비스를 위해 필요한 구성 요소를 기능 단위로 개시한 것으로, 사용자 장치(200)는 이외에도 다양한 구성을 포함할 수 있으며, 상술한 구성, 하드웨어, 소프트웨어, 및 하드웨어와 소프트웨어의 조합으로 구현될 수 있다.
네트워크 수신부(210)는, 통신망(10)을 통해서 클라우드 스트리밍 서비스 장치(100)에 접속하여 데이터를 수신하기 위한 구성이다.
구체적으로, 상기 네트워크 수신부(210)는, 상기 클라우드 스트리밍 서비스 장치(100)로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하고, 수신된 부호화된 비디오 데이터 및 오디오 데이터를 구분하여 비디오 디코딩부(220) 및 오디오 디코딩부(230)로 각각 전달한다. 여기서, 네트워크 수신부(210)는 수신된 데이터에 대한 역다중화를 수행하는 것이 아니라, 수신된 데이터가 비디오 데이터인지 오디오 데이터인지를 구분하여, 그대로 비디오 디코딩부(220)로 전달하거나 오디오 디코딩부(230)로 전달한다. 본 발명의 일 실시 예에 있어서, 네트워크 수신부(210)는, 서로 다른 채널을 통해서 상기 부호화된 비디오 데이터 및 오디오 데이터를 각각 수신하며, 수신된 채널을 통해 부호화된 비디오 데이터와 오디오 데이터를 구분하거나, 상기 부호화된 비디오 데이터 및 오디오 데이터와 함께, 데이터 종류를 구분하는 식별자를 더 수신하고, 상기 수신한 식별자를 이용하여 부호화된 비디오 데이터와 오디오 데이터를 구분할 수 있다.
이러한 동작을 위하여, 네트워크 수신부(210)는 통신망(10)을 통해 수신한 데이터를 저장하는 네트워크 버퍼(211)를 포함한다.
다음으로, 비디오 디코딩부(220) 및 오디오 디코딩부(230)는 각각 부호화된 비디오 데이터 및 오디오 데이터를 해당 압축 알고리즘에 따라서 복호화하기 위한 구성이다. 이때, 상기 비디오 디코딩부(220) 및 오디오 디코딩부(230)는 네트워크 수신부(210)로부터 전달된 비디오 데이터와 오디오 데이터를 별도의 동기화 처리 없이, 수신되는 대로 복호화하여 출력한다. 이때, 상기 네트워크 수신부(210)로 수신된 부호화된 비디오 데이터 및 오디오 데이터는, 프레임 단위로 재생 시간에 맞추어 전송되는 것이므로, 상기 비디오 디코딩부(220) 및 오디오 디코딩부(230) 간의 동기화 처리 없이도 비디오 데이터와 오디오 데이터의 동기화가 이루어지며 재생 시점에 맞추어 출력될 수 있다.
참고로, 상기 비디오 디코딩부(220)는, 상기 네트워크 수신부(210)로부터 전달된 부호화된 비디오 데이터를 저장하는 피딩 버퍼(221)와, 복호화중인 비디오 데이터를 저장하는 디코딩 버퍼(222)와, 복호화된 비디오 데이터를 저장하는 출력 버퍼(223)를 포함하고, 상기 오디오 디코딩부(230)는, 상기 네트워크 수신부(210)로부터 전달된 부호화된 오디오 데이터를 저장하는 피딩 버퍼(231)와, 복호화중인 오디오 데이터를 저장하는 디코딩 버퍼(232)와, 복호화된 오디오 데이터를 저장하는 출력 버퍼(233)를 포함하며, 기존의 동기화 처리를 위한 PTS 버퍼 등은 불필요하다.
이어서 상술한 바와 같이 구성된 클라우드 스트리밍 서비스 장치(100) 및 사용자 장치(200)의 연동을 통해 이루어지는 클라우드 스트리밍 서비스 방법을, 도 4의 메시지 흐름도를 참조하여 설명한다.
도 4에서, 사용자 장치(200)가 클라우드 스트리밍 서비스 장치(100)에 접속하여 서비스를 요청하고, 이에 대응하여 상기 클라우드 스트리밍 서비스 장치(100)가 요청된 컨텐츠를 제공하는 것으로 가정한다.
도 4를 참조하면, 접속한 사용자 장치(100)의 요청에 따라서, 클라우드 스트리밍 서비스 장치(100)는, 요청된 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 각각 프레임 단위로 재생 시간에 맞추어 사용자 장치(200)로 전송한다(S105, S110). 물론, 도 4에 도시되어 있지는 않으나, 클라우드 스트리밍 서비스 장치(100)는 상기 부호화된 비디오 데이터 및 오디오 데이터를 전송하기 위하여, 실시간 방송 수신부(150)를 통해 실시간 방송을 수신하고, 클라우드 컴퓨팅 처리부(160)를 통해서 요청된 컨텐츠를 실행하거나 재생하고, 상기 실시간 방송 및 컨텐츠의 실행 화면을 믹싱하는 등의 처리를 더 수행할 수 있다.
그리고, 클라우드 스트리밍 서비스 장치(100)는 이러한 처리를 통해 최종 전송할 비디오 데이터 및 오디오 데이터를 프레임 단위로 부호화하여 사용자 장치(100)의 재생 시간에 맞추어 전송한다. 예를 들어, 동영상의 압축율이 30fps(frame per second)인 경우, 상기 클라우드 스트리밍 서비스 장치(100)는 재생 시간에 맞추어 대략 33msec 주기로 부호화된 비디오 데이터 및 오디오 데이터를 전송할 수 있다. 아울러, 클라우드 스트리밍 서비스 장치(100)는 전송하는 비디오 데이터 및 오디오 데이터의 동기를 맞추어 전송하는 것이 바람직하다.
여기서, 상기 비디오 데이터 및 오디오 데이터는 프레임 단위로 부호화하되, 다중화 처리 없이 부호화된 비트 스트림 그대로 각각 전송하되, 사용자 장치(200)에서 비디오 데이터와 오디오 데이터를 구분할 수 있도록 전송한다.
이를 위하여, 본 발명의 일 실시 예에서, 상기 클라우드 스트리밍 서비스 장치(100)는 도 5에 도시한 바와 같이, 사용자 장치(200)와 서로 다른 두 개의 통신 채널 CH1, CH2를 형성하고, 상기 두 통신 채널 CH1, CH2로 각각 비디오 데이터 VD1, VD2와 오디오 데이터 AD1, AD2를 전송할 수 있다. 여기서, VD1, VD2는 각각 프레임 단위의 부호화된 비디오 데이터를 의미하며, AD1, AD2는 프레임 단위의 부호화된 오디오 데이터를 의미한다. 따라서, 사용자 장치(200)는 통신 채널 CH1으로 수신된 데이터를 부호화된 비디오 데이터로 인식하여 그대로 비디오 디코딩부(220)로 전달하고, 통신 채널 CH2로 수신된 데이터는 부호화된 오디오 데이터로 인식하여 그대로 오디오 디코딩부(230)로 전달한다.
또한, 본 발명의 다른 실시 예에서, 상기 클라우드 스트리밍 서비스 장치(100)는, 도 6에 도시된 바와 같이, 사용자 장치(200)와 하나의 통신 채널 CH를 형성하고, 상기 통신 채널 CH을 통해서 부호화된 비디오 데이터 VD1, VD2와 오디오 데이터 AD1, AD2를 교대로 전송할 수 있다.
이때, 상기 부호화된 비디오 데이터 VD1, VD2와 오디오 데이터 AD1, AD2는 각각 데이터 종류를 구분할 수 있는 식별자 C를 더 포함한다. 상기 식별자 C는 해당 데이터가 비디오 데이터인지 오디오 데이터인지를 나타낸다. 예를 들어, 상기 식별자 C는 플래그(flag) 비트와 같이, 특정 비트에 할당된 값으로, 그 비트의 값에 따라서 비디오 데이터인지 오디오 데이터인지를 나타낼 수 있다.
이와 같이, 부호화된 비디오 데이터 및 오디오 데이터를 수신한 사용자 장치(200)는 클라우드 스트리밍 서비스 장치(100)로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하면, 수신된 비디오 데이터 및 오디오 데이터를 그대로 각각 복호화하여 출력한다(S115, S120).
여기서, 사용자 장치(200)는 헤더 파싱을 통한 역다중화 처리나 동기화 처리를 수행할 필요없이, 구분되어 전송되는 부호화된 비디오 데이터 및 오디오 데이터를 수신되는 대로 복호화하여 출력한다.
그리고, 상기 클라우드 스트리밍 서비스 장치(100)는 각 프레임의 재생 시간에 맞추어 T 시간 후에, 다음 프레임의 부호화된 비디오 데이터 및 오디오 데이터를 전송하며(S125, S130), 이에 사용자 장치(200)는 부호화된 비디오 데이터 및 오디오 데이터를 수신되는 대로 복호화하여 출력한다(S135, S140).
상기 단계 S125 내지 S140은 앞서 설명한 단계 S105 내지 S120와 동일하게 이루어진다.
즉, 부호화된 비디오 데이터 및 오디오 데이터의 전송, 복호화 및 출력이 재생 주기 T에 맞추어 반복 실행된다.
따라서, 사용자 장치(200)는 역다중화 처리 및 비디오 데이터와 오디오 데이터 간의 동기화 처리 없이, 부호화된 비디오 데이터와 오디오 데이터를 수신하는 대로 복호화하여 출력할 수 있으므로, 역다중화 처리 및 동기화 처리에 소요되는 시간만큼의 대기 시간이 더 감소될 수 있다.
상술한 본 발명에 따른 클라우드 스트리밍 서비스 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 본 발명에 따른 클라우드 스트리밍 서비스 장치(100)나 사용자 장치(200)에 탑재되는 프로세서는 본 발명에 따른 방법을 실행하기 위한 프로그램 명령을 처리할 수 있다. 일 구현 예에서, 이 프로세서는 싱글 쓰레드(Single-threaded) 프로세서일 수 있으며, 다른 구현예에서 본 프로세서는 멀티 쓰레드(Multithreaded) 프로세서일 수 있다. 나아가 본 프로세서는 메모리 혹은 저장 장치 상에 저장된 명령을 처리하는 것이 가능하다.
본 발명에 따른 클라우드 스트리밍 서비스 장치(100)나 사용자 장치(200)는 하나 이상의 프로세서로 하여금 앞서 설명한 기능들과 프로세스를 수행하도록 하는 명령에 의하여 구동될 수 있다. 예를 들어 그러한 명령으로는, 예컨대 JavaScript나 ECMAScript 명령 등의 스크립트 명령과 같은 해석되는 명령이나 실행 가능한 코드 혹은 컴퓨터로 판독 가능한 매체에 저장되는 기타의 명령이 포함될 수 있다. 나아가 본 발명에 따른 장치는 서버 팜(Server Farm)과 같이 네트워크에 걸쳐서 분산형으로 구현될 수 있으며, 혹은 단일의 컴퓨터 장치에서 구현될 수도 있다.
비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.
본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.
본 명세서에서 설명한 주제의 구현물은 예컨대 데이터 서버와 같은 백엔드 컴포넌트를 포함하거나, 예컨대 어플리케이션 서버와 같은 미들웨어 컴포넌트를 포함하거나, 예컨대 사용자가 본 명세서에서 설명한 주제의 구현물과 상호 작용할 수 있는 웹 브라우저나 그래픽 유저 인터페이스를 갖는 클라이언트 컴퓨터와 같은 프론트엔드 컴포넌트 혹은 그러한 백엔드, 미들웨어 혹은 프론트엔드 컴포넌트의 하나 이상의 모든 조합을 포함하는 연산 시스템에서 구현될 수 있다. 시스템의 컴포넌트는 예컨대 통신 네트워크와 같은 디지털 데이터 통신의 어떠한 형태나 매체에 의해서도 상호 접속 가능하다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
아울러, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
본 발명은 클라이언트 스트리밍 서비스 장치에서, 사용자 장치가 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 동기를 맞추어 전송하되, 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 상기 부호화된 비디오 데이터 및 오디오 데이터를 순차 전송함으로써, 상기 사용자 장치 측에서 역다중화 처리 및 비디오 및 오디오 신호 간의 동기화 처리없이 수신되는 대로, 바로 복호화하여 출력할 수 있으며, 그 결과, 역다중화 처리 및 동기화 처리에 소요되는 대기 시간을 줄일 수 있는 우수한 효과가 있다.
10: 통신망 100: 클라우드 스트리밍 서비스 장치
110: 서비스 통신부 120: 스트리밍 제어부
130: 부호화부 140: 서비스 저장부
150: 실시간 방송 수신부 160: 클라우드 컴퓨팅 처리부
200: 사용자 장치 210: 네트워크 수신부
220: 비디오 디코딩부 230: 오디오 디코딩부

Claims (18)

  1. 통신망을 통해서 접속한 사용자 장치로 요청된 컨텐츠를 전송하는 서비스 통신부; 및
    상기 사용자 장치가 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 다중화 처리 없이 부호화된 비트 스트림 그대로 동기를 맞추어 전송하되, 상기 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 상기 부호화된 비디오 데이터 및 오디오 데이터를 순차 전송하는 스트리밍 제어부를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치.
  2. 제1항에 있어서,
    비디오 데이터 및 오디오 데이터를 각각 부호화하여 출력하는 부호화부를 더 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치.
  3. 제1항 또는 제2항에 있어서,
    상기 비디오 데이터 및 오디오 데이터, 혹은 상기 부호화된 비디오 데이터 및 오디오 데이터를 저장하는 서비스 저장부를 더 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치.
  4. 제1항에 있어서, 상기 스트리밍 제어부는
    상기 서비스 통신부를 통해서, 상기 사용자 장치와 두 개의 통신 채널을 연결하고, 상기 두 개의 통신 채널로 상기 부호화된 비디오 데이터 및 오디오 데이터를 각각 전송하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치.
  5. 제1항에 있어서, 상기 스트리밍 제어부는
    상기 서비스 통신부를 통해서 사용자 장치와 하나의 통신 채널을 연결하고, 상기 하나의 통신 채널을 통해 상기 부호화된 비디오 데이터 및 오디오 데이터를 교대로 전송하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치.
  6. 제5항에 있어서, 상기 스트리밍 제어부는
    상기 부호화된 비디오 데이터 및 오디오 데이터를 전송 시, 비디오 데이터와 오디오 데이터를 구분할 수 있는 식별자만을 더 포함하여 전송하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치.
  7. 제2항에 있어서,
    실시간 방송 데이터를 수신하여 상기 부호화부로 제공하는 실시간 방송 수신부를 더 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 장치.
  8. 클라우드 스트리밍 서비스 장치에 접속하여, 상기 클라우드 스트리밍 서비스 장치로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하고, 수신된 부호화된 비디오 데이터 및 오디오 데이터에 대한 역다중화 수행 없이 상기 수신된 부호화된 비디오 데이터 및 오디오 데이터를 구분하여 비디오 디코딩부 및 오디오 디코딩부로 각각 전달하는 네트워크 수신부;
    동기화 처리 없이 재생 시간에 맞추어 상기 네트워크 수신부로부터 전달되는 부호화된 비디오 데이터를 순서대로 복호화하여 출력하는 비디오 디코딩부; 및
    동기화 처리 없이 재생 시간에 맞추어 상기 네트워크 수신부로부터 전달된 부호화된 오디오 데이터를 순서대로 복호화하여 출력하는 오디오 디코딩부를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 사용자 장치.
  9. 삭제
  10. 제8항에 있어서, 상기 비디오 디코딩부는
    상기 네트워크 수신부로부터 전달된 부호화된 비디오 데이터를 저장하는 피딩 버퍼;
    복호화중인 비디오 데이터를 저장하는 디코딩 버퍼; 및
    복호화된 비디오 데이터를 저장하는 출력 버퍼를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 사용자 장치.
  11. 제8항에 있어서, 상기 오디오 디코딩부는
    상기 네트워크 수신부로부터 전달된 부호화된 오디오 데이터를 저장하는 피딩 버퍼;
    복호화중인 오디오 데이터를 저장하는 디코딩 버퍼; 및
    복호화된 오디오 데이터를 저장하는 출력 버퍼를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 사용자 장치.
  12. 제8항에 있어서, 상기 네트워크 수신부는
    서로 다른 채널을 통해서 상기 부호화된 비디오 데이터 및 오디오 데이터를 각각 수신하며, 수신된 채널을 통해 부호화된 비디오 데이터와 오디오 데이터를 구분하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 사용자 장치.
  13. 제8항에 있어서, 상기 네트워크 수신부는
    상기 부호화된 비디오 데이터 및 오디오 데이터와 함께, 데이터 종류를 구분하는 식별자를 더 수신하고, 상기 수신한 식별자를 이용하여 부호화된 비디오 데이터와 오디오 데이터를 구분하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 사용자 장치.
  14. 사용자 장치가 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 다중화 처리 없이 부호화된 비트 스트림 그대로 동기를 맞추어 전송하되, 상기 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 순차 전송하는 클라우드 스트리밍 서비스 장치; 및
    상기 클라우드 스트리밍 서비스 장치로부터 프레임단위로 부호화된 비디오 데이터 및 오디오 데이터를 재생시간에 맞추어 각각 수신하고, 수신된 부호화된 비디오 데이터 및 오디오 데이터에 대한 역다중화 및 동기화 처리 없이 수신 순서에 따라서 상기 부호화된 비디오 데이터 및 오디오 데이터를 복호화하여 출력하는 사용자 장치를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 시스템.
  15. 클라우드 스트리밍 서비스 장치가 사용자 장치에서 요청한 컨텐츠의 부호화된 비디오 데이터 및 오디오 데이터를 다중화 처리 없이 상기 사용자 장치에서의 재생 시간에 맞추어 프레임 단위로 순차 전송하는 단계; 및
    상기 사용자 장치가 역다중화 및 동기화 처리 없이, 상기 클라우드 스트리밍 서비스 장치로부터 재생 시간에 맞추어 수신되는 부호화된 비디오 데이터 및 오디오 데이터를 복호화하여 출력하는 단계를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
  16. 제15항에 있어서, 상기 전송하는 단계는,
    상기 부호화된 비디오 데이터 및 오디오 데이터를 서로 다른 통신 채널을 통해 각각 전송하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
  17. 제15항에 있어서, 상기 전송하는 단계는,
    상기 부호화된 비디오 데이터 및 오디오 데이터를 교대로 전송하되, 비디오 데이터와 오디오 데이터를 구분할 수 있는 식별자만을 더 포함하여 전송하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
  18. 제15항 내지 제17항 중에서 어느 한 항에 기재된 클라우드 스트리밍 서비스방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020140023622A 2014-02-27 2014-02-27 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법 KR101671311B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140023622A KR101671311B1 (ko) 2014-02-27 2014-02-27 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법
PCT/KR2015/001920 WO2015130126A1 (ko) 2014-02-27 2015-02-27 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140023622A KR101671311B1 (ko) 2014-02-27 2014-02-27 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법

Publications (2)

Publication Number Publication Date
KR20150101838A KR20150101838A (ko) 2015-09-04
KR101671311B1 true KR101671311B1 (ko) 2016-11-01

Family

ID=54009371

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140023622A KR101671311B1 (ko) 2014-02-27 2014-02-27 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법

Country Status (2)

Country Link
KR (1) KR101671311B1 (ko)
WO (1) WO2015130126A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220161131A1 (en) * 2018-08-06 2022-05-26 Amazon Technologies, Inc. Systems and devices for controlling network applications

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114245170B (zh) * 2022-02-24 2022-09-13 国能信息技术有限公司 一种基于分流式传输的音视频单向传输调度方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100226528B1 (ko) * 1995-03-29 1999-10-15 가나이 쓰도무 다중화 압축화상/음성데이타의 복호장치
JP2001309310A (ja) * 2000-04-26 2001-11-02 Matsushita Electric Ind Co Ltd マルチメディアデータ再生装置、マルチメディアデータ再生方法及び記録媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8171154B2 (en) * 2009-09-29 2012-05-01 Net Power And Light, Inc. Method and system for low-latency transfer protocol
KR101094696B1 (ko) * 2010-04-23 2011-12-16 (주)필링크 클라우드 컴퓨팅 및 스마트폰 제어를 통한 티브이 서비스 제공시스템
KR101471366B1 (ko) * 2010-09-30 2014-12-10 에스케이플래닛 주식회사 단말기에 따른 적응적 화면 가상화 방법 및 시스템
KR101290977B1 (ko) * 2012-01-26 2013-07-30 한국외국어대학교 연구산학협력단 푸쉬 서버를 이용한 메시지 전송 방법 및 그 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100226528B1 (ko) * 1995-03-29 1999-10-15 가나이 쓰도무 다중화 압축화상/음성데이타의 복호장치
JP2001309310A (ja) * 2000-04-26 2001-11-02 Matsushita Electric Ind Co Ltd マルチメディアデータ再生装置、マルチメディアデータ再生方法及び記録媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
강승수 외 2명, '클라우드 시스템의 씬 클라이언트에서의 표시 지연 절감', In: 정보처리학회논문지/컴퓨터 및 통신 시스템 제2권 제4호, 2013.04 .

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220161131A1 (en) * 2018-08-06 2022-05-26 Amazon Technologies, Inc. Systems and devices for controlling network applications

Also Published As

Publication number Publication date
WO2015130126A1 (ko) 2015-09-03
KR20150101838A (ko) 2015-09-04

Similar Documents

Publication Publication Date Title
KR102529711B1 (ko) 수신 장치, 송신 장치, 및 데이터 처리 방법
KR102301333B1 (ko) 브로드캐스트 채널을 통한 dash 콘텐츠 스트리밍 방법 및 장치
US9716737B2 (en) Video streaming in a wireless communication system
US9369508B2 (en) Method for transmitting a scalable HTTP stream for natural reproduction upon the occurrence of expression-switching during HTTP streaming
US20140139735A1 (en) Online Media Data Conversion Method, Online Video Playing Method and Corresponding Device
CN101883097A (zh) 服务器设备共享客户端设备屏幕的实现方法及装置
US20120176540A1 (en) System and method for transcoding live closed captions and subtitles
CN101710997A (zh) 基于mpeg-2系统实现视、音频同步的方法及系统
EP2984848B1 (en) Associating representations in adaptive streaming
KR101668283B1 (ko) 레이턴시를 고려한 영상 출력 방법, 이를 수행하는 장치 및 클라우드 스트리밍 서비스 시스템
CN104202615A (zh) 一种基于云计算的视频重定向方法
CN108494792A (zh) 一种flash播放器播放hls视频流的转换系统及其工作方法
CN112616065A (zh) 一种屏幕镜像发起方法、装置、计算机设备、可读存储介质及屏幕镜像呈现系统
US20140112636A1 (en) Video Playback System and Related Method of Sharing Video from a Source Device on a Wireless Display
CN101800894B (zh) 多媒体影音的转换方法以及系统
US9148289B2 (en) Method for streaming video data
CN106663431B (zh) 发送装置、发送方法、接收装置以及接收方法
KR101671311B1 (ko) 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법
CN103475900A (zh) 手机电视业务视频帧的封装方法、装置及前端系统
WO2017092433A1 (zh) 视频实时播放方法及装置
US9241132B2 (en) Reception apparatus, reception method, and program thereof, image capturing apparatus, image capturing method, and program thereof, and transmission apparatus, transmission method, and program thereof
KR101678388B1 (ko) 레이턴시를 고려한 영상 처리 방법, 이를 수행하는 장치 및 클라우드 스트리밍 서비스 시스템
EP3970384B1 (en) Method and apparatus for playing multimedia streaming data
CN107005745B (zh) 封装视听内容流的方法和设备
WO2017092435A1 (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: 20190916

Year of fee payment: 4