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

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

Info

Publication number
KR102111572B1
KR102111572B1 KR1020150022327A KR20150022327A KR102111572B1 KR 102111572 B1 KR102111572 B1 KR 102111572B1 KR 1020150022327 A KR1020150022327 A KR 1020150022327A KR 20150022327 A KR20150022327 A KR 20150022327A KR 102111572 B1 KR102111572 B1 KR 102111572B1
Authority
KR
South Korea
Prior art keywords
streaming
request
data packet
media
low
Prior art date
Application number
KR1020150022327A
Other languages
English (en)
Other versions
KR20160099959A (ko
Inventor
이종민
Original Assignee
에스케이텔레콤 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이텔레콤 주식회사 filed Critical 에스케이텔레콤 주식회사
Priority to KR1020150022327A priority Critical patent/KR102111572B1/ko
Priority to JP2017554232A priority patent/JP6430034B2/ja
Priority to CN201680004890.0A priority patent/CN107113474B/zh
Priority to PCT/KR2016/001460 priority patent/WO2016129966A1/ko
Publication of KR20160099959A publication Critical patent/KR20160099959A/ko
Priority to US15/622,539 priority patent/US10148725B2/en
Application granted granted Critical
Publication of KR102111572B1 publication Critical patent/KR102111572B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/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
    • 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/2365Multiplexing 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/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

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

저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치 {Computer readable recording medium recorded program and apparatus for providing low delay real-time content}
본 발명은 스트리밍 방식의 컨텐츠 제공 기술에 관한 것으로서, 더욱 상세하게는 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 기반의 시스템이 공존하는 환경에서, 이들을 효율적으로 운용하는 방안이 필요하다.
한국공개특허 제10-2013-0119885호, 2013년 11월 01일 공개 (명칭: 네트워크 적응적인 계층적 비디오 전송을 위한 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 기반의 새로운 시스템을 효율적으로 운용하면서, 사용자에게 제공되는 서비스 품질을 향상시킬 수 있다.
100: 사용자 단말 10: 통신망
200: 제1 스트리밍 서버 300: 제2 스트리밍 서버
400: 중계 서버 151: 제1 미디어 수신 모듈
152: 제2 미디어 수신 모듈 153: 재생 모듈

Claims (8)

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

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020150022327A KR102111572B1 (ko) 2015-02-13 2015-02-13 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치
JP2017554232A JP6430034B2 (ja) 2015-02-13 2016-02-13 低遅延生放送コンテンツ提供のためのプログラムを記録した記録媒体及び装置
CN201680004890.0A CN107113474B (zh) 2015-02-13 2016-02-13 具有记录在其中以用于提供低延迟实时广播内容的程序的设备和计算机可读记录介质
PCT/KR2016/001460 WO2016129966A1 (ko) 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 (1)

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

Publications (2)

Publication Number Publication Date
KR20160099959A KR20160099959A (ko) 2016-08-23
KR102111572B1 true KR102111572B1 (ko) 2020-05-15

Family

ID=56615318

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150022327A KR102111572B1 (ko) 2015-02-13 2015-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
WO2022080866A1 (ko) * 2020-10-13 2022-04-21 삼성전자 주식회사 전자 장치 및 그 동작 방법

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113923492A (zh) * 2016-09-06 2022-01-11 麦克赛尔株式会社 广播接收系统
US11178204B1 (en) * 2017-02-23 2021-11-16 Cox Communications, Inc. Video processor to enhance color space and/or bit-depth
JPWO2019003955A1 (ja) * 2017-06-29 2020-04-30 ソニー株式会社 通信システムおよび制御装置
CN110138513B (zh) * 2019-03-26 2020-12-29 视联动力信息技术股份有限公司 一种数据传输方法和视联网系统
KR102475023B1 (ko) * 2021-05-13 2022-12-08 주식회사 날다 드론을 이용한 실시간 여행 서비스 제공 시스템
CN114697882B (zh) * 2022-04-27 2024-06-25 上海寰创通信科技股份有限公司 一种无人驾驶场景下的列车实时广播系统及方法

Family Cites Families (22)

* 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
US8180029B2 (en) * 2007-06-28 2012-05-15 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
CN101252496B (zh) * 2008-04-01 2011-03-16 北京创毅视讯科技有限公司 一种多媒体网络传输系统、终端和方法
WO2011125041A2 (en) * 2010-04-08 2011-10-13 Vasona Networks Managing streaming bandwidth for multiple clients
KR20120084252A (ko) * 2011-01-19 2012-07-27 삼성전자주식회사 복수의 실시간 전송 스트림을 수신하는 수신 장치와 그 송신 장치 및 멀티미디어 컨텐츠 재생 방법
KR101827800B1 (ko) * 2011-01-19 2018-02-12 한국전자통신연구원 단일 포트 또는 다중 포트에서 미디어 콘텐츠 전송 방법 및 장치
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
KR102119287B1 (ko) * 2011-12-01 2020-06-04 인터디지탈 매디슨 페이튼트 홀딩스 이용가능한 대역폭에 따라 전송 프로토콜을 선택함으로써 콘텐츠를 획득하는 장치
KR20130078643A (ko) * 2011-12-30 2013-07-10 한국전자통신연구원 Mmt 복합 전달 서비스에서 mmt 패킷 스트림 동기화를 위한 mmt 제어 계층 시그널링을 이용한 타이밍 정보 제공 방법 및 mmt 패킷 스트림 동기화 방법
KR20130112576A (ko) * 2012-04-04 2013-10-14 (주)휴맥스 이벤트를 기반으로 하는 콘텐트 재생 방법, 장치 및 시스템
KR20130119885A (ko) 2012-04-24 2013-11-01 한국전자통신연구원 네트워크 적응적인 계층적 비디오 전송을 위한 mmt 패킷의 전송 방법 및 장치
KR101993418B1 (ko) * 2013-02-04 2019-06-26 삼성전자주식회사 휴대 단말기의 무선 통신 채널 운용 방법 및 시스템
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 联想(北京)有限公司 信息控制方法和电子设备
KR101499194B1 (ko) * 2014-03-26 2015-03-17 주식회사 비즈모델라인 적응형 스트리밍 방법
MX2017009429A (es) * 2015-01-19 2017-10-12 Samsung Electronics Co Ltd Metodo y aparato para transmitir y recibir contenido de medios de comunicacion multiples.
JP6301849B2 (ja) * 2015-02-03 2018-03-28 マクセル株式会社 表示及び一時蓄積の処理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022080866A1 (ko) * 2020-10-13 2022-04-21 삼성전자 주식회사 전자 장치 및 그 동작 방법

Also Published As

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

Similar Documents

Publication Publication Date Title
KR102111572B1 (ko) 저지연 생방송 컨텐츠 제공을 위한 프로그램을 기록한 기록매체 및 장치
KR102266325B1 (ko) 비디오 품질 향상
KR102002676B1 (ko) Dash를 위한 클라이언트/서버 시그널링 명령
EP4099703A2 (en) Switching between transmitting a preauthored video frame and a composited video frame
KR102115922B1 (ko) 영상 통신 방법 및 그 영상 통신 시스템
EP2901725A1 (en) Method for seamless unicast-broadcast switching during dash-formatted content streaming
US9749379B2 (en) Apparatus and method for receiving video service in hybrid network
JP4771369B2 (ja) シームレスハンドオーバにおけるメディアストリーム切替方法、システム及びプログラム
JP6470272B2 (ja) ムービングピクチャーエクスパーツグループメディアトランスポートにおけるレート適応のための方法及び装置
EP2312826A2 (en) Network device, information processing apparatus, stream switching method, information processing method, program, and content distribution system
CN111866526A (zh) 一种直播业务处理方法和装置
US10165311B2 (en) Non-transitory computer-readable recording medium having program recorded therein for providing network-adaptive content and apparatus for providing network-adaptive content
EP3105930A1 (en) Synchronising playing of streaming content on plural streaming clients
KR101548501B1 (ko) 청크 기반의 끊김 없는 스트림 송수신 장치 및 그 방법
WO2022219397A1 (en) Switching between delivery of customizable content and preauthored media content
KR102281217B1 (ko) 인코딩 방법 및 디코딩 방법, 그리고 이를 위한 장치
Tabari et al. Low latency live video streaming on android devices using web-socket
KR102210437B1 (ko) 미디어 컨텐츠 전송 제어 방법, 이를 위한 장치
KR102147145B1 (ko) 하이브리드 망에서의 비디오 서비스 수신 장치 및 방법
JP2007053504A (ja) 映像通信装置、映像通信方法、及びプログラム

Legal Events

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