KR20190066046A - 라이브 비디오 송신 방법, 시스템 및 장치 - Google Patents

라이브 비디오 송신 방법, 시스템 및 장치 Download PDF

Info

Publication number
KR20190066046A
KR20190066046A KR1020197013434A KR20197013434A KR20190066046A KR 20190066046 A KR20190066046 A KR 20190066046A KR 1020197013434 A KR1020197013434 A KR 1020197013434A KR 20197013434 A KR20197013434 A KR 20197013434A KR 20190066046 A KR20190066046 A KR 20190066046A
Authority
KR
South Korea
Prior art keywords
multicast
live
video data
live channel
udp
Prior art date
Application number
KR1020197013434A
Other languages
English (en)
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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20190066046A publication Critical patent/KR20190066046A/ko

Links

Images

Classifications

    • H04L65/4084
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • 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/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26616Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for merging a unicast channel into a multicast channel, e.g. in a VOD application, when a client served by unicast channel catches up a multicast channel to save bandwidth
    • 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/633Control signals issued by server directed to the network components or client
    • 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • 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/64Addressing
    • H04N21/6405Multicasting
    • 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/64Addressing
    • H04N21/6408Unicasting
    • 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
    • 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/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Landscapes

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

Abstract

본 발명은 라이브 비디오 송신 방법, 장치 및 시스템을 제공한다. 방법은, M2U 디바이스에 의해, 클라이언트에 발신된 UDP 요청을 수신하는 단계(UDP 요청은 라이브 채널의 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고, 라이브 채널 식별자는 멀티캐스트 주소 또는 URL을 포함함)와, 라이브 채널 식별자에 대응하는 비디오 데이터를 획득하는 단계와, M2U 디바이스에 의해, UDP 요청의 소스 IP 주소 및 소스 포트를 획득하는 단계(UDP 요청의 소스 IP 주소 및 소스 포트는 차후에 클라이언트에 발신될 UDP 유니캐스트 패킷의 목적지 IP 주소 및 목적지 포트로서 사용됨)를 포함한다. UDP 요청에 대응하는 멀티캐스트 비디오 데이터를 획득한 후에, M2U 디바이스는 멀티캐스트 목적지 IP 주소 및 멀티캐스트 목적지 포트를 클라이언트의 획득된 유니캐스트 목적지 IP 주소 및 유니캐스트 목적지 포트로 변경하고, 비디오 데이터를 클라이언트에 UDP 유니캐스트 방식으로 발신한다. M2U 디바이스는 CPU를 사용하여 비디오 데이터에 대해 프로토콜 변환을 수행하지 않고서 하드웨어 송출을 통해 UDP 유니캐스트 방식으로 비디오 데이터를 직접 발신한다. 따라서, M2U 디바이스의 쓰루풋이 효과적으로 개선될 수 있다.

Description

라이브 비디오 송신 방법, 시스템 및 장치
본 발명의 실시예는 인터넷 기술에 관련되고, 특히, 라이브 비디오(live video) 송신 방법, 시스템 및 장치에 관련된다.
라이브 상의 비디오(video on-live)가 점점 더 사용자에 의해 선호됨에 따라, 많은 오버 더 톱(영문: over-the-top, 줄여서 OTT) 비디오 웹사이트가 라이브 비디오 서비스를 제공한다. 그러나, 라이브 비디오는 동일한 채널 상의 사용자가 동일한 콘텐트(content)를 본다는 점에서 특색이 있으니, 구체적으로, 라이브 채널을 보는 사용자들에 대해, 다량의 거듭된 데이터 패킷이 네트워크 내에서 송신되고, 다량의 네트워크 대역폭이 점유되며, 운영자가 다량의 네트워크 결산 비용을 쓰게 된다.
전술된 문제점을 극복하기 위해, 네트워크 트래픽(network traffic)을 감소시키고 비디오 소스 서버(video source server)의 로드(load)를 완화하는 데에 멀티캐스트 베어러 네트워크(multicast bearer network)가 사용되는 멀티캐스트 베어러 OTT 기술이 제공된다. 유니캐스트 대 멀티캐스트(영문: unicast to multicast, 줄여서 U2M) 디바이스는 유니캐스트 방식으로 비디오 소스 서버로부터 비디오 데이터를 획득하고, 멀티캐스트 방식으로, 비디오 데이터를 복수의 멀티캐스트 대 유니캐스트(영문: multicast to unicast, 줄여서 M2U) 디바이스에 전달한다. M2U 디바이스의 중앙 처리 유닛(영문: central processing unit, 줄여서 CPU)은 라이브 브로드캐스트 관리 플랫폼(live-broadcast management platform)에 의해 통지된 멀티캐스트 그룹 및 대응하는 채널 정보를 수신하고, 멀티캐스트 그룹에 가입하며(join), 멀티캐스트 패킷을 수신하고, 수신된 채널 정보 및 수신된 멀티캐스트 패킷에 기반하여 인덱스 파일 및 미디어 단편을 생성하며, 단말 디바이스의 애플리케이션(영문: application, 줄여서 APP)에 의해 라이브 채널을 액세스하기 위한 수신된 하이퍼텍스트 전송 프로토콜(영문: Hypertext Transfer Protocol, 줄여서 HTTP) 요청에 기반하여, 라이브 채널을 위한 인덱스 파일 및 미디어 단편을 APP에 유니캐스트 방식으로 발신한다. 구체적으로, M2U 디바이스는 비디오 데이터를 HTTP 패킷으로 변환하고 HTTP 패킷을 사용자측 단말 디바이스에 유니캐스트 방식으로 발신한다.
M2U 디바이스가 비디오 데이터를 HTTP 패킷으로 변환하는 프로세스를 구현하기 위해 CPU의 능력이 요구된다. 그러나, HTTP 트래픽을 처리하는 데에 있어서 CPU의 제한된 능력으로 인해, 상대적으로 많은 수효의 사용자가 있는 경우에, 라이브 비디오 서비스가 구현될 수 없다.
본 발명의 실시예는 라이브 비디오 송신 방법, 장치 및 시스템을 제공하여, 다음의 문제를 해결한다. M2U 디바이스가 비디오 데이터를 HTTP 패킷으로 다시 변환하는 프로세스를 구현하기 위해 CPU의 능력이 요구되나, HTTP 트래픽을 처리하는 데에 있어서 CPU의 제한된 능력으로 인해, 상대적으로 많은 수효의 사용자가 있는 경우에, 라이브 비디오 서비스가 구현될 수 없다.
본 발명의 제1 측면에 따르면, 라이브 비디오 송신 방법이 제공된다. 방법은 M2U 디바이스에 적용되며, 다음을 포함한다:
클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(영문: User Datagram Protocol, 줄여서 UDP) 요청을 수신하는 것(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것;
UDP 요청에 포함된 소스 IP 주소(source IP address) 및 소스 포트(source port)를 획득하는 것(소스 IP 주소는 클라이언트의 IP 주소이고, 소스 포트는 클라이언트가 UDP 요청을 발신하는 포트임); 및
소스 IP 주소 및 소스 포트에 기반하여 클라이언트에 UDP 유니캐스트 방식으로 비디오 데이터를 발신하는 것.
이 해결안에서, 라이브 채널 식별자는 통상적으로 멀티캐스트 주소(multicast address) 또는 유니폼 리소스 로케이터(영문: Uniform Resource Locator, 줄여서 URL)이다. M2U 디바이스는, 클라이언트에 의해 발신된 UDP 요청 내의 라이브 채널 식별자에 기반하여, 라이브 채널 식별자에 대응하는 UDP 라이브 채널의 것이며 멀티캐스트 방식으로 U2M 디바이스에 의해 발신된 비디오 데이터를 획득하고, CPU를 사용함으로써 프로토콜 변환을 수행하는 것 없이 UDP 유니캐스트 방식으로 클라이언트에 비디오 데이터를, 하드웨어 송출(hardware forwarding)을 통해, 직접적으로 발신한다. 따라서, M2U 디바이스의 쓰루풋(throughput)이 효과적으로 개선된다.
전술된 해결안에 기반하여, 소스 IP 주소 및 소스 포트에 기반하여 클라이언트에 UDP 유니캐스트 방식으로 비디오 데이터를 발신하는 것은 다음을 포함한다:
비디오 데이터 내의 멀티캐스트 패킷을 획득하는 것;
멀티캐스트 패킷의 목적지 IP 주소(destination IP address)를 UDP 요청의 소스 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트(destination port)를 UDP 요청의 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득하는 것; 및
UDP 유니캐스트 패킷을 클라이언트에 발신하는 것.
이 해결안에서, M2U 디바이스는 비디오 데이터 내의 멀티캐스트 패킷을 획득하고, 하드웨어 송출 모듈을 사용함으로써, 멀티캐스트 패킷의 목적지 IP 주소를 클라이언트의 소스 IP 주소로 변경하고, 목적지 포트를 클라이언트가 UDP 요청을 발신하는 소스 포트로 변경하며, CPU를 사용함으로써 데이터 프로토콜 변환을 수행하는 것 없이 파싱되고(parsed) 플레이되도록(played) 클라이언트에 UDP 유니캐스트 패킷의 형태로 비디오 데이터를 직접적으로 송출한다. 따라서, 상대적으로 많은 수효의 사용자가 있는 경우에, 라이브 상의 비디오가 구현될 수 있고, M2U 디바이스의 쓰루풋이 개선된다.
전술된 해결안 중 임의의 것에 기반하여, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, M2U 디바이스에 의해, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것의 구체적인 구현은 다음을 포함한다:
멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하는 것(멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함함); 및
멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하는 것.
선택적으로, 전술된 해결안 중 임의의 것에 기반하여, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하는 것 전에, 방법은 다음을 더 포함한다: 멀티캐스트 가입 메시지를 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하는 것(멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨); 및
U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하는 것; 그리고
M2U 디바이스에 의해, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것의 다른 구체적인 구현은 다음을 포함한다: 멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것.
전술된 해결안은 M2U 디바이스가 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하는 두 방식을 제공한다. 하나의 방식에서, M2U 디바이스는 멀티캐스트 주소를 포함하는 멀티캐스트 가입 메시지를 직접 발신하여서, U2M 디바이스는 대응하는 라이브 채널의 비디오 데이터를 M2U 디바이스로 멀티캐스트 주소에 기반하여 회신한다. 다른 방식에서, M2U 디바이스는 복수의 멀티캐스트 주소를 포함하는 멀티캐스트 가입 메시지를 발신하고, 복수의 멀티캐스트 주소에 대응하는 라이브 채널의 데이터를 획득하며, M2U 디바이스는, 클라이언트에 의해 발신된 요청 내의 멀티캐스트 주소에 기반하여, 로컬 비디오 데이터로부터 멀티캐스트 주소에 대응하는 비디오 데이터를 획득한다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것은 다음을 포함한다:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하는 것;
멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하는 것(멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함함); 및
멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하는 것.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하는 것 전에, 방법은 다음을 더 포함한다:
멀티캐스트 가입 메시지를 U2M 디바이스에 발신하는 것(멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨); 및
U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하는 것; 그리고
라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것은 다음을 포함한다:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하는 것; 및
멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것.
선택적으로, URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하는 것은 다음을 포함한다:
멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, URL에 대응하는 멀티캐스트 주소를 찾는 것; 또는
URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하고, URL에 대응하는 것이며 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 멀티캐스트 주소를 수신하는 것.
전술된 해결안 중 임의의 것에 기반하여, UDP 요청이 사용자 식별자를 더 포함하는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것 전에, 방법은 다음을 더 포함한다: 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 판정하는 것; 및
사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 단계를 수행하는 것.
이 해결안은 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터가 획득되기 전에, 클라이언트에 로그인하는 사용자가 라이브 채널을 볼 권한이 있는지가 또한 판정될 필요가 있음을 의미한다. 사용자가 라이브 채널을 볼 어떤 권한도 없는 경우, M2U 디바이스는 UDP 요청에 응답하지 않는다. 사용자가 라이브 채널을 볼 권한이 있는 경우, M2U 디바이스는 전술된 방식 중 임의의 것으로 비디오 데이터를 획득한다.
전술된 해결안에 기반하여, 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 판정하는 것은 다음을 포함한다:
UDP 요청 내에서 반송된(carried) 사용자 식별자, 확인 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하는 것(확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 지시하는(indicate) 데에 사용됨); 또는
UDP 요청 내에서 반송된 인가 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하는 것(확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 채널을 볼 권한이 있는지를 지시하는 데에 사용됨).
본 발명의 제2 측면에 따르면, 라이브 비디오 송신 방법이 제공된다. 방법은 클라이언트에 적용되며, 다음을 포함한다:
UDP 요청을 M2U 디바이스에 발신하는 것(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널의 것이며 M2U 디바이스에 의해 발신된 비디오 데이터를 수신하는 것(비디오 데이터는 라이브 채널 식별자에 기반하여 M2U 디바이스에 의해 획득되고, 비디오 데이터는 UDP 유니캐스트 패킷 내에서 반송됨); 및
라이브 채널 상에서 비디오를 플레이하기 위해 UDP 유니캐스트 패킷을 파싱하는 것.
이 해결안에서, M2U 디바이스의 UDP 유니캐스트 패킷을 수신하는 것 후에, 클라이언트는 UDP 유니캐스트 패킷을 파싱하여 라이브 채널 상의 비디오를 획득하고, 비디오를 플레이한다.
선택적으로, UDP 요청은 다음을 더 포함한다: 인가 정보; 및/또는 사용자 식별자 및 확인 정보.
본 발명의 제3 측면에 따르면, 다음을 포함하는 M2U 디바이스가 제공된다:
클라이언트에 의해 발신된 UDP 요청을 수신하도록 구성된 수신 모듈(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구성된 처리 모듈(여기서 처리 모듈은 UDP 요청에 포함된 소스 IP 주소 및 소스 포트를 획득하도록 또한 구성되되, 소스 IP 주소는 클라이언트의 IP 주소이고, 소스 포트는 클라이언트가 UDP 요청을 발신하는 포트임); 및
소스 IP 주소 및 소스 포트에 기반하여 클라이언트에 UDP 유니캐스트 방식으로 비디오 데이터를 발신하도록 구성된 발신 모듈.
선택적으로, 발신 모듈은:
비디오 데이터 내의 멀티캐스트 패킷을 획득하고;
멀티캐스트 패킷의 목적지 IP 주소를 UDP 요청의 소스 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트를 UDP 요청의 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득하며;
UDP 유니캐스트 패킷을 클라이언트에 발신하도록 구체적으로 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 발신 모듈은 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함하고;
수신 모듈은, 멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 수신 모듈이 클라이언트에 의해 발신된 UDP 요청을 수신하기 전에,
발신 모듈은 멀티캐스트 가입 메시지를 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고;
수신 모듈은 U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되며;
처리 모듈은, 멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구체적으로 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 처리 모듈은 URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하도록 또한 구성되고;
발신 모듈은 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함하며;
수신 모듈은, 멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 수신 모듈이 클라이언트에 의해 발신된 UDP 요청을 수신하기 전에, 발신 모듈은 멀티캐스트 가입 메시지를 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고;
수신 모듈은 U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되며;
처리 모듈은:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하고;
멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구체적으로 구성된다.
선택적으로, 처리 모듈은: 멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, URL에 대응하는 멀티캐스트 주소를 찾도록 또한 구성되거나;
발신 모듈은 URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 수신 모듈은, URL에 대응하는 것이며 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 멀티캐스트 주소를 수신하도록 또한 구성된다.
선택적으로, UDP 요청이 사용자 식별자를 더 포함하는 경우, 처리 모듈은: 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 판정하고;
사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 단계를 수행하도록 또한 구성된다.
선택적으로, 발신 모듈은 UDP 요청 내에서 반송된 사용자 식별자, 확인 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 수신 모듈은 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록 또한 구성되되, 확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 지시하는 데에 사용되거나;
발신 모듈은 UDP 요청 내에서 반송된 인가 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 수신 모듈은 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록 또한 구성되되, 확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 채널을 볼 권한이 있는지를 지시하는 데에 사용된다.
본 발명의 제4 측면에 따르면, 다음을 포함하는 클라이언트가 제공된다:
UDP 요청을 M2U 디바이스에 발신하도록 구성된 발신 모듈(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널의 것이며 M2U 디바이스에 의해 발신된 비디오 데이터를 수신하도록 구성된 수신 모듈(비디오 데이터는 라이브 채널 식별자에 기반하여 M2U 디바이스에 의해 획득되고, 비디오 데이터는 UDP 유니캐스트 패킷 내에서 반송됨); 및
라이브 채널 상에서 비디오를 플레이하기 위해 UDP 유니캐스트 패킷을 파싱하도록 구성된 처리 모듈.
선택적으로, 발신 모듈에 의해 발신되는 UDP 요청은 다음을 더 포함한다: 인가 정보; 및/또는 사용자 식별자 및 확인 정보.
본 발명의 제5 측면에 따르면, 다음을 포함하는 M2U 디바이스가 제공된다: 프로그램 코드 및 구성 정보를 저장하도록 구성된 메모리와, 프로세서와, 하드웨어 송출 모듈.
프로세서는:
클라이언트에 의해 발신된 UDP 요청을 수신하고(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하고, UDP 요청에 포함된 소스 IP 주소 및 소스 포트를 획득하도록(소스 IP 주소는 클라이언트의 IP 주소이고, 소스 포트는 클라이언트가 UDP 요청을 발신하는 포트임) 구성된다.
하드웨어 송출 모듈은 소스 IP 주소 및 소스 포트에 기반하여 클라이언트에 UDP 유니캐스트 방식으로 비디오 데이터를 발신하도록 구성된다.
선택적으로, 하드웨어 송출 모듈은:
비디오 데이터 내의 멀티캐스트 패킷을 획득하고;
멀티캐스트 패킷의 목적지 IP 주소를 UDP 요청의 소스 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트를 UDP 요청의 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득하며;
UDP 유니캐스트 패킷을 클라이언트에 발신하도록 구체적으로 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 프로세서는 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함하고;
하드웨어 송출 모듈은, 멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 프로세서는 멀티캐스트 가입 메시지를 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고;
하드웨어 송출 모듈은 U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되며;
프로세서는, 멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 프로세서는:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하고;
멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하며(멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함함);
멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 프로세서가 클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하기 전에, 프로세서는:
멀티캐스트 가입 메시지를 U2M 디바이스에 발신하고(멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되고;
프로세서는:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하고;
멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구체적으로 구성된다.
선택적으로, 프로세서는:
멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, URL에 대응하는 멀티캐스트 주소를 찾거나;
URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하고, URL에 대응하는 것이며 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 멀티캐스트 주소를 수신하도록 구체적으로 구성된다.
선택적으로, UDP 요청이 사용자 식별자를 더 포함하는 경우, 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하기 전에, 프로세서는: 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 판정하고;
사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 단계를 수행하도록 또한 구성된다.
선택적으로, 프로세서는: UDP 요청 내에서 반송된 사용자 식별자, 확인 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록(확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 지시하는 데에 사용됨) 또한 구성되거나;
프로세서는: UDP 요청 내에서 반송된 인가 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록(확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 채널을 볼 권한이 있는지를 지시하는 데에 사용됨) 또한 구성된다.
본 발명의 제6 측면에 따르면, 다음을 포함하는 사용자 장비가 제공된다: 프로그램 코드 및 구성 정보를 저장하도록 구성된 메모리와, 송수신기와, 프로세서.
송수신기는 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 M2U 디바이스에 발신하도록 구성되되, UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용된다.
송수신기는, 라이브 채널의 것이며 M2U 디바이스에 의해 발신된 비디오 데이터를 수신하도록 또한 구성되되, 비디오 데이터는 라이브 채널 식별자에 기반하여 M2U 디바이스에 의해 획득되고, 비디오 데이터는 UDP 유니캐스트 패킷 내에서 반송된다.
프로세서는 라이브 채널 상에서 비디오를 플레이하기 위해 UDP 유니캐스트 패킷을 파싱하도록 구성된다.
선택적으로, 송수신기에 의해 발신되는 UDP 요청은 다음을 더 포함한다: 인가 정보; 및/또는 사용자 식별자 및 확인 정보.
본 발명의 제7 측면에 따르면, 다음을 포함하는 라이브 비디오 송신 시스템이 제공된다: 제3 측면의 임의의 해결안에서 제공된 M2U 디바이스 및 제4 측면의 임의의 해결안에서 제공된 클라이언트.
또한, 시스템은 U2M 디바이스를 더 포함하며, U2M 디바이스는:
멀티캐스트 주소를 포함하며 M2U 디바이스에 의해 발신된 멀티캐스트 가입 메시지를 수신하고, M2U 디바이스에 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 회신하거나;
M2U 디바이스에 의해 발신된, 복수의 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용되는 멀티캐스트 가입 메시지를 수신하고, M2U 디바이스에 복수의 라이브 채널의 비디오 데이터를 회신하도록 구성된다.
본 발명에서 제공되는 라이브 비디오 전송 방법, 장치 및 시스템에 따르면, M2U 디바이스는 클라이언트에 의해 발신된 UDP 요청을 수신하고(UDP 요청은 라이브 채널 식별자를 포함하며 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨), 이후 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득한다. M2U 디바이스는, UDP 요청에 기반하여, 클라이언트의 소스 IP 주소 및 클라이언트가 UDP 요청을 발신하는 소스 포트를 획득하고 소스 IP 주소 및 소스 포트에 기반하여 UDP 유니캐스트 방식으로 클라이언트에 비디오 데이터를 발신한다. M2U 디바이스는 CPU를 사용하여 비디오 데이터에 대해 프로토콜 변환을 수행하지 않고서 UDP 유니캐스트 방식으로 비디오 데이터를, 소스 IP 주소 및 소스 포트(이를 통해 패킷이 수신될 수 있음)를 사용함으로써 하드웨어 송출을 통해, 직접적으로 발신한다. 하드웨어 송출을 통해 비디오 데이터를 직접적으로 발신하는 것은 M2U 디바이스의 쓰루풋을 효과적으로 개선할 수 있다. 상대적으로 많은 수효의 사용자가 있는 경우에, 라이브 비디오 서비스가 구현될 수 있다.
본 발명의 실시예에서의 또는 선행 기술에서의 기술적 해결안을 더욱 명확히 설명하기 위해, 다음은 실시예 또는 선행 기술을 설명하는 데에 필요한 첨부 도면을 간략하게 설명한다.
도 1은 본 발명에 따른 라이브 비디오 송신 시스템의 아키텍처 도해이고,
도 2는 본 발명에 따른 라이브 비디오 송신 방법의 제1 실시예의 흐름도이며,
도 3은 본 발명에 따른 라이브 비디오 송신 방법의 제2 실시예의 상호작용 흐름도이고,
도 4는 본 발명에 따른 라이브 비디오 송신 시스템의 개략적인 상호작용도이며,
도 5a는 본 발명에 따른 라이브 비디오 송신 방법의 실시예의 상호작용 흐름도이고,
도 5b는 전송 프로토콜의 개략도이며,
도 6은 본 발명에 따른 M2U 디바이스의 실시예의 개략적인 구조도이고,
도 7은 본 발명에 따른 클라이언트의 실시예의 개략적인 구조도이며,
도 8은 본 발명에 따른 M2U 디바이스의 개체 실시예의 개략적인 구조도이고,
도 9는 본 발명에 따른 사용자 장비의 개쳬 실시예의 개략적인 구조도이다.
본 발명의 실시예의 목적, 기술적 해결안 및 이점을 더욱 명확하게 하기 위해, 다음은 본 발명의 실시예에서의 첨부된 도면을 참조하여 본 발명의 실시예에서의 기술적 해결안을 명확하게 기술한다.
도 1은 본 발명에 따른 라이브 비디오 송신 시스템의 아키텍처 도해이다. 도 1에 도시된 바와 같이, 라이브 상의 비디오를 위한 시스템은 라이브 브로드캐스트를 위한 애플리케이션(영문: application, 줄여서 APP)과 같은 사용자측 클라이언트, M2U 디바이스 및 U2M 디바이스를 주로 포함한다. 이 시스템 아키텍처에서, U2M 디바이스는 유니캐스트 방식으로 OTT 서버로부터 비디오 데이터를 획득하고, 비디오 데이터를 상이한 M2U 디바이스(각각의 U2M 디바이스는 복수의 M2U 디바이스에 연결됨)에 멀티캐스트 방식으로 전달한다. 이후, M2U 디바이스는 클라이언트의 요청에 따라 클라이언트에 비디오 데이터를 발신하고, 클라이언트는 사용자를 위해 비디오 데이터를 플레이한다. 이 프로세스에서, 네트워크 내의 M2U 디바이스의 물리적 구현 형태는 독립적인 서버, 라우터 서비스 보드(router service board), 라우터 송출 보드(router forwarding board), 또는 기타 등등일 수 있고, 클라이언트는 사용자의 단말 디바이스, 예를 들면 모바일 전화, 컴퓨터, 태블릿 컴퓨터 또는 기타 등등 상에서 구동될 수 있다. 선택적으로, 시스템은 사용자의 라이브 브로드캐스트 권한(live-broadcast permission)을 확인하는 데에 사용되는 라이브 브로드캐스트 관리 플랫폼을 더 포함한다.
네트워크 아키텍처에 기반하여, 라우터 송출 보드의 매우 높은 송출 능력으로 인해, 이 해결안은 M2U 기능을 구현하기 위하여 송출 보드의 송출 능력을 사용하는 착상을 제공한다. 기본적인 착상은 다음과 같다: 멀티캐스트 패킷을 수신한 후에, 하드웨어 송출 모듈은 멀티캐스트 패킷의 목적지 인터넷 프로토콜(영문: Internet Protocol, 줄여서 IP) 주소를 클라이언트의 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트를 클라이언트의 포트로 변경한다.
도 2는 본 발명에 따른 라이브 비디오 송신 방법의 제1 실시예의 흐름도이다. 도 1에 도시된 시스템 아키텍처에서, 도 2에 도시된 바와 같이, 라이브 비디오 송신 방법은 M2U 디바이스에 주로 적용되며, 구체적으로 다음의 단계를 포함한다.
S101. 클라이언트에 의해 발신된 UDP 요청을 수신하는데, UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용된다.
이 단계에서, 클라이언트가, 사용자의 동작으로부터, 라이브 채널의 비디오 데이터가 획득될 필요가 있다고 판정하는 경우, 클라이언트는 UDP 요청을 M2U 디바이스에 발신한다. UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자는 라이브 채널의 멀티캐스트 주소 또는 URL일 수 있어서, M2U 디바이스는 대응하는 비디오 데이터를 멀티캐스트 주소 또는 URL에 기반하여 획득할 수 있다.
이 해결안에서, 클라이언트에 의해 발신된 UDP 요청이 URL을 반송하는 경우, M2U 디바이스는 우선, URL 및 멀티캐스트 주소 간의 대응관계에 기반하여, URL에 대응하는 멀티캐스트 주소를 획득할 필요가 있다. 구체적으로, M2U 디바이스는 우선 멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, URL에 대응하는 멀티캐스트 주소를 찾는다. 대안적으로, M2U 디바이스는 URL을 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼을 사용함으로써, URL에 대응하는 멀티캐스트 주소를 찾으며, 이후 대응하는 비디오 데이터를 멀티캐스트 주소에 기반하여 획득한다.
선택적으로, UDP 요청은 다음을 더 포함한다: 인가 정보; 및/또는 사용자 식별자 및 확인 정보.
S102. 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득한다.
이 단계에서, M2U 디바이스에 의해, 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하는 것의 구체적인 구현은 적어도 다음의 경우를 포함한다:
라이브 채널 식별자가 멀티캐스트 주소인 경우에, 비디오 데이터는 다음의 두 방식으로 직접 획득될 수 있다:
제1 구현에서, M2U 디바이스는 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하고(멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함함), 멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신한다.
제1 구현은 M2U 디바이스가 U2M 디바이스에 멀티캐스트 주소를 포함하는 멀티캐스트 가입 메시지를 직접 발신하여서, U2M 디바이스가, 멀티캐스트 주소에 기반하여, 대응하는 라이브 채널의 비디오 데이터를 M2U 디바이스에 회신함을 의미한다. 구체적으로, U2M 디바이스는, 멀티캐스트 주소에 기반하여, 로컬로 전환된(locally diverted) 비디오 데이터로부터 멀티캐스트 주소에 대응하는 비디오 데이터를 찾을 필요가 있고, 비디오 데이터를 M2U 디바이스에 회신한다.
제2 구현에서, 클라이언트에 의해 발신된 UDP 요청을 수신하기 전에, M2U 디바이스는 멀티캐스트 가입 메시지를 U2M 디바이스에 발신하고(멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨), U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신한다. 클라이언트에 의해 발신된 UDP 요청을 수신한 후에, M2U 디바이스는, UDP 요청 내에서 반송된 멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득한다.
제2 구현은 M2U 디바이스가 U2M 디바이스에 복수의 멀티캐스트 주소를 포함하는 멀티캐스트 가입 메시지를 발신하고, 복수의 멀티캐스트 주소에 각각 대응하는 라이브 채널의 데이터를 획득함을 의미한다. M2U 디바이스는, 클라이언트에 의해 발생된 요청 내의 멀티캐스트 주소에 기반하여, 로컬 비디오 데이터로부터 멀티캐스트 주소에 대응하는 비디오 데이터를 획득한다.
라이브 채널 식별자가 URL인 경우, 전술된 두 방식으로 비디오 데이터를 획득하기 전에, M2U 디바이스는 우선 URL에 대응하는 대응 멀티캐스트 주소를 획득할 필요가 있다. 멀티캐스트 주소는 적어도 다음의 구체적인 방식으로 URL에 기반하여 획득될 수 있다: 멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, URL에 대응하는 멀티캐스트 주소를 찾는 것; 또는
URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하고, URL에 대응하는 것이며 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 멀티캐스트 주소를 수신하는 것.
URL에 대응하는 멀티캐스트 주소를 획득하는 단계는 통상적으로 멀티캐스트 가입 메시지가 멀티캐스트 주소에 대응하는 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신되기 전에 또는 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터가 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 기반하여 획득되기 전에 수행된다. 이것은 URL에 대응하는 멀티캐스트 주소가 그 멀티캐스트 주소가 사용되기 전에 획득된다면 이 해결안에서 구체적으로 한정되지 않는다.
S103. UDP 요청에 포함된 소스 IP 주소 및 소스 포트를 획득하되, 소스 IP 주소는 클라이언트의 IP 주소이고, 소스 포트는 포트로서 이를 통해 클라이언트가 UDP 요청을 발신하는 포트이다.
이 단계에서, M2U 디바이스가 클라이언트에 의해 요청된 비디오 데이터를 획득하는 경우, M2U 디바이스는 비디오 데이터를 클라이언트에 송출할 필요가 있다. 이 해결안에서, M2U 디바이스는, UDP 요청에 기반하여, 클라이언트의 소스 IP 주소 및 UDP 요청이 발신되는 포트를 획득하고, 소스 IP 주소 및 포트는 송출될 비디오 데이터의 목적지 주소 및 목적지 포트로서 사용된다.
S104. 소스 IP 주소 및 소스 포트에 기반하여 UDP 유니캐스트 방식으로 클라이언트에 비디오 데이터를 발신한다.
전술된 단계에 기반하여, 클라이언트의 소스 IP 주소 및 소스 포트(이를 통해 UDP 요청이 발신됨)를 UDP 요청에 기반하여 획득한 후에, M2U 디바이스는 프로토콜 변환을 수행하지 않고서, 하드웨어 송출 모듈을 사용함으로써, 획득된 비디오 데이터를 클라이언트에 유니캐스트 방식으로 직접 발신한다.
구체적으로, UDP 패킷이 UDP 수신단에 직접 발신될 수 있기 때문에, M2U 디바이스는 라우터 송출 보드의 하드웨어 송출 능력을 사용함으로써 UDP 유니캐스트 방식으로 클라이언트에 비디오 데이터를 회신할 수 있다. 구체적인 구현 프로세스는 다음과 같다:
M2U 디바이스는 비디오 데이터 내의 멀티캐스트 패킷을 획득한다. M2U 디바이스의 하드웨어 송출 모듈은 멀티캐스트 패킷의 목적지 IP 주소를 UDP 요청의 소스 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트를 UDP 요청의 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득한다. 이후, UDP 유니캐스트 패킷은 클라이언트에 발신된다.
이 실시예에서 제공되는 라이브 비디오 송신 방법에 따르면, 클라이언트는 UDP 요청을 M2U 디바이스에 발신하고, M2U 디바이스는, UDP 요청 내의 라이브 채널 식별자에 기반하여, 라이브 채널 식별자에 대응하는 라이브 채널에 대응하는 비디오 데이터를 획득하고, 비디오 데이터 내의 멀티캐스트 패킷을 획득한다. UDP 요청에 대응하는 멀티캐스트 비디오 데이터를 획득한 후에, M2U 디바이스는 멀티캐스트 목적지 IP 주소 및 멀티캐스트 목적지 포트를 클라이언트의 획득된 유니캐스트 목적지 IP 주소 및 유니캐스트 목적지 포트로 변경하고, 비디오 데이터를 클라이언트에 UDP 유니캐스트 패킷의 형태로 직접 송출하여 파싱 및 플레이를 CPU를 사용함으로써 데이터 프로토콜 변환을 수행하는 것 없이 수행한다. 따라서, 상대적으로 많은 수효의 사용자가 있는 경우에, 라이브 상의 비디오가 구현될 수 있고, M2U 디바이스의 쓰루풋이 개선된다.
도 3은 본 발명에 따른 라이브 비디오 송신 방법의 제2 실시예의 상호작용 흐름도이다. 도 3에 도시된 바와 같이, UDP 요청이 멀티캐스트 주소를 반송하는 경우, 라이브 비디오 송신 방법의 상호작용 프로세스는 구체적으로 다음과 같다:
S201. UDP 요청을 M2U 디바이스에 발신하는데, UDP 요청은 멀티캐스트 주소를 포함한다.
이 단계에서, 사용자측 디바이스는, 클라이언트 상에서 사용자에 의해 수행되는 동작을 사용함으로써, UDP 요청을 M2U 디바이스에 발신하여 라이브 채널의 비디오 데이터를 요청한다.
S202. 사용자 식별자에 대응하는 사용자가 멀티캐스트 주소에 대응하는 라이브 채널을 볼 권한이 있는지를 판정한다.
구체적인 구현에서, UDP 요청은 사용자 식별자(또는 사용자 식별자와 로그인 패스워드(login password))를 더 포함한다. M2U 디바이스는 사용자의 권한을 확인할 필요가 있고, 사용자가 멀티캐스트 주소에 대응하는 라이브 채널을 볼 권한이 있는지를 판정한다. 적어도 두 개의 구체적인 확인 방식이 있다:
제1 방식에서, M2U 디바이스는 UDP 요청 내에서 반송되는 사용자 식별자, 확인 정보(구체적으로, 등록된 사용자 이름, 로그인 패스워드 및 기타 등등) 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신되는 확인 결과를 수신한다. 확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 지시하는 데에 사용된다.
제2 방식에서, M2U 디바이스는 UDP 요청 내에서 반송되는 인가 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신되는 확인 결과를 수신한다. 확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 지시하는 데에 사용된다.
전술된 두 방식에서, 라이브 채널 식별자는 멀티캐스트 주소 또는 URL일 수 있다. URL은 클라이언트를 고유하게 식별할 수 있다. URL은 OTT 서버에 의해 클라이언트에 통지된다. URL은 UDP 요청 내에서 반송되고 M2U 디바이스에 발신된다. 선택적으로, UDP 요청은 인가 정보를 더 반송할 수 있고, 전술된 두 방식으로 사용자가 보는 권한(watch permission)을 갖는지를 확인하는 경우에, M2U 디바이스는 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 인가 정보를 발신할 수 있다.
S203. 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득한다.
이 단계에서, M2U 디바이스가 라이브 브로드캐스트 관리 플랫폼에 의해 회신되는 확인 결과를 획득하고, 사용자가 멀티캐스트 주소에 대응하는 라이브 채널 상의 비디오를 볼 권한이 있다고 판정하는 경우에, M2U 디바이스는 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득한다. 구체적인 획득 방식은 제1 실시예에서의 것과 동일하다. 세부사항은 여기에서 다시 기술되지 않는다.
S204. UDP 요청에 포함된 소스 IP 주소 및 소스 포트를 획득한다.
S205. 비디오 데이터 내의 멀티캐스트 패킷을 획득하고; 멀티캐스트 패킷의 목적지 IP 주소를 UDP 요청의 소스 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트를 UDP 요청의 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득한다.
단계(S204) 및 단계(S205)에서, M2U 디바이스는, UDP 요청에 기반하여, 클라이언트의 IP 주소, 즉, 소스 IP 주소, 그리고 클라이언트가 UDP 요청을 발신하는 포트, 즉 소스 포트를 획득한다.
이 해결안에서, 데이터 상호작용이 하드웨어 송출 모듈에 의해 구현되므로, 유니캐스트 패킷을 획득하기 위해, 하드웨어 송출 모듈은 멀티캐스트 패킷 내의 목적지 주소 및 목적지 포트를 소스 IP 주소 및 소스 포트로 변경할 수 있다.
S206. UDP 유니캐스트 패킷을 클라이언트에 발신한다.
S207. 라이브 채널 상의 비디오를 플레이하기 위해 UDP 유니캐스트 패킷을 파싱한다.
멀티캐스트 패킷의 목적지 IP 주소 및 목적지 포트를 변경한 후에, M2U 디바이스의 하드웨어 송출 모듈은 유니캐스트 패킷의 형태로 클라이언트에 비디오 데이터를 직접 발신한다. 패킷을 수신한 후에, 클라이언트는 패킷에 대해 조합 및 파싱을 수행하고, 라이브 채널 상의 획득된 비디오를 플레이한다.
전술된 해결안에서, 선택적으로, 클라이언트에 의해 발신된 UDP 요청이 URL을 반송하는 경우, UDP 요청을 수신한 후에, M2U 디바이스는, URL 및 멀티캐스트 주소 간의 대응관계에 기반하여, URL에 대응하는 멀티캐스트 주소를 획득하거나, M2U 디바이스는 URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하여, URL에 대응하는 것이며 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 멀티캐스트 주소를 수신한다. 이후 M2U 디바이스는 비디오 데이터를 획득된 멀티캐스트 주소에 기반하여 전술된 방식으로 획득하고 비디오 데이터를 클라이언트에 UDP 유니캐스트 방식으로 발신한다.
이 실시예에서 제공되는 라이브 비디오 송신 방법에 따르면, 클라이언트에 의해 발신된 UDP 요청에 기반하여, 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하기 전에, M2U 디바이스는 또한 클라이언트에 로그인하는 사용자가 라이브 채널을 볼 권한이 있는지를 판정할 필요가 있다. 사용자가 라이브 채널을 볼 어떤 권한도 없는 경우, M2U 디바이스는 UDP 요청에 응답하지 않는다. 사용자가 라이브 채널을 볼 권한이 있는 경우, M2U 디바이스는, UDP 라이브 채널의 것이며 멀티캐스트 방식으로 U2M 디바이스에 의해 발신된 비디오 데이터를 획득하고, CPU를 사용하여 프로토콜 변환을 수행하지 않고서, 하드웨어 송출을 사용함으로써, UDP 유니캐스트 방식으로 클라이언트에 비디오 데이터를 직접 발신한다. 따라서, M2U 디바이스의 쓰루풋이 효과적으로 개선된다.
도 4는 본 발명에 따른 라이브 비디오 송신 시스템의 개략적인 상호작용도이다. 도 4에 도시된 바와 같이, 송신 시스템에서, 클라이언트(구체적으로, 사용자 장비 측의 APP)는 비디오 요청을 M2U 디바이스에 발신하고, M2U 디바이스, 라이브 브로드캐스트 관리 플랫폼 및 U2M 디바이스 간의 시그널링 상호작용이 M2U 디바이스의 프로세서(구체적으로, CPU)에 의해 완료되며, M2U 디바이스, APP 및 U2M 디바이스 간의 데이터 상호작용이 하드웨어 송출 모듈에 의해 완료된다. 해결안에서, CPU는 클라이언트 관리 모듈, 라이브 채널 정보 모듈 및 멀티캐스트 가입 모듈을 주로 포함한다. 전술된 몇 개의 실시예를 참조하면, 이 해결안에서, U2M 디바이스가 비디오 데이터를 M2U 디바이스에 멀티캐스트 방식으로 회신하도록 구성됨은 구체적으로 다음을 포함한다: 멀티캐스트 주소를 포함하고 M2U 디바이스에 의해 발신된 멀티캐스트 가입 메시지를 수신하고, 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 M2U 디바이스에 회신하는 것; 또는 M2U 디바이스에 의해 발신된, 복수의 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용되는 멀티캐스트 가입 메시지를 수신하고, 복수의 라이브 채널의 비디오 데이터를 M2U 디바이스에 회신하는 것.
전술된 기술적 해결안 중 임의의 것에서, 멀티캐스트 주소는 통상적으로 멀티캐스트 IP 주소이다. 도 5a는 본 발명에 따른 라이브 비디오 송신 방법의 실시예의 상호작용 흐름도이다. 도 5a에 도시된 바와 같이, 도 4에 도시된 시스템의 개략적인 상호작용 도해에 기반하여, 라이브 비디오 송신 방법의 구체적인 구현 프로세스는 다음과 같다:
S301. 사용자는 APP 로그인 인증을 통과하고, 라이브 채널을 보기 위해 요청한다.
사용자는 단말 디바이스 상에서 동작을 사용하여 APP을 작동시키고(enable), 비디오 웹사이트에 로그인한다. 사용자 이름을 사용하여 로그인 인증을 수행한 후에, 사용자는 라이브 채널을 탭하고(tap), 보는 것을 요청한다.
S302. OTT 서버는 라이브 채널 정보(멀티캐스트 IP 주소) 및 인가 정보를 회신한다.
OTT 서버는 라이브 채널 식별자(예를 들어, 멀티캐스트 IP 주소 또는 URL) 및 사용자의 인가 정보를 회신한다. 인가 정보는 통상적으로 문자열이며, 사용자가 채널을 볼 권한이 있음을 지시한다. 사용자가 마음대로 볼 수 있는 몇몇 무료 방송(free-to-air) 채널에 대하여, 어떠한 인가 정보도 없을 수 있다.
S303. APP은 라이브 채널의 비디오 데이터(멀티캐스트 IP 주소) 및 인가 정보를 요청하기 위해 UDP 요청을 발신한다.
APP은 UDP 유니캐스트 패킷을 사용함으로써 멀티캐스트 소스에 UDP 요청(비디오 요청)을 발신하며, 요청의 내용은 라이브 채널 식별자(예를 들어, 멀티캐스트 IP 주소), 인가 정보 등을 포함한다.
S304. M2U 디바이스는 라이브 채널 및 인가 정보를 라이브 브로드캐스트 관리 플랫폼에 송출한다.
M2U 디바이스가 UDP 요청 패킷을 포착한 후에, 사용자가 채널을 볼 권한이 있는지를 판정하기 위해, M2U 디바이스는 라이브 채널 식별자(라이브 채널 정보로 또한 지칭됨) 및 사용자의 인가 정보를 라이브 브로드캐스트 관리 플랫폼에 송출한다.
S305. 라이브 브로드캐스트 관리 플랫폼은 인증 결과를 M2U 디바이스에 회신한다.
라이브 브로드캐스트 관리 플랫폼은 사용자가 라이브 채널을 볼 권한이 있는지를 확인한다. 확인 방법은 다음과 같을 수 있다: 라이브 브로드캐스트 관리 플랫폼은 인가 정보에 기반한 판정을 직접 수행하거나, 확인을 위해 OTT 서버에 사용자 이름과 패스워드를 송출한다. 확인이 완료된 후에, 라이브 브로드캐스트 관리 플랫폼은 인증 결과를 M2U 디바이스에 회신한다.
S306. APP이 채널을 볼 어떤 권한도 갖지 않은 경우, M2U 디바이스는 UDP 요청을 처리하지 않고; APP이 볼 권한을 가진 경우, M2U 디바이스는 APP이 보는 멀티캐스트 그룹과, 비디오가 수신되는 IP 주소 및 포트를 기록한다.
M2U 디바이스가, 인증 결과에 기반하여, (사용자를 표상하는) APP이 채널을 볼 어떤 권한도 갖지 않는다고 판정하는 경우, M2U 디바이스는 더 이상 채널에 대한 요청을 처리하지 않는다. APP이 볼 권한을 가진 경우, M2U 디바이스는 UDP 요청 패킷의 소스 IP 주소 및 소스 포트를 목적지 IP 주소 및 목적지 포트(이를 통해 APP이 비디오 데이터를 수신함)로서 사용한다.
S307. M2U 디바이스는 인터넷 그룹 관리 프로토콜(영문: Internet Group Management Protocol, 줄여서 IGMP) 가입 메시지를 발신한다.
M2U 디바이스는 APP에 의해 요청된 멀티캐스트 주소에 가입하기 위해 U2M 디바이스에 IGMP 가입 메시지를 발신한다.
S308. U2M 디바이스는 멀티캐스트 비디오 트래픽을 M2U 디바이스에 전달한다.
S309. M2U 디바이스는 대응하는 멀티캐스트 패킷의 목적지 IP 주소 및 목적지 포트를 APP이 비디오를 수신하는 IP 주소 및 포트로 변경하고, 유니캐스트 트래픽을 APP에 송출한다.
S310. M2U 디바이스는 UDP 유니캐스트 비디오 트래픽을 APP에 발신한다.
전술된 단계에서, U2M 디바이스는 멀티캐스트 비디오 데이터(구체적으로, 비디오 스트림)를 M2U 디바이스에 전달한다. 멀티캐스트 패킷을 수신한 후에, M2U 디바이스는 목적지 IP 주소 및 목적지 포트를 APP이 비디오를 수신하는 IP 주소 및 포트로 변경한다. M2U 디바이스는 UDP 유니캐스트 비디오 트래픽을 APP에 송출한다.
APP은 수신된 패킷에 대해 조합 및 파싱을 수행하여 라이브 비디오를 획득하고 라이브 비디오를 플레이한다.
전술된 해결안에서, OTT 서버는 채널에 대응하는 멀티캐스트 주소를 APP에 능동적으로 통지할 수 있다. 그러나, 구체적인 구현에서, OTT 서버는 라이브 채널을 식별할 수 있는 오직 하나의 URL을 APP에 발신할 수 있다. 이후, URL을 반송하는 UDP 요청을 획득한 후에, M2U 디바이스는 라이브 브로드캐스트 관리 플랫폼에게서 URL에 대응하는 멀티캐스트 주소를 조회한다. 질의 프로세스 및 보는 권한 확인 프로세스는 동시에 수행될 수 있다.
추가로, 단계(S302)에서, OTT 서버는 인가 정보를 회신하지 않을 수 있고, APP은 APP의 사용자 및 패스워드를 UDP 요청에 추가하며, 이후, M2U 디바이스는 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 사용자 및 패스워드를 송출한다. 이것은 이 해결안에서 한정되지 않는다.
도 5b는 전송 프로토콜의 개략도이다. 도 5b에 도시된 바와 같이, M2U 디바이스가 U2M 디바이스로부터 비디오 데이터를 획득하는 프로세스에서, U2M 디바이스는 유니캐스트 방식으로 인덱스 파일(index file) 및 단편(fragment)을 다운로드하고, 이후에 인덱스 파일 및 단편을 송신을 위해 UDP 상에서의 실시간 전송 프로토콜(영문: Real-time Transport Protocol, 줄여서 RTP) 멀티캐스트 패킷(RTP over UDP 멀티캐스트 패킷)으로 분할하며, 패킷은 M2U 디바이스 상에서 인덱스 파일 및 단편으로 복원된다. 따라서, M2U 디바이스 상에서 복원을 수행하기 위해, 인덱스 파일 및 단편에 대한 정보를 기록하는 전송 프로토콜이 판정될 필요가 있다. 프로토콜은 M2U 디바이스가 UDP 유니캐스트 패킷으로 클라이언트에 비디오 데이터를 발신하는 경우에 또한 적용가능하다. UDP 패킷은 IP 헤더, UDP 헤더, RTP 헤더 및 RTP 로드를 포함한다. RTP 헤더에서, M=1은 미디어 단편의 마지막 RTP 패킷을 지시하고, 시퀀스 번호(sequence number)는 단편의 비순차적 재배열 및 패킷 손실 재송신을 보장하는 데에 사용되며; 타임스탬프(timestamp)는 미디어 단편의 시작 재생 시간을 지시하고, 미디어 단편 내의 모든 RTP 패킷은 동일한 타임스탬프를 공유한다. 추가로, RTP 헤더는 동기화 소스(영문: synchronization source, 줄여서 SSRC) 식별자 및 기여 소스(영문: contributing source, 줄여서 CSRC) 식별자를 더 포함한다. RTP 로드는 데이터 콘텐트를 포함하고, TP의 의미는 다음과 같다: 0은 인덱스 파일을 지시하고; 1은 초기화 정보를 지시하며; 2는 단편을 지시한다. F=1은 전체 단편이 수집된 경우에만 전체 단편이 디코딩될 수 있고 비디오가 플레이될 수 있음을 지시하고, 길이는 유효 데이터 길이를 지시하며, URL 길이는 단편 또는 인덱스 파일의 URL 길이를 지시하고, HAS 데이터 부분은 미디어 단편 또는 인덱스 파일의 데이터이며, RTP 잉여(redundancy) 데이터는 순방향 에러 정정을 위해 사용된다.
전술된 프로토콜에 기반하여, 사용자의 단말 디바이스 측은 APP을 사용함으로써 UDP 유니캐스트 패킷을 수신하고, 패킷 손실이 있는지를 검출하며, 패킷 손실이 있는 경우, 패킷 손실 복구가 순방향 에러 정정(영문: forward error correction: 줄여서 FEC) 방식 및 재송신(영문: retransmission, 줄여서 RET) 방식으로 완료된다. 클라이언트 측의 구체적인 실행 프로세스는 다음과 같다:
1. APP이 M2U 디바이스에 의해 발신된 UDP 패킷을 수신하는 경우, RTP 시퀀스 번호에 기반하여 패킷 손실이 있는지를 판정한다. RTP 시퀀스 번호가 불연속적인 경우, 패킷 손실이 발생하였다고 간주될 수 있고, 단계 2가 처리를 위해 수행될 것이며; 그렇지 않은 경우, 단계 4가 처리를 위해 수행될 것이다.
2. APP은 손실된 패킷을 FEC에 기반하여 복구하고, 모든 손실된 패킷이 성공적으로 복구된 경우, 단계 4가 처리를 위해 수행될 것이며; 그렇지 않은 경우, 단계 3이 처리를 위해 수행될 것이다.
3. APP은 손실된 RTP 패킷을 재송신하도록 RET 서버에 요청한다. RET 서버에 의해 재송신된 RTP 패킷을 수신한 후에, APP은 시퀀스 번호에 기반하여 RTP 패킷을 재정렬하고, 패킷 손실에 의해 야기된 빈자리(hole)를 채운다.
4. APP은 수신된 RTP 패킷의 타임스탬프를 체크하고, 타임스탬프가 이전의 RTP 패킷의 타임스탬프와 상이한 경우, 단계 5가 처리를 위해 수행될 것이며; 그렇지 않은 경우, 단계 7이 처리를 위해 수행될 것이다.
5. 상이한 타임스탬프는 새로운 파일 객체(file object)가 이 RTP 패킷에서부터 송신되기 시작함을 지시한다. APP은 파일 유형(인덱스 파일 또는 미디어 단편)을 파싱하고, 파일 이름을 획득한다. APP은 새로운 파일 객체에 대한 정보를 디코더에 통지한다.
6. RTP 패킷의 로드를 파싱함으로써 파일 객체의 데이터를 획득하고, 파일 객체의 데이터를 처리를 위해 디코더에 전달한다.
7. 동일한 타임스탬프는 이 RTP 패킷 및 이전의 RTP 패킷이 동일한 파일 객체를 반송함을 지시한다. RTP 패킷의 로드를 파싱함으로써 파일 객체의 데이터를 획득하고, 파일 객체의 데이터를 처리를 위해 디코더에 전달한다.
8. RTP 헤더 내의 M 비트가 1인지를 체크한다. M 비트가 1인 경우, 그것은 이 패킷이 파일 객체의 마지막 RTP 패킷임을 지시하고, 그 정보를 디코더에 통지한다.
이후, 디코더는 수신된 데이터 패킷을 디코딩하고 UDP 요청에 대응하는 비디오 데이터를 획득하며, 비디오 데이터가 플레이된다.
도 6은 본 발명에 따른 M2U 디바이스의 실시예의 개략적인 구조도이다. 도 6에 도시된 바와 같이, M2U 디바이스(10)는 다음을 포함한다:
클라이언트에 의해 발신된 UDP 요청을 수신하도록 구성된 수신 모듈(11)(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구성된 처리 모듈(12)(여기서
처리 모듈(12)은 UDP 요청에 포함된 소스 IP 주소 및 소스 포트를 획득하도록 또한 구성되되, 소스 IP 주소는 클라이언트의 IP 주소이고, 소스 포트는 클라이언트가 UDP 요청을 발신하는 포트임); 및
소스 IP 주소 및 소스 포트에 기반하여 클라이언트에 UDP 유니캐스트 방식으로 비디오 데이터를 발신하도록 구성된 발신 모듈(13).
이 실시예에서 제공되는 M2U 디바이스는 전술된 방법 실시예 중 임의의 것에서 M2U 디바이스의 기술적 해결안을 수행하도록 구성되고, M2U 디바이스의 구현 원리 및 기술적 효과는 방법 실시예와 유사하다. 세부사항은 여기에서 다시 기술되지 않는다.
M2U 디바이스의 제2 실시예에서, 전술된 실시예에 기반하여, 발신 모듈(13)은:
비디오 데이터 내의 멀티캐스트 패킷을 획득하고;
멀티캐스트 패킷의 목적지 IP 주소를 UDP 요청의 소스 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트를 UDP 요청의 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득하며;
UDP 유니캐스트 패킷을 클라이언트에 발신하도록 구체적으로 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 발신 모듈(13)은 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하도록 또한 구성된다. 멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함한다.
수신 모듈(11)은 U2M 디바이스에 의해 회신된, 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 수신 모듈(11)이 클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하기 전에, 발신 모듈(13)은 멀티캐스트 가입 메시지를 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고;
수신 모듈(11)은 U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되며;
처리 모듈(12)은, 멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구체적으로 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 발신 모듈(13)은 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하도록 또한 구성된다. 멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함한다.
수신 모듈(11)은 U2M 디바이스에 의해 회신된, 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 수신 모듈(11)이 클라이언트에 의해 발신된 UDP 요청을 수신하기 전에, 발신 모듈(13)은 멀티캐스트 가입 메시지를 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고;
수신 모듈(11)은 U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되며;
처리 모듈(12)은, 멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구체적으로 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 처리 모듈(12)은 URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하도록 또한 구성된다.
발신 모듈(13)은 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하도록 또한 구성된다. 멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함한다.
수신 모듈(11)은 U2M 디바이스에 의해 회신된, 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 수신 모듈(11)이 클라이언트에 의해 발신된 UDP 요청을 수신하기 전에, 발신 모듈(13)은 멀티캐스트 가입 메시지를 U2M 디바이스에 발신하도록 또한 구성되되, 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고;
수신 모듈(11)은 U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되며;
처리 모듈(12)은:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하고;
멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구체적으로 구성된다.
선택적으로, 처리 모듈(12)은: 멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, URL에 대응하는 멀티캐스트 주소를 찾도록 또한 구성되거나;
발신 모듈(13)은 URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 수신 모듈(11)은 라이브 브로드캐스트 관리 플랫폼에 의해 회신된, URL에 대응하는 멀티캐스트 주소를 수신하도록 또한 구성된다.
선택적으로, UDP 요청이 사용자 식별자를 더 포함하는 경우, 처리 모듈(12)은: 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 판정하고;
사용자 식별자에 대응하는 사용자가 라이브 채널 식별 정보에 대응하는 라이브 채널을 볼 권한이 있는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 단계를 수행하도록 또한 구성된다.
선택적으로, 발신 모듈(13)은 UDP 요청 내에서 반송된 사용자 식별자, 확인 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 수신 모듈(11)은 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록 또한 구성되되, 확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 지시하는 데에 사용되거나;
발신 모듈(13)은 UDP 요청 내에서 반송된 인가 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 수신 모듈(11)은 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록 또한 구성되되, 확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 채널을 볼 권한이 있는지를 지시하는 데에 사용된다.
이 실시예에서 제공되는 M2U 디바이스는 전술된 방법 실시예 중 임의의 것에서 M2U 디바이스의 기술적 해결안을 수행하도록 구성되고, M2U 디바이스의 구현 원리 및 기술적 효과는 방법 실시예와 유사하다. 세부사항은 여기에서 다시 기술되지 않는다.
도 7은 본 발명에 따른 클라이언트의 실시예의 개략적인 구조도이다. 도 7에 도시된 바와 같이, 클라이언트(20)는 다음을 포함한다:
UDP 요청을 M2U 디바이스에 발신하도록 구성된 발신 모듈(21)(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널의 것이며 M2U 디바이스에 의해 발신된 비디오 데이터를 수신하도록 구성된 수신 모듈(22)(비디오 데이터는 라이브 채널 식별자에 기반하여 M2U 디바이스에 의해 획득되고, 비디오 데이터는 UDP 유니캐스트 패킷 내에서 반송됨); 및
라이브 채널 상에서 비디오를 플레이하기 위해 UDP 유니캐스트 패킷을 파싱하도록 구성된 처리 모듈(23).
선택적으로, 발신 모듈(21)에 의해 발신되는 UDP 요청은 다음을 더 포함한다: 인가 정보; 및/또는 사용자 식별자 및 확인 정보.
이 실시예에서 제공되는 클라이언트는 전술된 방법 실시예 중 임의의 것에서 클라이언트의 기술적 해결안을 수행하도록 구성되고, 클라이언트의 구현 원리 및 기술적 효과는 방법 실시예와 유사하다. 세부사항은 여기에서 다시 기술되지 않는다.
도 8은 본 발명에 따른 M2U 디바이스의 개체 실시예의 개략적인 구조도이다. 도 8에 도시된 바와 같이, M2U 디바이스(30)는 다음을 포함한다: 프로그램 코드 및 구성 정보를 저장하도록 구성된 메모리(31)와, 프로세서(32)와, 하드웨어 송출 모듈(33).
프로세서(32)는:
클라이언트에 의해 발신된 UDP 요청을 수신하고(UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하고, UDP 요청에 포함된 소스 IP 주소 및 소스 포트를 획득하도록(소스 IP 주소는 클라이언트의 IP 주소이고, 소스 포트는 클라이언트가 UDP 요청을 발신하는 포트임) 구성된다.
하드웨어 송출 모듈(33)은 소스 IP 주소 및 소스 포트에 기반하여 클라이언트에 UDP 유니캐스트 방식으로 비디오 데이터를 발신하도록 구성된다.
선택적으로, 하드웨어 송출 모듈(33)은:
비디오 데이터 내의 멀티캐스트 패킷을 획득하고;
멀티캐스트 패킷의 목적지 IP 주소를 UDP 요청의 소스 IP 주소로 변경하고, 멀티캐스트 패킷의 목적지 포트를 UDP 요청의 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득하며;
UDP 유니캐스트 패킷을 클라이언트에 발신하도록 구체적으로 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 프로세서(32)는 멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하도록 또한 구성된다. 멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함한다.
하드웨어 송출 모듈(33)은, 멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 멀티캐스트 주소를 포함하는 경우, 프로세서(32)는 멀티캐스트 가입 메시지를 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하도록 또한 구성된다. 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용된다.
하드웨어 송출 모듈(33)은 U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성된다.
프로세서(32)는, 멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 프로세서(32)는:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하고;
멀티캐스트 가입 메시지를 멀티캐스트 주소에 대응하는 U2M 디바이스에 발신하며(멀티캐스트 가입 메시지는 멀티캐스트 주소를 포함함);
멀티캐스트 주소에 대응하는 라이브 채널의 것이고 U2M 디바이스에 의해 회신된 비디오 데이터를 수신하도록 또한 구성된다.
선택적으로, 라이브 채널 식별자가 URL을 포함하는 경우, 프로세서(32)가 클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하기 전에, 프로세서(32)는:
멀티캐스트 가입 메시지를 U2M 디바이스에 발신하고(멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨);
U2M 디바이스에 의해 발신된, 복수의 라이브 채널의 비디오 데이터를 수신하도록 또한 구성되고;
프로세서(32)는:
URL에 기반하여 URL에 대응하는 멀티캐스트 주소를 획득하고;
멀티캐스트 주소에 기반하여, 복수의 라이브 채널의 비디오 데이터로부터 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 획득하도록 구체적으로 구성된다.
선택적으로, 프로세서(32)는:
멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, URL에 대응하는 멀티캐스트 주소를 찾거나;
URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하고, URL에 대응하는 것이며 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 멀티캐스트 주소를 수신하도록 구체적으로 구성된다.
선택적으로, UDP 요청이 사용자 식별자를 더 포함하는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하기 전에, 프로세서(32)는: 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 판정하고;
사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는 경우, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 획득하는 단계를 수행하도록 또한 구성된다.
선택적으로, 프로세서(32)는: UDP 요청 내에서 반송된 사용자 식별자, 확인 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록(확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 라이브 채널을 볼 권한이 있는지를 지시하는 데에 사용됨) 또한 구성되거나;
프로세서(32)는: UDP 요청 내에서 반송된 인가 정보 및 라이브 채널 식별자를 확인을 위해 라이브 브로드캐스트 관리 플랫폼에 발신하고, 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록(확인 결과는 사용자 식별자에 대응하는 사용자가 라이브 채널 식별자에 대응하는 채널을 볼 권한이 있는지를 지시하는 데에 사용됨) 또한 구성된다.
이 실시예에서 제공되는 M2U 디바이스에 따르면, 프로세서는 M2U 디바이스의 개체 및 다른 디바이스의 개체 간의 시그널링 상호작용을 완료하도록 구성되고, 하드웨어 송출 모듈은 M2U 디바이스의 개체 및 다른 디바이스의 개체 간의 데이터 상호작용의 프로세스를 완료하도록 구성된다. M2U 디바이스는 임의의 방법 실시예에서 클라이언트의 기술적 해결안을 수행하도록 구성되고, M2U 디바이스의 구현 원리 및 기술적 효과는 방법 실시예와 유사하다. 세부사항은 여기에서 다시 기술되지 않는다.
도 9는 본 발명에 따른 사용자 장비의 개쳬 실시예의 개략적인 구조도이다. 도 9에 도시된 바와 같이, 사용자 장비(40)는 클라이언트를 적재하도록 구성되고, 구체적으로 다음을 포함한다: 프로그램 코드 및 구성 정보를 저장하도록 구성된 메모리(41)와, 송수신기(42)와, 프로세서(43).
송수신기(42)는 UDP 요청을 M2U 디바이스에 발신하도록 구성된다. UDP 요청은 라이브 채널 식별자를 포함하며, 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용된다.
송수신기(42)는, 라이브 채널의 것이며 M2U 디바이스에 의해 발신된 비디오 데이터를 수신하도록 또한 구성된다. 비디오 데이터는 라이브 채널 식별자에 기반하여 M2U 디바이스에 의해 획득되고, 비디오 데이터는 UDP 유니캐스트 패킷 내에서 반송된다.
프로세서(43)는 라이브 채널 상에서 비디오를 플레이하기 위해 UDP 유니캐스트 패킷을 파싱하도록 구성된다.
선택적으로, 송수신기(42)에 의해 발신되는 UDP 요청은 다음을 더 포함한다: 인가 정보; 및/또는 사용자 식별자 및 확인 정보.
이 실시예에서 제공되는 사용자 장비는 전술된 방법 실시예 중 임의의 것에서 클라이언트의 기술적 해결안을 수행하도록 구성되고, 사용자 장비의 구현 원리 및 기술적 효과는 방법 실시예와 유사하다. 세부사항은 여기에서 다시 기술되지 않는다.
M2U 디바이스 및 사용자 장비의 전술된 실시예에서, 프로세서는 중앙 처리 유닛(영문: central processing unit, 줄여서 CPU)일 수 있거나, 다른 일반 목적 프로세서(general purpose processor), 디지털 신호 프로세서(영문: digital signal processor, 줄여서 DSP), 애플리케이션 특정 집적 회로(영문: application-specific integrated circuit, 줄여서 ASIC), 또는 기타 등등일 수 있음이 이해되어야 한다. 일반 목적 프로세서는 마이크로프로세서일 수 있거나, 프로세서는 임의의 종래의 프로세서 또는 기타 등등일 수 있다. 본 발명의 실시예를 참조하여 개시된 방법의 단계는 하드웨어 프로세서를 사용함으로써 직접적으로 구현될 수 있거나, 프로세서 내의 하드웨어 모듈 및 소프트웨어 모듈의 조합을 사용함으로써 구현될 수 있다.
통상의 기술자는 방법 실시예의 단계의 전부 또는 일부가 프로그램 명령 관련 하드웨어에 의해 구현될 수 있음을 이해할 수 있다. 프로그램은 컴퓨터 판독가능 메모리 내에 저장될 수 있다. 프로그램이 실행되는 경우에, 실시예에서의 방법의 단계가 수행된다. 메모리(저장 매체)는 다음을 포함한다: 판독 전용 메모리(영문: read-only memory, 줄여서 ROM), 랜덤 액세스 메모리(영문: random access memory, 줄여서 RAM), 플래시 메모리(flash memory), 하드 디스크, 솔리드 스테이트 드라이브(solid-state drive), 자기 테이프(영문: magnetic tape), 플로피 디스크(영문: floppy disk), 광학 디스크(영문: optical disc), 그리고 이의 임의의 조합.
끝으로, 전술된 실시예는 본 발명을 한정하기 위해서가 아니라, 본 발명의 기술적 해결안을 기술하기 위해 의도될 뿐임에 유의하여야 한다. 전술된 실시예를 참조하여 본 발명이 상세히 기술되나, 통상의 기술자는, 본 발명의 실시예의 기술적 해결안의 범위로부터 벗어나지 않고서, 여전히 전술된 실시예에 기술된 기술적 해결안에 대해 수정을 행하거나 이의 몇몇 또는 모든 기술적 특징에 대해 균등한 대체를 행할 수 있음을 응당 이해한다.

Claims (24)

  1. 라이브 비디오 송신 방법으로서, 상기 방법은 멀티캐스트 대 유니캐스트(Multicast to Unicast: M2U) 디바이스에 적용되며,
    클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하는 단계 - 상기 UDP 요청은 라이브 채널 식별자를 포함하며, 상기 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨 - 와,
    상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계와,
    상기 UDP 요청에 포함된 소스 IP 주소(source IP address) 및 소스 포트(source port)를 획득하는 단계 - 상기 소스 IP 주소는 상기 클라이언트의 IP 주소이고, 상기 소스 포트는 상기 클라이언트가 상기 UDP 요청을 발신하는 포트임 - 와,
    상기 소스 IP 주소 및 상기 소스 포트에 기반하여 상기 클라이언트에 UDP 유니캐스트 방식으로 상기 비디오 데이터를 발신하는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    상기 소스 IP 주소 및 상기 소스 포트에 기반하여 상기 클라이언트에 UDP 유니캐스트 방식으로 상기 비디오 데이터를 발신하는 단계는,
    상기 비디오 데이터 내의 멀티캐스트 패킷을 획득하는 단계와,
    상기 멀티캐스트 패킷의 목적지 IP 주소(destination IP address)를 상기 UDP 요청의 상기 소스 IP 주소로 변경하고, 상기 멀티캐스트 패킷의 목적지 포트(destination port)를 상기 UDP 요청의 상기 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득하는 단계와,
    상기 UDP 유니캐스트 패킷을 상기 클라이언트에 발신하는 단계를 포함하는,
    방법.
  3. 제2항에 있어서,
    상기 라이브 채널 식별자는 멀티캐스트 주소를 포함하고, 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계는,
    멀티캐스트 가입 메시지를 상기 멀티캐스트 주소에 대응하는 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하는 단계 - 상기 멀티캐스트 가입 메시지는 상기 멀티캐스트 주소를 포함함 - 와,
    상기 U2M 디바이스에 의해 회신된, 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 수신하는 단계를 포함하는,
    방법.
  4. 제2항에 있어서,
    상기 라이브 채널 식별자는 멀티캐스트 주소를 포함하고, 클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하는 단계 전에, 상기 방법은,
    멀티캐스트 가입 메시지를 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하는 단계 - 상기 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨 - 와,
    상기 U2M 디바이스에 의해 발신된, 상기 복수의 라이브 채널의 상기 비디오 데이터를 수신하는 단계를 더 포함하고,
    상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계는, 상기 멀티캐스트 주소에 기반하여, 상기 복수의 라이브 채널의 상기 비디오 데이터로부터 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계를 포함하는,
    방법.
  5. 제2항에 있어서,
    상기 라이브 채널 식별자는 유니폼 리소스 로케이터(Uniform Resource Locator: URL)를 포함하고, 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계는,
    상기 URL에 기반하여 상기 URL에 대응하는 멀티캐스트 주소를 획득하는 단계와,
    멀티캐스트 가입 메시지를 상기 멀티캐스트 주소에 대응하는 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하는 단계 - 상기 멀티캐스트 가입 메시지는 상기 멀티캐스트 주소를 포함함 - 와,
    상기 U2M 디바이스에 의해 회신된, 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 수신하는 단계를 포함하는,
    방법.
  6. 제2항에 있어서,
    상기 라이브 채널 식별자는 유니폼 리소스 로케이터(Uniform Resource Locator: URL)를 포함하고, 클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하는 단계 전에, 상기 방법은,
    멀티캐스트 가입 메시지를 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하는 단계 - 상기 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨 - 와,
    상기 U2M 디바이스에 의해 발신된, 상기 복수의 라이브 채널의 상기 비디오 데이터를 수신하는 단계를 더 포함하고,
    상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계는,
    상기 URL에 기반하여 상기 URL에 대응하는 멀티캐스트 주소를 획득하는 단계와,
    상기 멀티캐스트 주소에 기반하여, 상기 복수의 라이브 채널의 상기 비디오 데이터로부터 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계를 포함하는,
    방법.
  7. 제5항 또는 제6항에 있어서,
    상기 URL에 기반하여 상기 URL에 대응하는 멀티캐스트 주소를 획득하는 단계는,
    멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, 상기 URL에 대응하는 상기 멀티캐스트 주소를 찾는 단계, 또는
    상기 URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하고, 상기 라이브 브로드캐스트 관리 플랫폼에 의해 회신된, 상기 URL에 대응하는 상기 멀티캐스트 주소를 수신하는 단계를 포함하는,
    방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 UDP 요청은 사용자 식별자를 더 포함하고, 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계 전에, 상기 방법은, 상기 사용자 식별자에 대응하는 사용자가 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널을 볼 권한이 있는지를 판정하는 단계와,
    상기 사용자 식별자에 대응하는 상기 사용자가 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널을 볼 권한이 있는 경우, 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계를 수행하는 단계를 더 포함하는,
    방법.
  9. 제8항에 있어서,
    상기 사용자 식별자에 대응하는 사용자가 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널을 볼 권한이 있는지를 판정하는 단계는,
    상기 UDP 요청 내에서 반송된(carried) 상기 사용자 식별자, 확인 정보 및 상기 라이브 채널 식별자를 확인을 위해 상기 라이브 브로드캐스트 관리 플랫폼에 발신하고, 상기 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하는 단계 - 상기 확인 결과는 상기 사용자 식별자에 대응하는 상기 사용자가 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널을 볼 권한이 있는지를 지시하는(indicate) 데에 사용됨 - 또는
    상기 UDP 요청 내에서 반송된 인가 정보 및 상기 라이브 채널 식별자를 확인을 위해 상기 라이브 브로드캐스트 관리 플랫폼에 발신하고, 상기 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하는 단계 - 상기 확인 결과는 상기 사용자 식별자에 대응하는 상기 사용자가 상기 라이브 채널 식별자에 대응하는 상기 채널을 볼 권한이 있는지를 지시하는 데에 사용됨 - 를 포함하는,
    방법.
  10. 라이브 비디오 송신 방법으로서, 상기 방법은 클라이언트에 적용되며,
    사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 멀티캐스트 대 유니캐스트(Multicast to Unicast: M2U) 디바이스에 발신하는 단계 - 상기 UDP 요청은 라이브 채널 식별자를 포함하며, 상기 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨 - 와,
    상기 M2U 디바이스에 의해 발신된, 상기 라이브 채널의 상기 비디오 데이터를 수신하는 단계 - 상기 비디오 데이터는 상기 라이브 채널 식별자에 기반하여 상기 M2U 디바이스에 의해 획득되고, 상기 비디오 데이터는 UDP 유니캐스트 패킷 내에서 반송됨 - 와,
    상기 라이브 채널 상에서 비디오를 플레이하기 위해 상기 UDP 유니캐스트 패킷을 파싱하는(parsing) 단계를 포함하는
    방법.
  11. 제10항에 있어서,
    상기 UDP 요청은 인가 정보를, 또는 사용자 식별자와 확인 정보를, 또는 인가 정보와 사용자 식별자와 확인 정보를 더 포함하는,
    방법.
  12. 멀티캐스트 대 유니캐스트(Multicast to Unicast: M2U) 디바이스로서,
    클라이언트에 의해 발신된 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하도록 구성된 수신 모듈 - 상기 UDP 요청은 라이브 채널 식별자를 포함하며, 상기 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨 - 과,
    상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하도록 구성된 처리 모듈 - 상기 처리 모듈은 상기 UDP 요청에 포함된 소스 IP 주소 및 소스 포트를 획득하도록 또한 구성되되, 상기 소스 IP 주소는 상기 클라이언트의 IP 주소이고, 상기 소스 포트는 상기 클라이언트가 상기 UDP 요청을 발신하는 포트임 - 과,
    상기 소스 IP 주소 및 상기 소스 포트에 기반하여 상기 클라이언트에 UDP 유니캐스트 방식으로 상기 비디오 데이터를 발신하도록 구성된 발신 모듈을 포함하는
    M2U 디바이스.
  13. 제12항에 있어서,
    상기 발신 모듈은,
    상기 비디오 데이터 내의 멀티캐스트 패킷을 획득하고,
    상기 멀티캐스트 패킷의 목적지 IP 주소를 상기 UDP 요청의 상기 소스 IP 주소로 변경하고, 상기 멀티캐스트 패킷의 목적지 포트를 상기 UDP 요청의 상기 소스 포트로 변경하여, UDP 유니캐스트 패킷을 획득하며,
    상기 UDP 유니캐스트 패킷을 상기 클라이언트에 발신하도록 구체적으로 구성된,
    M2U 디바이스.
  14. 제13항에 있어서,
    상기 라이브 채널 식별자는 멀티캐스트 주소를 포함하고, 상기 발신 모듈은 멀티캐스트 가입 메시지를 상기 멀티캐스트 주소에 대응하는 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하도록 또한 구성되되, 상기 멀티캐스트 가입 메시지는 상기 멀티캐스트 주소를 포함하고,
    상기 수신 모듈은 상기 U2M 디바이스에 의해 회신된, 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 수신하도록 또한 구성된,
    M2U 디바이스.
  15. 제13항에 있어서,
    상기 라이브 채널 식별자는 멀티캐스트 주소를 포함하고, 상기 수신 모듈이 상기 클라이언트에 의해 발신된 상기 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하기 전에, 상기 발신 모듈은 멀티캐스트 가입 메시지를 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하도록 또한 구성되되, 상기 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널의 비디오 데이터를 요청하는 데에 사용되고,
    상기 수신 모듈은 상기 U2M 디바이스에 의해 발신된, 상기 복수의 라이브 채널의 상기 비디오 데이터를 수신하도록 또한 구성되며,
    상기 처리 모듈은, 상기 멀티캐스트 주소에 기반하여, 상기 복수의 라이브 채널의 상기 비디오 데이터로부터 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하도록 구체적으로 구성된,
    M2U 디바이스.
  16. 제13항에 있어서,
    상기 라이브 채널 식별자는 유니폼 리소스 로케이터(Uniform Resource Locator: URL)를 포함하고, 상기 처리 모듈은 상기 URL에 기반하여 상기 URL에 대응하는 멀티캐스트 주소를 획득하도록 또한 구성되고,
    상기 발신 모듈은 멀티캐스트 가입 메시지를 상기 멀티캐스트 주소에 대응하는 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하도록 또한 구성되되, 상기 멀티캐스트 가입 메시지는 상기 멀티캐스트 주소를 포함하며,
    상기 수신 모듈은 상기 U2M 디바이스에 의해 회신된, 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 수신하도록 또한 구성된,
    M2U 디바이스.
  17. 제13항에 있어서,
    상기 라이브 채널 식별자는 유니폼 리소스 로케이터(Uniform Resource Locator: URL)를 포함하고, 상기 수신 모듈이 상기 클라이언트에 의해 발신된 상기 사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 수신하기 전에, 상기 발신 모듈은 멀티캐스트 가입 메시지를 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스에 발신하도록 또한 구성되되, 상기 멀티캐스트 가입 메시지는 복수의 멀티캐스트 주소에 대응하는 복수의 라이브 채널에 대응하는 비디오 데이터를 요청하는 데에 사용되고,
    상기 수신 모듈은 상기 U2M 디바이스에 의해 발신된, 상기 복수의 라이브 채널의 상기 비디오 데이터를 수신하도록 또한 구성되며,
    상기 처리 모듈은,
    상기 URL에 기반하여 상기 URL에 대응하는 멀티캐스트 주소를 획득하고,
    상기 멀티캐스트 주소에 기반하여, 상기 복수의 라이브 채널의 상기 비디오 데이터로부터 상기 멀티캐스트 주소에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하도록 구체적으로 구성된,
    M2U 디바이스.
  18. 제16항 또는 제17항에 있어서,
    상기 처리 모듈은, 멀티캐스트 주소 및 URL 간의 사전획득된 대응관계를 질의하고, 상기 URL에 대응하는 상기 멀티캐스트 주소를 찾도록 또한 구성되거나,
    상기 발신 모듈은 상기 URL을 포함하는 멀티캐스트 주소 질의 메시지를 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 상기 수신 모듈은 상기 라이브 브로드캐스트 관리 플랫폼에 의해 회신된, 상기 URL에 대응하는 상기 멀티캐스트 주소를 수신하도록 또한 구성된,
    M2U 디바이스.
  19. 제12항 내지 제18항 중 어느 한 항에 있어서,
    상기 UDP 요청은 사용자 식별자를 더 포함하고, 상기 처리 모듈은, 상기 사용자 식별자에 대응하는 사용자가 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널을 볼 권한이 있는지를 판정하고,
    상기 사용자 식별자에 대응하는 상기 사용자가 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널을 볼 권한이 있는 경우, 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널의 상기 비디오 데이터를 획득하는 단계를 수행하도록 또한 구성된,
    M2U 디바이스.
  20. 제19항에 있어서,
    상기 발신 모듈은 상기 UDP 요청 내에서 반송된 상기 사용자 식별자, 확인 정보 및 상기 라이브 채널 식별자를 확인을 위해 상기 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 상기 수신 모듈은 상기 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록 또한 구성되되, 상기 확인 결과는 상기 사용자 식별자에 대응하는 상기 사용자가 상기 라이브 채널 식별자에 대응하는 상기 라이브 채널을 볼 권한이 있는지를 지시하는 데에 사용되거나,
    상기 발신 모듈은 상기 UDP 요청 내에서 반송된 인가 정보 및 상기 라이브 채널 식별자를 확인을 위해 상기 라이브 브로드캐스트 관리 플랫폼에 발신하도록 또한 구성되고, 상기 수신 모듈은 상기 라이브 브로드캐스트 관리 플랫폼에 의해 회신된 확인 결과를 수신하도록 또한 구성되되, 상기 확인 결과는 상기 사용자 식별자에 대응하는 상기 사용자가 상기 라이브 채널 식별자에 대응하는 상기 채널을 볼 권한이 있는지를 지시하는 데에 사용되는,
    M2U 디바이스.
  21. 클라이언트로서,
    사용자 데이터그램 프로토콜(User Datagram Protocol: UDP) 요청을 멀티캐스트 대 유니캐스트(Multicast to Unicast: M2U) 디바이스에 발신하도록 구성된 발신 모듈 - 상기 UDP 요청은 라이브 채널 식별자를 포함하며, 상기 라이브 채널 식별자에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용됨 - 과,
    상기 M2U 디바이스에 의해 발신된, 상기 라이브 채널의 상기 비디오 데이터를 수신하도록 구성된 수신 모듈 - 상기 비디오 데이터는 상기 라이브 채널 식별자에 기반하여 상기 M2U 디바이스에 의해 획득되고, 상기 비디오 데이터는 UDP 유니캐스트 패킷 내에서 반송됨 - 과,
    상기 라이브 채널 상에서 비디오를 플레이하기 위해 상기 UDP 유니캐스트 패킷을 파싱하도록 구성된 처리 모듈을 포함하는
    클라이언트.
  22. 제21항에 있어서,
    상기 UDP 요청은 인가 정보를, 또는 사용자 식별자와 확인 정보를, 또는 인가 정보와 사용자 식별자와 확인 정보를 더 포함하는,
    클라이언트.
  23. 라이브 비디오 송신 시스템으로서,
    제12항 내지 제20항 중 어느 한 항에 따른 멀티캐스트 대 유니캐스트(Multicast to Unicast: M2U) 디바이스와, 제21항 또는 제22항에 따른 클라이언트를 포함하는
    시스템.
  24. 제23항에 있어서,
    상기 시스템은 유니캐스트 대 멀티캐스트(Unicast to Multicast: U2M) 디바이스를 더 포함하고,
    상기 U2M 디바이스는,
    상기 M2U 디바이스에 의해 발신된, 멀티캐스트 주소를 포함하는 멀티캐스트 가입 메시지를 수신하고, 상기 M2U 디바이스에 상기 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 회신하거나,
    상기 M2U 디바이스에 의해 발신된, 복수의 멀티캐스트 주소에 대응하는 라이브 채널의 비디오 데이터를 요청하는 데에 사용되는 멀티캐스트 가입 메시지를 수신하고, 상기 M2U 디바이스에 상기 복수의 라이브 채널의 상기 비디오 데이터를 회신하도록 구성된,
    시스템.
KR1020197013434A 2016-10-13 2017-10-11 라이브 비디오 송신 방법, 시스템 및 장치 KR20190066046A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610896179.2A CN107948762B (zh) 2016-10-13 2016-10-13 直播视频的传输方法、装置和系统
CN201610896179.2 2016-10-13
PCT/CN2017/105693 WO2018068727A1 (zh) 2016-10-13 2017-10-11 直播视频的传输方法、装置和系统

Publications (1)

Publication Number Publication Date
KR20190066046A true KR20190066046A (ko) 2019-06-12

Family

ID=61905186

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197013434A KR20190066046A (ko) 2016-10-13 2017-10-11 라이브 비디오 송신 방법, 시스템 및 장치

Country Status (6)

Country Link
US (1) US11019367B2 (ko)
EP (1) EP3518551A4 (ko)
JP (1) JP6966542B2 (ko)
KR (1) KR20190066046A (ko)
CN (1) CN107948762B (ko)
WO (1) WO2018068727A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110891183B (zh) * 2018-09-11 2022-11-01 中兴通讯股份有限公司 频道共享方法、设备和计算机可读存储介质
CN110505500A (zh) * 2019-08-06 2019-11-26 咪咕视讯科技有限公司 一种缓存数据发送处理方法及装置
CN110557655B (zh) * 2019-09-06 2021-10-26 卓米私人有限公司 一种视频画面显示方法、装置、电子设备及存储介质
CN111314303B (zh) * 2020-01-17 2022-11-22 网易(杭州)网络有限公司 直播系统、直播系统的数据处理方法及装置
DK180823B1 (en) * 2020-03-02 2022-05-03 Mediathand Aps System and method for providing multicast to unicast services
CN111669610B (zh) * 2020-05-27 2022-08-05 北京奇艺世纪科技有限公司 直播视频的传输方法、系统、装置、服务器、电子设备及存储介质
CN112104905B (zh) * 2020-07-06 2022-10-11 聚好看科技股份有限公司 服务器、显示设备及数据传输方法
US20220132211A1 (en) * 2020-10-27 2022-04-28 Circle Computer Resources, Inc. Low-latency content delivery over a public network
TWI813120B (zh) * 2021-12-30 2023-08-21 日商17Live股份有限公司 用於串流資料存取之系統、方法及電腦可讀媒體
CN115460470B (zh) * 2022-08-19 2024-03-26 烽火通信科技股份有限公司 组播数据转发方法、装置、设备及可读存储介质

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH034348A (ja) * 1989-05-31 1991-01-10 Nec Corp 入出力装置制御アダプタ
US6259701B1 (en) * 1997-09-11 2001-07-10 At&T Corp. Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session
JPH11205312A (ja) * 1998-01-08 1999-07-30 Fujitsu Ltd マルチキャスト通信システム及びマルチキャスト通信システムにおけるマルチキャスト通信方法並びにマルチキャスト通信システムに使用される発信端末及びマルチキャスト通信装置
US6233618B1 (en) * 1998-03-31 2001-05-15 Content Advisor, Inc. Access control of networked data
WO2002003614A2 (en) * 2000-06-29 2002-01-10 Cachestream Corporation Virtual multicasting
JP2002185528A (ja) * 2000-12-11 2002-06-28 Nippon Telegr & Teleph Corp <Ntt> Ipマルチキャスト通信装置及びコンテンツ提供方法
US7549160B1 (en) * 2000-12-21 2009-06-16 Cisco Technology, Inc. Method and system for authenticated access to internet protocol (IP) multicast traffic
US7724744B2 (en) * 2001-04-30 2010-05-25 At&T Corp. Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session
US7107609B2 (en) * 2001-07-20 2006-09-12 Hewlett-Packard Development Company, L.P. Stateful packet forwarding in a firewall cluster
GB2414360B (en) * 2004-05-18 2006-10-18 Motorola Inc Data communication system,router and method for routeing data
US7505447B2 (en) * 2004-11-05 2009-03-17 Ruckus Wireless, Inc. Systems and methods for improved data throughput in communications networks
US20070019645A1 (en) * 2005-07-05 2007-01-25 Deepthy Menon Method and system for multicasting data in a communication network
US20070280232A1 (en) * 2006-05-31 2007-12-06 Wojciech Dec Dynamic delivery of multicast service notification messages
CN101473616B (zh) * 2006-06-27 2011-12-14 汤姆森特许公司 用于可靠地传递多播数据的方法和装置
JP4886500B2 (ja) * 2006-12-20 2012-02-29 株式会社日立製作所 データ転送装置、及びそのシステム
US20080198771A1 (en) * 2007-02-21 2008-08-21 Iyengar Ranganath Gorur Method, Apparatus or Software for a Multicast Network for Providing Indications of Active Multicast Groups to one or more Multicast Receivers
CN100551044C (zh) * 2007-04-06 2009-10-14 华为技术有限公司 实现视频直播的方法、设备及系统
US8165122B2 (en) 2009-05-26 2012-04-24 Alcatel Lucent System and method for converting unicast client requests into multicast client requests
US10264029B2 (en) * 2009-10-30 2019-04-16 Time Warner Cable Enterprises Llc Methods and apparatus for packetized content delivery over a content delivery network
US8817684B2 (en) * 2010-12-17 2014-08-26 Verizon Patent And Licensing Inc. Adaptive mobile multicasting for wireless networks
CN102523098B (zh) * 2011-11-21 2014-12-10 华为技术有限公司 一种业务接入的方法、装置及系统
US9402107B2 (en) * 2013-03-15 2016-07-26 Time Warner Cable Enterprises Llc Apparatus and methods for delivery of multicast and unicast content in a content delivery network
US9066153B2 (en) * 2013-03-15 2015-06-23 Time Warner Cable Enterprises Llc Apparatus and methods for multicast delivery of content in a content delivery network
US9432204B2 (en) * 2013-08-24 2016-08-30 Nicira, Inc. Distributed multicast by endpoints
JP2016536914A (ja) * 2013-09-13 2016-11-24 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ストリーミングメディア送信方法及びシステム、ユーザ機器及びサーバ
JP6329964B2 (ja) * 2013-10-30 2018-05-23 サターン ライセンシング エルエルシーSaturn Licensing LLC 送信装置、送信方法、受信装置、及び、受信方法
US20150172731A1 (en) * 2013-12-18 2015-06-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing alternate content
US20170127147A1 (en) * 2014-03-31 2017-05-04 British Telecommunications Public Limited Company Multicast streaming
US9787751B2 (en) * 2014-08-06 2017-10-10 At&T Intellectual Property I, L.P. Method and apparatus for delivering media content utilizing segment and packaging information
US10735823B2 (en) * 2015-03-13 2020-08-04 Telefonaktiebolaget Lm Ericsson (Publ) System and method for optimized delivery of live ABR media
CN104954313B (zh) * 2015-05-19 2019-01-25 鼎点视讯科技有限公司 一种分布式ipqam系统
US10063609B2 (en) * 2015-08-19 2018-08-28 Qualcomm Incorporated Methods and apparatus for multimedia conferences using single source multi-unicast
CN105657534A (zh) * 2016-01-07 2016-06-08 烽火通信科技股份有限公司 基于Android的网络电视播放切换系统及方法
CN106487690A (zh) * 2016-09-23 2017-03-08 乐视控股(北京)有限公司 数据发送方法及装置

Also Published As

Publication number Publication date
US20190238897A1 (en) 2019-08-01
EP3518551A1 (en) 2019-07-31
WO2018068727A1 (zh) 2018-04-19
JP6966542B2 (ja) 2021-11-17
CN107948762A (zh) 2018-04-20
US11019367B2 (en) 2021-05-25
CN107948762B (zh) 2021-05-11
EP3518551A4 (en) 2019-11-13
JP2019537342A (ja) 2019-12-19

Similar Documents

Publication Publication Date Title
KR20190066046A (ko) 라이브 비디오 송신 방법, 시스템 및 장치
US10205971B2 (en) Media data live broadcast method, device, and system
EP3311586B1 (en) Signaling cached segments for broadcast
US11277456B2 (en) System and method for delivering an audio-visual con tent to a client device
US20130114597A1 (en) Proxy server, relay method, communication system, relay control program, and recording medium
KR102288815B1 (ko) Dash 표준 및 flute 프로토콜에 기초한 전송 시 패킷 손실을 처리하는 방법
JP2014517558A (ja) ファイル配信方式を使用したipブロードキャストストリーミングサービスの配信
JP5738865B2 (ja) Mpeg−2ts多重化マルチメディアストリームのエレメンタリパケットの選択による、mpeg−2ts多重化マルチメディアストリームの配信
KR20110108366A (ko) 신뢰성 있는 멀티캐스트 스트리밍을 위한 방법 및 장치
US8537992B2 (en) System and method for recording communication activities
KR102381335B1 (ko) 모바일 사용자 장치들에 컨텐츠를 전송하는 방법
WO2011017982A1 (zh) 媒体业务处理系统、方法及终端
JP2018515960A (ja) マルチメディアブロードキャストマルチキャストサービスに基づくフレキシブルブロードキャストサービスのための方法及び装置
KR20230129247A (ko) 멀티캐스트 신호 처리 방법 및 장치
Hammershøj et al. Next-generation ott distribution architecture supporting multicast-assisted abr (mabr) and http/3 over quic
US8295200B2 (en) Discovering multicast routing capability of an access network
EP3595254A1 (en) Multicast signal transmission/reception method and device
KR20080056070A (ko) 휴대인터넷상에서 멀티캐스트 방식을 이용한 ucc방송 및디지털방송 재전송 방법
Hammershøj et al. The Next-Generation Television Broadcasting Test Platform in Copenhagen
KR101040312B1 (ko) 하이브리드 ip―tv 서비스 제공 시스템 및 방법
EP3588847A1 (en) Multicast signal transmitting and receiving method and device
KR100621328B1 (ko) 멀티캐스팅에 관한 정보를 이용한 멀티미디어 스트리밍서비스 제공 방법 및 시스템
Haems et al. Enabling adaptive and reliable video delivery over hybrid unicast/broadcast networks
CN117459747A (zh) 一种数据传输方法以及装置
Alliance File and Stream Distribution for Mobile Broadcast Services

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X601 Decision of rejection after re-examination