KR20160031642A - Streaming service server and control method thereof - Google Patents

Streaming service server and control method thereof Download PDF

Info

Publication number
KR20160031642A
KR20160031642A KR1020140121212A KR20140121212A KR20160031642A KR 20160031642 A KR20160031642 A KR 20160031642A KR 1020140121212 A KR1020140121212 A KR 1020140121212A KR 20140121212 A KR20140121212 A KR 20140121212A KR 20160031642 A KR20160031642 A KR 20160031642A
Authority
KR
South Korea
Prior art keywords
quality
streaming service
segment
streaming
user terminal
Prior art date
Application number
KR1020140121212A
Other languages
Korean (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 KR1020140121212A priority Critical patent/KR20160031642A/en
Publication of KR20160031642A publication Critical patent/KR20160031642A/en

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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

A method for controlling a streaming service server is disclosed. The control method comprises the following steps of: receiving a request with respect to a segment of a first quality among segments having a plurality of qualities for content from a user terminal device; checking a state of a network bandwidth allocated to the first quality; and determining a quality in accordance with a check result and providing a streaming service to a segment of the determined quality. Therefore, the method stably provides streaming content of each quality to a user.

Description

스트리밍 서비스 서버 및 그의 제어 방법{STREAMING SERVICE SERVER AND CONTROL METHOD THEREOF}STREAMING SERVICE SERVER AND CONTROL METHOD THEREOF

본 발명은 스트리밍 서비스 서버 및 그의 제어 방법에 관한 것으로, 보다 상세하게는 안정적인 동적 적응형 스트리밍 서비스를 제공할 수 있는 스트리밍 서비스 서버 및 그의 제어 방법에 관한 것이다. The present invention relates to a streaming service server and a control method thereof, and more particularly, to a streaming service server capable of providing a stable dynamic adaptive streaming service and a control method thereof.

최근에는 인터넷 속도, 즉 전송 대역폭의 증가(이는 전송되는 데이터의 양이 커진다는 의미와 같다)로 인해 사용자들의 만족도가 커지고 있는데, 이러한 인터넷 관련기술을 빠른 발전으로 인해 생동감 있는 오디오(audio)와 비디오(video)들이 결합된 멀티미디어를 온라인(on-line) 검색을 통해 보고들을 수 있도록 해주는 인터넷 서비스가 가능하게 되었다. 그의 대표적인 것이 멀티미디어 스트리밍 서비스이다.In recent years, users' satisfaction has increased due to the increase of the internet speed, that is, the transmission bandwidth (which means that the amount of data to be transmitted is increased). Such rapid development of the Internet related technology, the Internet has become possible to view and listen to the combined multimedia of videos through on-line search. His representative is the multimedia streaming service.

여기서 스트리밍(streaming)이란 크기가 큰 오디오 데이터 또는 비디오 데이터(동영상데이터)를 실행시키는데 있어서 전부 다운(down)받아 실행하는 것이 아니고 여러 개의 파일로 나누어 연이어 실시간 전송하는 것이다.In this case, streaming is performed in such a manner that audio data or video data (moving image data) having a large size are not entirely downloaded and executed but are transmitted in real time in succession to a plurality of files.

이러한 오디오 파일이나 비디오 파일들을 스트리밍 형식으로 듣거나 화면에 나타내기 위해서는 클라이언트(client)(또는 사용자) 단말 장치에 여러 어플리케이션(application) 소프트웨어가 내장되어야 한다. 다시 말해서, 오디오 스트리밍/비디오 스트리밍(audio streaming/video streaming)을 위해서는 리얼 오디오 플레이어(real audio player)와 같은 오디오 스트리밍 어플리케이션이나 윈도우즈 미디어플레이어(windows media player)와 같은 멀티미디어 스트리밍 어플리케이션이 내장되어야 한다는 것이다.In order to listen to or display such audio files or video files in a streaming format, various application software must be embedded in the client (or user) terminal device. In other words, for audio streaming / video streaming, an audio streaming application such as a real audio player or a multimedia streaming application such as a windows media player should be embedded.

이 같은 스트리밍 어플리케이션은 대부분 실시간(real time)으로 오디오/비디오 스트리밍을 지원하는 멀티미디어 플러그 인(multimedia plug in)이며, 웹 브라우저(web browser)를 기반으로 하여 동작할 수 있는 부가적인 어플리케이션 프로그램이다.Such a streaming application is a multimedia plug-in that supports audio / video streaming in real time in real time, and is an additional application program that can operate based on a web browser.

현재 상기한 멀티미디어 스트리밍을 통해 지원될 수 있는 서비스로는, 스포츠나 뉴스나 라이브 콘서트 등의 실시간 중계방송서비스, 주문형 비디오 서비스(VOD : Video On Demand) 등이 있으며, 스트리밍 기술을 이용한 인터넷 방송국, 인터넷 영화관 등의 많은 인터넷 서비스 사업이 속속 생겨나고 있다.Examples of the services that can be supported through the above-mentioned multimedia streaming include real-time broadcast service such as sports, news, live concerts, etc., Video On Demand (VOD) Many internet service businesses such as movie theaters are emerging one after another.

스트리밍 서비스는 네트워크 대역폭에 따라 영향을 받는다는 점이 가장 큰 단점이고, 더욱 강력한 PC를 요구하고 있기 때문에 제한적 서비스라는 한계가 있었다. 하지만 최근 들어 인터넷 전용선이 빠르게 확장되고 있고 PC도 고성능화 되고 있어 이러한 문제는 점진적으로 사라지고 있다.Streaming service is influenced by network bandwidth, which is the biggest disadvantage. Since it requires a more powerful PC, it has a limit of limited service. Recently, however, Internet access lines are expanding rapidly and PCs are becoming more sophisticated. This problem is gradually disappearing.

더불어 이러한 단점을 보안하기 위하여 유동적인 네트워크 환경에 적절한 품질의 콘텐츠를 제공할 수 있는 적응적 스트리밍 기술의 개발이 필요하다. 이러한 기술의 대표적인 서비스로 MPEG DASH 서비스가 있다.In addition, it is necessary to develop an adaptive streaming technology capable of providing contents of appropriate quality in a flexible network environment in order to secure such a shortcoming. A representative service of this technology is the MPEG DASH service.

MPEG DASH는 MPEG에서 표준화한, HTTP 를 이용한 적응형 비디오 스트리밍 기술이다. DASH(Dynamic Adaptive Streaming over HTTP) 기술의 기본적인 구성요소로는 MPD와 segment 가 있다. MPD(Media Presentation Description)는 스트리밍 서비스 제공을 목적으로 미디어에 관한 정보를 제공하는 XML형식의 데이터이고, segment는 MPD에서 미디어 데이터를 표현할 수 있는 가장 작은 단위의 데이터 유닛을 지칭한다. 이러한 MPD 및 segment가 HTTP 서버에서 사용자 단말 장치로 전송되는 구조를 바탕으로 DASH 기술이 구성되어진다. MPEG DASH is an adaptive video streaming technology using HTTP standardized by MPEG. The basic components of DASH (Dynamic Adaptive Streaming over HTTP) technology are MPD and segment. MPD (Media Presentation Description) is data in XML format for providing information on media for the purpose of providing a streaming service, and a segment refers to a data unit of the smallest unit capable of representing media data in the MPD. DASH technology is constructed based on the structure that MPD and segment are transmitted from the HTTP server to the user terminal device.

다만, 제한적인 네트워크 환경에서 고품질의 스트리밍 서비스를 요청한 사용자들 모두에게 고품질의 스트리밍 서비스를 제공하는 것은 어렵다. 따라서, 품질 저하가 있더라고 사용자에게 끊김 없는 스트리밍 서비스를 제공할수 있는 기술 필요하다. 또한, Client 의 MPEG DASH Player 마다 MPD를 분석하는 기준과 처리하는 방식이 다르기 때문에 네트워크 상태에 따라서 지연이 생기거나 안정적으로 데이터 손실률을 보장 하기 어렵다.However, it is difficult to provide high-quality streaming service to all users requesting high-quality streaming service in a limited network environment. Therefore, there is a need for a technology that can provide continuous streaming service to the user even if quality is deteriorated. In addition, because the criteria for analyzing MPD differs for each MPEG DASH Player of Client, there is a delay depending on the network condition or it is difficult to stably guarantee the data loss rate.

본 발명은 상술한 필요성에 따라 안출된 것으로, 본 발명의 목적은 복수의 품질 별로 네트워크 대역폭을 할당하여 관리하는 스트리밍 서비스 서버 및 그의 제어 방법을 제공함에 있다. 보다 상세하게는 본 발명의 목적은 사용자 단말 장치에서 요청된 제1 품질의 세그먼트에 할당된 네트워크 대역폭을 확인하고, 확인 결과에 따라 결정된 품질의 세그먼트로 스트리밍 서비스를 제공하는 스트리밍 서비스 서버 및 그의 제어 방법을 제공함에 있다. SUMMARY OF THE INVENTION It is an object of the present invention to provide a streaming service server and a control method thereof, which allocate and manage a network bandwidth for a plurality of qualities. More particularly, it is an object of the present invention to provide a streaming service server that confirms a network bandwidth allocated to a segment of a first quality requested by a user terminal device and provides a streaming service with a segment of a quality determined according to a result of the check, .

상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버의 제어 방법은, 사용자 단말 장치로부터 컨텐츠에 대한 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받는 단계, 상기 제1 품질에 할당된 네트워크 대역폭의 상태를 확인하는 단계 및 상기 확인 결과에 따라 품질을 결정하고, 상기 결정된 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of controlling a streaming service server, the method comprising: receiving a segment of a first quality among a plurality of segments of quality for a content from a user terminal; Determining a quality of the network bandwidth allocated to the mobile terminal, and determining a quality according to the result of the check, and controlling the streaming service to provide the determined segment of the quality.

그리고, 상기 요청받는 단계는, 상기 사용자 단말 장치에서 요청된 세그먼트의 품질을 나타내는 식별 정보를 포함할 수 있다.The receiving step may include identification information indicating a quality of a segment requested by the user terminal.

또한, 컨텐츠에 대해 복수의 품질로 생성된 복수의 세그먼트 및 상기 복수의 세그먼트에 대한 속성 정보를 저장하는 단계, 상기 사용자 단말 장치에서 재생 요청된 컨텐츠에 대한 상기 속성 정보를 검출하는 단계 및 상기 검출된 속성 정보를 상기 사용자 단말 장치에 전송하는 단계를 더 포함하고, 상기 복수의 품질은, UHD(Ultra High Definition), FHD(Full High Definition), HD(High Definition), SD(Standard Definition) 중 적어도 두 개를 포함할 수 있다.Storing a plurality of segments generated with a plurality of quality levels for the content and attribute information for the plurality of segments; detecting the attribute information for the content requested to be reproduced in the user terminal device; And transmitting the attribute information to the user terminal device, wherein the plurality of qualities are at least two of UHD (Ultra High Definition), FHD (Full High Definition), HD (High Definition) ≪ / RTI >

그리고, 상기 스트리밍 서비스 서버는, 전체 네트워크 대역폭을 분배하여 상기 복수의 품질 각각에 할당할 수 있다.The streaming service server may allocate the entire network bandwidth to each of the plurality of quality levels.

또한, 상기 사용자 단말 장치는, 상기 속성 정보, 상기 사용자 단말 장치의 네트워크 대역폭 상태 및 상기 사용자 단말 장치의 하드웨어 상태 중 적어도 하나를 이용하여 상기 스트리밍 서비스 서버에 요청할 세그먼트의 품질을 결정하고, 상기 결정된 품질의 식별 정보를 포함하는 요청을 상기 스트리밍 서비스 서버에 전송할 수 있다.In addition, the user terminal apparatus determines the quality of a segment to be requested to the streaming service server using at least one of the attribute information, the network bandwidth state of the user terminal apparatus, and the hardware state of the user terminal apparatus, To the streaming service server.

그리고, 상기 확인하는 단계는, 상기 제1 품질에 할당된 네트워크 대역폭의 상태가 상기 제1 품질의 세그먼트로 스트리밍 서비스 가능한지 여부를 확인할 수 있다.The confirming step may determine whether the state of the network bandwidth allocated to the first quality is streaming serviceable to the segment of the first quality.

또한, 상기 제어하는 단계는, 상기 제1 품질의 세그먼트로 스트리밍 서비스 가능하다고 확인되면, 상기 제1 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하고, 상기 제1 품질의 세그먼트로 스트리밍 서비스 불가능하다고 확인되면, 상기 제1 품질과 상이한 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어할 수 있다.In addition, the controlling may include: controlling to provide a streaming service with the first quality segment if it is determined that the streaming service is possible with the first quality segment, and if it is determined that the streaming service is not possible with the first quality segment , And to control the streaming service to provide a segment of a quality different from the first quality.

한편, 상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버는, 사용자 단말 장치로부터 컨텐츠에 대한 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받고, 상기 제1 품질에 할당된 네트워크 대역폭의 상태를 확인하고, 상기 확인 결과에 따라 품질을 결정하며, 상기 결정된 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하는 제어부를 포함한다.According to another aspect of the present invention, there is provided a streaming service server for receiving a first quality segment of a plurality of quality segments for content from a user terminal, Determining a quality of the network bandwidth according to the check result, and controlling the streaming service to provide the determined quality segment.

그리고, 컨텐츠에 대해 복수의 품질로 생성된 복수의 세그먼트 및 상기 복수의 세그먼트에 대한 속성 정보를 저장하는 저장부를 더 포함하고, 상기 제어부는, 상기 사용자 단말 장치에서 재생 요청된 컨텐츠에 대한 상기 속성 정보를 검출하고, 상기 검출된 속성 정보를 상기 사용자 단말 장치에 전송하도록 제어하며, 상기 복수의 품질은, UHD(Ultra High Definition), FHD(Full High Definition), HD(High Definition), SD(Standard Definition) 중 적어도 두 개를 포함할 수 있다.And a storage unit for storing a plurality of segments generated with a plurality of quality levels for the content and attribute information for the plurality of segments, Wherein the control unit controls the control unit to detect the attribute information and transmit the detected attribute information to the user terminal device, wherein the plurality of qualities are at least one of a UHD (Ultra High Definition), a FHD (Full High Definition) ). ≪ / RTI >

또한, 상기 복수의 품질 각각에 대응되는 세그먼트로 스트리밍 서비스를 제공하는 복수의 스트리밍 서비스 제공부를 더 포함하고, 상기 복수의 스트리밍 서비스 제공부 각각은, 전체 네트워크 대역폭의 일부 대역폭을 각각 할당받을 수 있다.The apparatus may further include a plurality of streaming service providing units for providing a streaming service in segments corresponding to the plurality of quality levels, and each of the plurality of streaming service providing units may be allocated a bandwidth of a total network bandwidth.

그리고, 상기 제어부는, 상기 제1 품질에 할당된 네트워크 대역폭의 상태가 상기 제1 품질의 세그먼트로 스트리밍 서비스 가능한지 여부를 확인할 수 있다.The controller may check whether the state of the network bandwidth allocated to the first quality is streaming serviceable to the segment of the first quality.

또한, 상기 제어부는, 상기 제1 품질의 세그먼트로 스트리밍 서비스 가능하다고 확인되면, 상기 제1 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하고, 상기 제1 품질의 세그먼트로 스트리밍 서비그 불가능하다고 확인되면, 상기 제1 품질과 상이한 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어할 수 있다.If it is determined that the streaming service can not be performed with the segment of the first quality, the control unit may control the streaming service to provide the streaming service with the first quality segment, It is possible to control the streaming service to provide a segment of a quality different from the first quality.

상술한 본 발명의 다양한 실시 예에 따르면, 스트리밍 서버는 사용자 단말 장치에 제공될 스트리밍 컨텐츠의 품질 별로 네트워크 대역폭을 분배하여 할당함으로써, 네트워크상의 지연 시간이나 데이터 손실률을 보장하고(QoS 보장), 좀 더 안정적으로 사용자 측에 품질 별 스트리밍 컨텐츠를 제공할수 있다.According to various embodiments of the present invention, the streaming server distributes and allocates the network bandwidth according to the quality of the streaming contents to be provided to the user terminal device, thereby assuring the delay time or the data loss rate on the network (guaranteeing QoS) It is possible to stably provide quality streaming contents to the user side.

도 1은 본 발명의 일 실시 예에 따른 스트리밍 서비스 시스템을 나타내는 블록도 이다.
도 2는 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버를 나타내는 블록도 이다.
도 3은 본 발명의 다른 실시 예에 따른 스트리밍 서비스 서버를 나타내는 블록도 이다.
도 4는 본 발명의 일 실시 예에 따른 스트리밍 서비스 시스템의 동작을 나타내는 타이밍도 이다.
도 5는 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버의 동작을 구체적으로 나타내는 흐름도 이다.
도 6은 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버의 스트리밍 서비스를 위한 품질을 결정하는 동작을 구체적으로 나타내는 흐름도 이다.
도 7은 본 발명의 다른 실시 예에 따른 스트리밍 서비스 시스템을 나타내는 블록도 이다.
1 is a block diagram illustrating a streaming service system according to an embodiment of the present invention.
2 is a block diagram illustrating a streaming service server according to an embodiment of the present invention.
3 is a block diagram illustrating a streaming service server according to another embodiment of the present invention.
4 is a timing diagram illustrating an operation of a streaming service system according to an embodiment of the present invention.
5 is a flowchart illustrating an operation of a streaming service server according to an exemplary embodiment of the present invention.
FIG. 6 is a flowchart specifically illustrating an operation of determining a quality for a streaming service of a streaming service server according to an exemplary embodiment of the present invention.
7 is a block diagram illustrating a streaming service system according to another embodiment of the present invention.

이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시 예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시 예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다.The following merely illustrates the principles of the invention. Thus, those skilled in the art will be able to devise various apparatuses which, although not explicitly described or shown herein, embody the principles of the invention and are included in the concept and scope of the invention. Furthermore, all of the conditional terms and embodiments listed herein are, in principle, only intended for the purpose of enabling understanding of the concepts of the present invention, and are not to be construed as limited to such specifically recited embodiments and conditions do.

또한, 본 발명의 원리, 관점 및 실시 예들 뿐만 아니라 특정 실시 예를 열거하는 모든 상세한 설명은 이러한 사항의 구조적 및 기능적 균등물을 포함하도록 의도되는 것으로 이해되어야 한다. 또한 이러한 균등물들은 현재 공지된 균등물뿐만 아니라 장래에 개발될 균등물 즉 구조와 무관하게 동일한 기능을 수행하도록 발명된 모든 소자를 포함하는 것으로 이해되어야 한다.It is also to be understood that the detailed description, as well as the principles, aspects and embodiments of the invention, as well as specific embodiments thereof, are intended to cover structural and functional equivalents thereof. It is also to be understood that such equivalents include all elements contemplated to perform the same function irrespective of the currently known equivalents as well as the equivalents to be developed in the future, i.e., the structure.

따라서, 모든 흐름도, 상태 변환도, 의사 코드 등은 컴퓨터가 판독 가능한 매체에 실질적으로 나타낼 수 있고 컴퓨터 또는 프로세서가 명백히 도시되었는지 여부를 불문하고 컴퓨터 또는 프로세서에 의해 수행되는 다양한 프로세스를 나타내는 것으로 이해되어야 한다.Thus, it should be understood that all flow diagrams, state transitions, pseudo code, etc. are representative of various processes that may be substantially represented on a computer-readable medium and executed by a computer or processor, whether the computer or processor is explicitly shown .

프로세서 또는 이와 유사한 개념으로 표시된 기능 블럭을 포함하는 도면에 도시된 다양한 소자의 기능은 전용 하드웨어뿐만 아니라 적절한 소프트웨어와 관련하여 소프트웨어를 실행할 능력을 가진 하드웨어의 사용으로 제공될 수 있다. 프로세서에 의해 제공될 때, 상기 기능은 단일 전용 프로세서, 단일 공유 프로세서 또는 복수의 개별적 프로세서에 의해 제공될 수 있고, 이들 중 일부는 공유될 수 있다.The functions of the various elements shown in the figures, including the functional blocks depicted in the processor or similar concept, may be provided by use of dedicated hardware as well as hardware capable of executing software in connection with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, a single shared processor, or a plurality of individual processors, some of which may be shared.

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings, in which: There will be. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail.

이하, 첨부된 도면을 참조하여 본 발명의 다양한 실시 예를 상세히 설명하기로 한다. Various embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시 예에 따른 스트리밍 서비스 시스템을 나타내는 블록도 이다. 도 1을 참조하면, 스트리밍 서비스 시스템(1000)은 복수의 사용자 단말 장치(100-1,100-2,..100-N), 스트리밍 서비스 서버(200)의 전부 또는 일부를 포함한다.1 is a block diagram illustrating a streaming service system according to an embodiment of the present invention. Referring to FIG. 1, a streaming service system 1000 includes all or a part of a plurality of user terminal devices 100-1, 100-2, .. 100-N, and a streaming service server 200. [

사용자 단말 장치(100-1,100-2,..100-N)에는 오디오, 비디오, 또는 오디오와 비디오가 결합된 멀티미디어 컨텐츠 등을 스트리밍으로 제공받을 수 있는 어플리케이션이 설치되어 있을 수 있고, 스마트 폰, PC(Personal Computer), 태블릿 컴퓨터, 노트북 컴퓨터, PDA(personal digital assistant), PMP(portable multimedia player), 착용형 스마트 글래스, 착용형 스마트 워치, 디지털 tv 등과 같은 다양한 장치로 구현될 수 있다.The user terminal apparatuses 100-1, 100-2,... 100-N may be provided with an application capable of receiving audio, video, multimedia contents combined with audio and video streaming, Such as a personal computer, a tablet computer, a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), a wearable smart glass, a wearable smart watch, a digital TV, and the like.

이러한, 사용자 단말 장치(100-1,100-2,..100-N)는 사용자가 재생 요청한 컨텐츠에 대한 속성 정보, 컨텐츠의 세그먼트를 스트리밍 서비스 서버(200)에 요청하고, 요청에 따른 데이터를 스트리밍 서비스 서버(200)로부터 수신함으로써, 사용자가 재생 요청한 컨텐츠를 스트리밍으로 제공받을 수 있다. The user terminal apparatuses 100-1, 100-2,... 100-N request the streaming service server 200 for the attribute information and the content segment of the content requested by the user to reproduce, By receiving the content from the server 200, the user can receive the content requested to be played back by streaming.

여기서, 속성 정보는, DASH(Dynamic Adaptive Streaming over HTTP) 기술의 MPD(Media Presentation Description) 문서일 수 있고, MPD 문서는 세그먼트에 대한 정보를 XML(eXtensible Markup Language)형식으로 기술하며, 해당 세그먼트에 상응하는 컨텐츠 시간상의 위치, URL, 크기 등 사용자 단말 장치(100)가 사전에 인지하여야할 정보를 포함할 수 있다. Here, the attribute information may be a MPD (Media Presentation Description) document of Dynamic Adaptive Streaming over HTTP (DASH) technology. The MPD document describes segment information in XML (eXtensible Markup Language) format, The URL, the size, and the like that the user terminal device 100 should recognize in advance.

또한, 세그먼트는, 사용자 단말 장치(100-1,100-2,..100-N)의 스트리밍 서비스 요청시 사용자 단말 장치(100)에 제공될 수 있는 일정 시간으로 잘려진 비트 스트림의 최소 데이터 단위일 수 있다. Also, the segment may be a minimum data unit of a bitstream cut at a predetermined time that can be provided to the user terminal device 100 in a streaming service request of the user terminal devices 100-1, 100-2, ... 100-N .

스트리밍 서비스 서버(200)는 스트리밍 서비스의 전반적인 동작을 관리할 수있다. 구체적으로, 스트리밍 서비스 서버(200)는 컨텐츠에 대해 복수의 품질로 생성된 복수의 세그먼트 및 복수의 세그먼트에 대한 속성 정보를 저장할 수 있다. 일 예로, 스트리밍 서비스 서버(200)는 복수의 컨텐츠 각각에 대해 UHD(Ultra High Definition), FHD(Full High Definition), HD(High Definition), SD(Standard Definition) 중 적어도 두 개 이상의 품질로 생성된 복수의 세그먼트 및 및 복수의 세그먼트에 대한 속성 정보를 저장할 수 있다. The streaming service server 200 can manage the overall operation of the streaming service. Specifically, the streaming service server 200 may store a plurality of segments generated with a plurality of quality levels and attribute information for a plurality of segments with respect to the content. For example, the streaming service server 200 may be configured to generate at least two quality levels of UHD (Ultra High Definition), FHD (Full High Definition), HD (High Definition) And can store attribute information for a plurality of segments and a plurality of segments.

또한, 스트리밍 서비스 서버(200)는 운영 가능한 전체 네트워크 대역폭을 분배하여 복수의 품질 각각에 할당할 수 있다. 이 경우, 스트리밍 서비스 서버(200)는 사용자 단말 장치(100-1,100-2,..100-N)에서 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받으면, 제1 품질에 할당된 네트워크 대역폭의 상태를 확인하고, 확인 결과에 따라 제1 품질의 세그먼트로 스트리밍 서비스를 제공할지 여부를 판단할 수 있다. 그리고, 스트리밍 서비스 서버(200)는 판단 결과에 대응되는 품질의 세그먼트를 이용하여 스트리밍 서비스를 제공할 수 있다.In addition, the streaming service server 200 may allocate the entire available network bandwidth to each of a plurality of qualities. In this case, when the streaming service server 200 receives a request for a segment of the first quality among the plurality of segments of the quality in the user terminal units 100-1, 100-2, ... 100-N, And determine whether to provide the streaming service with the segment of the first quality according to the result of the check. Then, the streaming service server 200 can provide the streaming service using the segment of the quality corresponding to the determination result.

도 2는 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버를 나타내는 블록도 이다. 도 2를 참조하면, 스트리밍 서비스 서버(200)는 저장부(210), 복수의 스트리밍 서비스 제공부(220), 제어부(230)의 전부 또는 일부를 포함한다.2 is a block diagram illustrating a streaming service server according to an embodiment of the present invention. 2, the streaming service server 200 includes all or some of a storage unit 210, a plurality of streaming service providing units 220, and a control unit 230.

저장부(210)는 스트리밍 서비스 서버(200)의 동작에 필요한 다양한 데이터 및 어플리케이션을 저장하는 기능을 한다. 특히, 저장부(210)는 컨텐츠에 대해 복수의 품질로 생성된 복수의 세그먼트 및 상기 복수의 세그먼트에 대한 속성 정보를 저장할 수 있다. 일 예로, 저장부(210)는 제1 컨텐츠에 대해 UHD(Ultra High Definition), FHD(Full High Definition) 및 HD(High Definition)의 품질로 생성된 복수의 세그먼트 및 복수의 세그먼트에 대한 속성 정보를 저장할 수 있고, 제2 컨텐츠에 대해 UHD(Ultra High Definition), FHD(Full High Definition), HD(High Definition) 및 SD(Standard Definition)의 품질로 생성된 복수의 세그먼트 및 복수의 세그먼트에 대한 속성 정보를 저장할 수 있다. The storage unit 210 stores various data and applications necessary for the operation of the streaming service server 200. In particular, the storage unit 210 may store a plurality of segments generated with a plurality of quality levels for the content and attribute information for the plurality of segments. For example, the storage unit 210 stores attribute information on a plurality of segments and a plurality of segments generated with a quality of UHD (Ultra high definition), FHD (full high definition) and HD (high definition) And a plurality of segments generated with the quality of UHD (Ultra High Definition), FHD (Full High Definition), HD (High Definition) and SD (Standard Definition), and attribute information Can be stored.

여기서 저장부(210)는 RAM(Random Access Memory), 플레시메모리, ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electronically Erasable and Programmable ROM), 레지스터, 하드디스크, 리무버블 디스크, 메모리 카드, USIM(Universal Subscriber Identity Module)등과 같은 내장된 형태의 저장소자는 물론, USB 메모리 등과 같은 착탈가능한 형태의 저장소자로 구현될 수도 있다.Herein, the storage unit 210 may be implemented as a random access memory (RAM), a flash memory, a ROM (Read Only Memory), an EPROM (Erasable Programmable ROM), an EEPROM (Electronically Erasable and Programmable ROM) Card, a Universal Subscriber Identity Module (USIM), or the like, as well as a detachable type storage device such as a USB memory.

이러한 저장부(210)는 스트리밍 서비스 서버(200) 내에 구현될 수 있고, 또는 스트리밍 서비스 서버(200)와 연결된 외부 데이터 베이스(DB)형태로 구현될 수 있다. The storage unit 210 may be implemented in the streaming service server 200 or in the form of an external database connected to the streaming service server 200.

복수의 스트리밍 서비스 제공부(220) 각각은 스트리밍 서비스 서버(200)에서 운영 가능한 전체 네트워크 대역폭의 일부 대역폭이 각각 할당될 수 있고, 할당된 네트워크 대역폭 범위 내에서 사용자 단말 장치(100)에 해당 품질의 세그먼트를 제공하여 스트리밍 서비스를 제공할 수 있다. 일 예로, 복수의 스트리밍 서비스 제공부(220)는 UHD 품질의 스트리밍 서비스 제공부, FHD 품질의 스트리밍 서비스 제공부, HD 품질의 스트리밍 서비스 제공부, SD 품질의 스트리밍 서비스 제공부 중 적어도 두 개 이상을 포함할 수 있다. 스트리밍 서비스 서버(200)에서 운영 가능한 전체 네트워크 대역폭이 8Gbps인 경우, UHD 품질의 스트리밍 서비스 제공부에는 4Gbps, FHD 품질의 스트리밍 서비스 제공부에는 2Gbps, HD 품질의 스트리밍 서비스 제공부에는 1Gbps, SD 품질의 스트리밍 서비스 제공부에는 1Gbps의 네트워크 대역폭이 할당될 수 있다. 이에 따라, 복수의 스트리밍 서비스 제공부(220) 각각은 할당된 네트워크 대역폭 내에서 사용자 단말 장치(100)에 해당 품질의 세그먼트를 전송하여 스트리밍 서비스를 제공할 수 있다. Each of the plurality of streaming service providing units 220 can allocate some bandwidths of the entire network bandwidth that can be operated by the streaming service server 200 and allocate bandwidths of the corresponding quality to the user terminal device 100 within the allocated network bandwidth range. Segment can be provided to provide a streaming service. For example, the plurality of streaming service providers 220 may provide at least two of UHD quality streaming service, FHD quality streaming service, HD quality streaming service, SD quality streaming service, . When the total network bandwidth that can be operated by the streaming service server 200 is 8 Gbps, 4 Gbps is provided for UHD quality streaming service, 2 Gbps is provided for providing streaming service of FHD quality, 1 Gbps is provided for providing HD quality streaming service, The network bandwidth of 1 Gbps may be allocated to the streaming service providing unit. Accordingly, each of the plurality of streaming service providers 220 can provide a streaming service by transmitting a segment of a corresponding quality to the user terminal device 100 within the allocated network bandwidth.

제어부(230)는 스트리밍 서비스 서버(200의 전반적인 동작을 제어한다. 구체적으로, 제어부(230)는 저장부(210), 복수의 스트리밍 서비스 제공부(220)의 전부 또는 일부를 제어할 수 있다.The control unit 230 controls the entire operation of the streaming service server 200. Specifically, the control unit 230 can control all or a part of the storage unit 210 and the plurality of streaming service providing units 220. [

특히, 제어부(230)는 사용자 단말 장치(100)에서 재생 요청된 컨텐츠에 대한 속성 정보를 검출하고, 검출된 속성 정보를 상기 사용자 단말 장치에 전송하도록 제어할 수 있다. 여기서, 속성 정보는, MPD 문서일 수 있고, MPD 문서는 세그먼트에 대한 정보를 XML 형식으로 기술하며, 해당 세그먼트에 상응하는 컨텐츠 시간상의 위치, URL, 크기 등 사용자 단말 장치(100)가 사전에 인지하여야할 정보를 포함할 수 있다. In particular, the controller 230 may control the user terminal 100 to detect the attribute information of the content requested to be reproduced and transmit the detected attribute information to the user terminal. Herein, the attribute information may be an MPD document. The MPD document describes the segment information in an XML format. If the user terminal device 100, such as the position, URL, and size on the content time corresponding to the segment, And may include information to be provided.

이 경우, 사용자 단말 장치(100)는 속성 정보, 사용자 단말 장치(100)의 네트워크 대역폭 상태 및 사용자 단말 장치(100)의 하드웨어 상태 중 적어도 하나를 이용하여 스트리밍 서비스 서버(200)에 요청할 세그먼트의 품질을 결정할 수 있다. 일 예로, 사용자 단말 장치(100)는 스트리밍 서비스 서버(200)에 요청할 세그먼트의 품질을 UHD, FHD, HD 및 SD의 품질 중 하나로 결정할 수 있다. In this case, the user terminal device 100 may use at least one of the attribute information, the network bandwidth state of the user terminal device 100, and the hardware state of the user terminal device 100 to determine the quality of the segment to be requested to the streaming service server 200 Can be determined. For example, the user terminal device 100 may determine the quality of a segment to be requested to the streaming service server 200 as one of the quality of UHD, FHD, HD, and SD.

그리고, 사용자 단말 장치(100)는 결정된 품질이 무엇인지 식별 가능하도록 하는 식별 정보를 포함하는 요청을 스트리밍 서비스 서버(200)에 전송할 수 있다. Then, the user terminal device 100 may transmit to the streaming service server 200 a request including identification information enabling identification of the determined quality.

만약, 사용자 단말 장치(100)로부터 스트리밍 컨텐츠에 대한 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받으면, 제어부(230)는 제1 품질에 할당된 네트워크 대역폭의 상태가 제1 품질의 세그먼트로 사용자 단말 장치(100)에 스트리밍 서비스 가능한지 여부를 확인하고, 확인 결과에 따라 품질을 결정할 수 있다.If the user terminal device 100 receives a request for a first quality segment of a plurality of quality segments for streaming content, the controller 230 determines that the state of the network bandwidth allocated to the first quality is a segment of the first quality It is possible to check whether or not the streaming service is available to the user terminal device 100, and determine the quality according to the confirmation result.

구체적으로 제1 품질의 세그먼트로 스트리밍 서비스 가능하다고 확인되면, 스트리밍 서비스를 위한 품질을 제1 품질로 결정하고, 제1 품질의 세그먼트로 스트리밍 서비스 불가능하다고 확인되면, 스트리밍 서비스를 위한 품질을 제1 품질과 상이한 품질, 바람직하게는 낮은 품질로 결정할 수 있다.If it is determined that the streaming service is available in the first quality segment, the quality for the streaming service is determined as the first quality, and if it is determined that the streaming service is not possible in the first quality segment, May be determined to be of a different quality, preferably a lower quality.

일 예로, UHD 품질의 스트리밍 서비스를 위해서는 32Mbps의 bit-rate가 요구되는 바, UHD 품질의 스트리밍 서비스 제공부에 4Gbps가 할당된 경우, 대략 125 명의 사용자가 동시에 UHD 품질의 스트리밍 서비스를 제공받을 수 있다. 이러한 상태에서, 사용자 단말 장치(100)로부터 스트리밍 컨텐츠에 대한 복수의 품질의 세그먼트 중 UHD 품질의 세그먼트를 요청받으면, 제어부(230)는 네트워크 대역폭의 상태가 스트리밍 서비스 불가능하다고 판단하고, 스트리밍 서비스를 위한 품질을 UHD 품질보다 낮은 FHD, HD 또는 SD 품질로 결정할수 있다. For example, a bit rate of 32 Mbps is required for a streaming service of UHD quality. When 4 Gbps is allocated for providing a streaming service of UHD quality, about 125 users can simultaneously receive streaming service of UHD quality . In this state, when the UHD quality segment of the plurality of segments of the streaming content is requested from the user terminal device 100, the controller 230 determines that the state of the network bandwidth is not available for the streaming service, Quality can be determined with FHD, HD or SD quality lower than UHD quality.

이 경우, 제어부(230)는 품질이 높은 것부터 낮은 것까지순차적으로 네트워크 대역폭을 확인하여, 스트리밍 서비스를 위한 품질을 결정할 수 있다. 일 예로, 제어부(230)는 FHD, HD, SD 순서로 네트워크 대역폭을 확인할 수 있다. In this case, the controller 230 may sequentially check the network bandwidth from the highest quality to the lowest quality to determine the quality for the streaming service. For example, the control unit 230 can confirm the network bandwidth in the order of FHD, HD, and SD.

한편, 스트리밍 서비스를 위한 품질이 결정되면, 제어부(230)는 해당 품질에 대응되는 스트리밍 서비스 제공부(220)를 제어하여 사용자 단말 장치(100)에 해당 품질의 세그먼트가 전송되어 스트리밍 서비스가 제공되도록 제어할 수 있다. On the other hand, when the quality for the streaming service is determined, the controller 230 controls the streaming service provider 220 corresponding to the quality so that a segment of the corresponding quality is transmitted to the user terminal 100 to provide a streaming service Can be controlled.

도 3은 본 발명의 다른 실시 예에 따른 스트리밍 서비스 서버를 나타내는 블록도 이다. 도 3을 참조하면, 스트리밍 서비스 서버(200)는 저장부(210), 스트리밍 서비스 제공부(220), 제어부(230), 트랜스코딩부(240), 세그먼트 생성부(250), 속성 정보 생성부(260)의 전부 또는 일부를 포함한다. 여기서, 도 3의 스트리밍 서비스 서버(200)의 일부 구성은 도 2에서 설명한 구성과 중복되고, 이하에서는 중복되는 구성의 설명은 생략하고, 차이 구성을 위주로 구체적으로 설명하기로 한다. 3 is a block diagram illustrating a streaming service server according to another embodiment of the present invention. 3, a streaming service server 200 includes a storage unit 210, a streaming service providing unit 220, a control unit 230, a transcoding unit 240, a segment generating unit 250, (260). ≪ / RTI > Here, a part of the configuration of the streaming service server 200 shown in FIG. 3 is the same as the configuration described with reference to FIG. 2, and a description of the duplicated configuration will be omitted below.

트랜스코딩부(240)는 컨텐츠를 복수의 상이한 품질로 인코딩하여 하나의 콘텐츠에 대한 복수의 비트 스트림을 생성할 수 있다. 구체적으로, 트랜스코딩부(240)는 코덱 정보를 바탕으로 비트율(Bit Rate), 해상도(Resolution), 프레임율(Frame Rate) 등과 같은 인자들을 조절함으로써 하나의 콘텐츠를 복수의 상이한 품질로 인코딩할 수 있다.The transcoding unit 240 may encode the content at a plurality of different qualities to generate a plurality of bit streams for one content. Specifically, the transcoding unit 240 can encode one content to a plurality of different qualities by adjusting factors such as a bit rate, a resolution, a frame rate and the like based on the codec information have.

세그먼트 생성부(250)는 서로 상이한 품질로 인코딩된 복수의 비트 스트림을 일정한 시간 간격으로 세분화하여, 각 비트 스트림의 재생에 필요한 초기화 세그먼트와 미디어 세그먼트를 생성할 수 있다. 여기서, 생성된 세그먼트들은 저장부(220)에 저장될 수 있다.The segment generator 250 may generate a plurality of bit streams encoded with different quality at predetermined time intervals to generate an initial segment and a media segment necessary for reproduction of each bit stream. Here, the generated segments may be stored in the storage unit 220.

속성 정보 생성부(260)는 생성된 세그먼트에 관한 정보를 기초로 해당 세그먼트에 상응하는 콘텐츠 시간상의 위치, URL, 크기 등을 포함하는 MPD 문서를 생성할 수 있다. 여기서, 생성된 MPD 문서들은 저장부(220)에 저장될 수 있다. The attribute information generation unit 260 may generate an MPD document including a position, a URL, a size, and the like on the content time corresponding to the segment based on the information about the generated segment. Here, the generated MPD documents may be stored in the storage unit 220.

도 4는 본 발명의 일 실시 예에 따른 스트리밍 서비스 시스템의 동작을 나타내는 타이밍도 이다. 도 4를 참조하면, 먼저 사용자는 사용자 단말 장치(100)를 이용한 웹 서핑 중에 특정 컨텐츠를 선택하고, 선택된 컨텐츠의 재생 명령을 입력할 수 있다(S101).4 is a timing diagram illustrating an operation of a streaming service system according to an embodiment of the present invention. Referring to FIG. 4, a user may select specific contents during a web surfing using the user terminal 100 and input a playback command of the selected contents (S101).

이 경우, 해당 웹 서버(300)는 스트리밍 컨텐츠를 제공받기 위한 주소 정보, 예를 들어, 스트리밍 서비스 서버(200)의 주소 정보와 선택된 스트리밍 컨텐츠의 경로를 나타내는 고유 자원 주소 정보(Uniform Resource Locator : URL)를 사용자 단말 장치(100)에 전송할 수 있다(S102).In this case, the web server 300 transmits address information for receiving streaming contents, for example, address information of the streaming service server 200 and unique resource locator (URL) information indicating the path of the selected streaming contents ) To the user terminal device 100 (S102).

그리고, 사용자 단말 장치(100)는 수신된 주소 정보를 이용하여 스트리밍 서비스 서버(200)에 선택된 스트리밍 컨텐츠에 대한 속성 정보를 요청할 수 있다(S103).Then, the user terminal device 100 may request the streaming service server 200 using the received address information for attribute information about the selected streaming content (S103).

이 경우, 스트리밍 서비스 서버(200)는 요청된 속성 정보를 사용자 단말 장치(100)에 전송할 수 있다(S104).In this case, the streaming service server 200 may transmit the requested attribute information to the user terminal device 100 (S104).

이 경우, 사용자 단말 장치(100)는, 속성 정보, 사용자 단말 장치(100)의 네트워크 대역폭 상태 및 사용자 단말 장치(100)의 하드웨어 상태 중 적어도 하나를 이용하여 스트리밍 서비스 서버(100)에 요청할 세그먼트의 품질을 제1 품질로 결정할 수 있다(S105). 여기서, 제1 품질은, UHD, FHD, HD, SD 중 하나일 수 있다. In this case, the user terminal device 100 may use at least one of the attribute information, the network bandwidth state of the user terminal device 100, and the hardware state of the user terminal device 100 to identify the segment to be requested to the streaming service server 100 The quality can be determined as the first quality (S105). Here, the first quality may be one of UHD, FHD, HD, and SD.

그리고, 사용자 단말 장치(100)는 결정된 품질의 식별 정보를 포함하는 요청을 스트리밍 서비스 서버(200)에 전송할 수 있다(S106).Then, the user terminal device 100 can transmit a request including the identification information of the determined quality to the streaming service server 200 (S106).

이 경우, 스트리밍 서비스 서버(20)는 제1 품질에 할당된 네트워크 대역폭의 상태를 확인하고(S107), 확인 결과에 따라 스트리밍 서비스를 위한 품질을 결정할 수 있다(S108). 그리고, 스트리밍 서비스 서버(20)는 결정된 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어할 수 있다(S109).In this case, the streaming service server 20 confirms the state of the network bandwidth allocated to the first quality (S107), and determines the quality for the streaming service according to the confirmation result (S108). Then, the streaming service server 20 can control to provide a streaming service with a determined quality segment (S109).

도 5는 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버의 동작을 구체적으로 나타내는 흐름도 이다. 도 5를 참조하면, 먼저 스트리밍 서비스 서버(200)는 컨텐츠에 대해 복수의 품질로 생성된 복수의 세그먼트 및 복수의 세그먼트에 대한 속성 정보를 저장할 수 있다(S201).5 is a flowchart illustrating an operation of a streaming service server according to an exemplary embodiment of the present invention. Referring to FIG. 5, the streaming service server 200 may store a plurality of segments generated with a plurality of quality levels and attribute information of a plurality of segments with respect to the content (S201).

그리고, 스트리밍 서비스 서버(200)는 사용자 단말 장치(100)에서 재생 요청된 컨텐츠에 대한 속성 정보를 검출할 수 있다(S202).Then, the streaming service server 200 may detect the attribute information on the content requested to be reproduced in the user terminal device 100 (S202).

그리고, 검출된 속성 정보를 사용자 단말 장치(100)에 전송할 수 있다(S203).Then, the detected attribute information can be transmitted to the user terminal device 100 (S203).

그리고, 사용자 단말 장치(100)로부터 스트리밍 컨텐츠에 대한 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받을 수 있다(S204).Then, the user terminal device 100 may request a segment of the first quality among a plurality of segments of the quality of the streaming contents (S204).

그리고, 스트리밍 서비스 서버(200)는 제1 품질에 할당된 네트워크 대역폭의 상태를 확인할 수 있다(S205).Then, the streaming service server 200 can check the state of the network bandwidth allocated to the first quality (S205).

그리고, 스트리밍 서비스 서버(200)는 확인 결과에 따라 품질을 결정하고, 결정된 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어할 수 있다(S206).Then, the streaming service server 200 determines the quality according to the result of the check, and controls the streaming service to provide the determined quality segment (S206).

도 6은 본 발명의 일 실시 예에 따른 스트리밍 서비스 서버의 스트리밍 서비스를 위한 품질을 결정하는 동작을 구체적으로 나타내는 흐름도 이다. 도 6을 참조하면, 먼저, 스트리밍 서비스 서버(200)는 전체 네트워크 대역폭을 분배하여 복수의 품질 각각에 할당할 수 있다(S301).FIG. 6 is a flowchart specifically illustrating an operation of determining a quality for a streaming service of a streaming service server according to an exemplary embodiment of the present invention. Referring to FIG. 6, first, the streaming service server 200 may allocate the entire network bandwidth to each of a plurality of qualities (S301).

그리고, 스트리밍 서비스 서버(200)는 사용자 단말 장치로부터 스트리밍 컨텐츠에 대한 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받을 수 있다(S302).Then, the streaming service server 200 may receive a segment of the first quality among a plurality of segments of the quality of the streaming contents from the user terminal device (S302).

그리고, 스트리밍 서비스 서버(200)는 제1 품질에 할당된 네트워크 대역폭의 상태가 제1 품질의 세그먼트로 스트리밍 서비스 가능한지 여부를 확인할 수 있다(S303).Then, the streaming service server 200 can check whether the state of the network bandwidth allocated to the first quality is a streaming service of the first quality segment (S303).

만약, 제1 품질의 세그먼트로 스트리밍 서비스 가능하다고 확인되면(S303:Y), 제1 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어할 수 있다(S304). 다만, 제1 품질의 세그먼트로 스트리밍 서비스 불가능하다고 확인되면(S303:N), 제1 품질과 상이한 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어할 수 있다(S305).If it is confirmed that the streaming service is available in the first quality segment (S303: Y), the streaming service can be controlled to provide the streaming service with the first quality segment (S304). However, if it is confirmed that the streaming service can not be performed with the first quality segment (S303: N), the streaming service may be controlled to provide the streaming service with a segment of a quality different from the first quality (S305).

도 7은 본 발명의 다른 실시 예에 따른 스트리밍 서비스 시스템을 나타내는 블록도 이다. 도 7을 참조하면, 스트리밍 서비스 시스템(2000)은 복수의 사용자 단말 장치(100-1,100-2,..100-N), 스트리밍 제어 서버(200-1), 복수의 스트리밍 서버(200-2,,,200-5)의 전부 또는 일부를 포함한다.7 is a block diagram illustrating a streaming service system according to another embodiment of the present invention. 7, a streaming service system 2000 includes a plurality of user terminal devices 100-1, 100-2, ... 100-N, a streaming control server 200-1, a plurality of streaming servers 200-2, , ≪ / RTI > 200-5).

즉, 스트리밍 서비스 서버(200)는 도 1과 같이 상술한 기능을 모두 수행하는 한 개의 서버로 구현될 수 있고, 또는 도 7과 같이, 상술한 기능을 각자 분할하여 수행하는 스트리밍 제어 서버(200-1), 복수의 스트리밍 서버(200-2,,,200-N)를 포함하는 복수의 서버로 구현될 수 있다. 이 경우, 스트리밍 제어 서버(200-1)는 스트리밍 서비스 서버(200)의 제어부(230)의 기능을 수행할 수 있고, 복수의 스트리밍 서버(200-2,,,200-N) 각각은 스트리밍 서비스 서버(200)의 복수의 스트리밍 서비스 제공부(220) 각각의 기능을 수행할 수 있다. That is, the streaming service server 200 may be implemented as one server that performs all of the functions described above as shown in FIG. 1, or may be implemented by a streaming control server 200- 1), and a plurality of servers including a plurality of streaming servers 200-2, 200, and 200-N. In this case, the streaming control server 200-1 can perform the function of the control unit 230 of the streaming service server 200, and each of the plurality of streaming servers 200-2, 200, and 200- And may perform the functions of each of the plurality of streaming service providers 220 of the server 200.

한편, 상술한 본 발명의 다양한 실시 예들에 따른 제어 방법은 프로그램으로 구현되어 서버 또는 기기들에 제공될 수 있다. 이에 따라, 각 장치들은 프로그램이 저장된 서버 또는 기기에 접속하여, 상기 프로그램을 다운로드할 수 있다.Meanwhile, the control method according to various embodiments of the present invention described above can be implemented by a program and provided to a server or devices. Accordingly, each device can access the server or the device in which the program is stored, and download the program.

또한, 상술한 본 발명의 다양한 실시 예들에 따른 제어 방법은 프로그램으로 구현되어 다양한 비일시적 판독 가능 매체(non-transitory computer readable medium)에 저장되어 제공될 수 있다. 비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.In addition, the control method according to various embodiments of the present invention described above can be implemented as a program and stored in various non-transitory computer readable media. A non-transitory readable medium is a medium that stores data for a short period of time, such as a register, cache, memory, etc., but semi-permanently stores data and is readable by the apparatus. In particular, the various applications or programs described above may be stored on non-volatile readable media such as CD, DVD, hard disk, Blu-ray disk, USB, memory card, ROM,

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the present invention.

1000 : 스트리밍 서비스 시스템 100 : 사용자 단말 장치
200 : 스트리밍 서비스 서버 210 : 저장부
220 : 스트리밍 서비스 제공부 230 : 제어부
240 : 트랜스코딩부 250 : 세그먼트 생성부
260 : 속성 정보 생성부
1000: streaming service system 100: user terminal device
200: streaming service server 210:
220: providing streaming service 230:
240: transcoding unit 250: segment generating unit
260: Attribute information generating unit

Claims (12)

스트리밍 서비스 서버의 제어 방법에 있어서,
사용자 단말 장치로부터 컨텐츠에 대한 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받는 단계;
상기 제1 품질에 할당된 네트워크 대역폭의 상태를 확인하는 단계; 및
상기 확인 결과에 따라 품질을 결정하고, 상기 결정된 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하는 단계;를 포함하는 제어 방법.
A method of controlling a streaming service server,
Receiving a first quality segment of a plurality of quality segments for content from a user terminal device;
Confirming the state of the network bandwidth allocated to the first quality; And
Determining quality according to the result of the check, and controlling the streaming service to provide the segment of the determined quality.
제1항에 있어서,
상기 요청받는 단계는,
상기 사용자 단말 장치에서 요청된 세그먼트의 품질을 나타내는 식별 정보를 포함하는 것을 특징으로 하는 제어 방법.
The method according to claim 1,
Wherein the requesting step comprises:
And identification information indicating a quality of a segment requested by the user terminal.
제1항에 있어서,
컨텐츠에 대해 복수의 품질로 생성된 복수의 세그먼트 및 상기 복수의 세그먼트에 대한 속성 정보를 저장하는 단계;
상기 사용자 단말 장치에서 재생 요청된 컨텐츠에 대한 상기 속성 정보를 검출하는 단계; 및
상기 검출된 속성 정보를 상기 사용자 단말 장치에 전송하는 단계;를 더 포함하고,
상기 복수의 품질은,
UHD(Ultra High Definition), FHD(Full High Definition), HD(High Definition), SD(Standard Definition) 중 적어도 두 개를 포함하는 것을 특징으로 하는 제어 방법.
The method according to claim 1,
Storing a plurality of segments generated with a plurality of quality levels for the content and attribute information for the plurality of segments;
Detecting the attribute information of the content requested to be reproduced by the user terminal device; And
And transmitting the detected attribute information to the user terminal device,
The plurality of qualities may include:
Wherein at least two of the UHD (Ultra High Definition), FHD (Full High Definition), HD (High Definition) and SD (Standard Definition)
제1항에 있어서,
상기 스트리밍 서비스 서버는,
전체 네트워크 대역폭을 분배하여 상기 복수의 품질 각각에 할당하는 것을 특징으로 하는 제어 방법.
The method according to claim 1,
The streaming service server includes:
And allocating the entire network bandwidth to each of the plurality of qualities.
제3항에 있어서,
상기 사용자 단말 장치는, 상기 속성 정보, 상기 사용자 단말 장치의 네트워크 대역폭 상태 및 상기 사용자 단말 장치의 하드웨어 상태 중 적어도 하나를 이용하여 상기 스트리밍 서비스 서버에 요청할 세그먼트의 품질을 결정하고, 상기 결정된 품질의 식별 정보를 포함하는 요청을 상기 스트리밍 서비스 서버에 전송하는 것을 특징으로 하는 제어 방법.
The method of claim 3,
Wherein the user terminal device determines the quality of a segment to be requested to the streaming service server using at least one of the attribute information, the network bandwidth state of the user terminal device, and the hardware state of the user terminal device, And transmits a request including information to the streaming service server.
제1항에 있어서,
상기 확인하는 단계는,
상기 제1 품질에 할당된 네트워크 대역폭의 상태가 상기 제1 품질의 세그먼트로 스트리밍 서비스 가능한지 여부를 확인하는 것을 특징으로 하는 제어 방법.
The method according to claim 1,
Wherein the verifying step comprises:
And determining whether the state of the network bandwidth allocated to the first quality is streaming serviceable to the segment of the first quality.
제6항에 있어서,
상기 제어하는 단계는,
상기 제1 품질의 세그먼트로 스트리밍 서비스 가능하다고 확인되면, 상기 제1 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하고,
상기 제1 품질의 세그먼트로 스트리밍 서비스 불가능하다고 확인되면, 상기 제1 품질과 상이한 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하는 것을 특징으로 하는 제어 방법.
The method according to claim 6,
Wherein the controlling comprises:
If it is determined that streaming service is possible with the first quality segment, control to provide a streaming service with the first quality segment,
Wherein if it is determined that the streaming service can not be performed with the first quality segment, control is performed to provide the streaming service with a segment of a quality different from the first quality.
스트리밍 서비스 서버에 있어서,
사용자 단말 장치로부터 컨텐츠에 대한 복수의 품질의 세그먼트 중 제1 품질의 세그먼트를 요청받고, 상기 제1 품질에 할당된 네트워크 대역폭의 상태를 확인하고, 상기 확인 결과에 따라 품질을 결정하며, 상기 결정된 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하는 제어부;를 포함하는 스트리밍 서비스 서버.
A streaming service server comprising:
Receiving a segment of a first quality among a plurality of segments of quality for a content from a user terminal device, determining a state of a network bandwidth allocated to the first quality, determining a quality according to the result of the determination, And a controller for controlling the streaming server to provide the streaming service to the segment of the streaming service server.
제8항에 있어서,
컨텐츠에 대해 복수의 품질로 생성된 복수의 세그먼트 및 상기 복수의 세그먼트에 대한 속성 정보를 저장하는 저장부;를 더 포함하고,
상기 제어부는,
상기 사용자 단말 장치에서 재생 요청된 컨텐츠에 대한 상기 속성 정보를 검출하고, 상기 검출된 속성 정보를 상기 사용자 단말 장치에 전송하도록 제어하며,
상기 복수의 품질은,
UHD(Ultra High Definition), FHD(Full High Definition), HD(High Definition), SD(Standard Definition) 중 적어도 두 개를 포함하는 것을 특징으로 하는 스트리밍 서비스 서버.
9. The method of claim 8,
Further comprising: a storage unit for storing a plurality of segments generated with a plurality of qualities with respect to the contents and attribute information about the plurality of segments,
Wherein,
The control unit controls the user terminal to detect the attribute information of the content requested to be reproduced and transmit the detected attribute information to the user terminal,
The plurality of qualities may include:
Wherein the streaming service server comprises at least two of UHD (Ultra High Definition), FHD (Full High Definition), HD (High Definition), and SD (Standard Definition).
제8항에 있어서,
상기 복수의 품질 각각에 대응되는 세그먼트로 스트리밍 서비스를 제공하는 복수의 스트리밍 서비스 제공부;를 더 포함하고,
상기 복수의 스트리밍 서비스 제공부 각각은,
전체 네트워크 대역폭의 일부 대역폭을 각각 할당받은 것을 특징으로 하는 스트리밍 서비스 서버.
9. The method of claim 8,
Further comprising: a plurality of streaming service providers for providing streaming services in segments corresponding to the plurality of quality,
Wherein each of the plurality of streaming service providing units comprises:
And a part of bandwidth of the entire network bandwidth is allocated to the streaming service server.
제8항에 있어서,
상기 제어부는,
상기 제1 품질에 할당된 네트워크 대역폭의 상태가 상기 제1 품질의 세그먼트로 스트리밍 서비스 가능한지 여부를 확인하는 것을 특징으로 하는 스트리밍 서비스 서버.
9. The method of claim 8,
Wherein,
And determines whether the state of the network bandwidth allocated to the first quality is streaming serviceable to the segment of the first quality.
제11항에 있어서,
상기 제어부는,
상기 제1 품질의 세그먼트로 스트리밍 서비스 가능하다고 확인되면, 상기 제1 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하고,
상기 제1 품질의 세그먼트로 스트리밍 서비그 불가능하다고 확인되면, 상기 제1 품질과 상이한 품질의 세그먼트로 스트리밍 서비스를 제공하도록 제어하는 것을 특징으로 스트리밍 서비스 서버.
12. The method of claim 11,
Wherein,
If it is determined that streaming service is possible with the first quality segment, control to provide a streaming service with the first quality segment,
And controls the streaming service server to provide the streaming service with a segment of a quality different from the first quality if it is determined that the streaming service can not be performed with the first quality segment.
KR1020140121212A 2014-09-12 2014-09-12 Streaming service server and control method thereof KR20160031642A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140121212A KR20160031642A (en) 2014-09-12 2014-09-12 Streaming service server and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140121212A KR20160031642A (en) 2014-09-12 2014-09-12 Streaming service server and control method thereof

Publications (1)

Publication Number Publication Date
KR20160031642A true KR20160031642A (en) 2016-03-23

Family

ID=55645038

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140121212A KR20160031642A (en) 2014-09-12 2014-09-12 Streaming service server and control method thereof

Country Status (1)

Country Link
KR (1) KR20160031642A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180087176A (en) * 2017-01-23 2018-08-01 드림투비 주식회사 Apparatus and method for video realtime transcoding in individual cloud environment
KR20200062891A (en) * 2018-11-27 2020-06-04 서울과학기술대학교 산학협력단 System and method for predicting user viewpoint using lication information of sound source in 360 vr contents
WO2021030294A1 (en) * 2019-08-15 2021-02-18 Hulu, LLC Prediction-based dropped frame handling logic in video playback
US11812081B2 (en) 2020-11-02 2023-11-07 Hulu, LLC Session based adaptive playback profile decision for video streaming

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180087176A (en) * 2017-01-23 2018-08-01 드림투비 주식회사 Apparatus and method for video realtime transcoding in individual cloud environment
KR20200062891A (en) * 2018-11-27 2020-06-04 서울과학기술대학교 산학협력단 System and method for predicting user viewpoint using lication information of sound source in 360 vr contents
WO2021030294A1 (en) * 2019-08-15 2021-02-18 Hulu, LLC Prediction-based dropped frame handling logic in video playback
US11025987B2 (en) 2019-08-15 2021-06-01 Hulu, LLC Prediction-based representation selection in video playback
US11812081B2 (en) 2020-11-02 2023-11-07 Hulu, LLC Session based adaptive playback profile decision for video streaming

Similar Documents

Publication Publication Date Title
US11537562B2 (en) Auxiliary manifest file to provide timed metadata
US10187668B2 (en) Method, system and server for live streaming audio-video file
US8516144B2 (en) Startup bitrate in adaptive bitrate streaming
CN105814900B (en) System and method for managing adjacent channel in adaptive streaming environment
CN106165432B (en) System and method for effectuating fast channel change in an adaptive streaming environment
US9838455B2 (en) Fast encoding of live streaming media content
US20170048565A1 (en) Live consecutive ad insertion
TW201404124A (en) Methods and apparatus for segmenting, distributing, and resegmenting adaptive rate content streams
CN107690090B (en) Video playing method and electronic device using same
US11019123B2 (en) Multi-bitrate component sharding
US9900630B2 (en) Adaptive content selection
KR20160031642A (en) Streaming service server and control method thereof
KR20210058791A (en) System and method for providing cloud based user interfaces
US20130173760A1 (en) Processing method to be implemented upon the occurrence of an expression switch in http streaming
US10708648B2 (en) System for providing hybrid user interfaces and method thereof
KR20180024841A (en) Streaming service server and control method thereof
KR101313592B1 (en) Computing device and method for streaming
US20140201368A1 (en) Method and apparatus for enforcing behavior of dash or other clients
KR101538114B1 (en) Video processing apparatus and method for seamless video playing in a mobile smart device based on multi-codec
KR20170022057A (en) Streaming service server and control method thereof
KR101825841B1 (en) Apparatus and method for allcating time-to-live
KR101819193B1 (en) Streaming service method using real-time transformation file format
US20150149593A1 (en) Virtual desktop infrastructure server, computer implemented video streaming method, and non-transitory computer readable storage medium thereof
US10547878B2 (en) Hybrid transmission protocol
US20230224521A1 (en) Electronic device and operation method thereof

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination