KR102293797B1 - 영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치 - Google Patents

영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치 Download PDF

Info

Publication number
KR102293797B1
KR102293797B1 KR1020160157439A KR20160157439A KR102293797B1 KR 102293797 B1 KR102293797 B1 KR 102293797B1 KR 1020160157439 A KR1020160157439 A KR 1020160157439A KR 20160157439 A KR20160157439 A KR 20160157439A KR 102293797 B1 KR102293797 B1 KR 102293797B1
Authority
KR
South Korea
Prior art keywords
region
quality
information
segment
regions
Prior art date
Application number
KR1020160157439A
Other languages
English (en)
Other versions
KR20180058455A (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 KR1020160157439A priority Critical patent/KR102293797B1/ko
Priority to PCT/KR2017/010656 priority patent/WO2018097466A1/ko
Priority to US16/463,450 priority patent/US11017517B2/en
Priority to EP17874726.7A priority patent/EP3528500B1/en
Publication of KR20180058455A publication Critical patent/KR20180058455A/ko
Application granted granted Critical
Publication of KR102293797B1 publication Critical patent/KR102293797B1/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/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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44218Detecting physical presence or behaviour of the user, e.g. using sensors to detect if the user is leaving the room or changes his face expression during a TV program
    • 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/2385Channel allocation; Bandwidth allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • 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/762Media network packet handling at the source 
    • 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/80Responding to QoS
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • 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
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/16Indexing scheme for image data processing or generation, in general involving adaptation to the client's capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30168Image quality inspection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection

Abstract

영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치가 개시된다. 개시된 일 실시예에 따른 스트리밍 데이터 수신 방법 및 장치는 컨텐트의 소정 프레임으로부터 분할된 복수의 영역의 품질을 네트워크 상태에 따라 차등적으로 결정하기 위해 컨텐트 관련 정보를 서버에 요청하고, 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화된 영역 별 적어도 하나의 세그먼트 중에서, 컨텐트 관련 정보에 기초하여 결정된 영역 별 품질에 따라 부호화된 영역 별 세그먼트를 네트워크를 통해 서버로부터 수신하고, 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하며, 영역 별 복원 영상을 병합하여 렌더링한다.

Description

영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치{METHOD AND APPARATUS FOR ALLOCATING DIFFERENTIAL BANDWIDTH OF SPLIT SCREEN AREAS USING IMAGE COMPLEXITY INFORMATION}
본 명세서는 스트리밍 데이터 송수신 방법 및 장치에 관한 것으로, 보다 상세하게는 네트워크 환경의 변동에 따라 적응적으로 스트리밍 데이터를 송수신하는 방법 및 장치에 관한 것이다.
네트워크를 통해 미디어 데이터를 전송하는 방식에는 다운로드 방식과 스트리밍 방식이 있다. 스트리밍 방식은 서버가 실시간으로 미디어 데이터를 전송하고, 클라이언트는 수신된 미디어 데이터를 실시간으로 재생하는 방식이다.
스트리밍 방식은, 미디어 데이터를 모두 송수신하고 난 다음에 미디어 데이터의 재생이 시작되는 다운로드 방식과 달리, 서버와 클라이언트 사이에 설정된 논리적인 채널을 통해 실시간으로 미디어 데이터가 송수신되고 재생된다. 따라서, 스트리밍 환경의 변동을 반영하여 미디어 데이터 재생의 QoS(Quality of Sevice)를 유지할 수 있는 방법 및 장치가 필요하다.
한편, 고화질 스트리밍 서비스와 네트워크를 보다 효율적으로 사용하기 위해 MPEG 포럼에서 DASH(Dynamic Adaptive Streaming over HTTP) 기술이 최근 제정되었다. DASH 기술은 동일한 컨텐트에 대해 미리 다양한 품질(비트율)로 부호화된 세그먼트를 준비해 두고, 스트리밍 시 측정한 네트워크 대역폭에 따라 해당하는 품질로 부호화된 세그먼트를 보내는 형태이다. 이러한 기술은 네트워크 대역폭에 적응적으로 스트리밍을 조절할 수 있는 이점이 있다.
그러나, 최근 보급이 활성화되고 있는 VR(Virtual Reality) 영상의 경우에는, VR 영상이 전방위(360도)의 영역을 모두 담아내야 하므로, 영역 별로 복잡도가 상이한 경우가 많다. 이 경우, 복잡도가 낮은 영역과 복잡도가 높은 영역에 관계 없이 모든 영역에 대해 동일한 품질로 부호화를 수행하면, 가용 네트워크 대역폭이 모든 영역에 일정하게 분배될 수 밖에 없다. 따라서, 상대적으로 고품질의 재생이 필요한 복잡도가 높은 영역에 대해서는 시청자가 화질 저하를 느낄 수 있다는 문제가 존재한다. 이에 따라, 한정된 네트워크 대역폭을 공간 영역 별로 효율적으로 할당하는 기술이 요구된다.
해결하고자 하는 과제는 컨텐트 화면의 분할된 영역들 마다 다양한 품질로 부호화된 적어도 하나의 세그먼트를 생성하여, 네트워크 대역폭에 적응적인 스트리밍 데이터 송수신 방법 및 장치를 제공하는데 있다.
상기 기술적 과제를 해결하기 위한 일 실시예에 따른 스트리밍 데이터 수신 방법은 컨텐트의 소정 프레임으로부터 분할된 복수의 영역의 품질을 네트워크 상태에 따라 차등적으로 결정하기 위해 컨텐트 관련 정보를 서버에 요청하는 단계; 상기 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화된 영역 별 적어도 하나의 세그먼트 중에서, 상기 컨텐트 관련 정보에 기초하여 결정된 영역 별 품질에 따라 부호화된 영역 별 세그먼트를 네트워크를 통해 상기 서버로부터 수신하는 단계; 상기 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하는 단계; 및 상기 영역 별 복원 영상을 병합하여 렌더링하는 단계를 포함한다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 컨텐트 관련 정보는, 상기 복수의 영역에 대한 중요도 정보 및 상기 영역 별 적어도 하나의 세그먼트에 대한 세그먼트 정보를 포함하는 부가정보를 포함하고, 상기 복수의 영역에 대한 중요도 정보는, 상기 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보 및 시청 가능성 여부에 관한 정보 중 적어도 하나를 포함하고, 상기 세그먼트 정보는, 상기 영역 별 적어도 하나의 세그먼트의 품질 정보 및 상기 영역 별 적어도 하나의 세그먼트의 상기 소정 프레임 내 위치 정보 중 적어도 하나를 포함할 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 방법은, 상기 네트워크의 상태를 검사하는 단계; 상기 네트워크의 상태에 기초하여, 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계; 및 상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함할 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 부가정보는, 상기 복수의 영역 각각에 대한 네트워크 상태 별 품질을 나타내는 정보를 포함하고, 상기 방법은, 상기 네트워크의 상태를 검사하는 단계; 및 상기 네트워크의 상태 및 상기 네트워크 상태 별 품질을 나타내는 정보에 기초하여, 상기 영역 별 품질을 결정하는 단계를 더 포함할 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 영역 별 품질 구성 후보군은, 상기 네트워크의 상태 및 추출된 관심 영역 정보에 기초하여 생성될 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 영역 별 품질은, 상기 네트워크의 상태, 상기 네트워크 상태 별 품질을 나타내는 정보 및 추출된 관심 영역 정보에 기초하여 결정될 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 방법은, 추출된 관심 영역 정보를 상기 서버로 전송하는 단계를 더 포함하고, 상기 영역 별 품질은, 상기 관심 영역 정보에 기초하여 결정될 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 방법은, 상기 네트워크의 상태를 검사하는 단계; 관심 영역에 기초하여 상기 영역 별 품질을 결정할지 여부를 판단하는 단계; 상기 관심 영역 정보에 기초하여 상기 영역 별 품질을 결정하는 경우: 상기 관심 영역 정보를 추출하는 단계; 및 상기 관심 영역에 기초하여 상기 영역 별 품질 정보를 결정하는 단계; 상기 관심 영역에 기초하여 상기 영역 별 품질을 결정하지 않는 경우: 상기 네트워크의 상태에 기초하여 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계; 및 상기 복수의 영역에 대한 중요도 정보에 기초하여 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함할 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 수신 방법에서, 상기 방법은, 상기 네트워크의 상태를 검사하는 단계; 관심 영역에 기초하여 상기 영역 별 품질을 결정할지 여부를 판단하는 단계; 상기 관심 영역 정보에 기초하여 상기 영역 별 품질을 결정하는 경우: 상기 관심 영역 정보를 추출하는 단계; 및 상기 관심 영역에 기초하여 상기 영역 별 품질 정보를 결정하는 단계; 상기 관심 영역에 기초하여 상기 영역 별 품질을 결정하지 않는 경우, 상기 부가정보에 포함된 상기 복수의 영역 각각에 대한 네트워크 상태 별 품질 정보에 기초하여 상기 영역 별 품질 정보를 결정하는 단계를 더 포함할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 방법은 네트워크 상태에 따라 품질을 차등적으로 결정하기 위해 컨텐트의 소정 프레임을 복수의 영역으로 분할하는 단계; 상기 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화를 수행하여 영역 별 적어도 하나의 세그먼트를 생성하는 단계; 및 상기 영역 별 적어도 하나의 세그먼트 중에서 영역 별 품질에 따라 부호화된 영역 별 세그먼트를 네트워크를 통해 클라이언트에 전송하는 단계를 포함한다.
또한, 일 실시예에 따른 스트리밍 데이터 전송 방법에서, 상기 방법은, 상기 복수의 영역에 대한 중요도 정보 및 상기 영역 별 적어도 하나의 세그먼트에 대한 세그먼트 정보를 포함하는 부가정보를 생성하는 단계; 및 상기 부가정보를 상기 네트워크를 통해 상기 클라이언트에 전송하는 단계를 더 포함하고, 상기 복수의 영역에 대한 중요도 정보는, 상기 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보 및 시청 가능성 여부에 관한 정보 중 적어도 하나를 포함하고, 상기 세그먼트 정보는, 상기 영역 별 적어도 하나의 세그먼트의 품질 정보 및 상기 영역 별 적어도 하나의 세그먼트의 상기 소정 프레임 내 위치 정보 중 적어도 하나를 포함할 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 전송 방법에서, 상기 부가정보를 생성하는 단계는, 상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 복수의 영역 각각에 대해 네트워크 상태 별 품질을 결정하는 단계; 및 상기 세그먼트 정보 및 상기 네트워크 상태 별 품질을 나타내는 정보를 포함하는 상기 부가정보를 생성하는 단계를 포함할 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 전송 방법에서, 상기 방법은, 상기 네트워크의 상태를 검사하는 단계; 상기 네트워크의 상태에 기초하여, 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계; 및 상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함할 수 있다.
또한, 일 실시예에 따른 스트리밍 데이터 전송 방법에서, 상기 방법은, 상기 클라이언트로부터 관심 영역 정보를 수신하는 단계; 상기 네트워크의 상태를 검사하는 단계; 상기 관심 영역 정보 및 상기 네트워크의 상태에 기초하여, 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계; 및 상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함할 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치는 컨텐트의 소정 프레임으로부터 분할된 복수의 영역의 품질을 네트워크 상태에 따라 차등적으로 결정하기 위해 컨텐트 관련 정보를 서버에 요청하고, 상기 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화된 영역 별 적어도 하나의 세그먼트 중에서, 상기 컨텐트 관련 정보에 기초하여 결정된 영역 별 품질에 따라 부호화된 영역 별 세그먼트를 네트워크를 통해 상기 서버로부터 수신하는 데이터 송수신부; 상기 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하는 복호화부; 및 상기 영역 별 복원 영상을 병합하여 렌더링하는 렌더링부를 포함한다.
일 실시예에 따른 스트리밍 데이터 전송 장치는 네트워크 상태에 따라 품질을 차등적으로 결정하기 위해 컨텐트의 소정 프레임을 복수의 영역으로 분할하는 화면 영역 분할부; 상기 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화를 수행하여 영역 별 적어도 하나의 세그먼트를 생성하는 부호화부; 및 상기 영역 별 적어도 하나의 세그먼트 중에서 영역 별 품질에 따라 부호화된 영역 별 세그먼트를 네트워크를 통해 클라이언트에 전송하는 데이터 송수신부를 포함한다.
도 1은 일 실시예에 따른 스트리밍 데이터 수신 장치(100)의 개략적인 블록도를 도시한다.
도 2는 일 실시예에 따른 스트리밍 데이터 전송 장치(200)의 개략적인 블록도를 도시한다.
도 3은 일 실시예에 따른 컨텐트 스트리밍 서비스 제공 환경(300)을 설명하기 위한 도면이다.
도 4는 분할된 각 영역의 위치 및 크기에 관한 정보를 기술하는 방식의 일 예를 설명하기 위한 도면이다.
도 5는 일 실시예에 따라 분할된 복수의 영역의 복잡도에 기초하여 영역 별로 중요도를 부여하는 방법을 도시한다.
도 6은 단일 품질로 구성된 영상(600)을 나타내는 도면이다.
도 7은 일 실시예에 따른 영역 별 품질이 차등적으로 구성된 영상(700)을 나타내는 도면이다.
도 8은 일 실시예에 따라 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 9는 다른 실시예에 따라 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 10은 또 다른 실시예에 따라 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 11은 일 실시예에 따라 관심 영역에 기초하여 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 12는 다른 실시예에 따라 관심 영역에 기초하여 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 13은 또 다른 실시예에 따라 관심 영역에 기초하여 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 14는 일 실시예에 따라 관심 영역을 이용할지 여부의 판단에 기초하여 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 15는 다른 실시예에 따라 관심 영역을 이용할지 여부의 판단에 기초하여 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 16은 일 실시예에 따른 스트리밍 데이터 수신 방법을 설명하기 위한 흐름도를 도시한다.
도 17은 일 실시예에 따른 스트리밍 데이터 전송 방법을 설명하기 위한 흐름도를 도시한다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일 실시예에 따른 스트리밍 데이터 수신 장치(100)의 개략적인 블록도를 도시한다.
도 1을 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(100)는 데이터 송수신부(110), 복호화부(120) 및 렌더링부(130)를 포함할 수 있다.
일 실시예에 따른 데이터 송수신부(110)는, 컨텐트 관련 정보의 전송 요청을 서버에 전송하고, 이에 대한 응답으로 요청된 정보를 서버로부터 수신할 수 있다. 일 실시예에 따른 컨텐트 관련 정보는 부가정보를 의미하는 것일 수 있다. 여기서, 부가정보는 컨텐트의 소정 프레임으로부터 분할된 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보, 영역 별 적어도 하나의 세그먼트의 품질 정보, 영역 별 적어도 하나의 세그먼트의 소정 프레임 내 위치 정보 등을 포함할 수 있다. 다만, 부가정보는 상술한 예에 한정되는 것은 아니며 미디어 정보(MPD; Media presentation Description) 및 컨텐트에 관련된 모든 주변 정보를 포함할 수 있다.
또한, 데이터 송수신부(110)는, 컨텐트에 대한 정보의 전송 요청을 서버에 전송하고, 요청된 정보를 수신할 수 있다. 일 실시예에 따른 컨텐트에 대한 정보는 부호화된 영역별 세그먼트에 대한 정보를 의미하는 것일 수 있다. 여기서, 세그먼트란 컨텐트의 소정 프레임으로부터 분할된 영역이 소정 품질로 부호화된 것을 의미한다. 한편, 네트워크 대역폭에 적응적인 스트리밍이 가능해지도록, 소정 프레임 내의 영역은 서버 단에서 미리 하나 이상의 품질로 부호화될 수 있다. 따라서, 각각의 영역마다 세그먼트는 품질 별로 하나 이상씩 존재할 수 있다. 예를 들어, 하나의 영역에 대해 고품질로 부호화된 세그먼트와 저품질로 부호화된 세그먼트가 동시에 존재할 수 있다. 따라서, 영역별 세그먼트란 컨텐트의 소정 프레임으로부터 분할된 영역이 소정 품질로 부호화된 것으로서, 공간적으로 나누어진 비트스트림의 데이터 단위이다. 이 때, 전술한 바와 같이 각 영역마다 세그먼트는 품질 별로 하나 이상 존재 가능하므로, 영역별 세그먼트는 적어도 하나 이상 존재할 수 있는 것이다.
일 실시예에 따른 복호화부(120)는, 데이터 송수신부(110)에서 서버로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성할 수 있다.
일 실시예에 따른 렌더링부(130)는, 복호화부(120)에서 생성한 영역 별 복원 영상을 병합하여 렌더링할 수 있다.
도 2는 일 실시예에 따른 스트리밍 데이터 전송 장치(200)의 개략적인 블록도를 도시한다.
도 2를 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(200)는 화면 영역 분할부(210), 부호화부(220) 및 데이터 송수신부(230)를 포함할 수 있다.
일 실시예에 따른 화면 영역 분할부(210)는, 네트워크 상태에 따라 품질을 차등적으로 결정하기 위해 컨텐트의 소정 프레임을 복수의 영역으로 분할할 수 있다.
일 실시예에 따른 부호화부(220)는, 화면 영역 분할부(210)에서 분할된 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화를 수행하여 영역 별 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 데이터 송수신부(230)는, 클라이언트로부터 컨텐트 관련 정보의 전송 요청을 수신하고, 이에 대한 응답으로 요청된 정보를 전송할 수 있다. 일 실시예에 따른 컨텐트 관련 정보는 부가정보를 의미하는 것일 수 있다.
또한, 데이터 송수신부(230)는, 클라이언트로부터 컨텐트에 대한 정보의 전송 요청을 수신하고, 요청된 정보를 전송할 수 있다. 일 실시예에 따른 컨텐트에 대한 정보는 부호화된 영역별 세그먼트를 의미하는 것일 수 있다. 전술한 바와 같이, 부호화된 영역별 세그먼트는 컨텐트의 소정 프레임으로부터 분할된 복수의 영역 각각에 대해 소정 품질로 부호화된 것으로서, 공간적으로 나누어진 비트스트림의 데이터 단위이다.
도 3은 일 실시예에 따른 컨텐트 스트리밍 서비스 제공 환경(300)을 설명하기 위한 도면이다.
일 실시예에 따른 컨텐트 스트리밍 서비스 제공 환경(300)에서 서버(310)는 네트워크(320)를 통하여 클라이언트(330)와 접속할 수 있다. 또한, 일 실시예에 따른 서버(310)는 소스 미디어 데이터가 저장 및 관리되는 데이터베이스(미도시)와 연동할 수 있다. 여기서, 서버(310)는 도 2의 스트리밍 데이터 전송 장치(200)에 대응할 수 있으며, 클라이언트(330)는 도 1의 스트리밍 데이터 수신 장치(100)에 대응할 수 있다. 또한, 네트워크(320)란, WCDMA, HDPA, 3G, 4G 등 이동통신망, 블루투스(Bluetooth), 지그비(Zigbee), 와이파이(Wi-Fi) 등 근거리 통신망과, 인터넷이나 PSTN 등 유선 통신망을 포함할 수 있다. 또한, 데이터베이스(미도시)는 클라우드 미디어 서버가 될 수도 있고, 별도의 저장소가 될 수도 있는데, 소스 미디어 데이터를 구성하는 컨텐트는 다양한 소스로부터 네트워크(320)를 통하여 제공될 수 있다. 예를 들어, 다양한 소스로는 미디어 파일을 저장하고 있는 미디어 서버, 3G 카메라, IP 카메라, 아날로그 카메라, PC, 스토리지 서버, 노트북, 스마트 폰, 웹 하드, 스마트 폰 등이 포함될 수 있다. 또한, 생방송 스트림을 제공하는 셋-탑 박스나 카메라나 비디오 신호를 디지털로 압축하는 하드웨어 인코더, PC, 스마트 폰, 태블릿 PC 등이 포함될 수 있다.
서버(310)가 클라이언트(330)에 데이터를 스트리밍할 때, 스트리밍 환경은 변경될 수 있다. 예를 들어, 스트리밍을 위한 네트워크(320)의 대역폭이 변경될 수도 있고, 데이터를 전송하기 위해 서버(310)가 사용 가능한 하드웨어 자원 또는 데이터를 수신하기 위해 클라이언트(330)가 사용 가능한 하드웨어 자원이 변경될 수도 있다.
따라서, 서버(310)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 컨텐트의 소정 프레임을 복수의 영역으로 분할하여 분할된 각 영역을 상이한 품질로 부호화할 수 있다. 서버(310)는 비트율(bit rate) 또는 샘플링 주파수(sampling frequency) 또는 해상도 또는 프레임율(frame rate) 등과 같은 인자들을 조절함으로써 분할된 영역을 복수의 상이한 품질로 부호화할 수 있다. 예를 들어, 서버(310)는 분할된 각 영역마다 고품질(예를 들어, 16 Mbps), 중간품질(예를 들어, 12 Mbps), 저품질(예를 들어, 4 Mbps) 등과 같은 다양한 해상도로 부호화하여 영역 별로 적어도 하나의 세그먼트를 생성할 수 있다.
서버(310) 또는 클라이언트(330) 측에서는, 네트워크(320)의 가용 대역폭에 적합한 최적의 품질 구성을 결정할 수 있다. 품질 구성이란, 복수의 영역 각각에 대한 품질(즉, 영역 별 품질)을 의미할 수 있다. 일 실시예에 따라, 각 영역마다 품질이 상이하게 결정될 수 있으며, 컨텐트의 각 프레임마다 품질 구성이 상이할 수도 있다. 영역 별 중요도에 따라 한정적인 네트워크(320)의 가용 대역폭 리소스를 각 영역에 차등 분배함으로써, 중요도(예를 들어, 복잡도)가 높은 영역의 화질 저하를 최소화하고 대역폭 효용을 최대화할 수 있다. 다른 실시예에 따라, 전 영역에 동일한 대역폭이 할당된 후, 잔여 네트워크 대역폭이 중요도가 높은 영역에 추가로 할당될 수도 있다.
서버(310)는 영역 별 적어도 하나의 세그먼트 중에서, 결정된 품질 구성에 따른 영역 별 세그먼트만을 클라이언트(330)로 전송할 수 있다. 이 때, 품질 구성(즉, 영역 별 품질)은 서버(310) 측에서 결정될 수도 있으며, 클라이언트(330) 측에서 결정될 수도 있다. 즉, 서버(310)가 네트워크 상태를 검사하여 네트워크 상태에 적합한 품질 구성을 결정할 수도 있으며, 클라이언트(330)가 네트워크 상태를 검사하여 네트워크 상태에 적합한 품질 구성을 결정할 수도 있다.
일 실시예에 따른 품질 구성(즉, 영역 별 품질)은 네트워크의 상태 및 복수의 영역에 대한 중요도 정보에 기초하여 결정될 수 있다. 여기서, 복수의 영역에 대한 중요도 정보는, 서버(310)에서 생성하는 부가정보에 포함되는 정보이며, 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다. 예를 들어, 복수의 영역 중에서 복잡도가 높은 영역에 대해서는 높은 품질이 할당될 수 있으며, 복잡도가 낮은 영역에 대해서는 상대적으로 낮은 품질이 할당될 수 있다. 따라서, 서버(310)가 품질 구성을 결정하는 경우, 서버(310)는 복수의 영역에 대한 중요도 정보를 클라이언트(330)에 전송할 필요가 없으며, 서버(310)는 복수의 영역에 대한 중요도 정보를 포함하는 부가정보를 생성할 필요도 없다. 반면에, 클라이언트(330)가 품질 구성을 결정하는 경우, 클라이언트(330)는 복수의 영역에 대한 중요도 정보에 기초하여 품질 구성을 결정해야 하기 때문에, 서버(310)로부터 부가정보를 수신할 필요가 있다.
한편, 서버(310)에서 생성하는 부가정보는 복수의 영역에 대한 중요도 정보 뿐만 아니라, 영역 별 적어도 하나의 세그먼트의 품질 정보 및 영역 별 적어도 하나의 세그먼트의 프레임 내 위치 정보를 포함할 수 있다. 또한, 부가정보는 컨텐트의 제목(title), 시놉시스(synopsis), 컨텐트 식별자(Content ID), 컨텐트 URL(Uniform Resource Locator) 등과 같은 정보를 포함할 수도 있다.
일 실시예에 따라 클라이언트(330)는 스트리밍 환경을 추정(estimation)하고, 추정된 스트리밍 환경에 기초해 영역 별 적어도 하나의 세그먼트 중 영역 별 하나의 세그먼트를 선택할 수 있다. 선택된 영역 별 세그먼트는 추정된 스트리밍 환경에서 적절한 QoS를 유지할 수 있는 품질로 부호화된 것일 수 있다. 그 후, 클라이언트(330)는 선택된 영역 별 세그먼트의 전송을 요청하는 요청을 서버(310)에 전송할 수 있다.
이하에서는 서버(310)의 구성을 구체적으로 설명하기로 한다.
도 3을 참조하면, 일 실시예에 따른 서버(310)는 화면 영역 분할부(312), 부호화부(314), 부가정보 생성부(316) 및 데이터 송수신부(318)를 포함할 수 있다.
일 실시예에 따른 화면 영역 분할부(312)는 컨텐트의 소정 프레임을 복수의 영역으로 분할할 수 있다. 화면 영역 분할부(312)는 화면 영역의 분할 범위를 결정할 수 있다. 또한, 화면 영역 분할부(312)는 분할하고자 하는 복수의 영역의 크기 및 개수를 결정할 수 있다. 화면 영역 분할부(312)에서 분할된 각각의 영역의 위치 및 크기에 관한 정보는 부가정보(예를 들어, 미디어 정보(MPD))에 포함되어 저장될 수 있다. 분할된 각각의 영역의 위치 및 크기에 관한 정보를 기술하는 방식의 일 예에 대해서는 도 4를 통해 후술하기로 한다.
일 실시예에 따른 부호화부(314)는 화면 영역 분할부(312)에서 분할된 각 영역에 대하여 적어도 하나의 품질로 부호화하여 하나의 영역에 대해 적어도 하나의 세그먼트를 생성할 수 있다. 부호화부(314)는 비트율, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역을 적어도 하나의 품질로 부호화할 수 있다. 따라서, 영역 별 세그먼트들 간에는 소정의 비트율, 해상도 또는 프레임율의 차이를 가질 수 있다.
한편, 부호화부(314)는 영역 별 세그먼트를 일정한 시간 간격으로 세분화할 수도 있다. 이 때, 분할의 기초가 되는 시간 간격은 GOP(Group of Picture)에 기초해 설정될 수 있다. 생성된 세그먼트들은 서버(310)에 저장되며, 각 세그먼트는 그에 해당하는 URL(Uniform Resource Locator) 경로를 할당 받을 수 있다. 따라서, 세그먼트는 클라이언트(330)의 요청 시 제공되는 공간적 및/또는 시간적으로 나누어진 비트스트림의 데이터 단위를 나타낸다. 세그먼트를 분할하는 공간 및/또는 시간 간격을 좁게 하는 경우, 네트워크의 상태에 따라 높은 전환 단위의 세그먼트 레벨을 가지며 실시간 스트리밍과 유사한 측면을 갖는 대신, 세그먼트 파일의 수 및 세그먼트의 URL의 수가 증가하게 된다.
일 실시예에 따른 부가정보 생성부(316)는 세그먼트에 관한 정보를 기초로 부가정보를 생성하고 저장할 수 있다. 부가정보는 영역 별 적어도 하나의 세그먼트에 대한 정보를 기술하며, 해당 세그먼트에 상응하는 컨텐트 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등 클라이언트(330)가 복호화 및 렌더링을 수행하기 위해 인지하여야 할 정보를 포함할 수 있다. 다시 말해, 서버(310)에서는 유동적인 네트워크 상태에 신속히 대응하기 위해 전체 컨텐트 파일을 시간적 및 공간적으로 적당한 크기의 조각으로 나누어 저장하며, 서버(310) 내의 부가정보 생성부(316)는 이처럼 조각난 파일들을 최적의 품질로 스트리밍하는데 필요한 정보를 부가정보라는 별도의 파일로서 생성하는 것이다.
한편, 공간적으로 분할된 세그먼트들을 영역 별 최적의 품질로 구성하기 위해서는 각 분할된 영역에 대한 중요도를 고려할 필요가 있기 때문에, 부가정보는 세그먼트에 대한 정보 뿐만 아니라, 분할된 복수의 영역에 대한 중요도 정보도 포함할 수 있다. 여기서 중요도 정보는, 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 포함할 수 있다.
일 실시예에 따른 데이터 송수신부(310)는 클라이언트(330)로부터 부가정보 및 세그먼트 파일의 전송 요청을 수신할 수 있다. 또한, 데이터 송수신부(310)는 클라이언트(330)로부터의 요청에 따라 부가정보 및 세그먼트 파일을 전송할 수 있다. 또한, 데이터 송수신부(310)는 클라이언트(330)로부터 컨텐트의 관심 영역 정보를 수신할 수도 있다.
이하에서는 클라이언트(330)의 구성을 구체적으로 설명하기로 한다.
클라이언트(330)는 음악 파일, 2D 또는 3D 동영상 컨텐트, VR 영상 컨텐트 등 다양한 컨텐츠를 스트리밍 받을 수 있는 애플리케이션이 구비된 모든 단말기를 포함하는데, 예를 들어, VR 영상 수신/재생 디바이스, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone: Personal Communications Services phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000) 단말기일 수 있을 뿐만 아니라, 컨텐츠를 스트리밍 받을 수 있는 노트북 PC, 데스크탑 PC, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA:Personal Digital Assistant), 스마트폰(Smart phone), 왑폰(WAP phone:Wireless application protocol phone), 모바일 게임기(mobile play-station) 등의 모든 통신 장치로 구현될 수 있다.
클라이언트(330)와 서버(310) 간의 네트워크(320) 망은 유선 인터넷 망을 비롯하여 무선 인터넷 망, Wibro, WCDMA, CDMA2000, LAN 등 다양한 형태의 네트워크 프로토콜을 지원할 수 있다. 이 네트워크 망을 통하여 멀티미디어 데이터의 전송 채널을 획득하게 된다.
도 3을 참조하면, 일 실시예에 따른 클라이언트(330)는 데이터 송수신부(331), 부가정보 분석부(332), 네트워크 상태 검사부(333), 영역 별 품질 결정부(334), 복호화부(335), 렌더링부(336) 및 디스플레이부(337)를 포함할 수 있다.
일 실시예에 따른 데이터 송수신부(331)는 부가정보 및 세그먼트 파일의 전송 요청을 서버(310)로 전송할 수 있다. 또한, 데이터 송수신부(331)는 부가정보 및 세그먼트 파일을 서버(310)로부터 수신한다. 또한, 데이터 송수신부(331)는 컨텐트의 관심 영역 정보를 서버(310)로 전송할 수도 있다.
일 실시예에 따른 부가정보 분석부(332)는 서버(310)로부터 수신한 부가정보를 기초로 수신할 세그먼트의 컨텐트 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 관한 정보를 수집한다. 또한, 부가정보 분석부(332)는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 획득할 수 있다.
일 실시예에 따른 네트워크 상태 검사부(333)는 스트리밍을 위한 네트워크(320)의 상태를 측정하고 예측할 수 있다. 네트워크 상태 검사부(333)는 서버(310)와 연결되는 네트워크(320)의 대역폭을 소정의 시간 간격으로 측정할 수 있다. 네트워크 상태 검사부(333)는 네트워크(320)의 대역폭이 빠르게 변화하는 경우에는 시간 간격을 짧게 설정하여 대역폭을 측정하고 네트워크(320)의 대역폭이 느리게 변화하는 경우에는 시간 간격을 길게 설정하여 대역폭을 측정할 수 있다.
한편, 네트워크 상태 검사부(333)는 서버(310) 또는 클라이언트(330)가 사용 가능한 하드웨어 자원에 기초하여 네트워크(320)의 상태를 예측하는 다양한 방법들을 이용할 수도 있다. 예를 들어, 클라이언트(330)는 수신되는 비트스트림의 타임 스탬프 및 비트 에러율(Bit Error Rate: BER)에 기초해 네트워크 상태를 예측할 수 있다. 네트워크 상태 검사부(333)는 수신되는 비트스트림의 타임 스탬프를 확인하여 스트리밍 데이터가 재생 속도보다 느린 속도로 수신되고 있으면, 네트워크 상태가 악화되고 있는 것으로 예측할 수 있다. 또한, 네트워크 상태 검사부(333)는 수신되는 비트스트림의 비트 에러율이 높아져도 네트워크 상태가 악화되고 있는 것으로 예측할 수 있다.
일 실시예에 따른 영역 별 품질 결정부(334)는 네트워크 상태 검사부(333)에서 측정 및 예측된 네트워크 상태를 분석하여 네트워크 상태에 가장 적당한 영역 별 품질을 판단할 수 있다.
보다 구체적으로, 영역 별 품질 결정부(334)는 네트워크 상태에 적합한 영역 별 품질 구성 후보군을 생성할 수 있다. 가용 네트워크 대역폭이란 네트워크 링크가 가지는 대역폭 전체 수용능력 중 현재 사용되고 있는 부분을 제외한 나머지 대역폭을 말한다. 영역 별 품질 구성 후보군이란, 가용 네트워크 대역폭을 기준으로 끊김 없는 미디어 재생이 가능하도록, 복수의 영역에 대해 할당될 수 있는 품질(비트율)의 다양한 조합들을 의미할 수 있다.
예를 들어, 소정 프레임이 이용가능한 네트워크 대역폭이 12 Mbps 이고, 소정 프레임이 8개의 영역으로 분할된 경우를 가정한다. 그리고, 하나의 영역에 대하여 고품질의 비트율이 2 Mbps 이고, 중간품질의 비트율이 1.5 Mbps 이고, 저품질의 비트율이 0.5 Mbps 라고 가정한다. 이 경우, 하나의 예로서, 모든 영역에 대해 중간품질의 비트율이 할당되는 영역 별 품질 구성이 존재할 수 있다. 또 다른 예로서, 4개의 영역에 대해서는 고품질의 비트율이 할당되고, 2개의 영역에 대해서는 중간품질의 비트율이 할당되고, 나머지 2개의 영역에 대해서는 저품질의 비트율이 할당되는 영역 별 품질 구성이 존재할 수도 있다.
이처럼, 가용 대역폭을 기준으로 각각의 영역에 소정 품질에 따른 비트율이 할당될 수 있으며, 각각의 영역에 할당될 수 있는 비트율의 조합은 다양할 수 있다. 따라서, 영역 별 품질 구성 후보군은 가용 네트워크 대역폭이 높을수록 그 개수가 증가하고, 품질의 종류를 다양하게 설정할수록 그 개수가 증가할 수 있다.
이 후, 영역 별 품질 결정부(334)는 부가정보 분석부(332)에서 획득한 복수의 영역에 대한 중요도 정보 및/또는 세그먼트에 대한 정보에 기초하여, 영역 별 품질 구성 후보군 중에서 최적의 영역 별 품질 구성을 선정할 수 있다. 전술한 바와 같이, 복수의 영역에 대한 중요도 정보는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 포함하고, 세그먼트에 대한 정보는 영역 별 세그먼트에 상응하는 컨텐트 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 대한 정보를 포함할 수 있다.
예를 들어, 영역 별 품질 결정부(334)는 복잡도가 높은 영역에 대해서는 고품질(높은 대역폭)을 할당하고 복잡도가 낮은 영역에 대해서는 저품질(낮은 대역폭)을 할당함으로써 시청자가 느끼는 화질의 저하를 최소화하고 대역폭 효용을 최대화하며, 네트워크 상태에 적응적인 스트리밍을 가능하게 할 수 있다. 전술한 네트워크 상태에 적응적인 스트리밍은, 컨텐트 영상을 복수의 영역으로 분할되고 분할된 각 영역에 대하여 적어도 하나의 품질로 부호화가 수행됨으로써 가능한 것이다.
또한, 영역 별 품질 결정부(334)는 네트워크 상태를 분석하여 망의 상태에 가장 적당한 비트율을 판단하고, 판단 결과를 바탕으로 현재의 네트워크 통신망 환경에 적합한 세그먼트를 데이터 송수신부(331)를 통해 서버(310)에 요청하여 전달받는다. 한편, 영역 별 품질 결정부(334)는 스트리밍 환경이 악화되어 현재 수신중인 비트 스트림을 계속하여 수신하면 끊임없이 컨텐츠를 재생할 수 없다고 판단되는 경우에는 현재 수신중인 비트스트림보다 낮은 품질로 부호화된 비트스트림의 세그먼트를 요청하고, 스트리밍 환경이 개선되어 현재 수신중인 비트스트림보다 높은 품질로 부호화된 비트스트림을 수신하더라도 끊임없이 컨텐츠를 재생할 수 있는 경우에는 현재 수신중인 비트스트림보다 높은 품질로 부호화된 비트스트림의 세그먼트를 요청할 수 있다.
일 실시예에 따른 복호화부(335)는 데이터 송수신부(331)에서 서버(310)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성할 수 있다.
일 실시예에 따른 렌더링부(336)는 복호화부(335)에서 생성한 영역 별 복원 영상을 병합하여 렌더링할 수 있다.
일 실시예에 따른 디스플레이부(337)는 렌더링된 영상을 재생하여 디스플레이할 수 있다.
도 4는 분할된 각 영역의 위치 및 크기에 관한 정보를 기술하는 방식의 일 예를 설명하기 위한 도면이다. 다만, 일 실시예에서 각 영역의 정보를 기술하는 방식은 도 4에 국한되는 것은 아니며, 도 4에 나타난 정보 기술 방식은 다양한 실시예 중에서 하나의 예시적인 정보 기술 방식일 수 있다.
도 4를 참조하면, 컨텐트의 소정 프레임으로부터 분할된 각 영역에 대하여 영역 공간 정보(400)가 기술될 수 있다. 영역 공간 정보(400)는 분할된 각각의 영역의 위치, 개수 및 크기 중 적어도 하나에 관한 정보를 포함할 수 있다. 영역 공간 정보(400)는 부가정보에 포함될 수 있다. 여기서, 부가정보는 다른 의미로 미디어 정보(MPD)를 나타낼 수 있으며, 영역 공간 정보(400)는 공간 관계 정보(Spatial Relationship Description; SRD)를 의미하는 것일 수 있다.
일 실시예에 따른 영역 공간 정보(400)는 원본 영상 아이디(source_id), 원본 영상을 기준으로 해당 영역의 좌상단 가로 위치(x), 해당 영역의 좌상단 세로 위치(y), 해당 영역의 가로 길이(w) 및 해당 영역의 세로 길이(y)에 대한 정보를 포함할 수 있다. 상술한 정보는 필수적(mandatory)으로 영역 공간 정보(400) 내에 포함되어야 하는 필수 정보(410)일 수 있다.
또한, 공간 영역 정보(400)는 필수 정보(410) 외에 선택적으로 원본 영상의 가로 길이(W), 원본 영상의 세로 길이(H) 및 영역 그룹 아이디(spatial_set_id)에 대한 선택 정보(420)를 더 포함할 수 있다.
일 실시예에 따른 영역 공간 정보(400)는 영역 별 품질을 결정하기 위한 기초가 되는 복수의 영역에 대한 중요도 정보에 참조로 이용될 수 있다. 또한, 영역 공간 정보(400)는 영역 별 적어도 하나의 세그먼트의 위치 정보를 기술하기 위해 이용될 수도 있다.
도 5는 일 실시예에 따라 분할된 복수의 영역의 복잡도에 기초하여 영역 별로 중요도를 부여하는 방법을 도시한다.
일 실시예에 따른 복잡도 정보(510)는 서버(310)에서 생성될 수 있다. 복잡도 정보(510)는 영상의 복잡도를 수치적으로 나타낸 데이터이다. 복잡도 정보(510)는 공간적으로 분할된 영역 별 단위로 저장된다. 예를 들어, 복잡도 정보(510)는 전체 영역의 복잡도를 각 영역 별 복잡도(즉, c1, c2, c3, c4, c5, c6, c7, c8)를 이용하여 나타낼 수 있다. 또한, 복잡도 정보(510)는 시간적으로 분할된 시간 간격 단위로 저장될 수도 있다. 일 실시예에 따른 복잡도는 픽셀 간의 관계를 수치, 등급, 정도 등으로 표현한 데이터로서, 복잡도를 계산하기 위한 수식에 기초하여 산출될 수 있다. 복잡도를 계산하기 위한 수식은 특정 수식에 한정되는 것은 아니다. 예를 들어, 바다 또는 하늘과 같은 평탄한 영역은 복잡도가 낮은 반면, 사람들 또는 빌딩과 같이 픽셀 간의 배열이 불규칙한 영역은 복잡도가 높은 경향이 있다.
일 실시예에 따라, 서버(310)는 복잡도 정보(510)를 이용하여 각 영역의 복잡도에 대한 중요도를 부여(scoring)할 수 있다. 예를 들어, 전체 영역 중에서 복잡도가 높은 순서에 따라 높은 중요도가 부여될 수 있다. 이와 같이 수치 또는 등급으로 환산된 각 영역 별 중요도는 영역 별 중요도 정보(520)에 포함될 수 있다. 중요도가 높은 영역은 중요도가 낮은 영역보다 상대적으로 복잡도가 높으므로, 높은 품질로 부호화될 필요가 있다는 것을 의미할 수 있다.
일 실시예에 따른 영역 별 중요도 정보(520)에는 영역 별 복잡도에 대한 정보 뿐만 아니라, 영역 내의 오브젝트 상태 및 해당 영역의 시청 가능성 여부 등과 같은 다양한 요소들도 포함될 수 있다.
도 6은 단일 품질로 구성된 영상(600)을 나타내는 도면이다.
도 6을 참조하면, 가용 네트워크 대역폭에 기초하여 영상이 소정 품질로 부호화된 예가 도시된다. 도 6에 도시된 예에 따르면, 가용 네트워크 대역폭이 12 Mbps 이므로, 영상의 전체 영역이 12 Mbps 의 품질로 부호화된다. 이 때, 영상에 대한 화면 분할이 수행되지 않으므로 모든 영역이 동일한 품질로 구성된다. 즉, 복잡도가 낮은 영역과 복잡도가 높은 영역에 관계 없이 모든 영역에 대해 가용 네트워크 대역폭이 고르게 분배된다.
도 7은 일 실시예에 따른 영역 별 품질이 차등적으로 구성된 영상(700)을 나타내는 도면이다.
도 7의 전체 영상은 분할된 각 영역들(702)의 조합으로 구성된다.
도 7을 참조하면, 영상으로부터 분할된 각 영역이 가용 네트워크 대역폭에 기초하여 소정 품질로 부호화된 예가 도시된다. 도 7에 도시된 예에 따르면, 가용 네트워크 대역폭이 12 Mbps 인 것으로 결정된다. 이 때, 가용 네트워크 대역폭은 분할된 각 영역들(702)에 차등적으로 할당된다. 시청자가 느끼는 화질 저하가 최소화될 수 있도록 각 영역들(702)의 중요도를 고려하여 대역폭이 할당될 수 있다. 예를 들어, 각 영역들(702)은 복잡도가 높을수록 높은 중요도를 가질 수 있다. 따라서, 화질 개선을 위해 높은 중요도를 가지는 영역은 높은 품질로 부호화될 수 있다.
전체 영역을 단일 품질로 구성하는 경우와 달리, 영역 별 품질을 차등적으로 구성할 경우, 영역 별 품질 구성이 적어도 하나 이상 존재할 수 있으며, 영역 별 품질에 따른 비트율이 표 1과 같이 미리 정의되어 있을 수 있다.
고품질 (High) 중간품질 (Mid) 저품질 (Low)
전체 영역 16 Mbps 12 Mbps 4 Mbps
개별 영역 2 Mbps 1.5 Mbps 0.5 Mbps
표 1의 예시를 참조하면, 전체 영상이 16Mbps 의 고품질로 부호화될 수 있는 경우라면, 8개로 분할된 개별 영역은 2Mbps 의 고품질로 부호화될 수 있다. 또한, 전체 영상이 12Mbps 의 중간품질로 부호화될 수 있는 경우라면, 8개로 분할된 개별 영역은 1.5Mbps 의 중간품질로 부호화될 수 있다. 또한, 전체 영상이 4Mbps 의 저품질로 부호화될 수 있는 경우라면, 8개로 분할된 개별 영역은 0.5Mbps 의 중간품질로 부호화될 수 있다. 그러나, 품질을 나누는 기준은 상술한 예에 한정되는 것은 아니며 서버 측, 네트워크 측 및 클라이언트 측 가용 리소스에 따라 다양하게 설정될 수 있다. 마찬가지로, 상기 실시예에서는 영역을 8개로 나누는 경우를 가정하였지만, 분할되는 영역의 개수 및 크기는 다양할 수 있다.
도 7을 참조하면, 높은 중요도를 가지는 영역들은 고품질(H)로 부호화되고, 중간 중요도를 가지는 영역들은 중간품질(M)로 부호화되며, 낮은 중요도를 가지는 영역들은 저품질(L)로 부호화된다. 각 영역 별 품질에 따른 비트율을 모두 합하면 가용 네트워크 대역폭을 초과하지 않는다.
VR 영상과 같은 전방위(360도) 영상 데이터를 스트리밍하는 경우, 영역 별로 복잡도가 상이한 경우가 많은데, 복잡도에 상관 없이 모든 영역을 단일 품질로 구성하면 시청자가 화질 저하를 느낄 수 있다. 따라서, 이처럼 영역 별 품질을 차등적으로 구성함으로써 화질 저하를 최소화하고 동시에 가용 네트워크 대역폭을 효율적으로 활용할 수 있다.
도 8은 일 실시예에 따라 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 8에 도시된 스트리밍 데이터 전송 장치(810) 및 스트리밍 데이터 수신 장치(820)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 8을 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(810)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(811)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(810)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(812)한다. 스트리밍 데이터 전송 장치(810)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다. 생성된 영역 별 적어도 하나의 세그먼트는 공간적으로 나누어진 비트스트림의 데이터 단위이다.
일 실시예에 따른 스트리밍 데이터 전송 장치(810)는 영역 별 중요도를 산출(813)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다. 복잡도는 픽셀 간의 관계를 수치, 등급, 정도 등으로 표현한 데이터로서, 복잡도를 계산하기 위한 다양한 수식에 기초하여 산출될 수 있다. 오브젝트 상태는 영상 내 인접한 픽셀들 간의 밝기, 색상, 깊이의 차이를 학습된 특징과 비교함으로써 결정되는 오브젝트 상태와 관련될 가능성(likelihood)에 기초하여 산출될 수 있으며, 전역적인 최적화 기법 또는 지역적인 최적화 기법 중 적어도 하나의 기법을 통해 산출될 수 있다. 또한, 시청 가능성 여부에 관한 정보는 컨텐트 자체의 특성, 관심 영역(ROI; Region of Interest), 시야 범위(FOV; Field of View) 등에 관한 정보를 소스 미디어 데이터, 클라이언트, 영상 재생 기기 등으로부터 획득함으로써 산출될 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(810)는 세그먼트의 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 관한 정보를 포함하는 세그먼트 정보와 산출된 영역 별 중요도에 관한 정보를 부가정보로 기술(814)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(810)는 스트리밍 데이터 수신 장치(820)로부터의 요청에 따라 영역 별 세그먼트를 전송(815)한다.
도 8을 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(820)는 스트리밍 데이터 전송 장치(810)에 세그먼트 정보와 영역 별 중요도에 관한 정보를 포함하는 부가정보를 요청(821)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(820)는 네트워크 상태를 검사(822)한다. 스트리밍 데이터 수신 장치(820)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다. 스트리밍 데이터 수신 장치(820)는 스트리밍 데이터 전송 장치(810)와 연결되는 네트워크의 대역폭을 소정의 시간 간격으로 측정할 수 있다. 네트워크의 대역폭이 빠르게 변화하는 경우에는 시간 간격을 짧게 설정하여 대역폭이 측정되고 네트워크의 대역폭이 느리게 변화하는 경우에는 시간 간격을 길게 설정하여 대역폭이 측정될 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(820)는 네트워크 상태에 적합한 영역 별 품질 구성 후보군을 생성(823)한다. 영역 별 품질 구성 후보군이란, 가용 네트워크 대역폭을 기준으로 끊김 없는 미디어 재생이 가능하도록, 복수의 영역에 대해 할당될 수 있는 품질(예를 들어, 비트율)의 다양한 조합들을 의미할 수 있다. 영역 별 품질 구성 후보군은 가용 네트워크 대역폭이 클수록 개수가 증가하고, 부호화하는 품질의 종류가 다양할수록 개수가 증가할 수 있다. 스트리밍 데이터 수신 장치(820)는 네트워크의 상태 및 스트리밍 데이터 전송 장치(810)로부터 수신한 부가정보에 포함된 세그먼트 정보에 기초하여 영역 별 품질 구성 후보군을 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(820)는 영역 별 중요도를 기반으로 영역 별 최적 품질을 선정(824)한다. 영역 별 중요도는 스트리밍 데이터 전송 장치(810)로부터 수신한 부가정보에 포함된 정보일 수 있다. 예를 들어, 중요도가 높은 영역에 대해서는 고품질(높은 대역폭)이 할당되고 중요도가 낮은 영역에 대해서는 저품질(낮은 대역폭)이 할당될 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(820)는 스트리밍 데이터 전송 장치(810)에 영역 별 세그먼트를 요청(825)한다. 스트리밍 데이터 수신 장치(820)가 요청하는 영역 별 세그먼트는, 스트리밍 데이터 전송 장치(810)가 보유한 영역 별 적어도 하나의 세그먼트 중에서, 스트리밍 데이터 수신 장치(820)에 의해 선정된 영역 별 최적 품질에 상응하는 영역 별 세그먼트를 의미한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(820)는 스트리밍 데이터 전송 장치(810)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(826)한다.
도 9는 다른 실시예에 따라 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 9에 도시된 스트리밍 데이터 전송 장치(910) 및 스트리밍 데이터 수신 장치(920)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 9를 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(910)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(911)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(910)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(912)한다. 스트리밍 데이터 전송 장치(910)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(910)는 영역 별 중요도를 산출(913)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(910)는 영역 별 중요도에 기반하여 네트워크 상태 별 최적 품질 구성을 결정(914)한다. 네트워크 상태 별 최적 품질 구성은, 다양한 크기의 가용 대역폭들과 그에 각각 대응하는 영역 별 최적 품질과의 관계를 나타낸다.
네트워크 상태의 측정 및 예측이 스트리밍 데이터 전송 장치(910)가 아닌 스트리밍 데이터 수신 장치(920)에서 이루어지는 경우, 스트리밍 데이터 전송 장치(910)는 유동적인 가용 네트워크 대역폭을 미리 예측할 수 없다. 그 대신, 스트리밍 데이터 전송 장치(910)는 네트워크 상태 별 최적 품질 구성을 일종의 참조 테이블로 미리 생성해 둠으로써, 스트리밍 데이터 수신 장치(920)가 네트워크 상태에 따른 최적 품질 구성을 실시간으로 결정할 필요가 없도록 할 수 있다. 즉, 스트리밍 데이터 수신 장치(920)는 도 8의 실시예와 달리, 영역 별 품질 구성 후보군을 생성하는 단계를 생략할 수 있게 된다. 다시 말해, 스트리밍 데이터 수신 장치(920)에서는 스트리밍 데이터 전송 장치(910)에서 생성해 둔 참조 테이블을 이용하여, 측정된 네트워크의 상태에 대응하는 영역 별 최적 품질을 선택하면 될 뿐이다. 이에 따라, 스트리밍 데이터 수신 장치(920)의 리소스 사용은 최소화될 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(910)는 세그먼트의 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 관한 정보를 포함하는 세그먼트 정보와 네트워크 상태 별 최적 품질 구성에 관한 정보를 부가정보로 기술(915)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(910)는 스트리밍 데이터 수신 장치(920)로부터의 요청에 따라 영역 별 세그먼트를 전송(916)한다.
도 9를 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(920)는 스트리밍 데이터 전송 장치(910)에 세그먼트 정보와 네트워크 상태 별 최적 품질 구성에 관한 정보를 포함하는 부가정보를 요청(921)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(920)는 네트워크 상태를 검사(922)한다. 스트리밍 데이터 수신 장치(920)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(920)는 네트워크 상태에 적합한 영역 별 최적 품질 구성을 선택(923)한다. 스트리밍 데이터 수신 장치(920)는 스트리밍 데이터 전송 장치(910)에서 생성해 둔 참조 테이블(즉, 네트워크 상태 별 최적 품질 구성 정보)을 이용하여, 가용 네트워크 대역폭에 대응하는 영역 별 최적 품질을 선택할 수 있다. 스트리밍 데이터 수신 장치(920)는 네트워크 상태에 적합한 영역 별 최적 품질 구성을 선택함에 있어서, 스트리밍 데이터 전송 장치(910)로부터 수신한 부가정보에 포함된 세그먼트 정보를 이용할 수도 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(920)는 스트리밍 데이터 전송 장치(910)에 영역 별 세그먼트를 요청(924)한다. 스트리밍 데이터 수신 장치(920)가 요청하는 영역 별 세그먼트는, 스트리밍 데이터 전송 장치(910)가 보유한 영역 별 적어도 하나의 세그먼트 중에서, 스트리밍 데이터 수신 장치(920)에 의해 선택된 영역 별 최적 품질에 상응하는 영역 별 세그먼트를 의미한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(920)는 스트리밍 데이터 전송 장치(910)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(925)한다.
도 10은 또 다른 실시예에 따라 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 10에 도시된 스트리밍 데이터 전송 장치(1010) 및 스트리밍 데이터 수신 장치(1020)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 10을 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(1010)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(1011)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1010)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(1012)한다. 스트리밍 데이터 전송 장치(1010)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1010)는 영역 별 중요도를 산출(1013)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1010)는 네트워크 상태를 검사(1014)한다. 스트리밍 데이터 전송 장치(1010)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1010)는 네트워크 상태에 적합한 영역 별 품질 구성 후보군을 생성(1015)한다. 도 8 또는 도 9의 실시예와 달리, 영역 별 품질 구성 후보군이 스트리밍 데이터 전송 장치(1010)에 의해 생성됨으로써 스트리밍 데이터 수신 장치(1020)의 리소스 사용이 최소화될 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1010)는 영역 별 중요도를 기반으로 영역 별 최적 품질을 선정(1016)한다. 도 8 또는 도 9의 실시예와 달리, 네트워크 상태 검사, 영역 별 품질 구성 후보군 생성 및 영역 별 최적 품질 선정이 모두 스트리밍 데이터 전송 장치(1010)에서 이루어지므로, 스트리밍 데이터 수신 장치(1020)는 영역 별 최적 품질을 결정할 필요가 없다. 따라서, 스트리밍 데이터 전송 장치(1010)는 영역 별 최적 품질 결정을 위한 부가정보를 별도로 생성 및 전송하지 않아도 된다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1010)는 스트리밍 데이터 수신 장치(1020)로부터의 요청에 따라 영역 별 세그먼트를 전송(1017)한다.
도 10을 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(1020)는 스트리밍 데이터 전송 장치(1010)에 영역 별 세그먼트를 요청(1021)한다. 스트리밍 데이터 수신 장치(1020)가 요청하는 영역 별 세그먼트는, 스트리밍 데이터 전송 장치(1010)가 보유한 영역 별 적어도 하나의 세그먼트 중에서, 스트리밍 데이터 전송 장치(1010)에 의해 선정된 영역 별 최적 품질에 상응하는 영역 별 세그먼트를 의미한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1020)는 스트리밍 데이터 전송 장치(1010)로부터 영역 별 세그먼트를 수신(1022)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1020)는 스트리밍 데이터 전송 장치(1010)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(1023)한다.
도 11은 일 실시예에 따라 관심 영역에 기초하여 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 11에 도시된 스트리밍 데이터 전송 장치(1110) 및 스트리밍 데이터 수신 장치(1120)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 11을 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(1110)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(1111)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1110)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(1112)한다. 스트리밍 데이터 전송 장치(1110)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1110)는 영역 별 중요도를 산출(1113)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1110)는 세그먼트의 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 관한 정보를 포함하는 세그먼트 정보와 산출된 영역 별 중요도에 관한 정보를 부가정보로 기술(1114)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1110)는 스트리밍 데이터 수신 장치(1120)로부터의 요청에 따라 영역 별 세그먼트를 전송(1115)한다.
도 11을 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(1120)는 스트리밍 데이터 전송 장치(1110)에 세그먼트 정보와 영역 별 중요도에 관한 정보를 포함하는 부가정보를 요청(1121)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1120)는 네트워크 상태를 검사(1122)한다. 스트리밍 데이터 수신 장치(1120)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1120)는 관심 영역 정보를 추출(1123)한다. 관심 영역 정보는 컨텐트 자체의 특성으로부터 획득될 수도 있다. 또한, 관심 영역 정보는 클라이언트, 영상 재생 기기 등으로부터 획득되는 관심 영역(ROI; Region of Interest), 시야 범위(FOV; Field of View) 등에 관한 정보를 포함할 수도 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1120)는 관심 영역을 고려하여 네트워크 상태에 적합한 영역 별 품질 구성 후보군을 생성(1124)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1120)는 영역 별 중요도를 기반으로 영역 별 최적 품질을 선정(1125)한다. 영역 별 중요도는 스트리밍 데이터 전송 장치(1110)로부터 수신한 부가정보에 포함된 정보일 수 있다. 예를 들어, 중요도가 높은 영역에 대해서는 고품질(높은 대역폭)이 할당되고 중요도가 낮은 영역에 대해서는 저품질(낮은 대역폭)이 할당될 수 있다. 또한, 관심 영역에 해당하는 영역에 대해서는 가중치가 부여되어 고품질이 할당되고, 관심 영역에 해당하지 않는 영역에 대해서는 저품질이 할당될 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1120)는 스트리밍 데이터 전송 장치(1110)에 영역 별 세그먼트를 요청(1126)한다. 스트리밍 데이터 수신 장치(1120)가 요청하는 영역 별 세그먼트는, 스트리밍 데이터 전송 장치(1110)가 보유한 영역 별 적어도 하나의 세그먼트 중에서, 스트리밍 데이터 수신 장치(1120)에 의해 선정된 영역 별 최적 품질에 상응하는 영역 별 세그먼트를 의미한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1120)는 스트리밍 데이터 전송 장치(1110)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(1127)한다.
도 12는 다른 실시예에 따라 관심 영역에 기초하여 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 12에 도시된 스트리밍 데이터 전송 장치(1210) 및 스트리밍 데이터 수신 장치(1220)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 12를 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(1210)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(1211)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1210)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(1212)한다. 스트리밍 데이터 전송 장치(1210)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1210)는 영역 별 중요도를 산출(1213)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1210)는 영역 별 중요도에 기반하여 네트워크 상태 별 최적 품질 구성을 결정(1214)한다. 네트워크 상태 별 최적 품질 구성은, 다양한 크기의 가용 대역폭들과 그에 각각 대응하는 영역 별 최적 품질과의 관계를 나타낸다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1210)는 세그먼트의 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 관한 정보를 포함하는 세그먼트 정보와 네트워크 상태 별 최적 품질 구성에 관한 정보를 부가정보로 기술(1215)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1210)는 스트리밍 데이터 수신 장치(1220)로부터의 요청에 따라 영역 별 세그먼트를 전송(1216)한다.
도 12를 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(1220)는 스트리밍 데이터 전송 장치(1210)에 세그먼트 정보와 네트워크 상태 별 최적 품질 구성에 관한 정보를 포함하는 부가정보를 요청(1221)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1220)는 네트워크 상태를 검사(1222)한다. 스트리밍 데이터 수신 장치(1220)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1220)는 관심 영역 정보를 추출(1223)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1220)는 관심 영역을 고려하여 네트워크 상태에 적합한 영역 별 최적 품질 구성을 선택(1224)한다. 스트리밍 데이터 수신 장치(1220)는 스트리밍 데이터 전송 장치(1210)에서 생성해 둔 참조 테이블(즉, 네트워크 상태 별 최적 품질 구성 정보)을 이용하여, 가용 네트워크 대역폭에 대응하는 영역 별 최적 품질을 선택할 수 있다. 스트리밍 데이터 수신 장치(1220)는 네트워크 상태에 적합한 영역 별 최적 품질 구성을 선택함에 있어서, 스트리밍 데이터 전송 장치(1210)로부터 수신한 부가정보에 포함된 세그먼트 정보를 이용할 수도 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1220)는 스트리밍 데이터 전송 장치(1210)에 영역 별 세그먼트를 요청(1225)한다. 스트리밍 데이터 수신 장치(1220)가 요청하는 영역 별 세그먼트는, 스트리밍 데이터 전송 장치(1210)가 보유한 영역 별 적어도 하나의 세그먼트 중에서, 스트리밍 데이터 수신 장치(1220)에 의해 선택된 영역 별 최적 품질에 상응하는 영역 별 세그먼트를 의미한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1220)는 스트리밍 데이터 전송 장치(1210)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(1226)한다.
도 13은 또 다른 실시예에 따라 관심 영역에 기초하여 컨텐트를 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 13에 도시된 스트리밍 데이터 전송 장치(1310) 및 스트리밍 데이터 수신 장치(1320)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 13을 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(1311)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(1312)한다. 스트리밍 데이터 전송 장치(1310)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 영역 별 중요도를 산출(1313)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 스트리밍 데이터 수신 장치(1320)로부터 관심 영역 정보를 수신(1314)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 네트워크 상태를 검사(1315)한다. 스트리밍 데이터 전송 장치(1310)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 관심 영역을 고려하여 네트워크 상태에 적합한 영역 별 품질 구성 후보군을 생성(1316)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 영역 별 중요도를 기반으로 영역 별 최적 품질을 선정(1317)한다. 네트워크 상태 검사, 영역 별 품질 구성 후보군 생성 및 영역 별 최적 품질 선정이 모두 스트리밍 데이터 전송 장치(1310)에서 이루어지므로, 스트리밍 데이터 수신 장치(1320)는 영역 별 최적 품질을 결정할 필요가 없다. 따라서, 스트리밍 데이터 전송 장치(1310)는 영역 별 최적 품질 결정을 위한 부가정보를 별도로 생성 및 전송하지 않아도 된다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1310)는 스트리밍 데이터 수신 장치(1320)로부터의 요청에 따라 영역 별 세그먼트를 전송(1318)한다.
도 13을 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(1320)는 스트리밍 데이터 전송 장치(1310)에 영역 별 세그먼트를 요청(1321)한다. 스트리밍 데이터 수신 장치(1320)가 요청하는 영역 별 세그먼트는, 스트리밍 데이터 전송 장치(1310)가 보유한 영역 별 적어도 하나의 세그먼트 중에서, 스트리밍 데이터 전송 장치(1310)에 의해 선정된 영역 별 최적 품질에 상응하는 영역 별 세그먼트를 의미한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1320)는 관심 영역 정보를 추출(1322)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1320)는 관심 영역 정보를 스트리밍 데이터 전송 장치(1310)에 전송(1323)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1320)는 스트리밍 데이터 전송 장치(1310)로부터 영역 별 세그먼트를 수신(1324)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1320)는 스트리밍 데이터 전송 장치(1310)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(1325)한다.
도 14는 일 실시예에 따라 관심 영역을 이용할지 여부의 판단에 기초하여 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 14에 도시된 스트리밍 데이터 전송 장치(1410) 및 스트리밍 데이터 수신 장치(1420)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 14를 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(1410)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(1411)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1410)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(1412)한다. 스트리밍 데이터 전송 장치(1410)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1410)는 영역 별 중요도를 산출(1413)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1410)는 세그먼트의 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 관한 정보를 포함하는 세그먼트 정보와 산출된 영역 별 중요도에 관한 정보를 부가정보로 기술(1414)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1410)는 스트리밍 데이터 수신 장치(1420)로부터의 요청에 따라 영역 별 세그먼트를 전송(1415)한다.
도 14를 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(1420)는 스트리밍 데이터 전송 장치(1410)에 세그먼트 정보와 영역 별 중요도에 관한 정보를 포함하는 부가정보를 요청(1421)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1420)는 네트워크 상태를 검사(1422)한다. 스트리밍 데이터 수신 장치(1420)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1420)는 관심 영역을 기반으로 품질을 구성할 것인지 여부를 판단(1423)한다. 관심 영역을 기반으로 품질을 구성할 것인지 여부의 판단은 사용자에 의해 이루어질 수도 있으며, 컨텐트의 자체적인 특성에 따라 자동으로 이루어질 수도 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1420)는 관심 영역을 기반으로 품질을 구성하는 경우, 관심 영역 정보를 추출(1424)하고, 추출된 관심 영역 정보를 기반으로 영역 별 최적 품질을 결정(1425)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1420)는 관심 영역을 기반으로 품질을 구성하지 않는 경우, 네트워크 상태에 적합한 영역 별 품질 구성 후보군을 생성(1426)하고, 영역 별 중요도를 기반으로 영역 별 최적 품질을 선정(1427)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1420)는 스트리밍 데이터 전송 장치(1410)에 영역 별 세그먼트를 요청(1428)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1420)는 스트리밍 데이터 전송 장치(1410)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(1429)한다.
도 15는 다른 실시예에 따라 관심 영역을 이용할지 여부의 판단에 기초하여 스트리밍하는 방법을 설명하기 위한 흐름도이다.
도 15에 도시된 스트리밍 데이터 전송 장치(1510) 및 스트리밍 데이터 수신 장치(1520)는, 도 3의 서버(310) 및 클라이언트(330)에 각각 대응할 수 있다.
도 15를 참조하면, 일 실시예에 따른 스트리밍 데이터 전송 장치(1510)는 컨텐트의 소정 프레임을 복수의 영역으로 분할(1511)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1510)는 유동적인 스트리밍 환경에 따른 적응적인 스트리밍을 위해 분할된 각 영역을 적어도 하나의 품질로 부호화(1512)한다. 스트리밍 데이터 전송 장치(1510)는 비트율, 샘플링 주파수, 해상도, 프레임율 등과 같은 인자들을 조절함으로써 분할된 영역 각각에 대해 적어도 하나의 세그먼트를 생성할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1510)는 영역 별 중요도를 산출(1513)한다. 영역 별 중요도는 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보, 시청 가능성 여부에 관한 정보 등을 의미할 수 있다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1510)는 영역 별 중요도에 기반하여 네트워크 상태 별 최적 품질 구성을 결정(1514)한다. 네트워크 상태 별 최적 품질 구성은, 다양한 크기의 가용 대역폭들과 그에 각각 대응하는 영역 별 최적 품질과의 관계를 나타낸다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1510)는 세그먼트의 시간상의 위치, 공간상의 위치, 품질, URL, 크기 등에 관한 정보를 포함하는 세그먼트 정보와 네트워크 상태 별 최적 품질 구성에 관한 정보를 부가정보로 기술(1515)한다.
일 실시예에 따른 스트리밍 데이터 전송 장치(1510)는 스트리밍 데이터 수신 장치(1520)로부터의 요청에 따라 영역 별 세그먼트를 전송(1516)한다.
도 15를 참조하면, 일 실시예에 따른 스트리밍 데이터 수신 장치(1520)는 스트리밍 데이터 전송 장치(1510)에 세그먼트 정보와 네트워크 상태 별 최적 품질 구성에 관한 정보를 포함하는 부가정보를 요청(1521)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1520)는 네트워크 상태를 검사(1522)한다. 스트리밍 데이터 수신 장치(1520)는 스트리밍을 위한 네트워크의 상태를 측정하고 예측하여 가용 네트워크 대역폭을 결정할 수 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1520)는 관심 영역을 기반으로 품질을 구성할 것인지 여부를 판단(1523)한다. 관심 영역을 기반으로 품질을 구성할 것인지 여부의 판단은 사용자에 의해 이루어질 수도 있으며, 컨텐트의 자체적인 특성에 따라 자동으로 이루어질 수도 있다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1520)는 관심 영역을 기반으로 품질을 구성하는 경우, 관심 영역 정보를 추출(1524)하고, 추출된 관심 영역 정보를 기반으로 영역 별 최적 품질을 결정(1525)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1520)는 관심 영역을 기반으로 품질을 구성하지 않는 경우, 네트워크 상태에 적합한 영역 별 최적 품질 구성을 선택(1526)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1520)는 스트리밍 데이터 전송 장치(1510)에 영역 별 세그먼트를 요청(1527)한다.
일 실시예에 따른 스트리밍 데이터 수신 장치(1520)는 스트리밍 데이터 전송 장치(1510)로부터 수신한 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하고, 생성된 영역 별 복원 영상을 병합하여 렌더링(1528)한다.
도 16은 일 실시예에 따른 스트리밍 데이터 수신 방법을 설명하기 위한 흐름도를 도시한다.
단계 S1610에서, 컨텐트의 소정 프레임으로부터 분할된 복수의 영역의 품질을 네트워크 상태에 따라 차등적으로 결정하기 위해 컨텐트 관련 정보가 서버에 요청된다.
단계 S1620에서, 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화된 영역 별 적어도 하나의 세그먼트 중에서, 컨텐트 관련 정보에 기초하여 결정된 영역 별 품질에 따라 부호화된 영역 별 세그먼트가 네트워크를 통해 서버로부터 수신된다.
단계 S1630에서, 영역 별 세그먼트가 복호화되어 영역 별 복원 영상이 생성된다.
단계 S1640에서, 영역 별 복원 영상이 병합되어 렌더링된다.
도 17은 일 실시예에 따른 스트리밍 데이터 전송 방법을 설명하기 위한 흐름도를 도시한다.
단계 S1710에서, 네트워크 상태에 따라 품질을 차등적으로 결정하기 위해 컨텐트의 소정 프레임이 복수의 영역으로 분할된다.
단계 S1720에서, 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화가 수행되어 영역 별 적어도 하나의 세그먼트가 생성된다.
단계 S1730에서, 영역 별 적어도 하나의 세그먼트 중에서 영역 별 품질에 따라 부호화된 영역 별 세그먼트가 네트워크를 통해 클라이언트에 전송된다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다. 또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다.
또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등을 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.

Claims (15)

  1. 클라이언트에 의해, 컨텐트의 소정 프레임으로부터 분할된 복수의 영역의 품질을 차등적으로 결정하기 위해 컨텐트 관련 정보를 서버에 요청하는 단계;
    상기 클라이언트에 의해, 상기 서버로부터 상기 컨텐트 관련 정보를 수신하는 단계;
    상기 클라이언트에 의해, 네트워크의 상태를 검사하는 단계;
    상기 클라이언트에 의해, 상기 네트워크의 상태와 상기 수신된 컨텐트 관련 정보에 기초하여, 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계; 및
    상기 클라이언트에 의해, 상기 품질 구성 후보군에 기초하여 상기 복수의 영역 각각에 대한 품질을 선택하는 단계;
    상기 클라이언트에 의해, 상기 복수의 영역 각각에 대해 적어도 하나의 품질에 따라 상기 복수의 영역 각각을 부호화하여 생성된 영역 별 적어도 하나의 세그먼트 중에서, 선택된 영역 별 세그먼트를 네트워크를 통해 상기 서버로부터 수신하는 단계;
    상기 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하는 단계; 및
    상기 영역 별 복원 영상을 병합하여 렌더링하는 단계를 포함하고,
    상기 선택된 영역 별 세그먼트는 상기 컨텐트 관련 정보에 기초하여 결정되고, 선택된 품질에 대응되는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  2. 제 1 항에 있어서,
    상기 컨텐트 관련 정보는, 상기 복수의 영역에 대한 중요도 정보 및 상기 영역 별 적어도 하나의 세그먼트에 대한 세그먼트 정보를 포함하는 부가정보를 포함하고,
    상기 복수의 영역에 대한 중요도 정보는, 상기 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보 및 시청 가능성 여부에 관한 정보 중 적어도 하나를 포함하고,
    상기 세그먼트 정보는, 상기 영역 별 적어도 하나의 세그먼트의 품질 정보 및 상기 영역 별 적어도 하나의 세그먼트의 상기 소정 프레임 내 위치 정보 중 적어도 하나를 포함하는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  3. 제 2 항에 있어서,
    상기 방법은,
    상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함하는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  4. 제 2 항에 있어서,
    상기 부가정보는, 상기 복수의 영역 각각에 대한 네트워크 상태 별 품질을 나타내는 정보를 포함하고,
    상기 방법은,
    상기 네트워크의 상태 및 상기 네트워크 상태 별 품질을 나타내는 정보에 기초하여, 상기 영역 별 품질을 결정하는 단계를 더 포함하는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  5. 제 3 항에 있어서,
    상기 방법은,
    관심 영역 정보를 추출하는 단계를 더 포함하고,
    상기 영역 별 품질 구성 후보군은, 상기 네트워크의 상태 및 추출된 관심 영역 정보에 기초하여 생성되는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  6. 제 4 항에 있어서,
    상기 방법은,
    관심 영역 정보를 추출하는 단계를 더 포함하고,
    상기 영역 별 품질은, 상기 네트워크의 상태, 상기 네트워크 상태 별 품질을 나타내는 정보 및 추출된 관심 영역 정보에 기초하여 결정되는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  7. 제 1 항에 있어서,
    상기 방법은,
    관심 영역 정보를 추출하는 단계; 및
    추출된 관심 영역 정보를 상기 서버로 전송하는 단계를 더 포함하고,
    상기 영역 별 품질은, 상기 관심 영역 정보에 기초하여 결정되는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  8. 제 2 항에 있어서,
    상기 방법은,
    상기 네트워크의 상태를 검사하는 단계;
    관심 영역에 기초하여 상기 영역 별 품질을 결정할지 여부를 판단하는 단계;
    상기 관심 영역에 기초하여 상기 영역 별 품질을 결정하는 경우:
    관심 영역 정보를 추출하는 단계; 및
    상기 관심 영역 정보에 기초하여 상기 영역 별 품질 정보를 결정하는 단계;
    상기 관심 영역에 기초하여 상기 영역 별 품질을 결정하지 않는 경우:
    상기 네트워크의 상태에 기초하여 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계; 및
    상기 복수의 영역에 대한 중요도 정보에 기초하여 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함하는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  9. 제 2 항에 있어서,
    상기 방법은,
    상기 네트워크의 상태를 검사하는 단계;
    관심 영역에 기초하여 상기 영역 별 품질을 결정할지 여부를 판단하는 단계;
    상기 관심 영역에 기초하여 상기 영역 별 품질을 결정하는 경우:
    관심 영역 정보를 추출하는 단계; 및
    상기 관심 영역 정보에 기초하여 상기 영역 별 품질 정보를 결정하는 단계;
    상기 관심 영역에 기초하여 상기 영역 별 품질을 결정하지 않는 경우, 상기 부가정보에 포함된 상기 복수의 영역 각각에 대한 네트워크 상태 별 품질 정보에 기초하여 상기 영역 별 품질 정보를 결정하는 단계를 더 포함하는, 클라이언트에 의한 스트리밍 데이터 수신 방법.
  10. 서버에 의해, 품질을 차등적으로 결정하기 위해 컨텐트의 소정 프레임을 복수의 영역으로 분할하는 단계;
    상기 서버에 의해, 상기 복수의 영역 각각에 대해 적어도 하나의 품질로 부호화를 수행하여 영역 별 적어도 하나의 세그먼트를 생성하는 단계;
    상기 서버에 의해, 클라이언트로부터 상기 컨텐트 관련 정보에 대한 요청을 수신하는 단계;
    상기 서버에 의해, 상기 컨텐트 관련 정보를 생성하는 단계;
    상기 서버에 의해, 상기 컨텐트 관련 정보를 상기 클라이언트에 전송하는 단계;
    상기 서버에 의해, 네트워크의 상태를 검사하는 단계;
    상기 서버에 의해, 상기 네트워크의 상태에 기초하여, 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계;
    상기 서버에 의해, 상기 컨텐트 관련 정보에 기초하여 상기 복수의 영역 각각에 대한 상기 품질 구성 후보군으로부터 상기 복수의 영역 각각에 대한 품질을 선택하는 단계;
    상기 서버에 의해, 상기 클라이언트로부터 상기 복수의 영역 각각에 대한 세그먼트에 대한 요청을 수신하는 단계; 및
    상기 생성된 영역 별 적어도 하나의 세그먼트 중에서 선택된 영역 별 세그먼트를 상기 네트워크를 통해 상기 클라이언트에 전송하는 단계를 포함하고,
    상기 선택된 영역 별 세그먼트는 상기 콘텐트 관련 정보에 기초하여 결정되고, 상기 클라이언트에 의해 선택된 복수의 영역 각각에 대한 품질에 대응되는, 서버에 의한 스트리밍 데이터 전송 방법.
  11. 제 10 항에 있어서,
    상기 방법은,
    상기 복수의 영역에 대한 중요도 정보 및 상기 영역 별 적어도 하나의 세그먼트에 대한 세그먼트 정보를 포함하는 부가정보를 생성하는 단계; 및
    상기 부가정보를 상기 네트워크를 통해 상기 클라이언트에 전송하는 단계를 더 포함하고,
    상기 복수의 영역에 대한 중요도 정보는, 상기 복수의 영역에 대한 복잡도 정보, 오브젝트 상태 정보 및 시청 가능성 여부에 관한 정보 중 적어도 하나를 포함하고,
    상기 세그먼트 정보는, 상기 영역 별 적어도 하나의 세그먼트의 품질 정보 및 상기 영역 별 적어도 하나의 세그먼트의 상기 소정 프레임 내 위치 정보 중 적어도 하나를 포함하는, 서버에 의한 스트리밍 데이터 전송 방법.
  12. 제 11 항에 있어서,
    상기 부가정보를 생성하는 단계는,
    상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 복수의 영역 각각에 대해 네트워크 상태 별 품질을 결정하는 단계; 및
    상기 세그먼트 정보 및 상기 네트워크 상태 별 품질을 나타내는 정보를 포함하는 상기 부가정보를 생성하는 단계를 포함하는, 서버에 의한 스트리밍 데이터 전송 방법.
  13. 제 10 항에 있어서,
    상기 방법은,
    상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함하는, 서버에 의한 스트리밍 데이터 전송 방법.
  14. 제 10 항에 있어서,
    상기 방법은,
    상기 클라이언트로부터 관심 영역 정보를 수신하는 단계;
    상기 관심 영역 정보 및 상기 네트워크의 상태에 기초하여, 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하는 단계; 및
    상기 복수의 영역에 대한 중요도 정보에 기초하여, 상기 영역 별 품질 구성 후보군 중에서 상기 영역 별 품질을 선정하는 단계를 더 포함하는, 서버에 의한 스트리밍 데이터 전송 방법.
  15. 컨텐트의 소정 프레임으로부터 분할된 복수의 영역의 품질을 차등적으로 결정하기 위해 컨텐트 관련 정보를 서버에 요청하고, 상기 서버로부터 상기 컨텐트 관련 정보를 수신하고, 네트워크의 상태를 검사하고, 상기 네트워크의 상태와 상기 수신된 컨텐트 관련 정보에 기초하여, 상기 복수의 영역 각각에 대해 영역 별 품질 구성 후보군을 생성하고, 상기 품질 구성 후보군에 기초하여 상기 복수의 영역 각각에 대한 품질을 선택하고, 상기 복수의 영역 각각에 대해 적어도 하나의 품질에 따라 상기 복수의 영역 각각을 부호화하여 생성된 영역 별 적어도 하나의 세그먼트 중에서, 선택된 영역 별 세그먼트를 상기 네트워크를 통해 상기 서버로부터 수신하는 데이터 송수신부;
    상기 영역 별 세그먼트를 복호화하여 영역 별 복원 영상을 생성하는 복호화부; 및
    상기 영역 별 복원 영상을 병합하여 렌더링하는 렌더링부를 포함하고,
    상기 선택된 영역 별 세그먼트는 상기 컨텐트 관련 정보에 기초하여 결정되고, 선택된 품질에 대응되는, 스트리밍 데이터 수신 장치.
KR1020160157439A 2016-11-24 2016-11-24 영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치 KR102293797B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020160157439A KR102293797B1 (ko) 2016-11-24 2016-11-24 영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치
PCT/KR2017/010656 WO2018097466A1 (ko) 2016-11-24 2017-09-27 영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치
US16/463,450 US11017517B2 (en) 2016-11-24 2017-09-27 Method and apparatus for allocating differential bandwidth for each screen region by using image complexity information
EP17874726.7A EP3528500B1 (en) 2016-11-24 2017-09-27 Method and apparatus for allocating differential bandwidth for each screen region by using image complexity information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160157439A KR102293797B1 (ko) 2016-11-24 2016-11-24 영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20180058455A KR20180058455A (ko) 2018-06-01
KR102293797B1 true KR102293797B1 (ko) 2021-08-25

Family

ID=62195576

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160157439A KR102293797B1 (ko) 2016-11-24 2016-11-24 영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치

Country Status (4)

Country Link
US (1) US11017517B2 (ko)
EP (1) EP3528500B1 (ko)
KR (1) KR102293797B1 (ko)
WO (1) WO2018097466A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11025880B2 (en) 2018-11-05 2021-06-01 Korea Electronics Technology Institute ROI-based VR content streaming server and method
KR102027172B1 (ko) * 2018-11-05 2019-10-01 전자부품연구원 Roi 기반의 vr 콘텐츠 스트리밍 서버 및 방법
KR102372421B1 (ko) * 2020-11-11 2022-03-07 포항공과대학교 산학협력단 네트워크 상태에 따른 멀티미디어 데이터 실시간 스트리밍을 위한 시스템 및 그방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5612900A (en) 1995-05-08 1997-03-18 Kabushiki Kaisha Toshiba Video encoding method and system which encodes using a rate-quantizer model
US6026232A (en) 1995-07-13 2000-02-15 Kabushiki Kaisha Toshiba Method and system to replace sections of an encoded video bitstream
US20090118019A1 (en) 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
KR100724825B1 (ko) 2005-11-17 2007-06-04 삼성전자주식회사 스케일러블 비디오 코딩에서 다차원 스케일러빌리티에 따른 조건적 접근제어를 위한 스케일러블 비디오 비트스트림 암복호화 방법 및 암복호화 시스템
US8837601B2 (en) 2010-12-10 2014-09-16 Netflix, Inc. Parallel video encoding based on complexity analysis
KR20120094273A (ko) 2011-02-16 2012-08-24 한국전자통신연구원 Svc 서버를 이용한 스트리밍 서비스 및 단말 재생 시스템
EP2824884A1 (en) * 2013-07-12 2015-01-14 Alcatel Lucent A video client for smooth display of a panoramic video
US9386308B2 (en) 2013-07-16 2016-07-05 Cisco Technology, Inc. Quality optimization with buffer and horizon constraints in adaptive streaming
US9634942B2 (en) 2013-11-11 2017-04-25 Amazon Technologies, Inc. Adaptive scene complexity based on service quality
US20150215621A1 (en) 2014-01-30 2015-07-30 Qualcomm Incorporated Rate control using complexity in video coding
GB2533624B (en) * 2014-12-23 2017-08-09 Canon Kk Methods, devices, and computer programs for improving coding of media presentation description data
KR102174325B1 (ko) 2015-02-13 2020-11-04 에스케이텔레콤 주식회사 네트워크 적응형 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 네트워크 적응형 컨텐츠 제공 장치
US10349104B2 (en) * 2015-08-19 2019-07-09 Ericsson Ab System and method for managing segment delivery and bandwidth responsive to encoding complexity metrics

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Miska M. Hannuksela et al., ‘Virtual reality video metadata for DASH MPD’, ISO/IEC JTC1/SC29/WG11 MPEG2016/M38944v2, October 2016.*

Also Published As

Publication number Publication date
US20190320007A1 (en) 2019-10-17
US11017517B2 (en) 2021-05-25
EP3528500A1 (en) 2019-08-21
EP3528500B1 (en) 2023-06-28
KR20180058455A (ko) 2018-06-01
EP3528500A4 (en) 2019-08-21
WO2018097466A1 (ko) 2018-05-31

Similar Documents

Publication Publication Date Title
Gaddam et al. Tiling in interactive panoramic video: Approaches and evaluation
US10187668B2 (en) Method, system and server for live streaming audio-video file
Sun et al. A two-tier system for on-demand streaming of 360 degree video over dynamic networks
US9210436B2 (en) Distributed video coding/decoding method, distributed video coding/decoding apparatus, and transcoding apparatus
JP2016530751A (ja) 品質対ビットレートが変動するメディアデータストリームの品質を決定するための概念
WO2015152608A2 (ko) 서브블록 기반 예측을 수행하는 인터 레이어 비디오 복호화 방법 및 그 장치 및 서브블록 기반 예측을 수행하는 인터 레이어 비디오 부호화 방법 및 그 장치
EP3493547A1 (en) Video streaming delivery
KR20170005366A (ko) 고 해상도 영상에서의 영상 추출 장치 및 방법
KR101978922B1 (ko) 관심 영역과 배경프레임 개별 전송을 이용한 고화질 360도 영상 스트리밍 방법
JP6481206B2 (ja) 情報処理装置、コンテンツ要求方法およびコンピュータプログラム
KR102293797B1 (ko) 영상 복잡도 정보를 이용한 화면 영역별 차등 대역폭 할당 방법 및 장치
CA3057894C (en) Video compression using down-sampling patterns in two phases
Nguyen et al. A client-based adaptation framework for 360-degree video streaming
JP2019110542A (ja) サーバ装置、クライアント装置、コンテンツ配信方法およびコンピュータプログラム
US20130304933A1 (en) Multi-network environment adaptive media streaming transmission method and apparatus
US20140298394A1 (en) Image processing device, image processing method, and computer program
US10708667B1 (en) Combining fragments with different encodings
Nightingale et al. Deriving video content type from HEVC bitstream semantics
Seok et al. Visual‐Attention‐Aware Progressive RoI Trick Mode Streaming in Interactive Panoramic Video Service
US10298651B2 (en) Encoding device, decoding device, computer program product, and streaming system
CN107135403B (zh) 信息处理设备
Canovas et al. A cognitive network management system to improve QoE in stereoscopic IPTV service
Guo et al. EAAT: Environment-aware adaptive transmission for split-screen video streaming
Viet et al. 2 against Sudden Network Drops
Katsigiannis et al. A machine learning driven solution to the problem of perceptual video quality metrics

Legal Events

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