WO2016129966A1 - 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치 - Google Patents

저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치 Download PDF

Info

Publication number
WO2016129966A1
WO2016129966A1 PCT/KR2016/001460 KR2016001460W WO2016129966A1 WO 2016129966 A1 WO2016129966 A1 WO 2016129966A1 KR 2016001460 W KR2016001460 W KR 2016001460W WO 2016129966 A1 WO2016129966 A1 WO 2016129966A1
Authority
WO
WIPO (PCT)
Prior art keywords
streaming
live broadcast
data packet
low
request
Prior art date
Application number
PCT/KR2016/001460
Other languages
English (en)
French (fr)
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 JP2017554232A priority Critical patent/JP6430034B2/ja
Priority to CN201680004890.0A priority patent/CN107113474B/zh
Publication of WO2016129966A1 publication Critical patent/WO2016129966A1/ko
Priority to US15/622,539 priority patent/US10148725B2/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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4383Accessing a communication channel
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4335Housekeeping operations, e.g. prioritizing content for deletion because of storage space restrictions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP

Definitions

  • the present invention relates to a streaming content providing technology, and more particularly, to streaming live broadcast content based on MPEG media trasport (MMT) technology, according to a user request or a request for switching to a specific channel.
  • MMT MPEG media trasport
  • the present invention relates to a recording medium and a device for recording a program for providing low latency live broadcasting content that enables efficient operation with a legacy system by performing the MMT based streaming service.
  • Moving Picture Experts Group (MPEG) -2 Transport Stream is a communication protocol for transmitting multimedia-related data including audio, video, data, etc. over a network, and is used for terrestrial / satellite digital broadcasting and digital multimedia broadcasting (DMB). It is used for the transmission of media data in IPTV (Internet Protocol TV), etc., or recently used for media storage in digital video cameras or Blu-ray equipment.
  • MPEG Moving Picture Experts Group
  • DMB digital multimedia broadcasting
  • next-generation contents such as ultra high definition (UHD) video contents and 3D video contents
  • new services such as N-screen services
  • MPEG-H High Efficiency Coding and Media Delivery in Heterogeneous Environments
  • MMT MPEG Media Transport
  • the MMT technology aims to provide efficient multimedia data transmission and various playback functions in various advanced network environments.
  • the MMT technology includes a media processing unit (MPU) functional area, a signaling function area, a delivery function area, and It may be divided into an expression information area.
  • MPU media processing unit
  • the MMT technology has various advantages over the existing MPEG-TS technology as described above, the MPEG-TS technology has been used in various fields for over 20 years, and all the legacy systems built on the existing MPEG-TS are MMT technology. It is not only impossible to replace it, but it is also inefficient.
  • the present invention has been proposed to solve such a demand.
  • the MMT-based streaming service is performed according to a user request or a request for switching to a specific channel.
  • a first media receiving module for receiving and decoding a streaming data packet from a first streaming server for providing a streaming service based on the first media transmission technology
  • a second media reception module for receiving and decoding a streaming data packet from a second streaming server that provides a streaming service based on a second media transmission technology
  • a streaming module may be configured to instruct a streaming request to the first media receiving module or the second media receiving module and, accordingly, to play the multimedia data outputted from the first media receiving module or the second media receiving module. It provides a device for providing low-delay live broadcast content.
  • the present invention as another solution to the above-described problem, if the streaming request event for any channel occurs, determining whether the event condition for switching to the low-delay live broadcast mode; As a result of the determination, if the event condition is not satisfied, the streaming request is transmitted to a first streaming server that provides a streaming service based on a first media transmission technology to receive and decode a streaming data packet transmitted from the first streaming server.
  • a first receiving step of performing As a result of the determination, if the event condition is satisfied, a streaming request is transmitted to a second streaming server that provides a streaming service based on a second media transmission technology, and the streaming data packet received from the second streaming server is received and decoded.
  • a second receiving step A computer-readable recording medium having recorded thereon a program for providing low-delay live broadcast content comprising the step of reproducing multimedia data decoded in a first receiving step or a second receiving step.
  • the apparatus and method for providing low-delay live broadcast content according to the present invention may be applied to a content transmission system for transmitting multimedia data of live broadcast content in a streaming manner and reproducing in real time, in particular, a user terminal receiving streaming.
  • the present invention relates to an HLS-based streaming service in response to a user request or a request for switching to a specific channel in an environment where a streaming system implemented with an HLS scheme based on MPEG-TS and a streaming system based on MMT technology coexist.
  • a streaming service based on MMT it is possible to selectively provide low-delay live broadcast content.
  • the present invention can improve the quality of service provided to the user while efficiently operating the existing legacy system and the new system based on MMT.
  • FIG. 1 is a diagram illustrating a system configuration for providing low-delay live broadcasting content according to a first embodiment of the present invention.
  • FIG. 2 is a flowchart illustrating an operation process of a system for providing low delay live broadcast content according to a first embodiment of the present invention.
  • FIG. 3 is a diagram illustrating a system configuration for providing low-delay live broadcasting content according to a second embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating an operation process of a system for providing low delay live broadcast content according to a second embodiment of the present invention.
  • FIG. 5 is a block diagram showing the configuration of a user terminal for providing low-delay live broadcasting content according to the present invention.
  • FIG. 6 is a block diagram showing the configuration of an apparatus for providing low-delay live broadcast content applied to a user terminal according to the present invention.
  • FIG. 7 is a flowchart illustrating an operation of an apparatus for providing low-delay live broadcasting content according to the present invention.
  • FIG. 8 is a timing diagram schematically illustrating a streaming data packet provided to a user terminal according to an exemplary embodiment of the present invention.
  • FIG 9 is an exemplary view of a user interface screen provided by an apparatus for providing low-delay live broadcasting content according to the present invention.
  • first and second are used to describe various components, and are used only to distinguish one component from another component, and to limit the components. Not used.
  • the second component may be referred to as the first component, and similarly, the first component may also be referred to as the second component.
  • a component when referred to as being "connected” or “connected” to another component, it means that it may be connected or connected logically or physically. In other words, although a component may be directly connected or connected to other components, it should be understood that other components may exist in the middle, and may be connected or connected indirectly.
  • FIGS. 1 and 2 are block diagrams illustrating a system for providing low-delay live broadcasting content according to embodiments of the present invention.
  • a system for providing low-delay live broadcasting content includes a user terminal 10 and first and second streaming servers 200 and 300 connected through a communication network 10. It is made to include.
  • the communication network 10 is defined as one or more data links that enable the transmission of electronic data between computer systems and / or modules, and may be a combination of one or more different communication networks.
  • the communication network 10 may be a 3G mobile communication network, a 4G mobile communication network, a wireless LAN (WLAN), a Wi-Fi (Wi-Fi), a Wibro, a WiMAX, a WiMAX, a High Speed Downlink Packet Access (HSDPA), It may include wired / wireless communication networks such as Ethernet, xDSL (ADSL, VDSL), Hybrid Fiber Coaxial Cable (HFC), Fiber to The Curb (FTTC), and Fiber To The Home (FTTH).
  • WLAN wireless LAN
  • Wi-Fi Wi-Fi
  • Wibro WiMAX
  • WiMAX WiMAX
  • HSDPA High Speed Downlink Packet Access
  • the communication network 10 when the communication network 10 is a mobile communication network, it may be composed of a plurality of wireless access networks and core networks.
  • the wireless access network is an access network that performs wireless communication with the user terminal 101, and includes, for example, a plurality of base stations such as a base station (BS), a base transceiver station (BTS), a NodeB, an eNodeB, and a base station. It may be implemented as a base station controller such as a controller, a radio network controller (RNC).
  • RNC radio network controller
  • the digital signal processing unit and the wireless signal processing unit, which are integrally implemented in the base station are respectively divided into digital units (hereinafter referred to as DUs and radio units (hereinafter referred to as RUs)).
  • a plurality of RUs may be installed, and a plurality of RUs may be connected to a centralized DU and configured.
  • the core network constituting the mobile communication network together with the wireless access network serves to connect the access network and the external network, for example, the Internet network, performs circuit switching or packet switching, and performs mobile Manage and control the flow of packets within the network.
  • the core network (not shown) manages inter-frequency mobility and performs a role for interworking with traffic in the access network (not shown) and the core network (not shown) and other networks such as the Internet network (not shown). It may be.
  • the core network (not shown) further includes Serving GateWay (SGW), PDN GateWay (PGW), Mobile Switching Center (MSC), Home Location Register (HLR), Mobile Mobility Entity (MME), and Home Subscriber Server (HSS). It may be configured to include.
  • SGW Serving GateWay
  • PGW PDN GateWay
  • MSC Mobile Switching Center
  • HLR Home Location Register
  • MME Mobile Mobility Entity
  • HSS Home Subscriber Server
  • the user terminal 100 is a configuration for receiving and playing content through the communication network 10 according to the present invention. Specifically, the user terminal 100 is connected to the communication network 10 to connect a session for communication and through the session. Request the streaming of the multimedia data to the first streaming server 200 or the second streaming server 300, and correspondingly receives the streaming data packet from the first streaming server 200 or the second streaming server 300 Play it.
  • the user terminal 100 when the streaming event is generated, the user terminal 100, according to the user operation, according to whether the streaming event meets the event condition for switching to the low-delay live broadcast mode, Interwork with one streaming server 200 or the second streaming server 300. That is, the user terminal 100 according to the present invention may operate in two modes when receiving and playing live broadcast content. In the first mode, the multimedia data of the live broadcast content is streamed and reproduced from the first streaming server 200, and the second mode receives and reproduces the multimedia data of the live broadcast content from the second streaming server 300. The second mode is called a low delay live broadcast mode.
  • the event condition for switching to the low-delay live broadcast mode may be satisfied when an input of a preset mode switching button or a channel switching to a predetermined specific channel is performed.
  • the user terminal 100 may be implemented as any electronic device capable of transmitting and receiving various data via a network according to a user's key operation, and for this purpose, a memory for storing programs and protocols, and various programs are executed. And a computing environment such as a microprocessor for operation and control, and execute a predetermined application program or program module based on the computing environment to perform the above-described functions.
  • a computing environment such as a microprocessor for operation and control, and execute a predetermined application program or program module based on the computing environment to perform the above-described functions.
  • the user terminal 100 may be a tablet PC, a laptop, a personal computer, a smart phone, a personal digital assistant (PDA). , A smart TV, a mobile communication terminal, and the like.
  • PDA personal digital assistant
  • the first and second streaming servers 200 and 300 are server devices for streaming multimedia data, particularly multimedia data of live broadcast content, to the user terminal 100 at the request of the user terminal 100.
  • the first and second streaming servers 200 and 300 stream and transmit the multimedia data based on different media transmission technologies.
  • streaming is a method of playing a multimedia file, such as music or video, by dividing it into several streaming data in succession instead of one form, while reducing the user's waiting time by simultaneously downloading and playing the file. It enables the real-time provision of content and the provision of live broadcast content.
  • These streaming transmissions are based on transport layer protocols such as User Datagram protocol (UDP) / Transmission Control Protocol (TCP), and include Real-time Transport Protocol (RTP), Real-Time Transport Control Protocol (RTP), and Real Time (RTMP). It can operate using one or more of the protocols for the transmission and control of media data such as Messaging Protocol (RTSP), Real Time Streaming Protocol (RTSP), HTTP Live streaming (HLS), MPEG-TS, and MPEG media transport (MMT).
  • UDP User Datagram protocol
  • TCP Transmission Control Protocol
  • RTP Real-time Transport Protocol
  • RTP Real-Time Transport Control Protocol
  • RTMP Real Time
  • It can operate using one or more of the protocols for the transmission and control of media data such as Messaging Protocol (RTSP), Real Time Streaming Protocol (RTSP), HTTP Live streaming (HLS), MPEG-TS, and MPEG media transport (MMT).
  • RTSP Real Time Streaming Protocol
  • HLS HTTP Live streaming
  • MPEG-TS MPEG-TS
  • MMT MPEG media transport
  • the first streaming server 200 performs fragmentation / encapsulation / packetization on the multimedia data of the live broadcast content based on the existing MPEG-TS and HLS technology and transmits it to the user terminal 100.
  • the first streaming server 200 divides multimedia data into MPEG (TS) transport streams and transmits them in time units, and transmits information on which file to play using a file called m3u8. 100).
  • TS MPEG
  • the second streaming server 300 performs fragmentation / encapsulation / packetization of multimedia data of live broadcast content based on the MMT technology proposed as the first part of MPEG-H.
  • metadata is included for each MPU, so that each MPU can be independently decoded and reproduced.
  • FIG. 2 is a flowchart illustrating an operation process of a system for providing low latency live broadcast content according to a first embodiment of the present invention.
  • the user terminal 100 may transmit a streaming request for any live broadcast channel to the first streaming server 200 (S105).
  • the arbitrary live broadcast channel may refer to the remaining live broadcast channel except for a specific channel preset as a low delay live broadcast channel.
  • the first mode is set as a default as an operation mode of the user terminal 100, or that the general live broadcast channel except for the specific channel is set as a default value. Therefore, in the first operation, the user terminal 100 transmits a streaming request to the first streaming server 200 for a live broadcast channel set as a default.
  • the first streaming server 200 transmits the streaming data packet of the MPEG-TS format to the user terminal 100 based on the HLS protocol (S110).
  • the provided streaming data packet may support resolutions of standard definition (SD) and high definition (HD).
  • the user terminal 100 receives the streaming data packet provided from the first streaming server 200, decodes and reproduces it (S115). The user can watch the live broadcast content reproduced and displayed on the screen.
  • the user terminal 100 receives and reproduces the streaming data packet from the first streaming server 200, the event of continuously switching to the second mode, that is, the real time real time mode, is performed. It can be confirmed whether it occurs (S120). In detail, the user terminal 100 determines whether a preset mode switch button is input or a channel switch to a specific channel preset to the low delay live broadcast mode is requested.
  • the user terminal 100 is informed that the mode is switched to the low-delay live broadcast content mode, and also that the service may not be made depending on the network conditions
  • the guide message may be further output (S125).
  • the user terminal 100 transmits a streaming request to the second streaming server 300 (S130).
  • the channel that is the target of the streaming request may be a channel (or a program) currently being played when a mode switching button is input, and the specific channel when the channel switching request is made.
  • the second streaming server 300 divides the multimedia data of the requested live broadcast content into a plurality of fragments based on MMT technology in response to a request of the user terminal 100, and at least one segmented fragment file including metadata. Encapsulated by the MPU, and then constructs a streaming data packet to add a header, and transmits to the user terminal 100 (S135). In this case, the streaming data packet may be transmitted based on UDP.
  • the user terminal 100 performs decapsulation and decoding of the received streaming data packet based on the MMT technology and reproduces the image on the screen (S140).
  • the process of step S140 may be independently performed in units of MPUs, and the delay may be minimized by reproducing at a specified time and space based on metadata included in each MPU of the user terminal 100.
  • the user terminal 100 while playing the low-delay live broadcast content in the second mode, the user terminal 100 continuously detects whether the service is disconnected (S145).
  • the service disconnection may be determined by detecting a state of a buffer in which the user terminal 100 stores the received streaming data packet. That is, when the amount of buffered data falls below a certain threshold, it can be predicted that service interruption occurs.
  • the user terminal 100 switches the transport layer protocol to the TCP method while increasing the size of the buffer (S150).
  • the second streaming server 300 may request a switch to the TCP scheme, thereby establishing a connection with the second streaming server 300 (S155).
  • the second streaming server 300 transmits the corresponding streaming data packet based on the TCP scheme (S160).
  • the UDP method is a connectionless protocol, there is no process of establishing a session between the source and the destination for data delivery, and as the best effort method, does not perform retransmission when an error / loss occurs for real-time data delivery. This method is suitable for cases where real-time performance is required because of the high speed instead of low reliability.
  • the TCP method is a connection-oriented protocol that establishes a session from a source to a destination and then transmits data. The TCP method can transmit data more securely, but has a higher overhead than the UDP method.
  • the present invention basically transmits the streaming data packet based on the UDP method, while transmitting the streaming data packet at a high speed while the service is stably performed. To ensure stable service.
  • streaming data packets can be transmitted more reliably.
  • FIG. 3 is a block diagram illustrating a system for providing low latency live broadcast content according to a second embodiment of the present invention.
  • the system according to the second embodiment of the present invention further includes a relay server 400 in addition to the user terminal 100 and the first and second streaming servers 200 and 300.
  • the user terminal 100 may access the relay server 400 and access the first and second streaming servers 200 and 300 through the relay server 400.
  • the user terminal 100 accesses the relay server 400 to perform a streaming request, checks whether an event condition for switching to a low delay live broadcasting mode (second mode) is satisfied, and when the event condition is satisfied, Information for requesting the low latency live broadcast mode may be transmitted together.
  • the information for requesting the low latency live broadcast mode may be indicated by a value of a specific field in a header of a streaming request message or as channel information.
  • the relay server 400 Upon receiving the streaming request from the user terminal 100, the relay server 400 analyzes the streaming request, determines whether it is in the low latency live broadcasting mode, and determines the streaming request based on the determination result of the first streaming server 200. ) Or to the second streaming server 300. For example, the relay server 400 may transmit the streaming request to the second streaming server 300 when the streaming request for the predetermined specific channel or the low delay live broadcast mode information is recorded in a specific field of the header of the streaming request. The other streaming to the first streaming server 200.
  • the operations of the first and second streaming servers 200 and 300 differ only in that the streaming data packet is transmitted to the user terminal 100 through the relay server 400 and is the same as the other first embodiment. .
  • FIG. 4 is a flowchart illustrating an operation of a system according to a second embodiment of the present disclosure as described above, and a process of providing low-delay live broadcasting content according to the second embodiment will be described with reference to this.
  • the user terminal 100 may transmit a streaming request for any live broadcast channel.
  • the streaming request of the user terminal 100 is transmitted to the relay server 400 (S205).
  • the streaming request includes information indicating whether to switch to the second mode (low delay live broadcast mode) mode.
  • the information may be recorded, for example, in a specific field of the header or may be replaced with live channel (or program) information.
  • step S205 it is assumed that the switch to the low-delay live broadcast mode is not requested, or that any live broadcast channel is the remaining live broadcast channel except for a specific channel preset as the low-delay live broadcast channel.
  • the relay server 400 determines whether it is the first mode or the second mode (low delay live broadcast mode) based on the information included in the received streaming request. In more detail, if the information for requesting the switch to the low-delay live broadcast mode is included, or if the requested live broadcast channel is a specific channel preset as the low-delay live broadcast channel, it is determined as the second mode.
  • the relay server 400 determines the streaming request in step S205 as the streaming request in the first mode, and transmits the streaming request to the first streaming server 200 (S210).
  • the first streaming server 200 transmits the streaming data packet of the MPEG-TS format to the user terminal 100 through the relay server 400 based on the HLS protocol (S215).
  • the provided streaming data packet may support resolutions of standard definition (SD) and high definition (HD).
  • steps S220 to S230 are performed in the same manner as steps S115 to S125 of the second embodiment illustrated in FIG. 2.
  • step S225 when an event for requesting switching to the second mode (low delay live broadcast mode) occurs in step S225, the user terminal 100 transmits a streaming request to the relay server 400, wherein the streaming request includes: Information for requesting switching to the 2 mode (low delay live broadcast mode) is included, or channel information of a specific channel set to the low delay live broadcast mode is included.
  • the relay server 400 analyzes the received streaming request and transmits the streaming request to the second streaming server 300 since it is the second mode (low delay live broadcast mode) (S240).
  • the second streaming server 300 generates the streaming data packet based on the MMT technology to the multimedia data of the live broadcast content requested from the user terminal 100, and transmits to the user terminal 100 through the relay server 400 ( S245).
  • the streaming data packet may be transmitted based on UDP.
  • steps S250 to S270 by the user terminal 100 are performed in the same manner as steps S140 to S160 of the first embodiment (FIG. 2), except that steps S265 and S270 are performed by the relay server 400. The only difference is that it takes place through.
  • the operation of the user terminal 100 since the user terminal 100 communicates only with the relay server 400, the operation of the user terminal 100 may be simplified.
  • the apparatus for providing low-delay live broadcasting content according to the present invention may be provided in the user terminal 100 and operate based on the computing environment of the user terminal 100.
  • the user terminal 100 to which the present invention is applied includes a communication unit 110, an input unit 120, an output unit 130, a storage unit 140, and a controller 150.
  • the communication unit 110 is a configuration for transmitting and receiving data with an external device, for example, the first and second streaming servers 200 and 300 or the relay server 400 through the communication network 10.
  • the communication unit 110 may process data through various communication methods as well as a wired method and a wireless method according to the type of the communication network 10.
  • the communication unit 110 may include a plurality of communication modules for transmitting and receiving data according to different communication methods.
  • the input unit 120 is a means for inputting a user command or data.
  • the input unit 120 generates various input data including numbers, letters, and symbols according to a user's operation, and transmits the input data to the controller 150.
  • the command related to the function setting and the function control of the apparatus 100 is transmitted to the controller 150.
  • the input unit 12 may include at least one of a keypad and a touch pad generating an input signal according to a user's manipulation.
  • the input unit 120 may be implemented as any type of input means that may be developed in the future in addition to an input device such as a keyboard, a keypad, a mouse, a joystick, and the like.
  • the user may operate the input unit 120 to input a streaming request or request a channel switch.
  • the output unit 130 is basically a means for outputting the information generated according to the operation of the user terminal 100 so that the user may perceive visually, auditoryly, or tactilely.
  • the output unit 130 may include a display device for outputting visual information, an audio device (speaker) for outputting auditory information, a haptic device for outputting tactile information, and the like.
  • the display device may be a touch screen. When the display device is formed in the form of a touch screen, the display device may perform some or all of the functions of the input unit 120.
  • the audio device may representatively represent a speaker.
  • the output unit 130 according to an embodiment of the present invention may output the playback screen and sound of the live broadcast content. In this case, a mode switch button for requesting the switch to the low latency live broadcasting mode may be further output on the user interface screen on which the playback screen is output.
  • the storage unit 140 is a component for storing programs and data necessary for the operation of the user terminal 100.
  • the storage unit 13 basically stores an operating system (OS) program of the terminal device 10, and, in addition to one or more applications operating on the basis of the OS environment and generated or necessary for execution thereof Data can be saved.
  • the storage unit 140 is an optical recording medium such as a magnetic media such as a hard disk, a floppy disk, and a magnetic tape, a compact disk read only memory (CD-ROM), and a digital video disk (DVD). , Magneto-optical media such as floppy disks, and ROM, random access memory (RAM), and flash memory.
  • the storage unit 140 stores a program module implemented to execute a function according to an embodiment of the present invention.
  • the controller 150 controls the overall operation of the user terminal 100 and is a configuration for predetermined operation.
  • the controller 150 may include a processor such as a microprocessor or a CPU.
  • the controller 150 When the controller 150 is powered on, the controller 150 first executes an OS program stored in the storage 140 to build an execution environment, and based on this, the controller 150 may execute one or more applications or programs according to a user command transmitted from the input unit 120. By executing, a predetermined function or service can be provided to the user.
  • the controller 150 of the user terminal 100 according to the present invention is implemented to perform a function according to the present invention to execute one or more program modules stored in the storage unit 140 to perform a function according to the present invention. .
  • FIG. 6 is a block diagram showing the configuration of an apparatus for providing low-delay live broadcasting content applied to the user terminal 100 described above.
  • an apparatus for providing low latency live broadcast content may include a first media reception module 151, a second media reception module 152, and a playback module 153.
  • the 'module' is a component that performs a predetermined function, respectively, may be implemented in hardware, software, or a combination of hardware and software.
  • the 'module' may mean a program module, which is executed by a processor, that is, the controller 150 to perform a predetermined function.
  • program modules may be written in any form of programming language, including compiled or interpreted languages, or a priori or procedural languages, and may be stand-alone programs or modules, components, subroutines, or other suitable for use in a computer environment. It can be deployed in any form, including units.
  • a program module does not necessarily correspond to the file of a file system. That is, a program module may be stored in a single file provided to the requested program, or in multiple interactive files (e.g., a file storing one or more modules, subprograms, or portions of code) or other programs or data. May be stored within a portion of a file (eg, one or more scripts stored within a markup language document).
  • the program modules may be distributedly stored in local storage media and remote storage media. That is, in an embodiment of the present invention, the program modules according to the present invention may be distributed and stored in the user terminal 100, the first and second streaming servers 200 and 300, and the relay server 400.
  • the first media reception module 151 is a component for processing a streaming data packet based on a first media transmission technology.
  • the first media transmission technology is HLS. Accordingly, the first media receiving module 151 receives the streaming data packet for the multimedia data of the live broadcast content transmitted from the first streaming server 200, and transmits the MPEG 2 packet through the received streaming data packet.
  • the multimedia data is restored by analyzing and decoding a transport stream (TS).
  • TS transport stream
  • the first media receiving module 151 receives the file information to be played m3u8 transmitted from the first streaming server 200, and sequentially receives the TS from the first streaming server 200 The above process is performed.
  • the second media receiving module 152 is a component for processing a streaming data packet based on the second media transmission technology.
  • the second media transmission technique is MMT proposed as the first part of MPEG-H.
  • the second media receiving module 152 receives the streaming data packet transmitted from the second streaming server 300, analyzes the header of the streaming data packet, extracts the MPU included in the payload, and sends the MPU to the MPU.
  • the multimedia data is decoded by referring to the included metadata.
  • the playback module 153 is configured to play multimedia data output from the first media receiving module 151 or the second media receiving module 153 by operating according to an input signal input through the input unit 120. .
  • the reproduction means to arrange the multimedia data temporally and spatially and output the visual / audio information.
  • the playback module 153 provides a user interface as shown in FIG. 9 in connection with the use of the multimedia content, and plays / pauses / stops multimedia data according to an input signal input through the user interface. Can be controlled.
  • the playback module 153 determines whether the streaming request satisfies an event condition for switching to the low latency live broadcasting mode, and according to a result of the determination, the first media receiving module 151. Or directs a streaming request to the second media receiving module 152.
  • the playback module 153 is a low latency. If it is determined that the switching event to the live broadcast mode has occurred, the second media receiving module 152 instructs the streaming request for the corresponding channel, and if the mode switching button 93 is not selected, the first media receiving module 151 ) Directs the streaming request.
  • button 92 is for selecting or displaying a first mode.
  • the first and second media reception modules 151 and 152 transmit a streaming request to the first and second streaming servers 200 and 300 or through the relay server 400.
  • a streaming request to the first and second streaming servers 200 and 300, it is possible to receive streaming data packets based on respective media transmission technologies from the first and second streaming servers 200 and 300.
  • the first and second media receiving modules 151 and 152 may transmit a streaming request to the communication network 10 through the communication unit 110 of the user terminal 100 and receive a streaming data packet corresponding thereto.
  • the playback module 153 of the apparatus for providing low-delay live broadcasting content provides a user interface for playing multimedia data, and confirms occurrence of a streaming request event through the user interface. It may be (S305).
  • the streaming request event when the playback module 153 operates for the first time and receives and plays multimedia data of a channel set as a default or a previously played channel, the user selects an arbitrary channel to perform channel switching. On request, it may occur when the mode switch button 93 is selected, as shown in FIG.
  • the playback module 153 determines whether the event condition for all the transition to the second mode (low delay live broadcast mode) is satisfied (S310).
  • the event condition may be satisfied when all the switch buttons 93 instructing to switch to the low latency live broadcast mode through the user interface are selected or the channel requested for streaming is a specific channel preset to the low delay live broadcast mode.
  • the playback module 153 requests the streaming of the corresponding channel to the first media receiving module 151, and the first media receiving module 151 directly or the relay server 400 Request the streaming to the first streaming server 200 through the (S315), and receives and reproduces the streaming data packet transmitted by the first streaming server 200 (S320).
  • the streaming data packet received by the first media receiving module 151 includes MPEG-TS based on the HLS as shown in FIG.
  • the playback module 153 requests the second media reception module 152 to stream the corresponding channel, and thus the second media reception module 152 directly or relay server ( Request the streaming to the second streaming server 300 through the 400 (S325), and receives and reproduces the streaming data packet transmitted by the second streaming server 300 (S330).
  • the streaming data packet received by the second media receiving module 152 includes an MPU based on an MMT as shown in FIG. 8B.
  • the reception of the streaming data packet from the second streaming server 300 is based on UDP.
  • the apparatus while receiving and playing the streaming data packet from the second streaming server 300, checks whether the disconnection phenomenon occurs by checking the buffer state (S335), and as a result, the disconnection phenomenon If it is predicted or detected to occur, the buffer size adjustment and the switch to TCP is performed (S340).
  • This may be performed by the second media receiving module 152. That is, the second media receiving module 152 continuously checks the buffer state to check whether a disconnection phenomenon occurs, and if it is predicted or detected to occur, increases the size of the buffer storing the streaming data packet, and also, the streaming.
  • the transport layer protocol for receiving data packets is switched to TCP.
  • the switch to the TCP scheme may be performed in cooperation with the second streaming server 300 through the communication unit 110 of the user terminal 100. That is, a TCP connection with the second streaming server 300 is established through the communication unit 110.
  • the second media receiving module 152 receives and decodes the streaming data packet from the second streaming server 300 on a TCP basis, and the multimedia data thus obtained is reproduced through the playing module 153 (S345).
  • the user can receive a mode switch button, more specifically, while receiving and playing the multimedia data based on the HLS / MPEG-TS as shown in (a) of FIG. 93) or request to switch to a specific channel preset to the low-delay live broadcast mode, the mode is switched at the time when the list of m3u8 of the HLS is received, as shown in (b) of FIG. Can be received and played back from the MPU2 corresponding to the.
  • the specification and drawings describe exemplary device configurations, the functional operations and subject matter implementations described herein may be embodied in other types of digital electronic circuitry, or modified from the structures and structural equivalents disclosed herein. It may be implemented in computer software, firmware or hardware, including, or a combination of one or more of them. Implementations of the subject matter described herein relate to one or more computer program products, ie computer program instructions encoded on a program storage medium of tangible type for controlling or by the operation of an apparatus according to the invention. It may be implemented as the above module.
  • the computer readable medium may be a machine readable storage device, a machine readable storage substrate, a memory device, a composition of materials affecting a machine readable propagated signal, or a combination of one or more thereof.
  • the apparatus and method for providing low-delay live broadcast content according to the present invention may be applied to a content transmission system for transmitting multimedia data of live broadcast content in a streaming manner and reproducing in real time, in particular, a user terminal receiving streaming.
  • the present invention relates to an HLS-based streaming service in response to a user request or a request for switching to a specific channel in an environment where a streaming system implemented with an HLS scheme based on MPEG-TS and a streaming system based on MMT technology coexist.
  • a streaming service based on MMT it is possible to selectively provide low-delay live broadcast content.
  • the present invention can improve the quality of service provided to the user while efficiently operating the existing legacy system and the new system based on MMT.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 MMT 기술을 기반으로 생방송 컨텐츠를 스트리밍 서비스하는데 있어서, 사용자 요청 혹은 특정 채널로의 전환 요청에 따라서, 상기 MMT 기반의 스트리밍 서비스를 수행함으로써, 레거시 시스템과의 효율적인 운영을 가능하게 하는 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치에 관한 것으로서, 임의의 채널에 대한 스트리밍 요청 이벤트가 발생하면, 저지연 생방송 모드로의 전환을 위한 이벤트 조건을 충족하는 지를 판단하여, 이벤트 조건의 충족 여부에 따라서, 제1 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제1 스트리밍 서버로 스트리밍 요청을 전송하여, 상기 제1 스트리밍 서버로부터 전송된 스트리밍 데이터 패킷을 수신하여 디코딩하거나, 제2 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제2 스트리밍 서버로 스트리밍 요청을 전송하여, 상기 제2 스트리밍 서버로부터 전송된 스트리밍 데이터 패킷을 수신하여 디코딩하여, 재생한다.

Description

저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치
본 발명은 스트리밍 방식의 컨텐츠 제공 기술에 관한 것으로서, 더욱 상세하게는 MPEG 미디어 전송(MPEG media trasport: MMT) 기술을 기반으로 생방송 컨텐츠를 스트리밍 서비스하는데 있어서, 사용자 요청 혹은 특정 채널로의 전환 요청에 따라서, 상기 MMT 기반의 스트리밍 서비스를 수행함으로써, 레거시 시스템과의 효율적인 운영을 가능하게 하는 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치에 관한 것이다.
MPEG(Moving Picture Experts Group)-2 TS(Transport stream)은 오디오, 비디오, 데이터 등을 포함하는 멀티미디어 관련 데이터를 네트워크를 통해서 전송하기 위한 통신 프로토콜로서, 지상파/위성 디지털 방송, DMB(Digital Multimedia Broadcasting), IPTV(Internet Protocol TV) 등에서 미디어 데이터의 전송을 위해 사용되거나, 근래 디지털 비디오 카메라나 블루레이 장비에서의 미디어 저장을 위해서도 사용되고 있다.
그러나, 최근 방송망과 통신망이 점차 융합되고 고도화되고, UHD(Ultra High Definition) 영상 컨텐츠나 3D 영상 컨텐츠 등과 같은 차세대 컨텐츠의 등장과 함께, N-스크린 서비스 등 새로운 서비스가 등장함에 따라서, 새롭고 다양한 요구사항이 발생하고 있다.
이에 다양한 종류의 광대역 통신망에서 디지털 방송 등의 다양한 서비스를 제공하기 위한 MPEG-H(High Efficiency Coding and Media Delivery in Heterogeneous Environments) 표준의 첫번째 파트로서, MPEG 미디어 전송(MMT: MEPG Media Transport) 기술이 개발되고 있다.
상기 MMT 기술은, 고도화되고 있는 여러 네트워크 환경에서의 효율적인 멀티미디어 데이터 전송 및 다양한 방법의 재생 기능을 제공하는 것을 목표로 하는 것으로서, 크게 MPU(Media Processing Unit) 기능 영역, 시그널링 기능 영역, 전달 기능 영역 및 표현 정보 영역으로 구분될 수 있다.
상기와 같이 MMT 기술이 기존의 MPEG-TS 기술보다 다양한 장점을 가지기는 하나, MPEG-TS 기술은 20여년 동안 다양한 분야에서 이용되오고 있는 것으로서, 기존 MPEG-TS 기반으로 구축된 레거시 시스템들을 모두 MMT 기술로 대체하는 것은 불가능할뿐만 아니라, 비효율적이다.
따라서, 기존의 MPEG-TS 기반의 레거시 시스템과 MMT 기반의 시스템이 공존하는 환경에서, 이들을 효율적으로 운용하는 방안이 필요하다.
본 발명은 이러한 요구를 해결하고자 제안된 것으로서, MMT 기술을 기반으로 생방송 컨텐츠를 스트리밍 서비스하는데 있어서, 사용자 요청 혹은 특정 채널로의 전환 요청에 따라서, 상기 MMT 기반의 스트리밍 서비스를 수행함으로써, 레거시 시스템과의 효율적인 운영을 가능하게 하는 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치를 제공하고자 한다.
상술한 과제의 해결 수단으로서, 본 발명은, 제1 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제1 스트리밍 서버로부터 스트리밍 데이터 패킷을 수신하여 디코딩하는 제1 미디어 수신 모듈; 제2 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제2 스트리밍 서버로부터 스트리밍 데이터 패킷을 수신하여 디코딩하는 제2 미디어 수신 모듈; 및 생방송 컨텐츠의 재생을 위한 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통해 임의 채널에 대한 스트리밍 요청 이벤트가 발생하면, 저지연 생방송 모드로의 전환을 위한 이벤트 조건을 만족하는 지를 판단하여, 판단 결과에 따라서 상기 제1 미디어 수신 모듈 또는 제2 미디어 수신 모듈로 스트리밍 요청을 지시하고, 이에 따라 상기 제1 미디어 수신 모듈 또는 제2 미디어 수신 모듈로부터 출력되는 멀티미디어 데이터를 재생하는 재생 모듈을 포함하는 것을 특징으로 하는 저지연 생방송 컨텐츠 제공을 위한 장치를 제공한다.
더하여, 본 발명은 상술한 과제의 다른 해결 수단으로서, 임의의 채널에 대한 스트리밍 요청 이벤트가 발생하면, 저지연 생방송 모드로의 전환을 위한 이벤트 조건을 충족하는 지를 판단하는 단계; 판단 결과, 상기 이벤트 조건을 만족하지 않으면, 제1 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제1 스트리밍 서버로 스트리밍 요청을 전송하여, 상기 제1 스트리밍 서버로부터 전송된 스트리밍 데이터 패킷을 수신하여 디코딩하는 제1 수신 단계; 판단 결과, 상기 이벤트 조건을 만족하면, 제2 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제2 스트리밍 서버로 스트리밍 요청을 전송하여, 상기 제2 스트리밍 서버로부터 전송된 스트리밍 데이터 패킷을 수신하여 디코딩하는 제2 수신 단계; 제1 수신 단계 또는 제2 수신 단계에서 디코딩된 멀티미디어 데이터를 재생하는 단계를 포함하는 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체를 제공한다.
본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치 및 방법은 생방송 컨텐츠의 멀티미디어 데이터를 스트리밍 방식으로 전송하여 실시간으로 재생하는 컨텐츠 전송 시스템, 특히, 스트리밍을 수신하는 사용자 단말에 적용될 수 있다.
특히, 본 발명은 MPEG-TS에 기반한 HLS 방식으로 구현된 스트리밍 시스템 및 MMT 기술을 기반으로 한 스트리밍 시스템이 공존하는 환경에서, 사용자 요청 혹은 특정 채널로의 전환 요청에 따라서, HLS 방식의 스트리밍 서비스로부터 MMT 기반의 스트리밍 서비스로 전환하여, 저지연 생방송 컨텐츠를 선택적으로 제공할 수 있다.
그 결과, 본 발명은 기 구축된 레거시 시스템 및 MMT 기반의 새로운 시스템을 효율적으로 운용하면서, 사용자에게 제공되는 서비스 품질을 향상시킬 수 있다.
도 1은 본 발명의 제1 실시 예에 따른 저지연 생방송 컨텐츠 제공을 위한 시스템 구성을 나타낸 도면이다.
도 2는 본 발명의 제1 실시 예에 따른 저지연 생방송 컨텐츠 제공을 시스템의 동작 과정을 나타낸 흐름도이다.
도 3은 본 발명의 제2 실시 예에 따른 저지연 생방송 컨텐츠 제공을 위한 시스템 구성을 나타낸 도면이다.
도 4는 본 발명의 제2 실시 예에 따른 저지연 생방송 컨텐츠 제공을 시스템의 동작 과정을 나타낸 흐름도이다.
도 5는 본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 사용자 단말의 구성을 나타낸 블럭도이다.
도 6은 본 발명에 따른 사용자 단말에 적용되는 저지연 생방송 컨텐츠 제공을 위한 장치의 구성을 나타낸 블럭도이다.
도 7은 본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치의 동작을 나타낸 순서도이다.
도 8은 본 발명의 실시 예에 따라 사용자 단말로 제공되는 스트리밍 데이터 패킷을 모식화하여 나타낸 타이밍도이다.
도 9는 본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치에 의해 제공되는 사용자 인터페이스 화면의 예시도이다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.
더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
우선, 도 1 및 도 2는 본 발명의 실시 예들에 따른 저지연 생방송 컨텐츠 제공을 위한 시스템을 나타낸 블럭도이다.
도 1을 참조하면, 본 발명의 제1 실시 예에 따른 저지연 생방송 컨텐츠 제공을 위한 시스템은, 통신망(10)을 통해 연결된 사용자 단말(10)과 제1,2 스트리밍 서버(200, 300)을 포함하여 이루어진다.
여기서, 상기 통신망(10)은, 컴퓨터 시스템들 및/또는 모듈들 간의 전자 데이터를 전송할 수 있게 하는 하나 이상의 데이터 링크로서 정의되는 것으로서, 하나 이상의 서로 다른 통신망의 조합으로 이루어질 수 있다.
예를 들어, 상기 통신망(10)은 3G 이동통신망, 4G 이동통신망, WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access), 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등과 같은 유/무선 통신망을 포함할 수 있다.
특히, 상기 통신망(10)이 이동통신망인 경우, 다수의 무선 접속망 및 코어망으로 이루어질 수 있다. 여기서, 무선 접속망은 사용자 단말(101)과 무선 통신을 수행하는 접속망으로서, 예를 들어, BS(Base Station), BTS(Base Transceiver Station), NodeB, eNodeB 등과 같은 다수의 기지국과, BSC(Base Station Controller), RNC(Radio Network Controller)와 같은 기지국 제어기로 구현될 수 있다. 또한, 상기 기지국에 일체로 구현되어 있던 디지털 신호 처리부와 무선 신호 처리부를 각각 디지털 유니트(Digital Unit, 이하 DU라 함과 무선 유니트(Radio Unit, 이하 RU라 함)으로 구분하여, 다수의 영역에 각각 다수의 RU를 설치하고, 다수의 RU를 집중화된 DU와 연결하여 구성할 수도 있다.
또한, 무선 접속망과 함께 이동통신망을 구성하는 코어망은 접속망과 외부 망, 예컨대, 인터넷망을 연결하는 역할을 수행하는 것으로서, 서킷 교환(circuit switching) 또는 패킷 교환(packet switching)을 수행하며, 모바일 망 내에서의 패킷 흐름을 관리 및 제어한다. 또한, 코어망(미도시)은 주파수간 이동성을 관리하고, 접속망(미도시) 및 코어망(미도시) 내의 트래픽 및 다른 네트워크, 예컨대 인터넷망(미도시)과의 연동을 위한 역할을 수행할 수도 있다. 이러한 코어망(미도시)은 SGW(Serving GateWay), PGW(PDN GateWay), MSC(Mobile Switching Center), HLR(Home Location Register), MME(Mobile Mobility Entity)와 HSS(Home Subscriber Server) 등을 더 포함하여 구성될 수도 있다.
상기 사용자 단말(100)은 본 발명에 따라서 통신망(10)을 통해서 컨텐츠를 수신하여 재생하기 위한 구성으로서, 구체적으로, 통신망(10)에 접속하여, 통신을 위한 세션을 연결하고, 상기 세션을 통해서 제1 스트리밍 서버(200) 또는 제2 스트리밍 서버(300)로 멀티미디어 데이터의 스트리밍을 요청하고, 이에 대응하여 상기 제1 스트리밍 서버(200) 또는 제2 스트리밍 서버(300)로부터 스트리밍 데이터 패킷을 수신하여 재생한다.
특히, 본 발명에 있어서, 상기 사용자 단말(100)은, 사용자 조작에 따라서, 스트리밍 이벤트가 발생될 때, 상기 스트리밍 이벤트가 저지연 생방송 모드로의 전환을 위한 이벤트 조건을 만족하는 지에 따라서, 상기 제1 스트리밍 서버(200) 또는 제2 스트리밍 서버(300)와 연동한다. 즉, 본 발명에 따른 사용자 단말(100)은, 생방송 컨텐츠를 수신하여 재생할 때, 두 가지 모드로 동작 가능하다. 그중 제1 모드에서는, 제1 스트리밍 서버(200)로부터 생방송 컨텐츠의 멀티미디어 데이터를 스트리밍 받아 재생하는 것이고, 제2 모드는 제2 스트리밍 서버(300)로부터 생방송 컨텐츠의 멀티미디어 데이터를 스트리밍받아 재생한다. 상기 제2 모드를 저지연 생방송 모드라 한다. 그리고 상기, 저지연 생방송 모드로의 전환을 위한 이벤트 조건은, 기 설정된 모드 전환 버튼의 입력이거나, 기 설정된 특정 채널로의 채널 전환인 경우 충족될 수 있다.
이러한 사용자 단말(100)은 사용자의 키 조작에 따라 네트워크를 경유하여 각종 데이터를 송수신할 수 있는 전자기기라면 어느 것으로도 구현될 수 있으며, 이를 위하여, 프로그램 및 프로토콜을 저장하는 메모리, 각종 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등의 컴퓨팅 환경을 구비하고, 상기 컴퓨팅 환경을 기반으로 소정의 애플리케이션 프로그램 혹은 프로그램 모듈을 실행하여, 상술한 기능을 수행할 수 있다.
예를 들어, 상기 사용자 단말(100)은 태블릿 PC(Tablet PC), 랩톱(Laptop), 개인용 컴퓨터(PC: Personal Computer), 스마트폰(Smart Phone), 개인휴대용 정보단말기(PDA: Personal Digital Assistant), 스마트 TV 및 이동통신 단말기(Mobile Communication Terminal) 등 중 어느 하나일 수 있다.
제1,2 스트리밍 서버(200, 300)는 사용자 단말(100)의 요청에 따라서, 상기 사용자 단말(100)로 멀티미디어 데이터, 특히 생방송 컨텐츠의 멀티미디어 데이터를 스트리밍 서비스하기 위한 서버 장치이다. 이때, 제1,2 스트리밍 서버(200, 300)는 서로 상이한 미디어 전송 기술을 기반으로 상기 멀티미디어 데이터를 스트리밍 전송한다.
여기서, 스트리밍(Streaming)은 음악이나 동영상 등의 멀티미디어 파일을 하나의 형태가 아닌 여러 개의 스트리밍 데이터로 나누어 연이어 전송하면서 재생하는 방식으로서, 파일을 다운로드하는 것과 동시에 재생을 수행함으로써 사용자 대기 시간을 줄이면서, 컨텐츠의 실시간 제공 및 생방송 컨텐츠의 제공을 가능하게 한다.
이러한 스트리밍 전송은, UDP(User Datagram protocol)/TCP(Transmission Control Protocol)과 같은 전송 계층 프로토콜의 기반 위에, RTP(Real-time Transport Protocol), RTCP(Real-Time Transport Control Protocol), RTMP(Real Time Messaging Protocol), RTSP(Real Time Streaming Protocol), HLS(HTTP Live streaming), MPEG-TS, MMT(MPEG media transport)와 같은 미디어 데이터의 전송 및 제어를 위한 프로토콜중 하나 이상을 이용하여 동작할 수 있다
구체적으로, 제1 스트리밍 서버(200)는 기존의 MPEG-TS 및 HLS 기술을 기반으로 생방송 컨텐츠의 멀티미디어 데이터에 대한 조각화/캡슐화/패킷화를 수행하여 사용자 단말(100)로 전송한다. 특히, 상기 제1 스트리밍 서버(200)는 멀티미디어 데이터를 MPEG 2의 TS(Transport stream)에 담아 시간 단위로 쪼개어 전송하며, 어떤 파일을 재생해야 하는지에 대한 정보를 m3u8이라는 파일을 이용하여 사용자 단말(100)로 전송한다.
반면, 제2 스트리밍 서버(300)는 MPEG-H의 첫 번째 파트로서 제안된 MMT 기술을 기반으로 생방송 컨텐츠의 멀티미디어 데이터에 대한 조각화/캡슐화/패킷화를 수행하는 것으로서, 멀티미디어 데이터를 순수 미디어 데이터와 이들 미디어 데이터의 디코딩 및 재생을 위한 정보를 포함하는 메타데이터로 이루어진 하나 이상의 MPU로 구성하고, 상기 하나 이상의 MPU의 패킷화를 통해 헤더가 부가된 스트리밍 데이터 패킷을 생성하여 사용자 단말(100)로 전송한다. 여기서, MMT 기반의 스트리밍 전송 시, 상기 MPU별로 메타데이터가 포함되어 있어, 각 MPU를 독립적으로 디코딩 및 재생 처리 가능하다.
도 2는 본 발명의 제1 실시 예에 따른 저지연 생방송 컨텐츠 제공을 위한 시스템의 동작 과정을 나타낸 흐름도이다.
도 2를 참조하여, 상기 제1 실시 예에 따른 저지연 생방송 컨텐츠 제공을 시스템의 동작을 순차적으로 설명한다.
사용자 단말(100)은, 임의의 생방송 채널에 대한 스트리밍 요청을 제1 스트리밍 서버(200)로 전송할 수 있다(S105). 이때, 상기 임의의 생방송 채널은, 저지연 생방송 채널로 기 설정된 특정 채널을 제외한 나머지 생방송 채널을 의미할 수 있다. 이때, 사용자 단말(100)의 동작 모드로 제1 모드가 디폴트로 설정되어 있거나, 상기 특정 채널을 제외한 나머지 일반 생방송 채널이 디폴트 값으로 설정되어 있는 것으로 가정할 수 있다. 따라서, 상기 사용자 단말(100)은 최초 동작 시, 디폴트로 설정된 생방송 채널에 대해 스트리밍 요청을 제1 스트리밍 서버(200)로 전송한다.
이에, 제1 스트리밍 서버(200)는 HLS 프로토콜에 기반하여 MPEG-TS 형식의 스트리밍 데이터 패킷을 사용자 단말(100)로 전송한다(S110). 이때, 제공되는 스트리밍 데이터 패킷은, SD(Standard Definition), HD(High Definition)의 해상도를 지원할 수 있다.
사용자 단말(100)은 제1 스트리밍 서버(200)로부터 제공되는 스트리밍 데이터 패킷을 수신하여, 디코딩하여 재생한다(S115). 사용자는 이렇게 재생되어 화면으로 표시되는 생방송 컨텐츠를 시청할 수 있다.
아울러, 상기 사용자 단말(100)은 제1 스트리밍 서버(200)로부터 스트리밍 데이터 패킷을 수신하여 재생하는 중에, 지속적으로 제2 모드, 즉, 저지연 생방송(True real-time) 모드로의 전환 이벤트가 발생하는 지를 확인할 수 있다(S120). 구체적으로, 사용자 단말(100)은 기 설정된 모드 전환 버튼이 입력되거나, 저지연 생방송 모드로 기 설정된 특정 채널로의 채널 전환이 요청되었는 지를 확인한다.
확인 결과, 저지연 생방송 모드로의 전환 이벤트가 발생하면, 사용자 단말(100)로는 저지연 생방송 컨텐츠 모드로 모드 전환이 이루어짐을 안내하고, 아울러, 네트워크 상태에 따라서 서비스가 이루어지지 못할 수도 있음을 안내하는 안내 메시지를 더 출력할 수 있다(S125).
이후, 상기 사용자 단말(100)은, 제2 스트리밍 서버(300)로 스트리밍 요청을 전송한다(S130). 여기서, 상기 스트리밍 요청 대상이 되는 채널은, 모드 전환 버튼이 입력된 경우에는 현재 재생중인 채널(혹은 프로그램)이 될 수 있으며, 상기 특정 채널로의 전환 요청인 경우에는 상기 특정 채널이 된다.
상기 제2 스트리밍 서버(300)는 사용자 단말(100)의 요청에 따라서 요청된 생방송 컨텐츠의 멀티미디어 데이터를 MMT 기술에 기반하여 다수의 조각으로 분할하고, 분할된 조각 파일을 메타 데이터를 포함하는 하나 이상의 MPU로 캡슐화하고, 이어 헤더를 부가하는 스트리밍 데이터 패킷을 구성하여, 사용자 단말(100)로 전송한다(S135). 이때, 상기 스트리밍 데이터 패킷은 UDP를 기반으로 전송될 수 있다.
상기 사용자 단말(100)은, MMT 기술에 기반하여 수신된 스트리밍 데이터 패킷의 디캡슐화 및 디코딩을 수행하여, 화면으로 재생한다(S140). 이때, 상기 S140 단계의 처리는 MPU 단위로 독립적으로 이루어질 수 있으며, 아울러, 사용자 단말(100)의 각 MPU에 포함된 메타데이터에 기반하여 지정된 시간 및 공간에 재생함으로써, 지연을 최소화할 수 있다.
아울러, 상기 사용자 단말(100)은, 제2 모드로 저지연 생방송 컨텐츠를 재생하는 동안, 서비스 끊김 여부를 지속적으로 감지한다(S145). 상기 서비스 끊김 여부는 사용자 단말(100)이 수신된 스트리밍 데이터 패킷을 저장하는 버퍼의 상태를 감지하여 확인할 수 있다. 즉, 버퍼링된 데이터량이 일정 임계치 이하로 떨어지는 경우, 서비스 끊김이 발생되는 것으로 예측할 수 있다.
이렇게 서비스 끊김이 감지되면, 사용자 단말(100)은 버퍼의 사이즈를 증가시키면서, 전송 계층 프로토콜을 TCP 방식으로 전환한다(S150).
아울러, TCP 기반의 패킷 송수신을 위하여, 제2 스트리밍 서버(300)로 TCP 방식으로의 전환을 요청하여, 제2 스트리밍 서버(300)와의 연결을 수립할 수 있다(S155).
이어, 상기 제2 스트리밍 서버(300)는, 해당 스트리밍 데이터 패킷을 이후 TCP 방식을 기반으로 전송한다(S160).
여기서, UDP 방식은, 비연결형 프로토콜로서 데이터 전달을 위해 근원지와 목적지 간의 세션을 수립하는 과정이 없으며, 최선 노력(Best effort) 방식으로서 실시간 데이터 전달을 위해 에러/손실 발생시 재전송을 수행하지 않는 것으로서, 신뢰성이 떨어지는 대신 속도가 빨라 실시간성이 요구되는 경우에 적합한 방식이다. 한편, TCP 방식은 연결지향성 프로토콜로서 근원지에서 목적지까지 세션을 수립한 후 데이터를 송신하는 방식으로, 보다 안전하게 데이터를 전송할 수 있는 반면 UDP 방식에 비하여 오버헤드가 크다는 점에서 차이가 있다.
본 발명은 이러한 차이점을 고려함으로써, 기본적으로 UDP 방식을 기반으로 스트리밍 데이터 패킷을 전송함으로써 안정적으로 서비스가 이루어지는 동안은 빠른 속도로 스트리밍 데이터 패킷을 전송하다가, 서비스 끊김이 감지되거나 예측되는 경우, TCP 방식으로 전환하여 안정적인 서비스가 유지될 수 있도록 하는 것이다.
TCP 방식으로 전환함으로써 보다 신뢰성있게 스트리밍 데이터 패킷을 전송할 수 있게 된다.
다음으로, 도 3 및 도 4를 참조하여, 본 발명의 제2 실시 예에 따른 저지연 생방송 컨텐츠 제공을 위한 시스템의 구성 및 동작을 설명한다.
도 3은 본 발명의 제2 실시 예에 따른 저지연 생방송 컨텐츠의 제공을 위한 시스템을 도시한 블럭도이다.
본 발명의 제2 실시 예에 따른 시스템은, 사용자 단말(100) 및 제1,2 스트리밍 서버(200, 300)에 더하여 중계 서버(400)를 더 포함한다.
본 발명의 제2 실시 예에 따른 사용자 단말(100)은 중계 서버(400)에 접속하고, 상기 중계 서버(400)를 통해서 제1,2 스트리밍 서버(200, 300)에 접근할 수 있다. 구체적으로, 사용자 단말(100)은 중계 서버(400)에 접속하여 스트리밍 요청을 수행하되, 저지연 생방송 모드(제2 모드)로의 전환을 위한 이벤트 조건을 만족하는 지를 확인하고, 이벤트 조건 만족시, 저지연 생방송 모드를 요청하기 위한 정보를 함께 전송할 수 있다. 상기 저지연 생방송 모드를 요청하기 위한 정보는, 스트리밍 요청 메시지의 헤더내 특정 필드의 값으로 표시되거나, 채널 정보로 표시될 수 있다.
이러한 사용자 단말(100)의 스트리밍 요청을 수신한 중계 서버(400)는 상기 스트리밍 요청을 분석하여, 저지연 생방송 모드인지 여부를 판단하고, 그 판단 결과에 따라서 상기 스트리밍 요청을 제1 스트리밍 서버(200) 또는 제2 스트리밍 서버(300)로 전달한다. 예를 들어, 상기 중계 서버(400)는 기 설정된 특정 채널에 대한 스트리밍 요청이거나, 스트리밍 요청의 헤더내 특정 필드에 저지연 생방송 모드 정보가 기록된 경우, 상기 스트리밍 요청을 제2 스트리밍 서버(300)로 전달하고, 그 외는 제1 스트리밍 서버(200)로 전달한다.
이외에 제1,2 스트리밍 서버(200, 300)의 동작은 중계 서버(400)를 거쳐 사용자 단말(100)로 스트리밍 데이터 패킷을 전송한다는 점에서만 차이가 있을 뿐이며, 그 외의 제1 실시 예와 동일하다.
도 4는 상술한 본 발명의 제2 실시 예에 따른 시스템이 동작을 나타낸 흐름도로서, 이를 참조하여 제2 실시 예에 따른 저지연 생방송 컨텐츠 제공 과정을 설명한다.
앞서 제1 실시 예에서와 마찬가지로, 사용자 단말(100)은, 임의의 생방송 채널에 대한 스트리밍 요청을 전송할 수 있다. 이때, 상기 사용자 단말(100)의 스트리밍 요청은, 중계 서버(400)로 전송된다(S205). 다만, 본 발명의 제2 실시 예에서, 상기 스트리밍 요청은, 제2 모드(저지연 생방송 모드)모드로의 전환 여부를 나타내는 정보를 포함한다. 상기 정보는 예를 들어, 헤더의 특정 필드에 기록되거나, 생방송 채널(혹은 프로그램) 정보로 대체될 수 있다.
상기 S205 단계에서는, 저지연 생방송 모드로의 전환을 요청하지 않거나, 임의의 생방송 채널이 저지연 생방송 채널로 기 설정된 특정 채널을 제외한 나머지 생방송 채널인 것으로 가정한다.
이때, 중계 서버(400)는 사용자 단말(100)의 스트리밍 요청을 수신하면, 수신된 스트리밍 요청에 포함된 정보를 근거로 제1 모드인지 제2 모드(저지연 생방송 모드)인지를 판별한다. 구체적으로 저지연 생방송 모드로의 전환을 요청하는 정보가 포함되어 있거나, 요청된 생방송 채널이 저지연 생방송 채널로 기 설정된 특정 채널인 경우, 제2 모드로 판단한다.
따라서, 상기 중계 서버(400)는 S205 단계의 스트리밍 요청을 제1 모드의 스트리밍 요청으로 판단하여, 제1 스트리밍 서버(200)로 전달한다(S210).
이에, 제1 스트리밍 서버(200)는 HLS 프로토콜에 기반하여 MPEG-TS 형식의 스트리밍 데이터 패킷을 중계 서버(400)를 통해서 사용자 단말(100)로 전송한다(S215). 이때, 제공되는 스트리밍 데이터 패킷은, SD(Standard Definition), HD(High Definition)의 해상도를 지원할 수 있다.
사용자 단말(100)은 이후, S220 단계 내지 S230단계는 도 2에 도시된 제2 실시 예의 S115단계 내지 S125단계와 동일하게 이루어진다.
그리고, S225단계에서 제2 모드(저지연 생방송 모드)로의 전환을 요청하는 이벤트가 발생한 경우, 상기 사용자 단말(100)은, 중계 서버(400)로 스트리밍 요청을 전송하는데, 상기 스트리밍 요청은, 제2 모드(저지연 생방송 모드)로의 전환을 요청하는 정보가 포함되거나, 저지연 생방송 모드로 설정된 특정 채널의 채널 정보를 포함한다.
따라서, 상기 중계 서버(400)는 수신된 스트리밍 요청을 분석하여, 제2 모드(저지연 생방송 모드)이므로, 상기 스트리밍 요청을 제2 스트리밍 서버(300)로 전달한다(S240).
상기 제2 스트리밍 서버(300)는 사용자 단말(100)에서 요청한 생방송 컨텐츠의 멀티미디어 데이터를 MMT 기술에 기반하여 스트리밍 데이터 패킷을 생성하여, 중계 서버(400)를 통해서 사용자 단말(100)로 전송한다(S245). 이때, 상기 스트리밍 데이터 패킷은 UDP를 기반으로 전송될 수 있다.
이후, 상기 사용자 단말(100)에 의한 S250단계 내지 S270단계는 제1 실시 예(도 2)의 S140단계 내지 S160단계와 동일하게 이루어지며, 다만 S265단계 및 S270단계의 처리가 중계 서버(400)를 통해 이루어진다는 점에서만 차이가 있다.
상술한 제2 실시 예에 따르면, 사용자 단말(100)은 중계 서버(400)와만 통신을 수행하므로, 사용자 단말(100)의 입장에서 동작이 보다 단순해 질 수 있다.
이하, 본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치의 구성 및 동작을 설명한다.
본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치는, 사용자 단말(100)에 구비되어, 상기 사용자 단말(100)의 컴퓨팅 환경을 기반으로 동작할 수 있다.
본 발명이 적용되는 사용자 단말(100)은 도 5에 도시된 바와 같이, 통신부(110), 입력부(120), 출력부(130), 저장부(140) 및 제어부(150)를 포함한다.
상기 통신부(110)는 통신망(10)을 통해서 외부 장치, 예를 들어, 제1,2 스트리밍 서버(200,300) 또는 중계 서버(400)와 데이터를 송수신하기 위한 구성이다.
따라서, 상기 통신부(110)는 통신망(10)의 종류에 따라서, 유선 방식 및 무선 방식뿐만 아니라 다양한 통신 방식을 통해서 데이터를 처리할 수 있다. 이를 위하여 통신부(110)는 각각 서로 다른 통신 방식에 따라서 데이터를 송수신하는 복수의 통신 모듈을 포함할 수 있다.
입력부(120)는 사용자 명령 혹은 데이터를 입력하기 위한 수단으로서, 사용자 조작에 따라서 숫자, 문자, 및 기호를 포함하는 다양한 입력 데이터를 생성하여 제어부(150)로 전달하고, 또한 사용자 조작에 따라서 사용자 단말(100)의 기능 설정 및 기능 제어와 관련된 명령을 제어부(150)로 전달한다. 이러한 입력부(12)는 사용자의 조작에 따라 입력 신호를 발생하는 키패드와 터치패드 중 적어도 하나를 포함하여 구성될 수 있다. 또한, 입력부(120)는 키보드, 키패드, 마우스, 조이스틱 등과 같은 입력 장치 외에도 향후 개발될 수 있는 모든 형태의 입력 수단으로 구현될 수 있다. 본 발명에 있어서, 사용자는 상기 입력부(120)를 조작하여 스트리밍 요청을 입력하거나 채널 전환 등을 요청할 수 있다.
출력부(130)는 기본적으로, 사용자 단말(100)의 동작에 따라 발생되는 정보를 사용자가 시각, 청각, 또는, 촉각으로 인지할 수 있도록 출력하기 위한 수단이다. 출력부(130)는 시각적인 정보를 출력하는 표시 장치, 청각적인 정보를 출력하는 오디오 장치(스피커), 촉각적인 정보를 출력하는 햅틱 장치 등을 포함할 수 있다. 표시 장치는 터치스크린(touch screen)이 될 수 있으며, 이와 같이, 터치스크린 형태로 표시 장치가 형성된 경우, 표시 장치는 입력부(120)의 기능 중 일부 또는 전부를 수행할 수 있다. 오디오 장치는 대표적으로 스피커를 예시할 수 있다. 특히, 본 발명의 실시 예에 따른 출력부(130)는 생방송 컨텐츠의 재생 화면 및 소리를 출력할 수 있다. 이때, 상기 재생 화면이 출력되는 사용자 인터페이스 화면에는 저지연 생방송 모드로의 전환을 요청하기 위한 모드 전환 버튼이 더 출력될 수 있다.
저장부(140)는 사용자 단말(100)의 동작에 필요한 프로그램 및 데이터를 저장하기 위한 구성이다. 저장부(13)는, 기본적으로 단말 장치(10)의 운영(OS: Operating System) 프로그램이 저장되며, 더불어, 상기 OS 환경을 기반으로 동작하는 하나 이상의 애플리케이션 및 그의 실행에 필요하거나 실행 중에 생성된 데이터를 저장할 수 있다. 상기 저장부(140)는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리를 포함할 수 있다. 특히, 상기 저장부(140)는 본 발명의 실시 예에 따른 기능을 실행하도록 구현된 프로그램 모듈을 저장한다.
마지막으로, 제어부(150)는 사용자 단말(100)의 전반적인 동작을 제어하고 소정 기 위한 구성으로서, 제어부(150)는 마이크로프로세서 혹은 CPU 등과 같은 프로세서를 포함하여 구현될 수 있다. 이러한 제어부(150)는 전원 온 시, 먼저 저장부(140)에 저장된 OS 프로그램을 실행하여, 실행 환경을 구축하고, 이를 기반으로 입력부(120)로부터 전달된 사용자 명령에 따라서 하나 이상의 애플리케이션 또는 프로그램을 실행하여, 소정의 기능 혹은 서비스를 사용자에게 제공할 수 있다. 특히, 본 발명에 따른 사용자 단말(100)의 제어부(150)는 본 발명에 따른 기능을 수행하도록 구현되어 상기 저장부(140)에 저장된 하나 이상의 프로그램 모듈을 실행하여 본 발명에 따른 기능을 수행한다.
도 6은 상술한 사용자 단말(100)에 적용되는 저지연 생방송 컨텐츠 제공을 위한 장치의 구성을 나타낸 블럭도이다.
도 6을 참조하면, 본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치는, 제1 미디어 수신 모듈(151)과, 제2 미디어 수신 모듈(152) 및 재생 모듈(153)을 포함할 수 있다. 여기서, '모듈'은 각각 소정의 기능을 수행하는 구성 요소로서, 하드웨어, 소프트웨어, 혹은 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 예를 들어, 상기 '모듈'은 프로그램 모듈을 의미할 수 있으며, 이는 프로세서(Processor), 즉 제어부(150)에 의해 실행되어 소정의 기능을 수행한다.
아울러, 프로그램 모듈은, 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 또한, 프로그램 모듈은, 반드시 파일 시스템의 파일에 대응하는 것은 아니다. 즉, 프로그램 모듈은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 또한, 분산 컴퓨팅 환경에서, 상기 프로그램 모듈은, 로컬 저장 매체 및 원격 저장 매체에 분산 저장될 수 있다. 즉, 본 발명의 실시 예에서, 본 발명에 따른 프로그램 모듈들은, 사용자 단말(100), 제1,2 스트리밍 서버(200,300), 및 중계 서버(400)에 분산 저장되어 실행될 수 있다.
상기 제1 미디어 수신 모듈(151)은, 제1 미디어 전송 기술에 기반하여 스트리밍 데이터 패킷을 처리하기 위한 구성이다. 본 발명의 실시 예에서, 상기 제1 미디어 전송 기술은 HLS이다. 따라서, 상기 제1 미디어 수신 모듈(151)은, 상기 제1 스트리밍 서버(200)로부터 전송된 생방송 컨텐츠의 멀티미디어 데이터에 대한 스트리밍 데이터 패킷을 수신하고, 수신된 스트리밍 데이터 패킷을 통해 전달된 MPEG 2의 TS(Transport stream)를 분석 및 디코딩하여 멀티미디어 데이터를 복원한다.
이때, 상기 제1 미디어 수신 모듈(151)은 제1 스트리밍 서버(200)로부터 전송된 m3u8 이라는 재생하여야 할 파일 정보를 수신하고, 이를 기반으로 제1 스트리밍 서버(200)로부터 TS를 순차적으로 수신하여 상술한 처리를 수행한다.
다음으로, 제2 미디어 수신 모듈(152)은 제2 미디어 전송 기술에 기반하여 스트리밍 데이터 패킷을 처리하기 위한 구성이다. 본 발명의 실시 예에서, 제2 미디어 전송 기술은, MPEG-H의 첫 번째 파트로서 제안된 MMT이다.
즉, 상기 제2 미디어 수신 모듈(152)는 제2 스트리밍 서버(300)로부터 전송된 스트리밍 데이터 패킷을 수신하고, 상기 스트리밍 데이터 패킷의 헤더를 분석하여 페이로드에 실린 MPU를 추출하고, 상기 MPU에 포함된 메타데이터를 참고하여 전송된 멀티미디어 데이터를 디코딩한다.
재생 모듈(153)은 입력부(120)를 통해 입력된 입력 신호에 따라 동작하여, 상기 제1 미디어 수신 모듈(151) 또는 제2 미디어 수신 모듈(153)로부터 출력되는 멀티미디어 데이터를 재생하기 위한 구성이다. 여기서, 재생은 상기 멀티미디어 데이터를 시간적 및 공간적으로 배치하여 시각/청각 정보로 출력하는 것을 의미한다. 이때, 상기 재생 모듈(153)은, 멀티미디어 컨텐츠의 이용과 관련하여 도 9과 같은 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통해 입력된 입력 신호에 따라서 멀티미디어 데이터의 재생/일시정지/정지 등의 동작을 제어할 수 있다.
재생 모듈(153)은 상기 사용자 인터페이스를 통해서 스트리밍 요청이 발생하면, 상기 스트리밍 요청이 저지연 생방송 모드로의 전환을 위한 이벤트 조건을 만족하는 지를 판단하고, 판단 결과에 따라서 제1 미디어 수신 모듈(151) 또는 제2 미디어 수신 모듈(152)로 스트리밍 요청을 지시한다.
예를 들어 설명하면, 상기 재생모듈(153)은, 상기 사용자 인터페이스로서, 재생 화면과 함께 제2 모드(저지연 생방송 모드)로의 전환을 요청하기 위한 모드 전환 버튼(93)이 선택되면, 저지연 생방송 모드로의 전환 이벤트가 발생한 것으로 판단하여, 제2 미디어 수신 모듈(152)로 해당 채널에 대한 스트리밍 요청을 지시하고, 상기 모드 전환 버튼(93)이 선택되지 않으면, 제1 미디어 수신 모듈(151)로 스트리밍 요청을 지시한다. 참고로, 도 9에 도시된 사용자 인터페이스 중, 버튼 92는 제1 모드를 선택하거나 표시하기 위한 것이다.
상술한 재생 모듈(153)의 지시에 따라서, 제1,2 미디어 수신 모듈(151, 152)은 제1,2 스트리밍 서버(200, 300)로 스트리밍 요청을 전송하거나, 중계 서버(400)를 통해 제1,2 스트리밍 서버(200, 300)로 스트리밍 요청을 전송하여, 상기 제1,2 스트리밍 서버(200, 300)로부터 각각의 미디어 전송 기술에 기반한 스트리밍 데이터 패킷을 수신할 수 있게 된다.
상기 제1,2 미디어 수신 모듈(151, 152)은 사용자 단말(100)의 통신부(110)를 통해서 통신망(10)으로 스트리밍 요청을 전송하고 이에 대응하는 스트리밍 데이터 패킷을 수신할 수 있다.
상술한 바와 같이 구성된 저지연 생방송 컨텐츠 제공을 위한 장치의 동작을 도 7의 순서도를 참조하여 동작 수순에 따라 설명한다.
도 7을 참조하면, 본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치의 재생 모듈(153)은, 멀티미디어 데이터의 재생을 위한 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통한 스트리밍 요청 이벤트의 발생을 확인할 수 있다(S305). 이때, 스트리밍 요청 이벤트는, 상기 재생 모듈(153)이 처음 동작하여, 디폴트로 설정된 채널 혹은 이전에 재생하던 채널의 멀티미디어 데이터를 수신하여 재생하고자 할 때, 사용자가 임의의 채널을 선택하여 채널 전환을 요청할 때, 도 9에 도시된 바와 같은, 모드 전환 버튼(93)이 선택될 때 발생할 수 있다.
이렇게 스트리밍 요청 이벤트가 발생하면, 상기 재생 모듈(153)은 제2 모드(저지연 생방송 모드)로의 모든 전환을 위한 이벤트 조건을 충족하는 지를 판단한다(S310). 상기 이벤트 조건은, 사용자 인터페이스를 통해 저지연 생방송 모드로의 전환을 지시하는 모든 전환 버튼(93)이 선택되거나, 스트리밍 요청되는 채널이 저지연 생방송 모드로 기 설정된 특정 채널인 경우 충족될 수 있다.
상기 판단 결과, 이벤트 조건을 충족하지 않으면, 재생 모듈(153)은 제1 미디어 수신 모듈(151)로 해당 채널의 스트리밍을 요청하고, 이에 제1 미디어 수신 모듈(151)이 직접 혹은 중계 서버(400)를 통해서 제1 스트리밍 서버(200)로 스트리밍을 요청하고(S315), 이에 상기 제1 스트리밍 서버(200)가 전송한 스트리밍 데이터 패킷을 수신하여 재생한다(S320). 이때, 제1 미디어 수신 모듈(151)에 의해 수신되는 스트리밍 데이터 패킷은 도 8의 (a)와 같이 HLS에 기반하여 MPEG-TS를 포함한다.
반대로 상기 판단 결과, 이벤트 조건을 충족하는 경우, 재생 모듈(153)은 제2 미디어 수신 모듈(152)로 해당 채널의 스트리밍을 요청하고, 이에 제2 미디어 수신 모듈(152)은 직접 혹은 중계 서버(400)를 통해서 제2 스트리밍 서버(300)로 스트리밍을 요청하고(S325), 이에 상기 제2 스트리밍 서버(300)가 전송한 스트리밍 데이터 패킷을 수신하여 재생한다(S330). 상기 제2 미디어 수신 모듈(152)에 의해 수신되는 스트리밍 데이터 패킷은 도 8의 (b)와 같이, MMT에 기반한 MPU를 포함한다. 여기서, 상기 제2 스트리밍 서버(300)로부터의 스트리밍 데이터 패킷의 수신은 UDP 기반으로 이루어진다.
이때, 본 발명에 따른 장치는, 제2 스트리밍 서버(300)로부터 스트리밍 데이터 패킷을 수신하여 재생하는 동안, 버퍼 상태를 체크함에 의해 끊김 현상이 발생하는 지를 확인하고(S335), 확인 결과, 끊김 현상이 발생할 것으로 예측되거나 감지된 경우, 버퍼 사이즈 조정 및 TCP로의 전환을 수행한다(S340). 이는 상기 제2 미디어 수신 모듈(152)에 의해 수행될 수 있다. 즉, 제2 미디어 수신 모듈(152)이 지속적으로 버퍼 상태를 체크하여 끊김 현상이 발생할 것인지를 확인하고, 발생할 것으로 예측되거나 감지되면, 스트리밍 데이터 패킷을 저장하는 버퍼의 사이즈를 증가시키고, 아울러, 스트리밍 데이터 패킷을 수신하기 위한 전송 계층 프로토콜을 TCP 방식으로 전환한다. 이때, TCP 방식으로의 전환은 사용자 단말(100)의 통신부(110)를 통해서 제2 스트리밍 서버(300)와 연동하여 이루어질 수 있다. 즉, 상기 통신부(110)를 통해서 제2 스트리밍 서버(300)와의 TCP 연결을 수립한다.
이후, 제2 미디어 수신 모듈(152)는 TCP 기반으로 제2 스트리밍 서버(300)로부터 스트리밍 데이터 패킷을 수신하여 디코딩하고, 이렇게 획득된 멀티미디어 데이터는 재생 모듈(153)을 통해서 재생된다(S345).
즉, 본 발명에 따른 장치는, 사용자가 임의의 채널, 더 구체적으로는 도 8의 (a)에 도시된 바와 같이 HLS/MPEG-TS 기반의 멀티미디어 데이터를 수신하여 재생하는 중에, 모드 전환 버튼(93)을 누르거나, 저지연 생방송 모드로 기 설정된 특정 채널로의 전환을 요청하면, HLS의 m3u8의 리스트가 수신되는 시점에서 모드 전환되어, 도 8의 (b)에 도시된 바와 같이, 해당 시점에 대응하는 MPU2부터 수신하여 재생할 수 있다.
이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.
비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. 예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
본 발명에 따른 저지연 생방송 컨텐츠 제공을 위한 장치 및 방법은 생방송 컨텐츠의 멀티미디어 데이터를 스트리밍 방식으로 전송하여 실시간으로 재생하는 컨텐츠 전송 시스템, 특히, 스트리밍을 수신하는 사용자 단말에 적용될 수 있다.
특히, 본 발명은 MPEG-TS에 기반한 HLS 방식으로 구현된 스트리밍 시스템 및 MMT 기술을 기반으로 한 스트리밍 시스템이 공존하는 환경에서, 사용자 요청 혹은 특정 채널로의 전환 요청에 따라서, HLS 방식의 스트리밍 서비스로부터 MMT 기반의 스트리밍 서비스로 전환하여, 저지연 생방송 컨텐츠를 선택적으로 제공할 수 있다.
그 결과, 본 발명은 기 구축된 레거시 시스템 및 MMT 기반의 새로운 시스템을 효율적으로 운용하면서, 사용자에게 제공되는 서비스 품질을 향상시킬 수 있다.

Claims (8)

  1. 제1 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제1 스트리밍 서버로부터 스트리밍 데이터 패킷을 수신하여 디코딩하는 제1 미디어 수신 모듈;
    제2 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제2 스트리밍 서버로부터 스트리밍 데이터 패킷을 수신하여 디코딩하는 제2 미디어 수신 모듈; 및
    생방송 컨텐츠의 재생을 위한 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통해 임의 채널에 대한 스트리밍 요청 이벤트가 발생하면, 저지연 생방송 모드로의 전환을 위한 이벤트 조건을 만족하는 지를 판단하여, 판단 결과에 따라서 상기 제1 미디어 수신 모듈 또는 제2 미디어 수신 모듈로 스트리밍 요청을 지시하고, 이에 따라 상기 제1 미디어 수신 모듈 또는 제2 미디어 수신 모듈로부터 출력되는 멀티미디어 데이터를 재생하는 재생 모듈을 포함하는 것을 특징으로 하는 저지연 생방송 컨텐츠 제공을 위한 장치.
  2. 제1항에 있어서, 상기 재생 모듈은
    상기 사용자 인터페이스를 통해 제공된 저지연 생방송 모드로의 전환을 지시하는 모든 전환 버튼이 선택되거나, 상기 임의 채널이 저지연 생방송 모드로 기 설정된 특정 채널인 경우 이벤트 조건을 충족하는 것으로 판단하는 것을 특징으로 하는 저지연 생방송 컨텐츠 제공을 위한 장치.
  3. 제1항에 있어서, 상기 제2 미디어 수신 모듈은
    제2 스트리밍 서버로부터 스트리밍 데이터 패킷을 수신하는 동안, 버퍼 상태를 확인하여 끊김 현상의 발생을 감지하거나 예측하고, 끊김 현상의 발생이 감지되거나 예측되면, 버퍼 사이즈를 조정하는 것을 특징으로 하는 저지연 생방송 컨텐츠 제공을 위한 장치.
  4. 제1항에 있어서, 상기 제2 미디어 수신 모듈은
    UDP 기반으로 상기 스트리밍 데이터 패킷을 수신하다가, 상기 끊김 현상의 발생이 감지되거나 예측되면, TCP 방식으로 전환하여, 상기 스트리밍 데이터 패킷을 수신하는 것을 특징으로 하는 저지연 생방송 컨텐츠 제공을 위한 장치.
  5. 임의의 채널에 대한 스트리밍 요청 이벤트가 발생하면, 저지연 생방송 모드로의 전환을 위한 이벤트 조건을 충족하는 지를 판단하는 단계;
    판단 결과, 상기 이벤트 조건을 만족하지 않으면, 제1 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제1 스트리밍 서버로 스트리밍 요청을 전송하여, 상기 제1 스트리밍 서버로부터 전송된 스트리밍 데이터 패킷을 수신하여 디코딩하는 제1 수신 단계;
    판단 결과, 상기 이벤트 조건을 만족하면, 제2 미디어 전송 기술을 기반으로 스트리밍 서비스를 제공하는 제2 스트리밍 서버로 스트리밍 요청을 전송하여, 상기 제2 스트리밍 서버로부터 전송된 스트리밍 데이터 패킷을 수신하여 디코딩하는 제2 수신 단계;
    제1 수신 단계 또는 제2 수신 단계에서 디코딩된 멀티미디어 데이터를 재생하는 단계를 포함하는 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  6. 제5항에 있어서, 상기 판단하는 단계는
    저지연 생방송 모드로의 전환을 지시하는 모든 전환 버튼이 선택되거나, 상기 임의의 채널이 저지연 생방송 모드로 기 설정된 특정 채널인 경우, 이벤트 조건을 충족하는 것으로 판단하는 것을 특징으로 하는 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  7. 제5항에 있어서,
    제2 스트리밍 서버로부터 스트리밍 데이터 패킷을 수신하는 동안, 버퍼 상태를 기반으로 끊김 현상이 발생하는 지 확인하는 단계; 및
    끊김 현상이 확인되면, 상기 제2 스트리밍 서버로부터 수신한 스트리밍 데이터 패킷을 저장하는 버퍼 사이즈를 조정하는 단계를 더 포함하는 것을 특징으로 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  8. 제7항에 있어서,
    상기 끊김 현상이 확인되면, 스트리밍 데이터 패킷의 전송 계층 프로토콜을 UDP 방식에서 TCP 방식으로 전환하는 단계를 더 포함하는 것을 특징으로 하는 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
PCT/KR2016/001460 2015-02-13 2016-02-13 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치 WO2016129966A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017554232A JP6430034B2 (ja) 2015-02-13 2016-02-13 低遅延生放送コンテンツ提供のためのプログラムを記録した記録媒体及び装置
CN201680004890.0A CN107113474B (zh) 2015-02-13 2016-02-13 具有记录在其中以用于提供低延迟实时广播内容的程序的设备和计算机可读记录介质
US15/622,539 US10148725B2 (en) 2015-02-13 2017-06-14 Apparatus and computer-readable recording medium having program recorded therein for providing low-latency real-time broadcast content

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150022327A KR102111572B1 (ko) 2015-02-13 2015-02-13 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치
KR10-2015-0022327 2015-02-13

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/622,539 Continuation US10148725B2 (en) 2015-02-13 2017-06-14 Apparatus and computer-readable recording medium having program recorded therein for providing low-latency real-time broadcast content

Publications (1)

Publication Number Publication Date
WO2016129966A1 true WO2016129966A1 (ko) 2016-08-18

Family

ID=56615318

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/001460 WO2016129966A1 (ko) 2015-02-13 2016-02-13 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치

Country Status (5)

Country Link
US (1) US10148725B2 (ko)
JP (1) JP6430034B2 (ko)
KR (1) KR102111572B1 (ko)
CN (1) CN107113474B (ko)
WO (1) WO2016129966A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109691120A (zh) * 2016-09-06 2019-04-26 麦克赛尔株式会社 广播接收***

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11178204B1 (en) * 2017-02-23 2021-11-16 Cox Communications, Inc. Video processor to enhance color space and/or bit-depth
EP3648422B1 (en) * 2017-06-29 2022-03-16 Sony Group Corporation Communication system and control device
CN110138513B (zh) * 2019-03-26 2020-12-29 视联动力信息技术股份有限公司 一种数据传输方法和视联网***
KR20220048670A (ko) * 2020-10-13 2022-04-20 삼성전자주식회사 전자 장치 및 그 동작 방법
KR102475023B1 (ko) * 2021-05-13 2022-12-08 주식회사 날다 드론을 이용한 실시간 여행 서비스 제공 시스템
CN114697882B (zh) * 2022-04-27 2024-06-25 上海寰创通信科技股份有限公司 一种无人驾驶场景下的列车实时广播***及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012099359A2 (ko) * 2011-01-19 2012-07-26 삼성전자 주식회사 복수의 실시간 전송 스트림을 수신하는 수신 장치와 그 송신 장치 및 멀티미디어 컨텐츠 재생 방법
KR20130112576A (ko) * 2012-04-04 2013-10-14 (주)휴맥스 이벤트를 기반으로 하는 콘텐트 재생 방법, 장치 및 시스템
KR20140048917A (ko) * 2014-03-26 2014-04-24 주식회사 비즈모델라인 적응형 스트리밍 방법
KR101397332B1 (ko) * 2007-06-28 2014-05-19 복서 아이피 엘엘씨 통신 애플리케이션이 기록된 컴퓨터 판독가능한 매체
KR20140099778A (ko) * 2013-02-04 2014-08-13 삼성전자주식회사 휴대 단말기의 무선 통신 채널 운용 방법 및 시스템

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4008734B2 (ja) * 2001-03-29 2007-11-14 松下電器産業株式会社 データ再生装置及び携帯電話機
EP1675343A1 (en) * 2004-12-23 2006-06-28 Siemens S.p.A. Method and system to minimize the switching delay between two RTP multimedia streaming sessions
GB2422515B (en) * 2005-01-21 2009-05-27 King S College London A method of discovering multi-mode mobile terminals
CN101252496B (zh) * 2008-04-01 2011-03-16 北京创毅视讯科技有限公司 一种多媒体网络传输***、终端和方法
EP2556439A4 (en) * 2010-04-08 2015-03-04 Vasona Networks CONTINUOUS BANDWIDTH MANAGEMENT FOR MULTIPLE CUSTOMERS
US9553912B2 (en) * 2011-01-19 2017-01-24 Electronics And Telecommunications Research Institute Method and apparatus for transmitting media content via a single port or multiple ports
US20130067109A1 (en) * 2011-09-12 2013-03-14 Tektronix, Inc. Monitoring Over-the-Top Adaptive Video Streaming
US9843844B2 (en) * 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
CN104094561B (zh) * 2011-12-01 2017-12-12 汤姆逊许可公司 通过根据可用带宽选择传输协议来获得内容的设备
KR20130078643A (ko) * 2011-12-30 2013-07-10 한국전자통신연구원 Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 mmt 제어 계층 시그널링을 이용한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법
KR20130119885A (ko) 2012-04-24 2013-11-01 한국전자통신연구원 네트워크 적응적인 계층적 비디오 전송을 위한 mmt 패킷의 전송 방법 및 장치
CN103248956B (zh) * 2013-05-20 2016-12-28 浙江传媒学院 一种多屏协作模式的智能家庭视频业务的实现方法及***
US9300896B2 (en) * 2013-06-03 2016-03-29 Sony Corporation Method, computer-readable storage medium, reception apparatus, and information providing apparatus for identifying available channels and/or services
CN104219402A (zh) * 2014-02-14 2014-12-17 爱沟通网络科技有限公司 一种改善VoIP通信质量的***
CN103823546B (zh) * 2014-03-10 2017-07-28 联想(北京)有限公司 信息控制方法和电子设备
CA2974341C (en) * 2015-01-19 2022-08-23 Samsung Electronics Co., Ltd. Method and apparatus for transmitting and receiving multimedia content
JP6301849B2 (ja) * 2015-02-03 2018-03-28 マクセル株式会社 表示及び一時蓄積の処理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101397332B1 (ko) * 2007-06-28 2014-05-19 복서 아이피 엘엘씨 통신 애플리케이션이 기록된 컴퓨터 판독가능한 매체
WO2012099359A2 (ko) * 2011-01-19 2012-07-26 삼성전자 주식회사 복수의 실시간 전송 스트림을 수신하는 수신 장치와 그 송신 장치 및 멀티미디어 컨텐츠 재생 방법
KR20130112576A (ko) * 2012-04-04 2013-10-14 (주)휴맥스 이벤트를 기반으로 하는 콘텐트 재생 방법, 장치 및 시스템
KR20140099778A (ko) * 2013-02-04 2014-08-13 삼성전자주식회사 휴대 단말기의 무선 통신 채널 운용 방법 및 시스템
KR20140048917A (ko) * 2014-03-26 2014-04-24 주식회사 비즈모델라인 적응형 스트리밍 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109691120A (zh) * 2016-09-06 2019-04-26 麦克赛尔株式会社 广播接收***
CN109691120B (zh) * 2016-09-06 2021-10-22 麦克赛尔株式会社 广播接收***

Also Published As

Publication number Publication date
CN107113474A (zh) 2017-08-29
KR20160099959A (ko) 2016-08-23
KR102111572B1 (ko) 2020-05-15
US20170324797A1 (en) 2017-11-09
JP2018507662A (ja) 2018-03-15
CN107113474B (zh) 2020-03-03
JP6430034B2 (ja) 2018-11-28
US10148725B2 (en) 2018-12-04

Similar Documents

Publication Publication Date Title
WO2016129966A1 (ko) 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치
JP5291190B2 (ja) インターネットプロトコルテレビジョンに関するチャネル変更応答時間を短縮する方法および装置
US20090293093A1 (en) Content server, information processing apparatus, network device, content distribution method, information processing method, and content distribution system
WO2016129963A1 (ko) 멀티뷰 스트리밍 서비스 지원 방법 및 이를 지원하는 장치
WO2012128563A2 (ko) 이종망 기반 연동형 방송콘텐츠 송수신 장치 및 방법
WO2013077525A1 (ko) 제어 방법 및 그를 이용한 장치
US9749379B2 (en) Apparatus and method for receiving video service in hybrid network
JP4771369B2 (ja) シームレスハンドオーバにおけるメディアストリーム切替方法、システム及びプログラム
WO2011111987A2 (en) Apparatus and method for playing media content data
WO2015142102A1 (en) Method and apparatus for dash streaming using http streaming
WO2011136537A2 (en) Method and apparatus for transmitting content to plurality of devices
EP2312826A2 (en) Network device, information processing apparatus, stream switching method, information processing method, program, and content distribution system
WO2017052065A1 (ko) 비디오처리장치, 비디오처리장치의 구동방법, 비디오중계장치, 비디오중계장치의 구동방법 및 컴퓨터 판독가능 기록매체
WO2016129964A1 (ko) 네트워크 적응형 컨텐츠 제공을 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 네트워크 적응형 컨텐츠 제공 장치
WO2015156476A1 (ko) 청크 기반의 끊김 없는 스트림 송수신 장치 및 그 방법
WO2013154364A1 (ko) 스트리밍 재생 방법 및 이를 이용한 컴퓨팅 장치
WO2013109113A1 (ko) 스트리밍 서비스를 제공하는 방법 및 장치
WO2017200319A1 (ko) 적응형 스트리밍 서비스 제공 방법 및 이를 위한 장치
WO2016043432A1 (ko) 멀티미디어의 전송 또는 수신 방법 및 그 장치
WO2019050067A1 (ko) 비디오 품질 제어
WO2015130126A1 (ko) 클라우드 스트리밍 서비스 시스템, 이를 위한 장치 및 클라우드 스트리밍 서비스 방법
KR20170050698A (ko) 인코딩 방법 및 디코딩 방법, 그리고 이를 위한 장치
KR102531337B1 (ko) 방송 채널을 제공하는 장치, 서버 및 방법
WO2020138568A1 (ko) 컨텐츠 인코딩 장치 및 방법
WO2017065571A1 (ko) 멀티미디어 시스템에서 패킷을 송/수신하는 방법 및 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16749506

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017554232

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16749506

Country of ref document: EP

Kind code of ref document: A1