KR101633769B1 - Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법 - Google Patents

Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법 Download PDF

Info

Publication number
KR101633769B1
KR101633769B1 KR1020147029625A KR20147029625A KR101633769B1 KR 101633769 B1 KR101633769 B1 KR 101633769B1 KR 1020147029625 A KR1020147029625 A KR 1020147029625A KR 20147029625 A KR20147029625 A KR 20147029625A KR 101633769 B1 KR101633769 B1 KR 101633769B1
Authority
KR
South Korea
Prior art keywords
message
field
client
message box
mpd
Prior art date
Application number
KR1020147029625A
Other languages
English (en)
Other versions
KR20140139042A (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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20140139042A publication Critical patent/KR20140139042A/ko
Application granted granted Critical
Publication of KR101633769B1 publication Critical patent/KR101633769B1/ko

Links

Images

Classifications

    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/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/70Media network packetisation
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26283Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for associating distribution time parameters to content, e.g. to generate electronic program guide data
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • 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
    • H04N21/6332Control signals issued by server directed to the network components or client directed to 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/643Communication protocols
    • H04N21/64322IP
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • 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/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • 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/81Monomedia components thereof
    • H04N21/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • H04N21/814Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts comprising emergency warnings
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Marketing (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

하이퍼텍스트 전송 프로토콜을 통한 동적 적응형 스트리밍(dynamic adaptive streaming over hypertext transfer protocol, DASH)에서의 비동기 이벤트 통지 및 메시지 처리를 위한 시스템 및 방법 실시예를 제공한다. 상기 실시예는 네트워크 서버에서 클라이언트로, 메시지 박스를 세그먼트 파일로 전송하는 것을 포함하고, 상기 메시지 박스는 암호화, 상기 클라이언트로부터의 콜백 스케줄링을 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인수(argument)를 가진다. 상기 네트워크 서버는 또한 DASH 이벤트를 취득하기 위한 미디어 표현 기술(media presentation description, MPD)을 재로딩하기 위해 상기 클라이언트에 메시지 처리 기술자(message handling descriptor)를 전송한다. 그 후, 클라이언트는 상기 메시지 박스 및 상기 메시지 처리 기술자를 사용하여 상기 MPD에 대한 범용 자원 위치자(universal resource locator, URL)를 구성하고, 상기 URL을 상기 네트워크 서버에 다시 전송한다. 상기 URL를 수신한 후, 상기 네트워크 서버는 상기 클라이언트에 상기 MPD를 전송하고, 그러면 상기 MPD를 사용하여 비동기 이벤트의 세그먼트를 요청한다.

Description

ISO 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법 {SYSTEM AND METHOD FOR SECURE ASYNCHRONOUS EVENT NOTIFICATION FOR ADAPTIVE STREAMING BASED ON ISO BASE MEDIA FILE FORMAT}
본 발명은 미디어 스트리밍 분야에 관한 것으로, 구체적인 실시예에서, 국제 표준화 기구(International Organization for Standardization, ISO) 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법에 관한 것이다.
본 출원은, Alexander Giladi가 "System and Method for Secure Asynchronous Event Notification for Adaptive Streaming Based on ISO Base Media File Format"이라는 명칭으로 2012년 4월 5일 출원한 미국 출원 제13/857,907호, 및 Alexander Giladi가 "System and Method for Secure Asynchronous Event Notification for Adaptive Streaming"이라는 명칭으로 2012년 4월 5일에 출원한 미국 가출원 제61/620,810호에 대한 혜택을 주장하며, 인용에 의해 그 전체가 재현된 것처럼 본 명세서에 포함된다.
본 명세서에서 비동기 이벤트라고 하는, 예정되지 않은 또는 예상하지 못한 이벤트는, 예를 들어 인터넷 또는 다른 인터넷 프로토콜(Internet Protocol) 기반 네트워크를 통한 미디어 스트리밍 또는 다운로딩의 경우에 발생할 수 있다. 비동기 이벤트는 라이브 방송이나 라이브 스트리밍 중에 또는 주문형 VOD(video on demand, VoD) 콘텐츠 다운로딩 중에 발생할 수 있다. 비동기 이벤트는 광고와 같은 디지털 프로그램의 삽입에 사용되며, 또한 긴급 메시징(emergency messaging) 및 정전 관리(blackout management)와 같은 애플리케이션에도 사용될 수 있다. 타겟 광고(targeted advertisement)는, 인터넷과 케이블/IP 텔레비전(IPTV) 환경, 모두에서 현재 엔터테인먼트 에코시스템(ecosystem)의 수익원이다. 케이블/IPTV 환경에서, 타겟 광고 삽입은 (마크 업을 통한) SCTE-35 및 (광고 서버의 상호 작용을 통한) SCTE-30/130을 통해 표준화되어 있고, 여러 공급업체에서 이용할 수 있다.
스케줄 변경은 라이브 이벤트에서 발생할 수 있다. 예를 들어, 포뮬러 원 경주(Formula One racing)의 2011 캐나다 그랑프리 중에, 폭우가 경주로(racing circuit)를 강타했고 경주는 시작 약 30분 후에 중단되었으며, 2시간 이상 뒤에 재개되었다. 이러한 상황은, 예를 들어 광고 또는 다른 비동기 이벤트를 삽입하기 위한, 방송사에 의한 스케줄 변경을 트리거한다. 방송사는 예상치 못한 지연 또는 주요 방송 이벤트의 취소 후에 대안 프로그래밍(예를 들어, 광고)을 실행할 수 있다. 다른 예에서, 축구 또는 하키 게임의 점수가 동점이면, 게임은 연장전으로 간다. 연장전은 어디든 수분에서 수 시간(몇 번의 휴식 있음) 지속될 수 있고 스케줄링되어 있는 콘텐츠는 지연 또는 취소될 수 있다. 이러한 상황에서, 광고, 긴급 메시징 또는 정전 경보를 삽입하는 등의 비동기 이벤트를 처리하기 위한 효율적인 적응형 스트리밍 방식에 대한 필요성이 존재한다.
일 실시예에 따르면, 하이퍼텍스트 전송 프로토콜을 통한 동적 적응형 스트리밍(dynamic adaptive streaming over hypertext transfer protocol, DASH)에서의 이벤트 통지 방법은, 네트워크 서버에서 클라이언트로, 메시지 박스(message box)를 세그먼트 파일(segment file)로 전송하는 단계를 포함하고, 상기 메시지 박스는 암호화, 상기 클라이언트로부터의 콜백 스케줄링을 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식(messaging scheme)에 따라 하나 이상의 인수(argument)를 가진다. 상기 방법은 또한 DASH 이벤트를 취득하기 위한 미디어 표현 기술(media presentation description, MPD)을 재로딩(reloading)하기 위해 상기 클라이언트에 메시지 처리 기술자(message handling descriptor)를 전송하는 단계; 상기 클라이언트로부터 상기 MPD에 대한 범용 자원 위치자(universal resource locator, URL)를 수신하는 단계 - 상기 URL은 상기 메시지 박스 및 상기 메시지 처리 기술자를 사용하여 구성됨 -; 및 상기 클라이언트에 상기 MPD를 전송하는 단계를 더 포함한다.
다른 실시예에 따르면, DASH에서의 이벤트 통지 방법은 클라이언트 단말기에서, 클라이언트 단말기에서, 메시지 박스를 네트워크 구성요소로부터 세그먼트 파일로 수신하는 단계를 포함하고, 상기 메시지 박스는 암호화, 상기 클라이언트로부터의 콜백 스케줄링을 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인수를 가진다. 상기 방법은 또한 DASH 이벤트를 취득하기 위한 MPD를 재로딩하기 위해 메시지 처리 기술자를 수신하는 단계; 상기 메시지 박스 및 상기 메시지 처리 기술자를 사용하여 상기 MPD에 대한 URL을 구성하는 단계; 상기 MPD에 대한 URL을 전송하는 단계; 및 상기 DASH 이벤트에 대한 MPD를 수신하는 단계를 더 포함한다.
다른 실시예에 따르면, DASH에서의 이벤트 통지를 지원하는 네트워크 구성요소는, 프로세서 및 상기 프로세서에 의한 실행을 위해 프로그래밍을 저장하는 컴퓨터로 판독 가능한 저장 매체를 포함한다. 상기 프로그래밍은 클라언트에게 메시지 박스를 세그먼트 파일로 전송하기 위한 명령어 - 상기 메시지 박스는 암호화, 상기 클라이언트로부터의 콜백을 스케줄링하기 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인수를 가짐 -; DASH 이벤트를 취득하기 위한 MPD를 재로딩하기 위해 상기 클라이언트에 메시지 처리 기술자를 전송하기 위한 명령어; 상기 클라이언트로부터 상기 MPD에 대한 URL를 수신하기 위한 명령어 - 상기 URL은 메시지 박스 및 상기 메시지 처리 기술자를 사용하여 구성됨-; 및 상기 MPD를 상기 클라이언트에 전송하기 위한 명령어를 포함한다.
또 다른 실시예에 따르면, DASH에서의 이벤트 통지를 지원하는 사용자 디바이스는 프로세서 및 상기 프로세서에 의한 실행을 위해 프로그래밍을 저장하는 컴퓨터로 판독 가능한 매체를 포함한다. 상기 프로그래밍은 네크워크 구성요소로부터, 메시지 박스를 세그먼트 파일로 수신하기 위한 명령어 - 상기 메시지 박스는 암호화, 상기 사용자 디바이스로부터의 콜백 스케줄링을 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인자를 가짐 -; DASH 이벤트를 취득하기 위한 MPD를 재로딩하기 위해 메시지 처리 기술자를 수신하기 위한 명령어; 상기 메시지 박스와 상기 메시지 처리 기술자를 사용하여 상기 MPD에 대한 URL을 구성하기 위한 명령어; 상기 MPD에 대한 URL을 전송하기 위한 명령어; 및 상기 DASH 이벤트에 대한 MPD를 수신하기 위한 명령어를 포함한다.
본 발명 및 그 이점에 대한 더욱 완전한 이해를 위해, 이제 첨부도면과 함께 다음의 설명을 참조한다.
도 1은 DASH 아키텍처의 일례이다.
도 2는 DASH를 이용한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 방법의 일 실시예에 대한 흐름도이다.
도 3은 여러 실시예를 구현하는 데 사용될 수 있는 처리 시스템에 대한 도면이다.
이하에 본 발명의 바람직한 실시예의 실시 및 이용에 대해 상세하게 논의한다. 그러나, 본 발명이 광범위하고 다양한 구체적인 상황에 있어서 구체화할 수 있는 적용 가능한 많은 발명의 개념을 제공한다는 것을 이해하여야 한다. 논의된 구체적인 실시예는 본 발명을 실시 및 이용하는 구체적인 방식에 대한 예시일 뿐이며, 본 발명의 범위를 한정하는 것은 아니다.
MPEG-DASH로도 알려져 있는, 하이퍼텍스트 전송 프로토콜을 통한 동적 적응형 스트리밍(DASH)은 종래의 하이퍼텍스트 전송 프로토콜(Hypertext Transfer Protocol, HTTP) 웹 서버로부터 전달되는 인터넷을 통한 미디어 콘텐츠의 고품질 스트리밍을 가능하게 하기 위해 개발되었다. 도 1은 클라이언트(예를 들어, 가입자 또는 일반 사용자)에 미디어(예를 들어, 비디오, 음악, 게임, 애플리케이션 등)를 스트리밍하기 위한 DASH 아키텍처(100)의 일례를 나타낸다. 미디어는 라이브 방송 이벤트 또는 프로그램, 주문형 콘텐츠 또는 비디오, 또는 두 가지 모두를 포함할 수 있다. 또, 미디어는 광고, 긴급 메시지, 정전 경보, 또는 기타 이벤트 등의 비동기 이벤트를 포함할 수 있다.
DASH 아키텍처(100)는, 국제 표준화 기구(ISO) 베이스 미디어 파일 형식(BMFF)에 따른 세그먼트 파일의 형태와 같은, 미디어 콘텐츠를 제공하는 하나 이상의 미디어 서버(110)를 포함한다. DASH 아키텍처(100)는, 셋톱 박스(set-top box, STB), 데스크톱 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트폰, 또는 임의의 다른 형태의 모바일/개인용 디바이스 등의, 사용자 장비 또는 디바이스를 포함하는 하나 이상의 클라이언트(120)를 포함한다. 클라이언트(120)는 DASH에 따라 임의의 액세스 네트워크(130)를 통해, 예를 들어, 인터넷, 무선 근거리 통신망(WLAN), WiFi 네트워크 또는 핫스팟, 셀룰러 네트워크, 케이블 인프라스트럭처, 광섬유 백본 또는 액세스 네트워크, 또는 이들의 조합을 통해, 서버(110)로부터 미디어 콘텐츠를 수신하도록 구성되어 있다. HTTP를 사용하여 콘텐츠를 수신하기 위해서는, 클라이언트(120)는 먼저 그 콘텐츠를 요청하여야 한다.
DASH 아키텍처(100)에서, 서버(110) 내의 오리지널 콘텐츠는 서로 다른 속도(rate)의 미디어 스트림(예컨대, 비디오 스트림)으로 인코딩될 수 있다. 비디오 또는 다른 미디어 콘텐츠는 액세스 네트워크(130)를 통해 서버(100)로부터 클라이언트(120)에 개별적으로 그리고 독립적으로 스트리밍될 수 있는 복수의 세그먼트로 분할될 수 있다. 또한 서버(10)는 예를 들어, 비디오 또는 프로그램의 세그멘트 파일의 그룹 각각에 대한, 비디오/미디어 파일에 대응하는 미디어 표현 기술(MPD)을 제공한다. 서버(110)는 또한, 서버(110) 또는 네트워크(130) 내의 MPD 파일의 위치를 나타내기 위해 MPD 파일에 대한 범용 자원 위치자(URL)를 제공한다.
MPD는 서버(110)로부터 클라이언트(120)에 전송되고 이용 가능한 콘텐츠(예컨대, 콘텐츠 세그먼트)의 매니페스트(manifest)(예컨대, 리스트), 그것의 여러 대안, URL 어드레스(예컨대, 콘텐츠 세그먼트), 및 기타 특징을 기술한다. MPD는 콘텐츠 재생을 위해 DASH 클라이언트(120)에 의해 취득된다. MPD는 HTTP를 사용하여 콘텐츠 서버(110)로부터 클라이언트(120)에 전달될 수 있다. MPD를 파싱(parsing)함으로써, 클라이언트(120)는 콘텐츠(예컨대, 프로그램) 타이밍, 콘텐츠 또는 미디어 가용성(availability), 미디어 유형, 해상도, 최소 및 최대 대역폭, 각종 인코딩된 멀티미디어 구성 요소의 대안의 존재, 접근성 기능(accessibility feature) 및 필요한 디지털의 권한 관리(digital rights management, DRM), 네트워크상의 미디어 구성요소 위치, 및 다른 콘텐츠 특징에 관해 알게 된다. 미디어 콘텐츠, 예를 들어 주문형 비디오 또는 방송 프로그램은, 별개로 전달될 수 있고, 각각이 콘텐츠의 청크(chunk) 또는 부분(portion)을 나타내고 MPD 내에 나타나 있는 대응하는 URL 및 지속시간을 가지는 복수의 어드레싱된 세그먼트로 분할된다.
MPD 내의 정보를 사용하여, 클라이언트(120)는 적절한 인코딩 대안을 선택하고 HTTP GET 요청을 이용하여 콘텐츠의 세그먼트를 인출(fetch)하여 콘텐츠의 스트리밍을 시작한다. 예를 들어, 정보는 서버(110) 및/또는 네트워크(130) 내의 파일/세그먼트의 위치를 포함한다. MPD 정보로부터, 클라이언트(120)는 또한 클라이언트(120)에 대한 네트워크 상태에 기초하여 비디오 속도(video rate)를 결정(예컨대, 적절한 다운로드 속도와 맞는 어떤 세그먼트 파일을 취득할 것인지 결정)할 수 있다.
또한, 클라이언트(120)는 주기적으로, 또는 미디어 다운로드 또는 스트리밍 속도를 조정하기 위해 필요한 때, MPD 파일을 취득할 수 있다. 비동기 이벤트를 구현하려면, MPD 내의 매니페스트를 클라이언트(120)에 재로딩하여야 한다. 콘텐츠 재로딩은 서버 측 이벤트 처리(예컨대, 서버(110)가 광고를 삽입)에 의해 그리고 삽입된 이벤트를 얻기 위한 클라이언트 측의 세그먼트 URL을 사용하여 제공될 수 있다. DASH는 (클라이언트 측으로부터의) 폴링에 의해 매니페스트를 재로딩하기 위해 함께 사용될 수 있는 MPD 위치 URL 및 업데이트 빈도를 제공한다. 그러나, MPD 위치 URL을 재로딩하기 위한 DASH 접근법은 원하지 않는 지연 또는 원하지 않는 빈번한 재로딩 시도를 초래한다. DASH는, 세그먼트 파일의 "styp" 박스 내에 존재하는 경우에 MPD의 기간의 마지막 세그먼트를 식별할 수 있게 해주는, ISO 파일 형식 라벨(formatlabel) "lseg"를 정의한다. "styp" 박스는 서버(110)로부터 클라이언트(120)에 전송되는 세그먼트 파일 내의 코드(예컨대, 구문(syntax))일 수 있다. MPD는 복수의 기간을 포함하고, 여기서 기간은 시간 축을 따르는 프로그램 또는 콘텐츠 간격이다. 각 기간은 시작 시각과 지속 시간을 가진다. 예를 들어, 하나의 광고 세그먼트 또는 다수의 세그먼트 광고가 기간 이상으로 삽입될 수 있다. 검출된 경우, 기간은 유효하게 종료하고, 다음 기간이 시작될 수 있다. 추가 기간이 없는 경우, MPD 재로드 또는 업데이트가 트리거된다.
이 DASH 접근법은, 몇 가지 목적을 위해서는 충분하지만, 여러 문제를 안고 있다. 한 가지 문제는 MPD URL이 변경되지 않기 때문에, MPD가 항상 동일한 URL (같은 위치)로부터 인출된다는 것이다. 또한, "lseg"로 지정되는 모든 이벤트는 즉각적이고, 이는 2초 세그먼트 및 예상되는 스케줄 변경을 가진다는 것을 의미한다. 이러한 이벤트의 경우, 클라이언트는 어나운스먼트(announcement)에 채널을 맞출 수 있도록 하기 위해 MPD의 업데이트에 최대 2초를 가진다. 이는 (이러한 높은 빈도로 인해) 요청의 범람을 낳고, 이는 지연이나 네트워크 혼잡을 야기할 수 있다. 다른 문제는 한 가지 유형 이상의 가능한 이벤트(예컨대, 광고, 스케줄 변경, 정전, 긴급 경보, 또는 기타)가 있을 수 있다는 것이다. 이러한 광고 및 긴급 메시징과 같은, 미리 알려져 있는 이벤트 처리는 별도의 MPD 재로딩을 필요로 할 수 있다. 또 다른 문제는, 개인화 콘텐츠(personalized content)의 경우, 클라이언트 특정(client-specific) MPD가 확장성(scalability)을 제한한다는 것이다. 또한, 상기한 DASH 접근법은 클라이언트(120)에 대해 동시에 다수의 이벤트를 스트리밍 또는 다운로딩하는 것을 허용하지 않는다.
MicorsoftTM에 의한 DASH 기반의 DECE CSF 제안은 메시지 박스,'mesg'를 세그먼 파일(예컨대, 세그먼트 파일의 시작 부분)에 추가함으로써 상기한 문제 중 일부를 해결한다. 'mesg' 박스는 고유 메시지 방식(또는 구조) 및 메시지 신원(identification)을 가진다. 클라이언트에서 'mesg' 박스를 해석함으로써, MPD가 오래된 것임을 깨닫고 따라서 새로운 URL을 사용하여 MPD를 재로드 또는 업데이트하도록 트리거 할 수 있다. 이 제안은 또한 MPD 재로드를 강제하고 또한 선택사항인 새로운 MPD URL을 제공하는 별도의 방식(extra scheme)을 추가한다. 그러나, 이 제안은 또한 몇 가지 문제를 안고 있다. 첫 번째, 상기 박스는 정의되지 않은 메시지 타이밍 및 처리를 남겨두어 클라이언트가 메시지 방식을 알지 못하는 한, 클라이언트는 메시지를 처리할 수 없다. 이것은, 클라이언트가, 콘텐츠를 재생할 수 있지만, 예를 들어 콘텐츠와 함께 긴급 메시지를 표시할 수 없을, 가능성을 낳는다. 두 번째 문제는, 상이한 엔티티에 의해 삽입된 이벤트를 구별하는 것이 곤란하다는 것이다. 또한, 이 접근법에서, MPD URL 업데이트 메시지는 유효한 URL을 악성인 것으로 대체하는 것에 의한 단순한 공격을 가능하게 한다.
DASH를 사용한 적응형 스트리밍을 위한 시스템 및 방법 실시예를 제공한다. 본 실시예는 적응형 스트리밍에서 비동기 이벤트 처리 프레임워크(framework)를 제공한다. 본 실시예는 통일된(uniform) 암호화, 스케줄링 및 인수 인터페이스의 추가에 의한, 메시지 박스, 'mesg'의 구문 확장을 포함한다. 추가적인 MPD 기능(functionality)이 메시지 유형과 방식에 대한 분명한 클라이언트의 지식 없이도 풍부한 표상 상태 전송(representational state transfer, REST) 애플리케이션 프로그래밍 인터페이스(API)의 구현을 허용하도록 추가된다. 이것은 클라이언트가, 서버 측에서 작업(operation)으로서 해석될 수 있는 URL을 구성하는 데 'mesg' 박스 내의 정보를 사용할 수 있음을 의미한다. 메시지 박스의 확장 및 이러한 MPD 기능의 추가는 DASH의 MPD 및 ISO BMFF로 일반적인 비동기 스트림 이벤트 처리를 가능하게 한다. ISO BMFF는 현재 이러한 기능이 없다. 이러한 기능은 또한 이벤트 처리 메커니즘 및 DASH 클라이언트에 의해 재생되는 콘텐츠의 변경을 강제하는 기능에 대한 일반적인 공격으로부터의 보안 및 보호 기능을 추가한다. 이 추가된 기능은, 예컨대 케이블/IPTV/통신 시스템, 콘텐츠 전달 네트워크(content delivery network, CDN), DASH 시스템, 또는 다른 적절한 시스템에서의, 광고 삽입, 타겟 광고, 긴급 메시징, 정전 처리 및/또는 다른 이벤트를 구현하는데 사용될 수 있다.
일 실시예에서, 일반적인 이벤트 통지 메시지 구조는 메시지 박스에 대한 ISO 파일 형식을 확장함으로써 다음과 같이 구성되어 있다:
Box Type: 'mesg'
Container: 'tfdt'
Mandatory: No
Quantity: Zero or more
Syntax
aligned(8) class MessageBox
extends FullBox('mesg', version = 0, flags = 0)
{
string message_scheme_URI;
unsigned int(16) message_scheme_version;
unsigned int(1) is_encrypted;
unsigned int(1) is_cancelled;
unsigned int(3) schedule;
unsigned int(11) reserved;
if ( is_encrypted == 0x01 )
{
unsigned int(24) IsEncrypted;
unsigned int(8) IV_size;
unsigned int(8)[16] KID;
unsigned int(8) IV[IV_size];
unsigned int(8)[16] md5sum;
}
unsigned int(8)[16] message_id;
// encryption may start here
if ( schedule != 0x00 )
{
unsigned int(64) ntp_time;
}
unsigned int(8) argc;
string argv[argc];
}
상기한 확장된 'mesg' 박스는 다음의 파라미터 또는 필드를 포함한다:
message_scheme_URI: 이것은 메시지 박스에 대한 메시징 방식 또는 구조의 고유 식별자이다. 이 식별자는 아래에 설명된 바와 같이 메시지 박스에 대한 올바른 메시지 처리기를 찾는 데 사용된다:
message_scheme_version : 이 필드 또는 파라미터는 상기 방식의 버전이다;
is_encrypted: 이 필드가 1로 설정되면, 메시지 정보가 message_id 필드에서 시작하여 암호화된다;
is_cancelled: 이 필드는 주어진 메시지 식별자(message_id)를 가지는 메시지 콜백(클라이언트로부터 서버/네트워크로의)이 취소되었음 나타낸다. message_id를 가지는 활성 메시지가 없으면 콜백 메시지 정보는 폐기된다. 콜백 메시지는 콜백이 완료될 때까지 활성 상태로 간주된다;
schedule: 이 필드는 아래의 표 1과 같이 구성 가능한 스케줄링 정보를 나타낸다;
message_id: 이것은 주어진 메시지 박스의 고유 식별자이다;
IsEncrypted: 이 필드는, 예컨대 ISO/IEC 23001-7에 정의된 바와 같이, 암호화 상태를 나타낸다;
IV_size: 이 필드는, 예컨대 ISO/IEC 23001-7에 정의된 바와 같이, 초기화 벡터의 크기이다;
KID: 이것은 메시지 박스의 암호화에 사용된 키의 식별자이다;
InitializationVector[IV_size]: 이것은 초기화 벡터이다;
md5sum:이 필드는 암호화된 메시지의 MD5 합을 나타낸다. 이것은 해독된 메시지의 정확성을 보장하기 위해 필요할 수 있다; 그리고
ntp_time: 이것은 스케줄링된 메시지 콜백에 대한 콜백 타이밍을 나타내며, 표 1에 나타낸 바와 같이, schedule 필드에 따라 사용된다.
Figure 112014100975270-pct00001
argc: 이것은 인수의 수이다.
argv: 이 필드는, 방식 특정(scheme-specific)일 수 있는, 메시지 박스에 추가된 인수를 포함한다.
또, 클라이언트에서 상기한 'mesg' 박스를 적절히 처리하기 위해 MessageHandler 요소(element)가 구성되고 사용된다. 'mesg' 박스의 처리는 암호화된 'mesg' 박스의 해독 및 'mesg' 박스에는 제공되지 않은 특정 메시지 방식 정보를 선택적으로 나타내는 것을 포함한다. MessageHandler 요소는 복수의 속성을 포함하고 클라이언트/네트워크로부터 클라언트에 전송되어(이하에 나타낸 바와 같이, 기술자 내에) 'mesg' 박스를 가지는 클라이언트에 의해 처리되어 (이벤트에 따른) 적합한 MPD URL을 생성한다. MessageHandler 요소를 포함하고 서버로부터 클라이언트로 전송되는 하나 이상의 메시지 처리 기술자가 있을 수 있다. 클라이언트에 수신된 'mesg' 박스에 대한 올바른 기술자는 MessageHandler의 @schemeIdUri 속성의 값을 'mesg' 박스 내의 message_scheme_URI 필드의 값과 대조(matching)함으로써 발견된다. 표 2는 MessageHandler 요소에 사용되는 속성을 나타낸다.
Figure 112014100975270-pct00002
Figure 112014100975270-pct00003
MessageHandler의 @messageCallbackUrTemplate 속성은 클라이언트에서의 MPD 재로딩 또는 업데이트를 위한 MPD URL을 구성하기 위해 클라이언트에 의해 사용될 수 있는, (메시지 처리 기술자 내의) 템플릿 변수 $MessageID$, $KeyID$, 및 $Argv[N]$ 중 적어도 하나에 기초할 수 있다. 템플릿 변수는, 표 2에 기재된 바와 같이, 'mesg' 박스 내의 필드로부터 (클라이언트에서) 할당된 값일 수 있다.
Figure 112014100975270-pct00004
Figure 112014100975270-pct00005
일 실시예에서, DASH 클라이언트에 의해 재생되는 콘텐츠의 변경을 강제하기 위해, 다음의 통일 자원 이름(uniform resource name (URN): "urn:mpeg:dash:mpdupdate"을 가지는 MessageHandler 요소 또는 기술자 내에(예컨대, 메시지 내에) 클라이언트에 대해 서버 또는 네트워크에 의해 정의된 바와 같이 MPD 업데이트 또는 재로드가 사용된다. ('mesg' 박스를 처리하기 위한) 대응하는 MessageHandler 요소는 @messageCallbackUrTemplate 속성을 포함하지만 @value 속성은 포함하지 않는다. messageCallbackUrTemplate 속성에 의거하여 구성된 URL에 대한 HTTP GET 요청은 유효한 MPD를 반환한다. ISO/IEC 23009-1 sec. 5.4과 유사한 규칙이 이 URL을 통해 MPD 업데이트에 적용된다.
예를 들어, 강제 MPD 업데이트를 확립하기 위해, 'mesg' 박스의 콘텐츠는 다음을 포함한다:
mesg.message_scheme_URI = "urn:mpeg:dash:mpdupdate"
mesg.message_scheme_version = 0;
mesg.is_encrypted = 0;
mesg.is_signed = 0;
mesg.schedule = 0;
클라이언트에 대한 MessageHandler를 나타내는 대응하는 기술자의 콘텐츠는 다음을 포함한다:
<MessageHandlerschemeIdUri="urn:mpeg:dash:mpdupdate"messageCallbackUrTemplate
=https://cdn1.example.com/mpd/$MessageID$ />. 클라이언트는, 템플릿 변수에 'mesg' 박스로부터의 값을 대입한 후, 나타나 있는 템플릿을 사용하여 MPD URL을 생성한다. 생성된 MPD URL은 MPD 인출에 사용된다. 예를 들어, 결과로서 얻은 URL은 https://cdn1.example.com/mpd/184834bc76a04825bb57d6bc0e1d35d3.
일 실시예에서, 'mesg' 박스' 내의 인수는 다음과 같이 SCTE-35 분할 기술자에 매핑될 수 있다:
mesg.arg[0] = <segmentation descriptor id>
mesg.arg[1] = segmentation_event_id;
mesg.arg[2] = segmentation_type_id;
mesg.arg[3] = segment_num;
mesg.arg[4] = segments_expected;
mesg.arg[5] = segmentation_upid_type, segmentation_upid();
mesg.arg[6] = segmentation_duration; (if not present)
다른 실시예에서, 'mesg' 박스 내의 인수와 메시지 기술자 사이의 더 간단한( 그리고 덜 효율적일 수 있는) 매핑은 다음과 같이 확립될 수 있다:
mesg.arg[0]
="ttps://cdn1.example.com/mpd/segmentation?event_id=0x12345678&type_id=0x10& [...], 여기서, @messageCallbackUrlTemplate은 변수 "$Arg[0]$"를 포함한다. 이러한 경우에, 악의적으로 구성된 URL 또는 HTTP 질의를 초래할 수 있는 공격(예컨대, 중간자(man-in-the-middle) 공격)을 방지하기 위해 메시지 암호화가 권장된다.
도 2는 DASH를 사용한 적응형 스트링을 위한 안전한 비동기 이벤트 통지 방법(200)의 일 실시예를 보여준다. 단계 201에서, 서버 또는 네트워크(210)가 클라이언트(220)에 확장된 'mesg' 박스를 전송한다. 확장된 'mesg' 박스는 암호화될 수 있으며, 전술한 바와 같은 하나 이상의 인수를 포함하는 필드를 포함한다. 단계 202에서, 서버 또는 네트워크(210)가 클라이언트(220)에 MessageHandler 요소를 가지는 기술자를 전송한다. MessageHandler 요소는, 전술한 바와 같이, MPD를 재로드하기 위해 클라이언트(220)를 트리거할 수 있고 MPD URL을 구성하는 변수를 나타낼 수 있다. 서버 또는 네트워크(210)는, 예컨대 상이한 메시징 방식을 위해, 복수의 MessageHandler 요소를 전송할 수 있다. 클라이언트(220)는 'mesg' 박스를 메시지 처리 기술자에 나타나 있는 속성 및 변수(표 2 및 표 3에서와 같은)를 사용하여 'mesg' 박스를 처리하여 MPD URL을 적절하게 구성한다. 클라이언트(220)는 MessageHandler 요소 내의 @schemeIdUri 와 'mesg' 박스 내의 message_scheme_URI 필드를 사용하여 MessageHandler 요소를 'mesg' 박스와 대조한다. 단계 204에서, 클라이언트(220)는 MPD URL을 사용하여 새로운 MPD(비동기 이벤트에 대한)를 요청한다. 단계 205에서, 클라이언트(220)는 비동기 이벤트에 대한 MPD를 수신한다. 단계 206에서, 클라이언트(220)는 MPD에 나타나 있는 바와 같이(예컨대, MPD 내의 URL과 다른 타이밍 및 속도 정보를 사용하여) 세그먼트를 요청한다. 단계 207에서, 클라이언트(220)는 비동기 이벤트 세그먼트를 수신한다.
도 3은 다양한 실시예를 구현하기 위해 사용될 수 있는 처리 시스템(300)의 블록도이다. 특정 디바이스는 도시된 모든 구성요소, 또는 구성요소 중 일부만을 이용할 수 있고, 통합의 수준은 장치에 따라 달라질 수 있다. 또한, 디바이스는 다수의 처리 유닛, 프로세서, 메모리, 송신기, 수신기 등과 같은, 구성요소의 다수의 인스턴스(instance)를 포함할 수 있다. 처리 시스템(300)은, 네트워크 인터페이스, 스토리지 인터페이스 등과 같은, 하나 이상의 입출력 디바이스를 갖춘 처리 유닛(301)을 포함할 수 있다. 처리 유닛(301)은 버스에 연결된 중앙 처리 유닛(central processing unit, CPU)(310), 메모리(320), 대용량 스토리지 디바이스(330), 및 I/O 인터페이스(360)를 포함할 수 있다. 버스는 메모리 버스 또는 메모리 컨트롤러, 주변 버스 등을 포함한 몇 가지 버스 아키텍처 중 하나 이상의 임의의 유형일 수 있다.
CPU(310)는 임의의 유형의 전자 데이터 프로세서를 포함할 수 있다. 메모리(320)는 정적 임의 접근 메모리(static random access memory, SRAM), 동적 임의 접근 메모리(dynamic random access memory, DRAM), 동기식(synchronous) DRAM (SDRAM), 읽기 전용 메모리(read-only memory,ROM), 이들의 조합 등과 같은 임의 유형의 시스템 메모리를 포함할 수 있다. 실시예에서, 메모리(320)는 비일시적인 것이다. 대용량 스토리지 디바이스(330)는 데이터, 프로그램, 및 다른 정보를 저장하고 버스를 통해 데이터, 프로그램, 및 다른 정보를 액세스 가능하게 하도록 구성된 임의의 유형의 스토리지 디바이스를 포함할 수 있다. 대용량 스토리지 디바이스(330)는 예를 들어 하나 이상의 SSD(solid state drive), 하드 디스크 드라이브, 자기 디스크 드라이브, 광 디스크 드라이브 등을 포함할 수 있다.
처리 유닛(310)은 또한 하나 이상의 네트워크 인터페이스(350)를 포함하며, 이는 이더넷 케이블 등과 같은 유선 링크, 및/또는 노드 또는 하나 이상의 네트워크(380)에 액세스하기 위한 무선 링크를 포함할 수 있다. 네트워크 인터페이스(350)는 네트워크(380)를 통해 처리 유닛(301)이 원격 유닛과 통신할 수 있도록 해준다. 예를 들어, 네트워크 인터페이스(350)는 하나 이상의 송신기/송신 안테나 또는 하나 이상의 수신기/수신 안테나를 통해 무선 통신을 제공할 수 있다. 일 실시예에서, 처리 유닛(301)은 데이터 처리와, 다른 처리 유닛, 인터넷, 원격 스토리지 설비 등과 같은, 원격 디바이스와의 통신을 위해 근거리 통신망(local-area network) 또는 광역 통신망(wide-area network)에 연결되어 있다.
예시적인 실시예를 참조하여 본 발명을 설명하였지만, 이 설명은 한정적인 의미로 해석되어서는 안 된다. 본 발명의 다른 실시예뿐만 아니라, 예시적인 실시예에 대한 다양한 수정 및 조합은 설명을 참조하면 본 발명이 속하는 기술분야의 당업자에게 명백할 것이다. 따라서, 첨부된 특허청구범위는 모든 그러한 수정 또는 실시예들을 포함하도록 의도된다.

Claims (31)

  1. 하이퍼텍스트 전송 프로토콜을 통한 동적 적응형 스트리밍(dynamic adaptive streaming over hypertext transfer protocol, DASH)에서의 이벤트 통지 방법으로서,
    네트워크 서버에서 클라이언트로, 메시지 박스를 세그먼트 파일로 전송하는 단계 - 상기 메시지 박스는 암호화, 상기 클라이언트로부터의 콜백(callback) 스케줄링을 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인수(argument)를 가짐 -;
    DASH 이벤트를 취득하기 위한 미디어 표현 기술(media presentation description, MPD)을 재로딩하기 위해 상기 클라이언트에 메시지 처리 기술자(message handling descriptor)를 전송하는 단계;
    상기 클라이언트로부터 상기 MPD에 대한 범용 자원 위치자(universal resource locator, URL)를 수신하는 단계 - 상기 URL은 상기 메시지 박스 및 상기 메시지 처리 기술자를 사용하여 구성됨 -; 및
    상기 클라이언트에 상기 MPD를 전송하는 단계
    를 포함하고,
    상기 메시지 처리 기술자는,
    메시징 방식을 식별할 수 있게 해주는 @schemeIdUri 속성,
    메시징 방식의 버전을 식별할 수 있게 해주는 @schemeVersion 속성,
    상기 클라이언트로부터의 콜백 URL에 대한 템플릿을 나타내는 @messageCallbackUrTemplate 속성,
    상기 메시지 박스를 암호화하는 데 사용된 키를 검색하기 위한 URL에 대한 템플릿을 나타내는 @messageKeyUrlTemplate 속성, 및
    방식 특정 정보(scheme-specific information)를 나타내는 @value 속성
    을 포함한 하나 이상의 속성의 조합을 포함하는 MessageHandler 요소(element)를 포함하는,
    방법.
  2. 제1항에 있어서,
    상기 메시지 박스는,
    상기 메시지 박스가 message_id 필드에서부터 시작하여 암호화되어 있음을 나타내기 위해 설정되는 is_encrypted 필드,
    상기 메시지 박스를 식별할 수 있게 해주는 상기 message_id 필드,
    상기 메시지 박스의 암호화 상태를 나타내는 IsEncrypted 필드,
    초기화 벡터의 크기를 나타내는 IV_size 필드,
    암호화에 사용된 키(key)를 식별할 수 있게 해주는 KID 필드,
    초기화 벡터를 나타내는 InitializationVector[IV_size] 필드,
    암호화된 경우의 상기 메시지 박스의 MD5 합을 나타내는 md5sum 필드,
    스케줄링된 콜백에 대한 타이밍 정보를 나타내는 ntp_time 필드,
    상기 메시지 박스 내의 인수의 수를 나타내는 argc 필드, 및
    상기 인수를 포함하는 argv 필드를 포함한
    하나 이상의 필드의 조합을 포함하는, 방법.
  3. 제2항에 있어서,
    상기 필드의 조합은,
    상기 메시지 박스의 메시지 방식을 식별할 수 있게 해주는 message_scheme_URI 필드,
    메시지 방식의 버전을 나타내는 message_scheme_version 필드,
    주어진 식별자(ID)에 대한 콜백이 취소되었음을 나타내기 위해 설정되는 is_cancelled 필드, 및
    스케줄링 정보를 나타내는 schedule 필드를 더 포함하는, 방법.
  4. 제3항에 있어서,
    상기 schedule 필드는,
    상기 클라이언트로부터 상기 네트워크 서버로의 즉각적인 콜백을 나타내기 위해 0으로 설정되거나,
    상기 ntp_time 필드에 나타나 있는 주어진 시간 전에 상기 클라이언트로부터의 콜백이 완료되도록 스케줄링되어 있음을 나타내기 위해 1로 설정되거나, 또는
    상기 ntp_time 필드에 나타나 있는 시간과 상기 메시지 박스의 현재 시간의 합과 동일한 주어진 시간 전에 상기 클라이언트로부터의 콜백이 스케줄링되어 있음을 나타내기 위해 2로 설정되는, 방법.
  5. 제3항에 있어서,
    상기 schedule 필드가 0이 아닌 경우, 상기 ntp_time 필드가 상기 메시지 박스에 추가되는, 방법.
  6. 제2항에 있어서,
    상기 is_encrypted 필드가 상기 메시지 박스가 암호화되어 있음을 나타내는 경우, 상기 IsEncrypted 필드, 상기 IV_size 필드, 상기 KID 필드, 상기 InitializationVector[IV_size] 필드, 및 상기 md5sum 필드가 상기 메시지 박스에 추가되는, 방법.
  7. 제1항에 있어서,
    상기 MessageHandler 요소 내의 상기 @schemeVersion 속성의 부재는 상기 메시징 방식의 임의의 버전이 허용됨을 나타내는, 방법.
  8. 제1항에 있어서,
    상기 메시지 처리 기술자는, 상기 클라이언트에 의한 상기 MPD의 재로딩을 트리거하기 위해 상기 클라이언트에 알려져 있는 미리 정해진 통일 자원 이름(uniform resource name, URN)을 포함하는, 방법.
  9. 제1항에 있어서,
    상기 MPD는 비동기 이벤트에 대한 것이고,
    상기 비동기 이벤트는 광고 이벤트, 긴급 통지, 정전 경보, 또는 타켓 광고인, 방법.
  10. 제1항에 있어서,
    상기 클라이언트에 국제 표준화 기구(International Organization for Standardization, ISO) 베이스 미디어 파일 형식(Base Media File Format, BMFF)을 가지는 상기 DASH 이벤트의 하나 이상의 세그멘트를 전송하는 단계를 더 포함하는 방법.
  11. 제1항에 있어서,
    상기 하나 이상의 인수는 SCTE-35 분할 기술자(segmentation descriptor)에 매핑되는, 방법.
  12. 제1항에 있어서,
    상기 하나 이상의 인수는 작업(operation) 또는 기능(function)을 트리거하는 URL에 매핑되는, 방법.
  13. 하이퍼텍스트 전송 프로토콜을 통한 동적 적응형 스트리밍(dynamic adaptive streaming over hypertext transfer protocol, DASH)에서의 이벤트 통지 방법으로서,
    클라이언트 단말기에서, 메시지 박스를 네트워크 구성요소로부터 세그먼트 파일로 수신하는 단계 - 상기 메시지 박스는 암호화, 상기 클라이언트로부터의 콜백 스케줄링을 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인수를 가짐 -;
    DASH 이벤트를 취득하기 위한 미디어 표현 기술(media presentation description, MPD)을 재로딩하기 위해 메시지 처리 기술자를 수신하는 단계;
    상기 메시지 박스 및 상기 메시지 처리 기술자를 사용하여 상기 MPD에 대한 범용 자원 위치자(universal resource locator, URL)를 구성하는 단계;
    상기 메시지 처리 기술자 내의 MessageHandler 요소의 @schemeIdUri 속성을 상기 메시지 박스 내의 message_scheme_URI 필드와 대조함으로써 상기 메시지 처리 기술자를 상기 메시지 박스와 대조하는 단계;
    상기 MPD에 대한 상기 URL을 전송하는 단계; 및
    상기 DASH 이벤트에 대한 상기 MPD를 수신하는 단계
    를 포함하는 방법.
  14. 제13항에 있어서,
    상기 MPD에 대응하는 비동기 이벤트의 하나 이상의 세그먼트를 수신하는 단계를 더 포함하고,
    상기 비동기 이벤트는 광고 이벤트, 긴급 통지, 정전 경보, 또는 타켓 광고인, 방법.
  15. 제13항에 있어서,
    상기 message_scheme_URI 필드와 상이한 @schemeIdUri 속성을 포함하는 하나 이상의 다른 메시지 처리 기술자를 수신하는 단계를 더 포함하고,
    상기 다른 메시지 처리 기술자는 상기 메시지 박스와 대조되지 않는, 방법.
  16. 제13항에 있어서,
    상기 URL에서 상기 MPD를 재로딩하기 위한 URL을 구성하는 상기 메시지 처리 기술자 내에 나타나 있는 상기 MessageHandler 요소의 콜백 URL 템플릿을 사용하는 단계를 더 포함하고, @messageCallbackUrTemplate 속성은 $MessageID$ 변수, $KeyID$ 변수, 및 $Argv[N]$ 변수를 포함하는 하나 이상의 변수의 조합에 기초하는, 방법.
  17. 제16항에 있어서,
    상기 콜백 URL 템플릿 내에 존재하는 경우 상기 $MessageID$ 변수를 상기 수신된 메시지 박스 내의 message_id 필드의 값으로 대체하는 단계; 및
    상기 URL 내의 값을 전송하는 단계를 더 포함하는 방법.
  18. 제16항에 있어서,
    상기 콜백 URL 템플릿 내에 존재하는 경우 상기 $KeyID$ 변수를 상기 수신된 메시지 박스 내의 KID 필드의 값으로 대체하는 단계; 및
    상기 URL 내의 값을 전송하는 단계를 더 포함하는 방법.
  19. 제16항에 있어서,
    상기 콜백 URL 템플릿 내에 존재하는 경우 상기 $Argv[N]$ 변수를 상기 수신된 메시지 박스 내의 인수 스트링에서 N번째 인수의 값으로 대체하는 단계; 및
    상기 URL 내의 값을 전송하는 단계를 더 포함하는 방법.
  20. 하이퍼텍스트 전송 프로토콜을 통한 동적 적응형 스트리밍(dynamic adaptive streaming over hypertext transfer protocol, DASH)에서의 이벤트 통지를 지원하는 네트워크 구성요소로서,
    프로세서; 및
    상기 프로세서에 의한 실행을 위한 프로그래밍을 저장하는 컴퓨터로 판독 가능한 저장 매체
    를 포함하고,
    상기 프로그래밍은,
    클라이언트에게 메시지 박스를 세그먼트 파일로 전송하기 위한 명령어 - 상기 메시지 박스는 암호화, 상기 클라이언트로부터의 콜백을 스케줄링하기 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인수를 가짐 -;
    DASH 이벤트를 취득하기 위한 미디어 표현 기술(media presentation description, MPD)을 재로딩하기 위해 상기 클라이언트에 메시지 처리 기술자를 전송하기 위한 명령어;
    상기 클라이언트로부터 상기 MPD에 대한 범용 자원 위치자(universal resource locator, URL)를 수신하기 위한 명령어 - 상기 URL은 메시지 박스 및 상기 메시지 처리 기술자를 사용하여 구성됨-; 및
    상기 MPD를 상기 클라이언트에 전송하기 위한 명령어
    를 포함하며,
    상기 메시지 처리 기술자는,
    메시징 방식을 식별할 수 있게 해주는 @schemeIdUri 속성,
    상기 메시징 방식의 버전을 식별할 수 있게 해주는 @schemeVersion 속성,
    상기 클라이언트로부터의 콜백 URL에 대한 템플릿을 나타내는 @messageCallbackUrTemplate 속성,
    상기 메시지 박스를 암호화하는 데 사용된 키를 검색하기 위한 URL에 대한 템플릿을 나타내는 @messageKeyUrlTemplate 속성, 및
    방식 특정 정보(scheme-specific information)를 나타내는 @value 속성
    을 포함한 하나 이상의 속성의 조합을 포함하는 MessageHandler 요소를 포함하는,
    네트워크 구성요소.
  21. 제20항에 있어서,
    상기 메시지 박스는,
    상기 메시지 박스가 message_id 필드에서부터 시작하여 암호화되어 있음을 나타내기 위해 설정되는 is_encrypted 필드,
    상기 메시지 박스를 식별할 수 있게 해주는 상기 message_id 필드,
    상기 메시지 박스의 암호화 상태를 나타내는 IsEncrypted 필드,
    초기화 벡터의 크기를 나타내는 IV_size 필드,
    암호화에 사용된 키(key)를 식별할 수 있게 해주는 KID 필드,
    초기화 벡터를 나타내는 InitializationVector[IV_size] 필드,
    암호화된 경우의 상기 메시지 박스의 MD5 합을 나타내는 md5sum 필드,
    스케줄링된 콜백에 대한 타이밍 정보를 나타내는 ntp_time 필드,
    상기 메시지 박스 내의 인수의 수를 나타내는 argc 필드, 및
    상기 인수를 포함하는 argv 필드를 포함한
    하나 이상의 필드의 조합을 포함하는, 네트워크 구성요소.
  22. 제21항에 있어서,
    상기 필드의 조합은,
    상기 메시지 박스의 메시지 방식을 식별할 수 있게 해주는 message_scheme_URI 필드,
    상기 메시지 방식의 버전을 나타내는 message_scheme_version 필드,
    주어진 식별자(ID)에 대한 콜백이 취소되었음을 나타내기 위해 설정되는 is_cancelled 필드, 및
    스케줄링 정보를 나타내는 schedule 필드를 더 포함하는, 네트워크 구성요소.
  23. 제20항에 있어서,
    상기 메시지 처리 기술자는 상기 클라이언트에 의한 상기 MPD의 재로딩을 트리거하기 위해 상기 클라이언트에 알려져 있는 미리 정해진 통일 자원 이름(uniform resource name, URN)을 포함하는, 네트워크 구성요소.
  24. 하이퍼텍스트 전송 프로토콜을 통한 동적 적응형 스트리밍(dynamic adaptive streaming over hypertext transfer protocol, DASH)에서의 이벤트 통지를 지원하는 사용자 디바이스로서,
    프로세서; 및
    상기 프로세서에 의한 실행을 위해 프로그래밍을 저장하는 컴퓨터로 판독 가능한 매체
    를 포함하고,
    상기 프로그래밍은,
    네크워크 구성요소로부터, 메시지 박스를 세그먼트 파일로 수신하기 위한 명령어 - 상기 메시지 박스는 암호화, 상기 사용자 디바이스로부터의 콜백 스케줄링을 위해 구성 가능하고, 상기 메시지 박스의 메시징 방식에 따라 하나 이상의 인자를 가짐 -;
    DASH 이벤트를 취득하기 위한 미디어 표현 기술(media presentation description, MPD)을 재로딩하기 위해 메시지 처리 기술자를 수신하기 위한 명령어;
    상기 메시지 박스와 상기 메시지 처리 기술자를 사용하여 상기 MPD에 대한 범용 자원 위치자(universal resource locator, URL)을 구성하기 위한 명령어;
    상기 MPD에 대한 URL을 전송하기 위한 명령어; 및
    상기 DASH 이벤트에 대한 MPD를 수신하기 위한 명령어
    를 포함하며,
    상기 메시지 처리 기술자는,
    메시징 방식을 식별할 수 있게 해주는 @schemeIdUri 속성,
    상기 메시징 방식의 버전을 식별할 수 있게 해주는 @schemeVersion 속성,
    클라이언트로부터의 콜백 URL에 대한 템플릿을 나타내는 @messageCallbackUrTemplate 속성,
    상기 메시지 박스를 암호화하는 데 사용된 키를 검색하기 위한 URL에 대한 템플릿을 나타내는 @messageKeyUrlTemplate 속성, 및
    방식 특정 정보(scheme-specific information)를 나타내는 @value 속성
    을 포함한 하나 이상의 속성의 조합을 포함하는 MessageHandler 요소를 포함하는,
    사용자 디바이스.
  25. 제24항에 있어서,
    상기 메시지 박스는,
    상기 메시지 박스가 message_id 필드에서부터 시작하여 암호화되어 있음을 나타내기 위해 설정되는 is_encrypted 필드,
    상기 메시지 박스를 식별할 수 있게 해주는 상기 message_id 필드,
    상기 메시지 박스의 암호화 상태를 나타내는 IsEncrypted 필드,
    초기화 벡터의 크기를 나타내는 IV_size 필드,
    암호화에 사용된 키(key)를 식별할 수 있게 해주는 KID 필드,
    초기화 벡터를 나타내는 InitializationVector[IV_size] 필드,
    암호화된 경우의 상기 메시지 박스의 MD5 합을 나타내는 md5sum 필드,
    스케줄링된 콜백에 대한 타이밍 정보를 나타내는 ntp_time 필드,
    상기 메시지 박스 내의 인수의 수를 나타내는 argc 필드, 및
    상기 인수를 포함하는 argv 필드를 포함한
    하나 이상의 필드의 조합을 포함하는, 사용자 디바이스.
  26. 제25항에 있어서,
    상기 필드의 조합은,
    상기 메시지 박스의 메시지 방식을 식별할 수 있게 해주는 message_scheme_URI 필드,
    상기 메시지 방식의 버전을 나타내는 message_scheme_version 필드,
    주어진 식별자(ID)에 대한 콜백이 취소되었음을 나타내기 위해 설정되는 is_cancelled 필드, 및
    스케줄링 정보를 나타내는 schedule 필드를 더 포함하는, 사용자 디바이스.
  27. 제24항에 있어서,
    상기 메시지 처리 기술자는 상기 클라이언트에 의한 상기 MPD의 재로딩을 트리거하기 위해 상기 클라이언트에 알려져 있는 미리 정해진 통일 자원 이름(uniform resource name, URN)을 포함하는, 사용자 디바이스.
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
KR1020147029625A 2012-04-05 2013-04-05 Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법 KR101633769B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261620810P 2012-04-05 2012-04-05
US61/620,810 2012-04-05
US13/857,907 2013-04-05
PCT/US2013/035516 WO2013152326A1 (en) 2012-04-05 2013-04-05 System and method for secure asynchronous event notification for adaptive streaming based on iso base media file format
US13/857,907 US9015477B2 (en) 2012-04-05 2013-04-05 System and method for secure asynchronous event notification for adaptive streaming based on ISO base media file format

Publications (2)

Publication Number Publication Date
KR20140139042A KR20140139042A (ko) 2014-12-04
KR101633769B1 true KR101633769B1 (ko) 2016-06-27

Family

ID=49293255

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147029625A KR101633769B1 (ko) 2012-04-05 2013-04-05 Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법

Country Status (6)

Country Link
US (1) US9015477B2 (ko)
EP (1) EP2823641B1 (ko)
JP (1) JP5974392B2 (ko)
KR (1) KR101633769B1 (ko)
CN (1) CN104185996B (ko)
WO (1) WO2013152326A1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924582B2 (en) 2012-07-09 2014-12-30 Futurewei Technologies, Inc. Dynamic adaptive streaming over hypertext transfer protocol client behavior framework and implementation of session management
EP2728829A1 (en) * 2012-10-30 2014-05-07 Thomson Licensing Method for downloading content according to communication parameters, and associated content receiver
US9680689B2 (en) * 2013-02-14 2017-06-13 Comcast Cable Communications, Llc Fragmenting media content
CN105379294A (zh) * 2013-07-15 2016-03-02 华为技术有限公司 基于超文本传输协议的动态自适应流媒体中的远程元素的即时性间接引用
US9807452B2 (en) 2013-10-07 2017-10-31 Samsung Electronics Co., Ltd. Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
US10764627B2 (en) * 2013-11-20 2020-09-01 Atul Madhavrao Naik System for deployment of value-added services over digital broadcast cable
CN109379576B (zh) * 2013-11-27 2021-07-06 交互数字专利控股公司 计算设备和调度mpeg-dash事件的方法
US11310302B2 (en) 2014-01-09 2022-04-19 Samsung Electronics Co., Ltd. Method and apparatus for streaming dash content over broadcast channels
US9866608B2 (en) * 2014-03-24 2018-01-09 Qualcomm Incorporated Processing continuous multi-period content
WO2017038353A1 (ja) * 2015-08-28 2017-03-09 ソニー株式会社 受信装置、送信装置、およびデータ処理方法
TW201725878A (zh) 2015-09-14 2017-07-16 Sony Corp 受訊裝置、送訊裝置及資料處理方法
US10169592B2 (en) * 2015-10-13 2019-01-01 International Business Machines Corporation Security systems GUI application framework
CN107925669B (zh) * 2016-01-28 2021-01-26 联发科技股份有限公司 一种消息交互的方法和提供媒体服务的系统
KR102549611B1 (ko) 2016-04-01 2023-06-30 삼성전자주식회사 스토리지 장치 및 그것의 이벤트 통지 방법
US10515194B2 (en) * 2016-08-29 2019-12-24 Electronics And Telecommunications Research Institute Key rotation scheme for DRM system in dash-based media service
EP3603083A4 (en) * 2017-03-26 2020-12-16 SHARP Kabushiki Kaisha INFORMATION SIGNALING SYSTEMS AND METHODS FOR VIRTUAL REALITY APPLICATIONS
FR3067544A1 (fr) * 2017-06-27 2018-12-14 Orange Procede et dispositif de telechargement de contenu audiovisuel
CN107566851B (zh) * 2017-09-05 2020-07-03 成都索贝数码科技股份有限公司 一种应用于媒体数据访问的视频切片存储方法和系统
US11310540B2 (en) * 2017-11-10 2022-04-19 Qualcomm Incorporated Interfaces between dash aware application and dash client for service interactivity support
US11743356B2 (en) * 2018-01-10 2023-08-29 Vmware, Inc. Email notification system
US10924512B2 (en) 2018-03-07 2021-02-16 Vmware, Inc. Secure email gateway with device compliance checking for push notifications
US11303688B2 (en) * 2019-09-30 2022-04-12 Tencent America LLC Methods and apparatuses for dynamic adaptive streaming over HTTP
US11683355B2 (en) * 2021-01-05 2023-06-20 Tencent America LLC Methods and apparatuses for dynamic adaptive streaming over HTTP

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012021543A1 (en) * 2010-08-10 2012-02-16 Qualcomm Incorporated Manifest file updates for network streaming of coded video data

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7809138B2 (en) * 1999-03-16 2010-10-05 Intertrust Technologies Corporation Methods and apparatus for persistent control and protection of content
US20020199096A1 (en) * 2001-02-25 2002-12-26 Storymail, Inc. System and method for secure unidirectional messaging
KR100978277B1 (ko) * 2005-11-07 2010-08-26 삼성전자주식회사 휴대 방송 시스템에서 서비스 가이드 생성을 위한 공급 정보 전달 방법과 통지 이벤트/통지 메시지 전달 방법 및 시스템
US9386064B2 (en) * 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
JP2011529231A (ja) * 2008-07-23 2011-12-01 クラコウスキ,ロバート 広告管理システム
US8184952B2 (en) 2008-12-11 2012-05-22 Cable Television Laboratories, Inc. Segment boundary obfuscation
US9420055B2 (en) 2010-05-13 2016-08-16 Futurewei Technologies, Inc. System, apparatus for content delivery for internet traffic and methods thereof
WO2011151982A1 (ja) * 2010-06-01 2011-12-08 三菱電機株式会社 メディア暗号化装置、メディア暗号復号装置、メディア暗号化方法およびメディア暗号復号方法
US8918533B2 (en) * 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
KR20120010089A (ko) * 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
US9596447B2 (en) * 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US20120114118A1 (en) * 2010-11-05 2012-05-10 Samsung Electronics Co., Ltd. Key rotation in live adaptive streaming

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012021543A1 (en) * 2010-08-10 2012-02-16 Qualcomm Incorporated Manifest file updates for network streaming of coded video data

Also Published As

Publication number Publication date
US20130268761A1 (en) 2013-10-10
KR20140139042A (ko) 2014-12-04
EP2823641A1 (en) 2015-01-14
JP5974392B2 (ja) 2016-08-23
CN104185996B (zh) 2017-07-21
WO2013152326A1 (en) 2013-10-10
EP2823641A4 (en) 2015-02-18
EP2823641B1 (en) 2016-11-02
US9015477B2 (en) 2015-04-21
JP2015517266A (ja) 2015-06-18
CN104185996A (zh) 2014-12-03

Similar Documents

Publication Publication Date Title
KR101633769B1 (ko) Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법
US20200296151A1 (en) Downloading Media Objects
KR102024599B1 (ko) 양방향 서비스를 처리하는 장치 및 방법
KR102068567B1 (ko) 양방향 서비스를 처리하는 장치 및 방법
EP4080893A2 (en) System for video playback using a server generated manifest
US20170195744A1 (en) Live-stream video advertisement system
US9912995B2 (en) Apparatus and method for processing an interactive service
KR20150022796A (ko) 가속화된 결정 해결을 가능하게 하기 위한 배치 기회 위치들을 동등하게 마킹하고 식별하기 위한 방법 및 시스템
JP2015520543A (ja) 先読み機会トリガリングに基づいて、広告決定解決を加速するための方法
US11889163B2 (en) Receiving device, receiving method, transmitting device, and transmitting method
US10911813B1 (en) Providing metadata for live media streams
GB2510766A (en) Determining earliest and latest transmission times for playlist files having plural tags and universal resource indicators (URIs)

Legal Events

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

Payment date: 20190530

Year of fee payment: 4