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

Streaming service server and control method thereof Download PDF

Info

Publication number
KR20170022057A
KR20170022057A KR1020150116535A KR20150116535A KR20170022057A KR 20170022057 A KR20170022057 A KR 20170022057A KR 1020150116535 A KR1020150116535 A KR 1020150116535A KR 20150116535 A KR20150116535 A KR 20150116535A KR 20170022057 A KR20170022057 A KR 20170022057A
Authority
KR
South Korea
Prior art keywords
quality
streaming service
session
user terminal
user
Prior art date
Application number
KR1020150116535A
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 KR1020150116535A priority Critical patent/KR20170022057A/en
Publication of KR20170022057A publication Critical patent/KR20170022057A/en

Links

Images

Classifications

    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1086In-session procedures session scope modification
    • H04L65/4084
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A control method of a streaming service server is disclosed. The control method includes the steps of receiving a first quality segment of a plurality of quality segments for a specific content from a user terminal device and, when the requested first quality is not the lowest quality, And controlling to provide a streaming service based on whether or not a session is formed for the user.

Description

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.

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.

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.

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.

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.

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.

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.

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 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.

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.

In recent years, Scalable Video Coding (SVC) has been developed which supports spatial, image quality (SNR) and temporal scalability with a goal of high coding efficiency compared to the independent coding scheme. The SVC decodes only the highest layer to be decoded, and the lower layers employ a single loop decoding method that decodes only the minimum information required for inter-layer prediction, thereby reducing the amount of computation and memory usage.

In other words, in order to stream the UHD-like highest quality SVC composed of a plurality of layers including Base Layer, Enhancement Layer 1, and Enhancement Layer 2, not only the highest quality Enhancement Layer 2 but also Base Layer, Enhancement Layer 1, in need. Using this SVC, the streaming server has higher cache efficiency, so it can be more effective for data transmission than non-scalable.

However, if the base layer of the lowest quality is not ensured due to the characteristics of the SVC, even if the enhancement layers are transmitted, a normal screen can not be reproduced.

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, .

It is another object of the present invention to provide a streaming service server that establishes a session only for a predetermined number of users and does not give a high quality response to a request of a user terminal device generated after a session is established over a predetermined reference, And a control method thereof.

According to another aspect of the present invention, there is provided a method of controlling a streaming service server, the method including receiving a first quality segment of a plurality of quality segments for a specific content from a user terminal, If the first quality is not the lowest quality, controlling to provide the streaming service based on the number of sessions allocated to the first quality and whether the session is formed for the user.

Storing a plurality of segments generated with a plurality of qualities with respect to the content and attribute information about the plurality of segments; and when playback of a specific content is requested by the user terminal, The method comprising: receiving a request for attribute information corresponding to a specific content, detecting the requested attribute information from the stored attribute information, and transmitting the detected attribute information and the identification information of the user to the user terminal device; And establishing a session connection with the user terminal using the received identification information of the user.

The attribute information may be a media presentation description (MPD) document of dynamic adaptive streaming over HTTP (DASH) technology, and the step of transmitting the detected attribute information and the identification information of the user to the user terminal device may include: And may include the user identification information in the MPD document and transmit it to the user terminal.

The user terminal 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, and the hardware state of the user terminal, The step of receiving a request for a first quality segment of a plurality of quality segments for a specific content from the device comprises receiving from the user terminal a request including identification information of the quality determined by the user terminal and the user identification information And the plurality of qualities may include at least two of UHD (Ultra High Definition), FHD (Full High Definition), HD (High Definition) and SD (Standard Definition).

In addition, the streaming service server may allocate the entire network bandwidth to each of the plurality of qualities, and allocate the maximum possible number of sessions to each of the plurality of qualities based on the allocated bandwidth.

The step of controlling to provide the streaming service may include the steps of: determining whether the requested first quality is not the lowest quality, the number of sessions allocated to the first quality exceeds a preset reference value, If the requested quality is not the lowest quality and the number of sessions allocated to the first quality exceeds a preset reference value, The control unit may update the session valid time and control the user terminal to provide the streaming service with the first quality segment using the formed session.

In addition, the step of controlling to provide the streaming service may include a step of controlling the streaming service to provide the streaming service, when the requested first quality is not the lowest quality, the number of sessions allocated to the first quality is less than a predetermined reference value, And controls the user terminal device to provide the streaming service with the first quality segment using the formed session, wherein the requested first quality is not the lowest quality, Updating the session validity time when the number of sessions allocated to the first quality is equal to or less than a predetermined reference value and a session for the user is formed, and using the formed session, To provide a streaming service.

If the requested first quality is the lowest quality, the control unit can control the user terminal to provide the streaming service with the lowest quality segment.

In addition, the streaming service server may allocate a session valid time for the formed session, and manage session information for the formed session only for the allocated valid time.

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 a specific content from a user terminal, And controlling the streaming service to be provided based on the number of sessions allocated to the first quality and whether a session is formed for the user when the quality is not the lowest quality.

The control unit receives a request for attribute information corresponding to the identification information of the user and the specific content requested to be reproduced when the user terminal requests reproduction of a specific content, Wherein the streaming service server controls the streaming service server to detect attribute information and to transmit the detected attribution information and the identification information of the user to the user terminal device, wherein the streaming service server includes a plurality of segments, A storage unit for storing attribute information for the segment, and a session management unit for establishing a session connection with the user terminal using the received identification information of the user.

The attribute information may be a MPD (Media Presentation Description) document of Dynamic Adaptive Streaming over HTTP (DASH) technology, and the control unit may include the user identification information in the MPD document and transmit the MPD document to the user terminal Can be controlled.

The user terminal 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, and the hardware state of the user terminal, Wherein the quality information includes at least one of a UHD (Ultra High Definition), an FHD (Full High Definition), and a FHD High Definition), HD (High Definition), and SD (Standard Definition).

The plurality of streaming service providing units may further include a plurality of streaming service providing units each providing a streaming service corresponding to each of the plurality of quality levels, wherein each of the plurality of streaming service providing units is allocated with a partial bandwidth of the entire network bandwidth .

If the requested first quality is not the lowest quality, the number of sessions allocated to the first quality exceeds a preset reference value, and the session for the user is not formed, the control unit transmits an access error code And controlling the streaming service providing unit to transmit the session quality information to the user terminal apparatus, wherein the first quality requested is not the lowest quality, the session number allocated to the first quality exceeds a preset reference value, The control unit controls the session management unit to update the session effective time and controls the streaming service providing unit to provide the streaming service of the first quality segment to the user terminal device using the formed session .

In addition, if the requested first quality is not the lowest quality, the number of sessions allocated to the first quality is equal to or less than a preset reference value, and the session for the user is not formed, And controls the streaming service providing unit to provide the streaming service with the first quality segment to the user terminal using the formed session, and when the requested first quality is the lowest quality Controlling the session management unit to update the session validity time when the number of sessions allocated to the first quality is equal to or less than a preset reference value and a session for the user is formed, The streaming service may be provided to the terminal device in the segment of the first quality The control unit can control the streaming service providing unit.

In addition, when the requested first quality is the lowest quality, the streaming service providing unit may be controlled to provide the streaming service with the lowest quality segment to the user terminal.

The session management unit may allocate a session effective time for the formed session and manage session information for the formed session only for the allocated effective time.

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.

In addition, according to various embodiments of the present invention described above, it is possible to ensure that a maximum number of users can be streamed even in a low image quality by ensuring the lowest quality (for example, SD quality) at the time of segment request of the user terminal device.

In addition, according to various embodiments of the present invention described above, it is possible to continuously provide high-quality streaming to the user who is in the existing high-definition streaming despite the change of the network bandwidth by providing a session maintenance policy between the server and the user.

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 diagram illustrating a format of a request for a segment according to an embodiment of the present invention.
5 is a timing diagram illustrating an operation of a streaming service system according to an embodiment of the present invention.
6 is a flowchart illustrating an operation of a streaming service server according to an exemplary embodiment of the present invention.
7 is a flowchart specifically illustrating a streaming control operation of a streaming service server according to an embodiment of the present invention.
8 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 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. [

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.

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.

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.

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 .

Meanwhile, the user terminal devices 100-1, 100-2,..., 100-N may transmit the user identification information to the streaming service server 200 at the same time of requesting the attribute information of the contents requested by the user. Here, the user identification information includes address information such as the MAC address of the user terminal apparatuses 100-1, 100-2, ... 100-N, address information such as the telephone number of the user terminal apparatuses 100-1, 100-2, .. 100- Information that allows each of a plurality of users to be identified, such as user ID / password information. This user identification information may be used to form a session between the user terminal apparatuses 100-1, 100-2, .. 100-N and the streaming service server 200. [

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.

In addition, the streaming service server 200 may allocate the entire available network bandwidth to each of a plurality of quality levels, and allocate the maximum possible number of sessions to each of the plurality of quality levels based on the allocated bandwidths. In this case, when a first quality segment of a plurality of quality segments is requested from the user terminal units 100-1, 100-2, ... 100-N, the streaming service server 200 transmits the requested first quality to the lowest quality (For example, SD quality when a plurality of qualities are composed of UHD, FHD, HD, and SD). If the requested first quality is not the lowest quality, the streaming service server 200 can control to provide a streaming service on the basis of the number of sessions allocated to the first quality and whether or not a session is established with respect to the user.

The communication between the user terminal apparatuses 100-1, 100-2, .. 100-N and the streaming service server 200 may be performed in a wireless or wired manner through a local area network (LAN) , A connection via a universal serial bus (USB) port, a connection via a mobile communication network such as 3G or 4G, a short-range wireless communication method such as Near Field Communication, Radio Frequency Identification (RFID) And the like, and the like.

Hereinafter, the streaming service server 200 will be described in more detail with reference to the drawings.

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 a part of a storage unit 210, a session management unit 220, a plurality of streaming service providing units 230, and a control unit 240.

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.

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.

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.

The session management unit 220 can manage a session between the user terminal device 100 and the streaming service server 200. Specifically, the session management unit 220 forms a session between the user terminal device 100 and the streaming service server 200 using the identification information of the user received from the user terminal device 100, Information can be stored.

Also, the session management unit 220 can allocate the effective time of the formed session and manage the session information only for the allocated effective time. If a segment request is received from the user terminal 100 within the validity period, the session management unit 220 may update the decreasing session validity time with the passage of time. Here, the meaning of the session validity update means that the count of the time is initialized. For example, if one minute is allocated as the session validity time of a formed session and the session validity time gradually decreases from 1 minute in the course of time, the session validity time update initializes the count of the session validity time, .

If the session validity period has elapsed without receiving a segment request from the user terminal 100 within the allotted effective time, the session management unit 220 disconnects the session between the user terminal 100 and the streaming service server 200 Session information can be deleted.

According to the session validity time, the streaming can be stopped and the streaming can be quickly provided to a new user requesting streaming on behalf of a user outside the valid time range.

On the other hand, each of a plurality of streaming service providing units 230 may be allocated some bandwidths of the total network bandwidth that can be operated by the streaming service server 200, and a maximum possible number of sessions may be allocated based on the allocated bandwidths . Each of the plurality of streaming service providing units 230 may provide a streaming service by providing a segment of the corresponding quality to the user terminal device 100 within a range of the maximum possible number of allocated sessions.

For example, the plurality of streaming service providers 230 may provide 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.

If 4 Gbps is allocated for UHD-quality streaming service and a bit-rate of 32 Mbps is required for UHD-quality streaming service, the maximum number of possible sessions allocated for UHD quality streaming service provision is 125 have.

When 2 Gbps is assigned to the FHD quality streaming service and a bit rate of 8 Mbps is required for the FHD quality streaming service, the maximum number of possible sessions allocated to the FHD quality streaming service is 250 have.

Also, for the HD quality streaming service provisioning and the SD quality streaming service provisioning, the maximum possible number of sessions can be allocated reflecting the bit-rate required for each.

If the above example is applied to an SVC composed of Base Layer (corresponding to SD quality), Enhancement Layer 1 (corresponding to FHD quality) and Enhancement Layer 2 (corresponding to UHD quality), the number of sessions allocated for FHD streaming only The maximum number of FHD sessions possible is 250, but 125 times the number of FHD sessions required for UHD streaming.

Accordingly, each of the plurality of streaming service providers 220 can provide the streaming service by transmitting a segment of the corresponding quality to the user terminal 100 within the allocated maximum possible number of sessions.

On the other hand, the controller 240 controls the overall operation of the streaming service server 200. The control unit 240 may control all or a part of the storage unit 210, the session management unit 220, and the plurality of streaming service providing units 230.

In particular, when the user terminal device 100 requests reproduction of specific content (for example, when the user reproduces and inputs a moving picture displayed on the display screen of the user terminal device 100) Receiving the identification information of the user from the server 100 and receiving the attribute information request corresponding to the specific content requested to be reproduced at the same time. Here, the user identification information may be information for identifying each of a plurality of users, and the user identification information may be provided between the user terminal apparatuses 100-1, 100-2, .. 100-N and the streaming service server 200 Lt; RTI ID = 0.0 > a < / RTI > session.

The control unit 240 detects attribute information of the content requested to be reproduced among the attribute information stored in the storage unit 210 and controls the control unit 240 to transmit the detected attribute information and user identification information to the user terminal device 100 can do. 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.

In particular, according to an embodiment of the present invention, the control unit 240 may transmit user identification information to the user terminal device 100 in an MPD document. Accordingly, the user terminal device 100 can detect the user identification information in the received MPD document and determine whether the MPD document is the MPD document requested by the corresponding terminal device.

Meanwhile, 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 a segment to be requested to the streaming service server 200 You can decide. 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.

Then, the user terminal device 100 can request the streaming service server 200 of a determined quality segment. In this case, the segment request format may be as shown in FIG. That is, referring to FIG. 4, the segment request format may include quality identification information 301 and user identification information 302 that enable identification of what quality is determined in the user terminal device 100. If the streaming service server 200 receives the segment request format, the control unit 240 may detect the quality identification information 301 and the user identification information 302. The control unit 240 determines the quality of the requested segment using the detected quality identification information 301 and transmits the user identification information 302 to the user terminal 100 and the streaming service server 200 ) Can be determined.

On the other hand, when a segment request is received from the user terminal device 100, the control unit 240 determines whether the quality of the requested segment is the lowest quality, the session allocated to the requested quality And to control the streaming service provider 230 to provide the streaming service based on whether the session is established with the user, the number of users, and whether or not the session is formed with respect to the user.

For example, when the requested first quality is not the lowest quality, the number of sessions allocated to the first quality exceeds a preset reference value, and the session for the user is not formed, And may control the streaming service provider 230 to generate an error code and transmit it to the user terminal device 100. [ In this case, the user terminal device 100 having received the connection error code can request the streaming service server 200 of a segment of a quality different from the previously requested first quality.

As another example, if the requested first quality is not the lowest quality, the number of sessions allocated to the first quality exceeds a preset reference value, and the session for the user is formed, the control unit 240 updates the session valid time The control unit 230 controls the session management unit 220 and controls the streaming service providing unit 230 to provide the streaming service of the first quality segment to the user terminal device 100 using the formed session.

As another example, if the requested first quality is not the lowest quality, the number of sessions allocated to the first quality is less than or equal to a preset reference value, and the session for the user is not formed, the control unit 240 transmits a session for the user And controls the streaming service providing unit 230 to provide the streaming service of the first quality segment to the user terminal device 100 using the formed session.

As another example, when the requested first quality is not the lowest quality, the number of sessions allocated to the first quality is less than or equal to a predetermined reference value, and the session for the user is formed, the control unit 240 updates the session valid time The control unit 230 controls the session management unit 220 and controls the streaming service providing unit 230 to provide the streaming service of the first quality segment to the user terminal device 100 using the formed session.

According to the present invention, by providing a session maintenance policy between a server and a user, it is possible to continuously provide high-quality streaming to a user who is in the existing high-definition streaming despite a change in network bandwidth.

On the other hand, if the requested first quality is the lowest quality, the control unit 240 may control the streaming service providing unit 230 to provide the streaming service with the lowest quality segment to the user terminal device 100. Thus, by ensuring the lowest quality (e.g., SD quality) at the time of segment request of the user terminal, it is possible to make a maximum number of users streamable even in a low quality.

The control operation of the control unit 240 will be described in detail with reference to FIG.

3 is a block diagram illustrating a streaming service server according to another embodiment of the present invention. 3, the streaming service server 200 includes a storage unit 210, a session management unit 220, a streaming service providing unit 230, a control unit 240, a transcoding unit 250, a segment generating unit 260 ), And the attribute information generation unit 270. [ 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.

The transcoding unit 250 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.

The segment generation unit 260 may generate a plurality of bit streams encoded with different quality at a predetermined time interval to generate initial segments and media segments required for reproduction of each bit stream. Here, the generated segments may be stored in the storage unit 210.

The attribute information generation unit 270 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 210.

5 is a timing diagram illustrating an operation of a streaming service system according to an embodiment of the present invention. Referring to FIG. 5, a user may select a specific content during a web surfing using the user terminal device 100 and input a playback command of the selected content (S101).

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).

Then, the user terminal device 100 requests the streaming service server 200 for attribute information about the selected streaming content using the received address information, and transmits the attribute information to the streaming service server 200 before or after the request User identification information can be transmitted (S103).

In this case, the streaming service server 200 may transmit the requested attribute information and user identification information to the user terminal device 100 (S104). For example, the streaming service server 200 may store user identification information in an MPD document corresponding to attribute information and transmit the user identification information to the user terminal 100

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.

Then, the user terminal device 100 can transmit a segment request including the identification information of the first quality and the user identification information to the streaming service server 200 (S106).

In this case, the streaming service server 200 can confirm whether the first quality is the lowest quality, the number of sessions allocated to the requested first quality, and whether a session is formed for the user (S107).

Then, the streaming service server 200 may control the streaming service providing unit 230 to provide the streaming service on the basis of the checking result (S108).

6 is a flowchart illustrating an operation of the streaming service server according to an exemplary embodiment of the present invention. Referring to FIG. 6, 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).

The streaming service server 200 can receive a request for attribute information corresponding to the user's identification information and specific content requested to be reproduced from the user terminal device 100 when the user terminal device requests reproduction of specific content (S202).

Then, the streaming service server 200 can detect the requested attribute information from the stored attribute information (S203).

Then, the streaming service server 200 can transmit the detected attribute information and the identification information of the user to the user terminal device 100 (S204).

Then, the streaming service server 200 can establish a session with the user terminal device 100 using the identification information of the user (S205). Specifically, the session management unit 220 forms a session between the user terminal device 100 and the streaming service server 200, stores session information corresponding to the formed session, and manages session information only for the allocated valid time period , The session between the user terminal device 100 and the streaming service server 200 can be disconnected and the session information can be deleted when the valid time has elapsed.

On the other hand, the streaming service server 200 may receive a segment of a first quality among a plurality of segments of quality for a specific content from the user terminal device 100 (S206).

If the requested first quality is not the lowest quality, the streaming service server 200 can control to provide the streaming service on the basis of the number of sessions allocated to the first quality and whether or not the session is formed for the user (S 207 ). The step S207 will be described in more detail with reference to FIG.

7 is a flowchart specifically illustrating a streaming control operation of a streaming service server according to an embodiment of the present invention. Hereinafter, a case in which a plurality of qualities are composed of UHD, FHD, HD, and SD will be described with reference to FIG.

First, the streaming service server 200 may receive a segment of a first quality among a plurality of segments of quality for a specific content from the user terminal 100 (S301).

In this case, the streaming service server 200 may determine whether the requested first quality is the lowest quality (S302). For example, the streaming service server 200 may determine whether the requested first quality is SD quality.

If the requested first quality is the lowest quality (Y in S302), the streaming service server 200 can control the user terminal 100 to provide the streaming service with the lowest quality segment (S303). . For example, if the requested first quality is SD quality, the streaming service server 200 may control the streaming service to provide SD quality segments. Thus, by ensuring the lowest quality (e.g., SD quality) at the time of segment request of the user terminal, it is possible to make a maximum number of users streamable even in a low quality.

On the other hand, if the requested first quality is not the lowest quality (S302: N), the streaming service server 200 may determine whether the number of sessions allocated to the first quality exceeds a preset reference value (S304). If the number of sessions allocated to the first quality exceeds the preset reference value, the network bandwidth allocated to the first quality may be unavailable. If the number of sessions allocated to the first quality is equal to or less than the preset reference value, The allocated network bandwidth may be available.

If the number of sessions allocated to the first quality exceeds the preset reference value (S304: Y), it can be determined whether or not a session for the user is formed (S305). Specifically, the streaming service server 200 may determine whether a session with the corresponding user terminal is established based on the user identification information included in the segment request format of the user terminal 100. If a segment request is received from the user terminal 100 within the valid time, the streaming service server 200 may determine that a session for the user is formed. However, if a segment request is received while the session between the user terminal 100 and the streaming service server 200 is disconnected according to the elapse of the session validity time, the streaming service server 200 determines that a session for the user is not formed .

If the session for the user is not established (S305: N), the streaming service server 200 may generate an access error code and transmit it to the user terminal 100 (S306). In this case, the user terminal device 100 having received the connection error code can request the streaming service server 200 of a quality different from the previously requested first quality, and resume the streaming process.

If the session for the user is formed (Y in S305), the streaming service server 200 updates the session validity time (S307) It is possible to control to provide a streaming service as a segment (S303).

On the other hand, if the number of sessions allocated to the first quality is equal to or less than a preset reference value (S304: N), it can be determined whether or not a session for the user is formed (S308). If the session for the user is not formed (S308: N), the streaming service server 200 forms a session for the user (S309) It is possible to control the streaming service to be provided in a segment of quality (S303).

However, if the session for the user is formed (S308: Y), the streaming service server 200 updates the session validity time (S307) It is possible to control to provide a streaming service as a segment (S303).

Accordingly, by providing a session maintenance policy between the server and the user, high-quality streaming can be continuously provided to the user who is in the existing high-definition streaming despite the change of the network bandwidth.

8 is a block diagram illustrating a streaming service system according to another embodiment of the present invention. 8, the 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).

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 240 of the streaming service server 200, and each of the plurality of streaming servers 200-2, 200, And may perform the functions of each of the plurality of streaming service providers 230 of the server 200.

That is, when a segment of a specific quality among a plurality of segments of quality is determined, the streaming control server 200-1 redirects the segment to a streaming server 200-2 (200-N) corresponding to the determined quality, A streaming service can be provided to the mobile terminal 100.

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.

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: streaming service system 100: user terminal device
200: streaming service server 210:
220: a session management unit 230: a streaming service provider
230: Control section 240: Transcoding section
250: segment generation unit 260: attribute information generation unit

Claims (18)

A method of controlling a streaming service server,
Receiving a segment of a first quality among a plurality of segments of quality for a specific content from a user terminal; And
And controlling the streaming service to provide a streaming service based on the number of sessions allocated to the first quality and whether a session is formed for the user when the requested first quality is not the lowest quality.
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;
Receiving a request for attribute information corresponding to the user identification information and the specific content requested to be reproduced when the user terminal requests reproduction of specific content;
Detecting the requested attribute information from the stored attribute information, and transmitting the detected attribute information and the identification information of the user to the user terminal device; And
And establishing a session connection with the user terminal using the received identification information of the user.
3. The method of claim 2,
Wherein,
May be a MPS (Media Presentation Description) document of Dynamic Adaptive Streaming over HTTP (DASH) technology,
Wherein the transmitting the detected attribute information and the identification information of the user to the user terminal device comprises:
Wherein the MPD document includes the user identification information and transmits the MPD document to the user terminal.
3. The method of claim 2,
The user terminal 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, and the hardware state of the user terminal,
Receiving a request for a first quality segment of a plurality of quality segments for a specific content from the user terminal,
Receiving, from the user terminal, a request including identification information of the quality determined by the user terminal and the user identification information,
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)
5. The method of claim 4,
The streaming service server includes:
Allocating the entire network bandwidth to each of the plurality of qualities,
And allocating the maximum possible number of sessions to each of the plurality of quality based on the allocated bandwidth.
The method according to claim 1,
Wherein the step of controlling to provide the streaming service comprises:
When the requested first quality is not the lowest quality and the number of sessions allocated to the first quality exceeds a predetermined reference value and the session for the user is not formed, an access error code is generated, And,
Updates the session validity time if the requested first quality is not the lowest quality, the number of sessions allocated to the first quality exceeds a preset reference value, and a session for the user is formed, To provide the streaming service with the first quality segment to the user terminal device.
The method according to claim 1,
Wherein the step of controlling to provide the streaming service comprises:
Forming a session for the user when the requested first quality is not the lowest quality and the number of sessions allocated to the first quality is equal to or less than a predetermined reference value and the session for the user is not formed, And controls the user terminal to provide the streaming service with the segment of the first quality using the session,
Updating the session validity time when the requested first quality is not the lowest quality and the number of sessions allocated to the first quality is equal to or less than a preset reference value and a session for the user is formed, And controls the user terminal to provide the streaming service with the segment of the first quality.
The method according to claim 1,
And controls the user terminal to provide the streaming service with the lowest quality segment if the requested first quality is the lowest quality.
8. The method according to claim 6 or 7,
The streaming service server includes:
Assigning a session valid time for the formed session, and managing session information for the formed session only for the allocated valid time.
A streaming service server comprising:
Requesting a first quality segment of a plurality of quality segments for a specific content from a user terminal device,
And controlling the streaming service to provide a streaming service based on the number of sessions allocated to the first quality and whether a session is formed for the user when the requested first quality is not the lowest quality.
11. The method of claim 10,
Wherein,
A request for attribute information corresponding to the user's identification information and the specific content requested to be played back is received when the user terminal requests the playback of the specific content,
Detects the requested attribute information from the stored attribute information, and controls to transmit the detected attribute information and the identification information of the user to the user terminal device,
The streaming service server includes:
A storage unit for storing a plurality of segments generated with a plurality of quality levels for contents and attribute information for the plurality of segments; And
And a session manager for establishing a session connection with the user terminal using the received identification information of the user.
12. The method of claim 11,
Wherein,
May be a MPS (Media Presentation Description) document of Dynamic Adaptive Streaming over HTTP (DASH) technology,
Wherein,
And the MPD document includes the user identification information and transmits the MPD document to the user terminal.
12. The method of claim 11,
The user terminal 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, and the hardware state of the user terminal,
Wherein,
From the user terminal device, a segment request of a first quality including the identification information of the quality determined in the user terminal and the user identification information,
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)
14. The method of claim 13,
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.
15. The method of claim 14,
Wherein,
When the requested first quality is not the lowest quality and the number of sessions allocated to the first quality exceeds a predetermined reference value and the session for the user is not formed, an access error code is generated, To the streaming service provider,
When the requested first quality is not the lowest quality, the number of sessions allocated to the first quality exceeds a predetermined reference value, and the session for the user is formed, the session management unit And controls the streaming service providing unit to provide the streaming service of the first quality segment to the user terminal using the formed session.
15. The method of claim 14,
Wherein,
If the requested first quality is not the lowest quality and the number of sessions allocated to the first quality is equal to or less than a preset reference value and the session for the user is not formed, Controls the streaming service provider to provide the streaming service with the first quality segment to the user terminal using the formed session,
When the requested first quality is not the lowest quality, the number of sessions allocated to the first quality is equal to or less than a predetermined reference value, and the session for the user is formed, the session management unit And controls the streaming service providing unit to provide the streaming service of the first quality segment to the user terminal using the formed session.
15. The method of claim 14,
Wherein the control unit controls the streaming service providing unit to provide the streaming service with the lowest quality segment to the user terminal when the requested first quality is the lowest quality.
17. The method according to claim 15 or 16,
The session management unit,
Allocates a session valid time for the formed session, and manages session information for the formed session only during the allocated valid time.
KR1020150116535A 2015-08-19 2015-08-19 Streaming service server and control method thereof KR20170022057A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150116535A KR20170022057A (en) 2015-08-19 2015-08-19 Streaming service server and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150116535A KR20170022057A (en) 2015-08-19 2015-08-19 Streaming service server and control method thereof

Publications (1)

Publication Number Publication Date
KR20170022057A true KR20170022057A (en) 2017-03-02

Family

ID=58426711

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150116535A KR20170022057A (en) 2015-08-19 2015-08-19 Streaming service server and control method thereof

Country Status (1)

Country Link
KR (1) KR20170022057A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020071816A1 (en) * 2018-10-02 2020-04-09 삼성전자 주식회사 Display device and server for communicating with display device
KR20220071057A (en) * 2020-11-23 2022-05-31 서울대학교산학협력단 Apparatus for media streaming control and method therefor

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020071816A1 (en) * 2018-10-02 2020-04-09 삼성전자 주식회사 Display device and server for communicating with display device
US11882332B2 (en) 2018-10-02 2024-01-23 Samsung Electronics Co., Ltd. Display device and server for communicating with display device
KR20220071057A (en) * 2020-11-23 2022-05-31 서울대학교산학협력단 Apparatus for media streaming control and method therefor

Similar Documents

Publication Publication Date Title
US10764623B2 (en) Method and system for media adaption
CA2924087C (en) Streaming policy management system and method
JP6337350B2 (en) Improved video quality
CN105814900B (en) System and method for managing adjacent channel in adaptive streaming environment
US9351020B2 (en) On the fly transcoding of video on demand content for adaptive streaming
CN111526418B (en) System and method for effectuating fast channel change in an adaptive streaming environment
US11463758B2 (en) Systems, methods, and devices for optimizing streaming bitrate based on multiclient display profiles
US20150249622A1 (en) Conflict detection and resolution in an abr network
US10917653B2 (en) Accelerated re-encoding of video for video delivery
US20150032854A1 (en) System and method for network-assisted adaptive streaming
US10834161B2 (en) Dash representations adaptations in network
US10003626B2 (en) Adaptive real-time transcoding method and streaming server therefor
US10708667B1 (en) Combining fragments with different encodings
US20130304933A1 (en) Multi-network environment adaptive media streaming transmission method and apparatus
KR20160031642A (en) Streaming service server and control method thereof
KR20180024841A (en) Streaming service server and control method thereof
KR20170022057A (en) Streaming service server and control method thereof
US20150149593A1 (en) Virtual desktop infrastructure server, computer implemented video streaming method, and non-transitory computer readable storage medium thereof
KR20120012089A (en) System and method for proving video using scalable video coding
Khan et al. SAND and Cloud-based Strategies for Adaptive Video Streaming
KR20140086801A (en) Realtime content transcoding method, apparatus and system, and realtime content reception method and apparatus
EP4311242A1 (en) Method for dynamic configuration of multimedia content encoder and apparatus for implementing the same
KR101565137B1 (en) Method for providing wireless streaming service and apparatus therefor