KR101835238B1 - 매니패스트-기반 자격 집행을 갖는 미디어 분배 시스템 - Google Patents
매니패스트-기반 자격 집행을 갖는 미디어 분배 시스템 Download PDFInfo
- Publication number
- KR101835238B1 KR101835238B1 KR1020167004539A KR20167004539A KR101835238B1 KR 101835238 B1 KR101835238 B1 KR 101835238B1 KR 1020167004539 A KR1020167004539 A KR 1020167004539A KR 20167004539 A KR20167004539 A KR 20167004539A KR 101835238 B1 KR101835238 B1 KR 101835238B1
- Authority
- KR
- South Korea
- Prior art keywords
- content
- client
- media
- server
- streaming
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 27
- 238000012797 qualification Methods 0.000 claims abstract description 12
- 238000009877 rendering Methods 0.000 claims description 7
- 238000013475 authorization Methods 0.000 claims description 6
- 230000003044 adaptive effect Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000002085 persistent effect Effects 0.000 claims description 2
- 230000001105 regulatory effect Effects 0.000 claims description 2
- 230000004044 response Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004806 packaging method and process Methods 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000011177 media preparation Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/128—Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0281—Proxies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
- H04L63/0457—Network 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 wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/105—Multiple levels of security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/254—Management at additional data server, e.g. shopping server, rights management server
- H04N21/2541—Rights Management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/262—Content 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/26258—Content 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 generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4318—Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4367—Establishing a secure communication between the client and a peripheral device or smart card
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4622—Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management 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/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4627—Rights management associated to the content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/633—Control signals issued by server directed to the network components or client
- H04N21/6332—Control signals issued by server directed to the network components or client directed to client
- H04N21/6334—Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
- H04N21/63345—Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/64322—IP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/65—Transmission of management data between client and server
- H04N21/654—Transmission by server directed to the client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
- H04N21/8355—Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2145—Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/101—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/41407—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Technology Law (AREA)
- Library & Information Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
자격을 강제하기 위한 방법은, 서버에서 매우 다양한 자격을 구성하는; 주어진 클라이언트 요청에 대한 자격의 적용가능한 조합을 결정하는; 자격을 요청하는 클라이언트에 안전하게 송신하는; 실행시 복수의 클라이언트 장치상에서 자격 정보를 안전하게 핸들링하는; 오프라인 사용 동안 복수의 클라이언트 장치상에 자격 정보를 안전하게 기억하는; 및 복수의 클라이언트 장치상에서 자격을 강제하는 것을 포함한다. 이 방법은, 클라이언트 장치 내에 포함 또는 네트워크 내에 위치될 수 있는 프록시에 의해 매니패스트 파일의 조작을 채용한다.
Description
본 개시 내용은 일반적으로 OTT(over-the-top) 미디어 전달에 관한 것이고, 특히 실시간으로, 다른 타입의 클라이언트 장치에 대한 매우 다양한 자격의 집행에 관한 것이다.
STB(Set Top Boxes)에서 구현된 통상적인 CA(Conditional Access) 시스템은, 매우 제한된 ON/OFF 자격만을 지원하는데, 유저가 특정 채널을 보는 것이 허용되는 지를 가리킨다. 매우 다양한 장치에 대한 더 인기 있는 OTT(over-the-top) 미디어 전달은, 실질적으로 더 넓은, 및 계속 증가하는, 어레이의 자격(entitlement)을 제공하는데 있어서, 도전 및 기회 모두를 제공한다.
OTT 전달 에코시스템은, 주어진 유저/미디어/장치 조합에 대한 적합하게 식별된 세트의 요구조건의 전달을 안전하게 하는, 각각의 클라이언트 장치상에서 이들 자격의 핸들링, 스토리지, 및 집행을 안전하게 하는 것과 함께, 다른 유저들 및 유저 그룹, 미디어 및 미디어 그룹, 장치, 및 이들의 다양한 조합에 대한 증가하는 수의 자격을 구성할 수 있는 능력을 요구한다.
OTT(over-the-top) 비디오 전달로, 실시간으로, 매우 다양한 자격을 강제하기 위한 방법 및 장치가 개시된다. OTT 콘텐츠 전달은 전형적으로 HTTP 프로토콜을 사용하는 세그먼트-기반 검색 패러다임에 의존한다. HTTP 적응 스트리밍은, 다중 인코딩(각각이 다른 비트래이트, 해상도, 및/또는 프래임 레이트에서 인코딩된)을 사용하는데, 클라이언트가 그 로컬 네트워크 조건에 대해서 적합한 인코딩을 선택하게 허용한다. 매니패스트 파일은, 클라이언트에 인코딩 정보를 반송하고 세그먼트 검색 위치를 가리키기 위해 사용된다. 실시간(라이브) 콘텐츠에 대해서, 세그먼트 및 매니패스트 파일은 클라이언트에 의해 실시간으로 생성 및 검색된다.
특히, 자격을 강제하기 위한 개시된 방법은, 서버에서 매우 다양한 자격을 구성하는; 주어진 클라이언트 요청에 대한 자격의 적용가능한 조합을 결정하는; 자격을 요청하는 클라이언트에 안전하게 송신하는; 실행시 복수의 클라이언트 장치상에서 자격 정보를 안전하게 핸들링하는; 오프라인 사용 동안 복수의 클라이언트 장치상에 자격 정보를 안전하게 기억하는; 및 복수의 클라이언트 장치상에서 자격을 강제하는 것을 포함할 수 있다.
상기 및 다른 목적, 형태 및 장점은, 다른 관점을 통해서 동일 부분에 대해서 동일한 참조부호로 언급하는 첨부 관점에 도시된 바와 같이, 본 발명의 특정 실시형태로부터 명백하게 된다.
도 1은 미디어 분배 시스템의 블록도;
도 2는 하드웨어 관점으로부터의 컴퓨터화된 장치의 블록도;
도 3은 주로 소프트웨어 관점으로부터의 클라이언트 장치의 블록도;
도 4는 프록시의 동작의 하이-레벨 흐름도; 및
도 5는 미디어 분배 시스템의 대안적인 구성의 블록도이다.
도 2는 하드웨어 관점으로부터의 컴퓨터화된 장치의 블록도;
도 3은 주로 소프트웨어 관점으로부터의 클라이언트 장치의 블록도;
도 4는 프록시의 동작의 하이-레벨 흐름도; 및
도 5는 미디어 분배 시스템의 대안적인 구성의 블록도이다.
도 1은 본 발명의 하나의 실시형태에 대한 시스템(100)의 블록도이다. 나타낸 바와 같이, 이는 작업흐름 관리기(WFM)(102), 하나 이상의 포장 서버 또는 "포장기(들)"(104), 권리 서버(105), 콘텐츠 관리 시스템(CMS)(106), 콘텐츠 전달 네트워크(CDN)(108), 프록시 서버 또는 "프록시"(109), 및 클라이언트 장치 또는 "클라이언트"(110)를 포함한다. 장치 중의 네트워크 접속은 일반적으로 네트워크(112)로서 도시된다. 일반적으로, 동작에 있어서, 포장기(들)(104)는 소스 콘텐츠를 수신하고 소스 콘텐츠를 처리 또는 "포장"하므로, 이는 CDN(108)을 통해서 클라이언트(110)에 전달될 수 있다. 특히, 포장기(들)(104)는, 이하 기술된 바와 같이, 일련의 콘텐츠 암호화 키를 사용해서 변환 코딩 및 콘텐츠 암호화를 수행한다. CMS(106)가 콘텐츠 습득, 포장 및 전달에 걸쳐서 하이-레벨 제어를 제공하는 한편, WFM(102)는 더 상세한 제어 동작을 수행한다.
작업흐름 관리기(WFM)(102)는, 분배를 위한 콘텐츠를 준비하기 위해서, 콘텐츠 관리 시스템(CMS)(106)으로부터 소스 콘텐츠 정보를 획득 및 하나 이상의 포장기(104)에 명령하기 위한 책임이 있다. 하나의 실시형태에 있어서, 준비는, 다른 코덱, 비트래이트, 프래임 레이트, 샘플 레이트, 및 해상도를 사용해서, 오디오 및 비디오를 복수의 인코딩으로 변환 코딩하는 것을 포함한다. 그 다음, 변환 코딩된 콘텐츠는 복수의 출력 파일 내에 기입된다. 하나의 실시형태에 있어서, 복수의 출력 파일은 다른 콘테이너 포맷(예를 들어, 3GP, MP4, MPEG-TS, WMV, MOV 등) 내에 인캡슐화된 동일한 변환 코딩된 콘텐츠를 포함한다. 하나의 실시형태에 있어서, 준비된 출력 파일은 고정된 존속 기간 세그먼트 파일(예를 들어, MPEG-TS 세그먼트, 프래그먼트된 MP4 세그먼트, 3GP DASH 세그먼트 등)로 세그먼트된다. 하나의 실시형태에 있어서, 세그먼트된 및 세그먼트되지 않은 모든 출력 파일은, 표준 암호화 프로토콜(예를 들어, AES-128, HC-128, RC4 등)을 사용해서 암호화된다. 하나의 실시형태에 있어서, 모든 준비 단계들은 포장기로서 본 명세서에서 언급된 단일 콘텐츠 포장 서버(104)에 의해 수행된다.
다른 실시형태에 있어서, 개별적인 준비 단계(예를 들어, 변환 코딩, 세그먼테이션, 암호화 등)는 다른 물리적인 콘텐츠 포장 서버(104)를 가로질러 수행될 수 있다. 하나의 실시형태에 있어서, WFM(102) 및 포장기(104)는 동일한 물리적인 서버 내에 상주한다. 다른 실시형태에 있어서, WFM(102) 및 포장기(104)는 동일한 데이터 센터 내의 다른 물리적인 서버 내에 상주한다. 다른 실시형태에 있어서, WFM(102) 및 포장기(104)는 원격 데이터 센터 내의 다른 물리적인 서버 내에 상주한다.
본 명세서에서 사용된 용어 "서버"가, 이들 컴포넌트들을 함께 접속하는 하나 이상의 고속 데이터 버스와 같은 상호 접속과 함께, 일반적으로 메모리, 입력/출력 회로, 및 명령 처리 로직을 포함하는, 일반-목적 또는 특수-목적 컴퓨터를 언급하는, 것으로 이해하게 된다. 개시된 기술의 많은 측면들이 하나 이상의 서버 컴퓨터상에서 실행하는 소프트웨어로서 실시될 수 있다. 유사하게, 본 명세서의 "클라이언트"는 네트워크 접속으로부터 콘텐츠를 수신 및 디스플레이 또는 유사한 출력 장치상에 콘텐츠를 디코딩 및 렌딩(rending)할 수 있는 컴퓨터화된 장치(또한 상기 컴포넌트를 포함)이다. 소위 스마트폰은, 특히 본 명세서에서 사용된 클라이언트의 정의 내에 포함된다.
하나의 실시형태에 있어서, 포장기(104)는 고정된 사이즈의 GOP를 갖는 세그먼트를 생성한다. 다른 실시형태에 있어서, 포장기(104)는 가변 사이즈의 GOP를 갖는 세그먼트를 생성한다. 세그먼트가 완료되면, 포장기(104)는 세그먼트를 콘텐츠 전달 네트워크(CDN)(108)에 업로드한다.
클라이언트(110)는 프록시(109)를 통해서 재생 요청을 WFM(102)에 발행한다. WFM(102)은, CDN(108) 내의 콘텐츠 위치 및 콘텐츠 인코딩(예를 들어, 다른 비트래이트, 다른 포맷 등)을 포함하는, 콘텐츠에 관한 정보로 응답한다. 이 정보는 매니패스트 파일로 제공된다. 클라이언트(110)는, 재생을 위해 CDN(108)으로부터 세그먼트에 대한 요청을 발행하기 위해서, 매니패스트 파일 내의 정보를 사용한다. 이하 더 기술된 바와 같이, 프록시(109)는, 클라이언트(110)가 보증될 때 재생의 방식을 수정 또는 심지어 재생을 완전히 정지하게 하기 위해서, 복귀한 매니패스트 파일의 콘텐츠를 선택적으로 조작(manipulate)할 수 있다. 프록시(109)의 이 동작은, "자격(entitlement)"으로서 본 명세서에서 언급된 자격 정보의 수집에 기반한다.
일반적으로, 클라이언트 장치(110)는, 암호화된 콘텐츠 파일의 해독(decryption)을 포함하는 재생 능력을 갖는 컴퓨터화된 장치이며, 예를 들어 개인용 컴퓨터, 태블릿 컴퓨터, 스마트폰 등을 포함한다. 암호화된 콘텐츠 파일을 해독하기 위해 사용된 해독 키가 백엔드에 의해 클라이언트 장치(110)에 제공된다. 동작에 있어서, 클라이언트 장치(110)는 자체를 백엔드에 인증시키고, 및 식별된 암호화된 콘텐츠(예를 들어, 특정 비디오)를 플레이하기 위해 그 인가를 수립하는 정보를 제공한다. 백엔드는, 클라이언트 장치(110)가 비디오를 위한 콘텐츠 파일(들)을 해독할 수 있게 하기 위해서 하나 이상의 해독 키를 제공함으로써 응답한다. 클라이언트 장치(110)는 콘텐츠 서버(예를 들어, CDN(108) 내의)로부터 암호화된 콘텐츠 파일을 획득하고, 이들을 해독 키를 사용해서 해독하며, 그 다음 해독된 콘텐츠를 렌더(플레이)한다.
FM(102), 포장기(104), 권리 서버(105) 및 CMS(106)는 "백엔드" 설비이고, 하나 이상의 서버 컴퓨터를 사용해서 구현될 수 있는데, 이는 동일-위치될 수 있거나(예를 들어, 데이터센터 내에서) 또는 다중 위치에 걸쳐서 동일 방식으로 분산될 수 있다. 동작에 있어서, 콘텐츠 발행자로부터의 콘텐츠는 습득될 수 있고, 그 다음 클라이언트 장치(110)에 대한 세그먼트-기반 전달을 위해서 세그먼트될 수 있다. WFM(102)의 미디어 준비 엔진은, 백엔드의 분리 관리(DRM) 서버를 포함하거나 또는 이에 첨부될 수 있는, 권리 서버(105)로부터 콘텐츠 암호화/해독 키를 획득하고, 기억을 위해 콘텐츠를 암호화 및 암호화된 형태로 나중에 전달을 위해 키를 사용한다. 백엔드는 DRM-관련된 동작 및 통신을 위한 중심 포인트로서 권리 서버(105)를 채용할 수 있는데, 이 경우 분리 DRM 서버는, 적합한 네트워크 프로토콜을 사용해서 암호화 키를 생성, 기억 및 검색하기 위해서, 더 특별하게 재단될 수 있다.
도 2는 클라이언트 장치(110) 및 백엔드의 서버를 실현하기 위해 사용될 수 있는 것과 같은 컴퓨터화된 장치의 일반화된 묘사이다. 이는, 하나 이상의 데이터 버스(128)에 의해 함께 결합된 하나 이상의 프로세서(120), 메모리(122), 로컬 스토리지(124) 및 입력/출력(I/O) 인터페이스 회로(126)를 포함한다. I/O 인터페이스 회로(126)는 장치를 하나 이상의 외부 네트워크(네트워크(112)와 같은), 부가적인 스토리지 장치 또는 시스템, 및 본 기술에서 일반적으로 공지된 바와 같은 다른 입력/출력 장치에 결합시킨다. 본 명세서에서 기술된 바와 같은 컴퓨터화된 장치의 시스템-레벨 기능성은, 전형적으로 메모리(122) 내에 기억된 및 프로세서(들)(120)에 의해 검색 및 실행된 컴퓨터 프로그램 명령(소프트웨어)을 실행하는 하드웨어에 의해 제공된다. 기능을 수행하는 소프트웨어 컴포넌트의 본 명세서의 소정의 설명은, 소프트웨어 컴포넌트의 명령을 실행할 때, 컴퓨터 또는 컴퓨터화된 장치의 동작에 대한 간단한 참조로서 이해된다. 또한, 도 2에서의 컴포넌트의 수집은 "처리 회로"로서 언급될 수 있고, 주어진 소프트웨어 컴포넌트를 실행하는 것이 기능-특정된 회로로서 볼 수 있을 때, 예를 들어 콘텐츠 플레이어 기능을 구현하는 소프트웨어 컴포넌트를 실행할 때 "플레이어 회로"로서 볼 수 있다. 이하 기술된 바와 같이, 클라이언트 장치(110)는 보안의 목적을 위해서 더 특정된 하드웨어 체계를 포함한다.
하나의 실시형태에 있어서 클라이언트 장치(110)는, 자체를 미디어 전달 및 재생의 DRM 측면을 포함하는 센시티브 애플리케이션에 렌딩(lending)하는, 특정된 체계를 갖는다. 특히, 클라이언트 장치(110)는 파티션 회로 및 보안 실행 환경과 정상 또는 비-보안 환경 사이의 기능성일 수 있다. 하드웨어 컴포넌트는 파티션될 수 있는데, 비-보안 환경에서의 애플리케이션 프로세서 및 보안 환경에서의 분리 보안 프로세서를 포함한다. 비-보안 환경에서의 오퍼레이팅 소프트웨어는, 오퍼레이팅 시스템(O/S) 및 콘텐츠 플레이어 애플리케이션("앱(app)"으로서 언급)을 포함할 수 있다. 하나의 실시형태에 있어서, 오퍼레이팅 시스템은 모바일 장치용의 Android® 오퍼레이팅 시스템이다. 보안 환경 내의 컴포넌트는, 클라이언트 장치(110)가 콘텐츠를 해독하기 위한 해독 키를 획득할 수 있게 하기 위해서, 백엔드와의 신뢰의 뿌리(root of trust)를 수립하기 위한 책임이 있다. 보안 환경은 보안 커널 및 보안 메모리를 포함한다. 또한, 클라이언트 장치는, 장치(110)를 등록, 미디어 오브젝트의 재생에 대한 권리 오브젝트를 획득, 및 미디어 오브젝트의 해독 및 플레이를 가능하게 하는 다른 기능을 수행하기 위해 백엔드에 요청을 송신하는, 미디어 클라이언트를 포함하다. 따라서, 미디어 클라이언트는 보안과 비-보안 환경 사이에서 파티션된 분리 보안 및 비-보안 부분을 가질 수 있다.
하나의 실시형태에 있어서, 클라이언트 장치(110)의 보안 환경은, ARM 아키텍처에 따라 실현된 보안 프로세서만 아니라 보안-관련된 사용을 위해 특별하게 재단된 보안 커널 및 보안 메모리를 포함하는, 소위 TrustZone 패밀리의 컴포넌트를 채용할 수 있다. 신뢰의 뿌리를 수립하는 것은, 장치(110)(예를 들어, 모바일 폰 핸드셋)를 빌트하기 위해 사용된 회로 보드 내에 매립된 보안 처리 하드웨어에 의해 제공된 보안 형태에 부분적으로 기반할 수 있다. 칩셋 제조업자는 하드웨어를 제공하고, 장치 제조업자(OEM)는 이하 더 기술된 바와 같은 소정의 팜웨어(코드)를 로드한다.
도 3은 소프트웨어 관점으로부터 클라이언트 장치(110)의 체계를 나타내는데, 또한 보안과 비-보안 환경 사이에서 상기된 파티션하는 것을 반영한다. 이는, 미디어 플레이어(130), 미디어 클라이언트(132), 오퍼레이팅 시스템(OS) 커널(134) 및 보안 팜웨어(136)를 포함한다. 미디어 클라이언트(132)는, 백엔드에 대한 기능적인 접속(138)을 갖는다(즉, 프록시(109)를 통한 CDN(108), 권리 서버(105) 및 WFM(102)). 동작에 있어서, 미디어 플레이어(130)는, 디스플레이와 같은 클라이언트 장치(110)의 적합한 설비 상에 비디오와 같은 미디어를 렌더링한다. 또한, 미디어 플레이어(130)는, 본 기술에서 일반적으로 공지된 바와 같이, 유저가 미디어의 선택 및 재생을 제어할 수 있게 하는, 그래픽 유저 인터페이스를 포함한다. 미디어 클라이언트(132)는, 장치 등록, 암호화 키의 전달, 및 CDN(108)으로부터 미디어(콘텐츠)의 다운로드의 전체 제어를 포함하는, 재생(렌더링)을 위해 미디어의 다운로드와 관련된 다양한 기능을 수행한다.
도 4는 클라이언트 장치(110)에서 미디어 재생을 위해 자격을 강제하기 위한 프록시(109)의 동작의 하이-레벨 흐름 설명이다.
140에서, 프록시(109)는, 스트리밍 동작 동안, 클라이언트 장치(110) 상의 미디어 아이템의 렌더링에 대한 승인 및 제한을 기술하는 자격 정보를 안전하게 수신 및 기억한다. 자격 정보는 권리 서버로부터 수신되고, 기억된 자격 정보의 비인가된 변경을 방지하기 위해서 프록시에 안전하게 기억된다.
142에서, 프록시(109)는, 매니패스트 파일 검색 경로를 제공하는데, 이에 의해 스트리밍 미디어 플레이어(130)는, 미디어 아이템의 자격이 부여된 재생에서 사용하기 위해서, 원격 서버(예를 들어, WFM(102))로부터 변경되지 않은 매니패스트 파일을 검색한다.
144에서, 프록시(109)는 자격에 대한 집행 조건 및 대응하는 집행 결과 모두를 식별하기 위해서 기억된 자격 정보를 적용하는데, 집행 조건은 클라이언트 장치의 감지된 오퍼레이팅 콘택스트에 적어도 부분적으로 기반하고, 집행 결과는 집행 조건의 부재하에서 승인된 재생으로부터 재생의 방식을 수정한다. 예로서, 집행 조건은 클라이언트 장치(110)가 (셀룰러 링크에 대항하는 것으로서, 예를 들어) WiFi 접속에 걸쳐서 콘텐츠를 다운로드하는 것이 될 수 있고, 집행 결과는 정상 재생이 (이용할 수 없는 또는 몇몇 방식으로 수정된 것에 대항하는 것으로서, 예를 들어) 승인된 것이다. 자격의 다수의 예들이 이하 주어진다.
146에서, 집행 조건의 발생에 따라서, 프록시(109)는 변경된 매니패스트 파일을 스트리밍 미디어 플레이어에 제공하여, 스트리밍 미디어 플레이어의 동작에서 집행 결과를 유도한다.
3. 특정 자격 집행 동작
일반적으로, 자격 집행은, 서버에서 매우 다양한 자격을 구성하는(예를 들어, WFM(102)); 주어진 클라이언트 요청에 대한 자격의 적용가능한 조합을 결정하는; 자격을 요청하는 클라이언트에 안전하게 송신하는; 실행시 복수의 클라이언트 장치상에서 자격 정보를 안전하게 핸들링하는; 오프라인 사용 동안 복수의 클라이언트 장치상에 자격 정보를 안전하게 기억하는; 및 복수의 클라이언트 장치상에서 자격을 강제하는 것을 포함한다.
다음은, 자격 집행 동작의 소정의 특정 측면의 아웃라인 요약이다.
1. 자격으로 보호된 콘텐츠는 오디오/비디오 콘텐츠가 될 수 있다.
a. 콘텐츠는 콘텐츠 자산 암호화 키(per content asset encryption key)마다 암호화될 수 있다.
2. 구성될 수 있는 자격은, 다음을 포함한다: 클라이언트가 콘텐츠 아이템을 보기 시작하도록 허용되는 시간; 콘텐츠 아이템에 대한 권리가 만료하는 시간; 콘텐츠 아이템을 볼 수 있는 다수의 시간; 3G 네트워크, 4G 네트워크, 또는 WiFi 네트워크에 걸쳐서 클라이언트가 콘텐츠를 볼 수 있게 허용되는지; 예를 들어, 데스크탑 컴퓨터, 모바일 폰, 태블릿, 셋탑 박스, 구글 글래스(Google Glass)인 장치의 클래스 상에서 콘텐츠 아이템을 볼 수 있는지; 오프라인 뷰윙을 위해 콘텐츠가 스트리밍 또는 다운로드될 수 있는지; 콘텐츠를 탈옥(jail-broken) 장치상에서 볼 수 있는지; 유저가 콘텐츠를 되돌리기(rewind), 중단(pause), 또는 빠른 포워드(fast forward)하도록 허용되는지; 최소 및 최대 비트래이트 한계; 오프라인 사용을 위한 다운로드의 경우, 최대 파일 사이즈; 허용된 최대 수의 광고; 시청 규제 등급; 클라이언트가 콘텐츠를 소비할 수 있는 지리적인 에어리어에 대한 명세; 대안적인 화상 또는 스트림(sorry stream)과 함께 클라이언트가 오리지널 콘텐츠 대신 디스플레이해야 하는, 리니어 채널 내의 블랙아웃(blackout) 세그먼트; 클라이언트가, 예를 들어 HDMI 출력, Apple의 AirPlay, 또는 Miracast인 외부 접속된 장치에 콘텐츠를 출력하도록 허용하는지; 세션 시프팅(즉, 장치들 사이의 북마크를 공유하는)이 허용되는지; 클라이언트가 보게 하기 위해(예를 들어, 프리뷰하기 위해) 허용된 프래그먼트를 묘사하는 콘텐츠 아이템 내의 시작하는 및 끝나는 포지션.
3. 자격은 주어진 콘텐츠 오너에 대해서 및: 유저들의 그룹; 개별적인 유저; 콘텐츠 아이템들의 그룹; 특정 콘텐츠 아이템; 특정 클래스의 장치; 특정 유저에 의해 사용 중인 특정 장치; 또는 이들의 소정의 조합에 대해서 구성될 수 있다.
a. 집행은, 주어진 콘텐츠 자산에 대한 인가 또는 재인가를 재생하기 위해 클라이언트로부터의 요청에 응답하는, 특정 콘텐츠 오너, 유저, 및 장치에 적용가능한 세트의 자격을 결정하는 것을 포함할 수 있다.
i. 요청은, 클라이언트가 재생을 위해서 인가되지 않으면, 거부 또는 에러 메시지로 응답될 수 있다.
ii. 서버는, 고유한 세션 암호화 키를 사용해서 및 암호화된 자격을 요청하는 클라이언트에 통신해서, 적절한 자격 정보를 암호화할 수 있으므로, 요청하는 클라이언트만이 자격 정보를 해독할 수 있다.
1. 클라이언트 특정 암호화된 자격 정보는 재생을 위해 요청된 콘텐츠 자산에 대한에 대한 콘텐츠 해독 키를 또한 포함할 수 있다.
4. 유저-다운로드가능한 및 인스톨가능한, 또는 팩토리 프리-인스톨된, 클라이언트 애플리케이션은, 미디어 클라이언트 및 디지털 권리 관리(DRM) 에이전트를 포함할 수 있는데, 이들은 특히 각각의 클라이언트 플랫폼에 대한 역설계에 대항해서 개발 및 확립되었다.
a. 미디어 클라이언트는 암호화된 자격 정보를 서버로부터 수신하고, 실행 시 이를 안전하게 핸들링한다.
b. 미디어 클라이언트는, 암호화된 자격 정보를 콘텐츠 오너마다, 콘텐츠 자산마다 및 유저마다의 기반으로 구별된 그 로컬 장치-특정 영구 스토리지 에어리어에 기억할 수 있다.
c. 네이티브 미디어 플레이어는 콘텐츠 자산의 렌더링을 위해 사용될 수 있다.
i. 미디어 클라이언트는, 콘텐츠 뷰윙의 시작에 앞서서 및 콘텐츠 뷰윙 동안(예를 들어, 재생을 시작 및 정지하거나 또는 재생 및 탐색 동작을 방지), 자격을 강제하기 위해서 랩퍼(wrapper)를 사용 및 제공할 수 있다.
d. 제3파티 미디어 플레이어는 콘텐츠 자산의 렌더링을 위해 클라이언트 애플리케이션과 함께 사용될 수 있다.
i. 미디어 클라이언트는, 콘텐츠 뷰윙의 시작 및 콘텐츠 뷰윙 동안(예를 들어, 재생을 시작 및 정지 또는 재생 및 탐색 동작을 방지)에 앞서서, 자격을 강제하기 위해서 제3파티 플레이어-특정 애플리케이션 프로그래밍 인터페이스(API)에 대해서 랩퍼를 사용 및 제공할 수 있다.
e. 콘텐츠는, 예를 들어 HTTP 라이브 스트리밍(HLS), HTTP를 통한 다이나믹 적응 스트리밍(DASH), 스무스 스트리밍(SS), 또는 HTTP 다이나믹 스트리밍(HDS)인 HTTP 적응 스트리밍 프로토콜을 통해서 미디어 플레이어에 전달될 수 있다.
i. 미디어 클라이언트는 복수의 매니패스트 파일, 예를 들어, HLS m3u8, DASH MPD, 또는 SS/HDS 매니패스트를 구축할 수 있고, 내부 HTTP 프록시 서버로부터 네이티브 또는 제3파티 미디어 플레이어로 매니패스트 파일을 서빙한다.
1. HTTP 프록시 서버는, 콘텐츠 뷰윙이 정지되어야 하면, 403 비인가된(Unauthorized)과 같은, HTTP 에러 코드로, 플레이어에 응답할 수 있다.
2. HTTP 프록시 서버는 스트림 인디케이터의 엔드(예를 들어, m3u8 #EXT-X-엔드LIST tag)를 매니패스트 파일 내에 삽입할 수 있고, 뷰윙이 정지되어야 할 때를 플레이어에 가리키기 위해서 또 다른 콘텐츠 URI를 생략한다.
f. HTTP 프록시 서버는, 매니패스트 파일 내의 콘텐츠 세그먼트를, 오리지널 콘텐츠가 보이는 것을 방지하기 위해서 교대 콘텐츠(예를 들어, 특정 조건에 대한 에러 메시지, 또는 지오-위치-기반 블랙아웃에 대한 치환 콘텐츠)를 포함하는, 교대 세그먼트 URI로 교체할 수 있다.
클라이언트 애플리케이션은 유저-갱신 가능하므로, 서버에 추가되는 새로운 자격을 위한 지원만 아니라 그 밖의 갱신이 클라이언트에 의해 사용될 수 있다(The client application may be user-upgradable so that support for new entitlements added to the server, as well as other updates, can be used by clients.).
도 5는 대안적인 배열을 나타내는데, 이 배열에서 프록시(109')는 도 1에 나타낸 바와 같이 클라이언트 장치(110) 외측보다 클라이언트 장치(110') 상에 위치된다. 이 배열에서, 프록시(109')는, 도 1의 배열에서와 같이 외부 네트워크(112)에 걸쳐서 통신하기 위해 네트워크 스택을 요구하는 것보다 내부-처리 통신과 같은 내부 매커니즘을 사용해서, 미디어 클라이언트(132)(도 3)와 같은 다른 컴포넌트와 통신한다.
본 발명의 다양한 실시형태를 특히 나타내고 기술하였지만, 첨부된 청구항에 의해 규정된 바와 같이 본 발명의 정신 및 범위로부터 벗어남이 없이, 형태 및 세부 사항에서의 다양한 변경이 만들어질 수 있는 것으로 이해될 것이다.
Claims (22)
- 클라이언트 장치에서 미디어 재생을 위해 자격을 강제하기 위해서 프록시 서버로서 컴퓨터화된 장치를 동작하는 방법으로서,
클라이언트 장치는 오퍼레이팅 콘택스트를 갖고, 스트리밍 미디어 플레이어에 전달된 매니패스트 파일의 콘텐츠에 따라서 원격 미디어 서버로부터 검색된 일련의 미디어 세그먼트를 사용해서 미디어 아이템을 렌더링하기 위해서 세그먼트-기반 스트리밍 미디어 플레이어를 실행하고:
스트리밍 동작 동안, 클라이언트 장치상의 미디어 아이템의 렌더링에 대한 승인 및 제한을 기술하는 자격 정보를 안전하게 수신 및 기억하고, 자격 정보는 권리 서버로부터 수신되고, 기억된 자격 정보의 비인가된 변경을 방지하기 위해서 컴퓨터화된 장치에 안전하게 기억되며;
프록시 서버에 의해, 매니패스트 파일 검색 경로를 제공하고, 이에 의해 스트리밍 미디어 플레이어가 미디어 아이템의 자격이 부여된 재생에서 사용하기 위한 원격 미디어 서버로부터 변경되지 않은 매니패스트 파일을 검색하며,
프록시 서버는,
(a) 자격에 대한 집행 조건 및 대응하는 집행 결과 모두를 식별하기 위해서 기억된 자격 정보를 적용하고, 집행 조건은 클라이언트 장치의 감지된 오퍼레이팅 콘택스트에 적어도 부분적으로 기반하고, 집행 결과는 집행 조건의 부재하에서 승인된 재생으로부터 재생의 방식을 수정하고,
(b) 집행 조건의 발생에 따라서, 스트리밍 미디어 플레이어의 동작에서 집행 결과를 유도하기 위해서, 변경된 매니패스트 파일을 스트리밍 미디어 플레이어에 제공하는 것을 특징으로 하는 방법. - 제1항에 있어서,
컴퓨터화된 장치는 클라이언트 장치로부터 구별되는 서버 장치이고;
자격 정보는 권리 서버에 링크된 제1네트워크 링크를 통해서 수신되며;
매니패스트 파일 검색 경로는 제1네트워크 링크 및 클라이언트 장치와 서버 장치 사이의 제2네트워크 링크를 포함하고;
변경된 매니패스트 파일은 서버 장치로부터 스트리밍 미디어 플레이어로 제2네트워크 링크를 통해서 제공되는 것을 특징으로 하는 방법. - 제1항에 있어서,
컴퓨터화된 장치는 클라이언트 장치이고;
자격 정보는 권리 서버에 링크된 네트워크 링크를 통해서 수신되며;
매니패스트 파일 검색 경로는 네트워크 링크 및 프록시 서버와 클라이언트 장치 내의 스트리밍 미디어 플레이어 사이의 내부 통신 매커니즘을 포함하고;
변경된 매니패스트 파일은 내부 통신 매커니즘을 통해서 프록시 서버로부터 스트리밍 미디어 플레이어로 제공되는 것을 특징으로 하는 방법. - 제1항에 있어서,
자격으로 보호된 콘텐츠가 오디오/비디오 콘텐츠인 것을 특징으로 하는 방법. - 제4항에 있어서,
콘텐츠는 콘텐츠 자산 암호화 키마다 암호화되는 것을 특징으로 하는 방법. - 제1항에 있어서,
자격 정보로 기술된 승인 및 제한은, 뷰윙 시간, 네트워크 타입, 클래스의 장치, 스트리밍 대 오프라인, 장치의 탈옥(jail-broken) 상태, 트릭 플레이, 비트래이트 한계; 오프라인 뷰윙을 위한 최대 파일 사이즈; 광고의 수; 시청 규제 등급; 지리적인 에어리어; 오리지널 콘텐츠 대신 디스플레이된 블랙아웃 및 대안적인 화상 또는 스트림; 외부 접속된 장치에 대한 출력, 공유하는, 및 시작하는 및 끝나는 포지션에 대한 승인 및 제한을 포함하는 것을 특징으로 하는 방법. - 제1항에 있어서,
자격은, 주어진 콘텐츠 오너: 유저들의 그룹; 개별적인 유저; 콘텐츠 아이템들의 그룹; 특정 콘텐츠 아이템; 특정 클래스의 장치; 특정 유저에 의해 사용 중인 특정 장치; 또는 이들의 소정의 조합에 대해서 구성되는 것을 특징으로 하는 방법. - 제7항에 있어서,
주어진 콘텐츠 자산에 대한 인가 또는 재인가를 재생하기 위해서 클라이언트로부터의 요청에 응답해서, 특정 콘텐츠 오너, 유저, 및 장치에 적용가능한 세트의 자격을 획득하는 것을 더 포함하여 구성되는 것을 특징으로 하는 방법. - 제8항에 있어서,
자격 정보는 세션 암호화 키를 사용해서 암호화되고, 암호화된 자격은 클라이언트 장치에 전달되므로, 클라이언트 장치만이 그 자격 정보를 해독할 수 있는 것을 특징으로 하는 방법. - 제9항에 있어서,
클라이언트 특정 암호화된 자격 정보는 재생을 위해 요청된 콘텐츠 자산에 대한 콘텐츠 해독 키를 더 포함하는 것을 특징으로 하는 방법. - 제1항에 있어서,
유저-다운로드가능한 및 인스톨가능한, 또는 팩토리 프리-인스톨된 클라이언트 애플리케이션은 미디어 클라이언트 및 디지털 권리 관리(DRM) 에이전트를 포함하고, 이들 모두는 각각의 클라이언트 플랫폼에 대해서 역설계하는 것에 대항해서 개발 및 확립되는 것을 특징으로 하는 방법. - 제11항에 있어서,
미디어 클라이언트는, 암호화된 자격 정보를 콘텐츠 오너마다, 콘텐츠 자산마다 및 유저마다의 기반으로 구별된 그 로컬 장치-특정 영구 스토리지 에어리어에 기억하는 것을 특징으로 하는 방법. - 제11항에 있어서,
네이티브 미디어 플레이어는 콘텐츠 자산의 렌더링을 위해 사용되는 것을 특징으로 하는 방법. - 제13항에 있어서,
미디어 클라이언트는, 콘텐츠 뷰윙의 시작에 앞서서 및 콘텐츠 뷰윙 동안, 자격을 강제하기 위해서 플랫폼-특정 애플리케이션 프로그래밍 인터페이스(API)에 대해서 랩퍼를 사용 및 제공하는 것을 특징으로 하는 방법. - 제11항에 있어서,
제3파티 미디어 플레이어가 콘텐츠 자산의 렌더링을 위해 클라이언트 애플리케이션과 함께 사용되는 것을 특징으로 하는 방법. - 제15항에 있어서,
미디어 클라이언트는, 콘텐츠 뷰윙의 시작에 앞서서 및 콘텐츠 뷰윙 동안, 자격을 강제하기 위해서 제3파티 플레이어-특정 애플리케이션 프로그래밍 인터페이스(API)에 대해서 랩퍼를 사용 및 제공하는 것을 특징으로 하는 방법. - 제11항에 있어서,
콘텐츠는, HTTP 라이브 스트리밍(HLS), HTTP를 통한 다이나믹 적응 스트리밍(DASH), 스무스 스트리밍(SS), 또는 HTTP 다이나믹 스트리밍(HDS) 중 하나인 HTTP 적응 스트리밍 프로토콜을 통해서 미디어 플레이어에 전달되는 것을 특징으로 하는 방법. - 제17항에 있어서,
미디어 클라이언트는, HLS m3u8, DASH MPD, 또는 SS/HDS 매니패스트 중 하나인 복수의 매니패스트 파일을 구축하고, 매니패스트 파일을 내부 HTTP 프록시 서버로부터 네이티브 또는 제3파티 미디어 플레이어에 서빙하는 것을 특징으로 하는 방법. - 제18항에 있어서,
HTTP 프록시 서버는, 콘텐츠 뷰윙이 정지되어야 하면, 미디어 플레이어에 대해서 HTTP 에러 코드로 응답하는 것을 특징으로 하는 방법. - 제18항에 있어서,
HTTP 프록시 서버는, 뷰윙이 정지되어야 할 때를 플레이어에 가리키기 위해서, 스트림 인디케이터의 엔드를 매니패스트 파일 내에 삽입하고, 또 다른 콘텐츠 URI를 생략하는 것을 특징으로 하는 방법. - 제18항에 있어서,
HTTP 프록시 서버는, 매니패스트 파일 내의 콘텐츠 세그먼트를, 오리지널 콘텐츠가 보이는 것을 방지하기 위해서 교대 콘텐츠를 포함하는, 교대 세그먼트 URI로 교체하는 것을 특징으로 하는 방법. - 제11항에 있어서,
미디어 클라이언트 애플리케이션은 유저-갱신 가능하므로, 서버에 추가되는 새로운 자격을 위한 지원만 아니라 그 밖의 갱신이 클라이언트 장치에 의해 사용될 수 있는 것을 특징으로 하는 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361857653P | 2013-07-23 | 2013-07-23 | |
US61/857,653 | 2013-07-23 | ||
PCT/US2014/047827 WO2015013411A1 (en) | 2013-07-23 | 2014-07-23 | Media distribution system with manifest-based entitlement enforcement |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160104611A KR20160104611A (ko) | 2016-09-05 |
KR101835238B1 true KR101835238B1 (ko) | 2018-03-06 |
Family
ID=52393815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020167004539A KR101835238B1 (ko) | 2013-07-23 | 2014-07-23 | 매니패스트-기반 자격 집행을 갖는 미디어 분배 시스템 |
Country Status (8)
Country | Link |
---|---|
US (4) | US9781077B2 (ko) |
EP (1) | EP3025267A4 (ko) |
KR (1) | KR101835238B1 (ko) |
CN (1) | CN105874810B (ko) |
BR (1) | BR112016001598A2 (ko) |
CA (1) | CA2919105C (ko) |
MX (1) | MX354712B (ko) |
WO (1) | WO2015013411A1 (ko) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150271541A1 (en) * | 2014-03-19 | 2015-09-24 | Time Warner Cable Enterprises Llc | Apparatus and methods for recording a media stream |
US20160182466A1 (en) * | 2014-12-23 | 2016-06-23 | CodeShop BV | TransDRM for Streaming Media |
US10375452B2 (en) | 2015-04-14 | 2019-08-06 | Time Warner Cable Enterprises Llc | Apparatus and methods for thumbnail generation |
US10425453B2 (en) | 2015-04-17 | 2019-09-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic packager network based ABR media distribution and delivery |
CN104796796B (zh) * | 2015-04-21 | 2018-03-16 | 范文鲜 | 提高Android平台的HLS流播放器容错的方法 |
US10455265B2 (en) * | 2015-04-27 | 2019-10-22 | Ericsson Ab | Program and device class entitlements in a media platform |
WO2016196690A1 (en) * | 2015-06-01 | 2016-12-08 | Miller Benjamin Aaron | Rights management and syndication of content |
US10224028B2 (en) | 2015-06-01 | 2019-03-05 | Sinclair Broadcast Group, Inc. | Break state detection for reduced capability devices |
WO2016196692A1 (en) | 2015-06-01 | 2016-12-08 | Miller Benjamin Aaron | Break state detection in content management systems |
CA2988105C (en) | 2015-06-01 | 2024-06-18 | Benjamin Aaron Miller | Content segmentation and time reconciliation |
US10855765B2 (en) | 2016-05-20 | 2020-12-01 | Sinclair Broadcast Group, Inc. | Content atomization |
US10652594B2 (en) | 2016-07-07 | 2020-05-12 | Time Warner Cable Enterprises Llc | Apparatus and methods for presentation of key frames in encrypted content |
US10749925B1 (en) | 2016-09-02 | 2020-08-18 | Snap Inc. | Video streaming optimization for quick start of video display |
US10432993B2 (en) | 2016-12-20 | 2019-10-01 | Arris Enterprises Llc | Output and playback control delivery for adaptive bitrate streaming |
US9936229B1 (en) | 2017-05-18 | 2018-04-03 | CodeShop BV | Delivery of edited or inserted media streaming content |
CN107231568A (zh) * | 2017-08-01 | 2017-10-03 | 腾讯科技(深圳)有限公司 | 一种媒体播放方法、服务器及终端设备 |
US10764650B2 (en) | 2017-12-07 | 2020-09-01 | At&T Intellectual Property I, L.P. | Video optimization proxy system and method |
US10595055B2 (en) * | 2018-04-23 | 2020-03-17 | Amazon Technologies, Inc. | Server-side insertion of media fragments |
CN115562613A (zh) | 2019-05-31 | 2023-01-03 | 苹果公司 | 用于音频媒体控件的用户界面 |
US10996917B2 (en) | 2019-05-31 | 2021-05-04 | Apple Inc. | User interfaces for audio media control |
US10867608B1 (en) | 2019-05-31 | 2020-12-15 | Apple Inc. | Multi-user configuration |
CN112449216A (zh) * | 2019-08-27 | 2021-03-05 | 华为技术有限公司 | 一种根据授权获取文件的方法 |
WO2021142038A1 (en) * | 2020-01-06 | 2021-07-15 | QBI Holdings, LLC | Advertising for media content |
US20220116399A1 (en) * | 2020-10-12 | 2022-04-14 | Apple Inc. | Media service configuration |
US11425460B1 (en) | 2021-01-29 | 2022-08-23 | Rovi Guides, Inc. | Selective streaming based on dynamic parental rating of content |
US12063415B2 (en) | 2021-01-29 | 2024-08-13 | Rovi Guides, Inc. | Selective streaming based on dynamic parental rating of content |
US11960615B2 (en) | 2021-06-06 | 2024-04-16 | Apple Inc. | Methods and user interfaces for voice-based user profile management |
US11778337B2 (en) * | 2021-11-09 | 2023-10-03 | Samsung Electronics Co., Ltd. | Image sensor and method for sensing image |
CN114745561B (zh) * | 2022-04-06 | 2023-05-30 | 珠海格力电器股份有限公司 | 直播间交互方法、装置、电子设备及存储介质 |
CN117319691A (zh) * | 2022-06-20 | 2023-12-29 | 中兴通讯股份有限公司 | 授权控制方法、装置、系统、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040003139A1 (en) | 2002-06-28 | 2004-01-01 | Microsoft Corporation | Secure server plug-in architecture for digital rights management systems |
WO2011041916A1 (en) * | 2009-10-09 | 2011-04-14 | Quickplay Media Inc. | Digital rights management in a mobile environment |
US20130166906A1 (en) * | 2011-12-22 | 2013-06-27 | Viswanathan Swaminathan | Methods and Apparatus for Integrating Digital Rights Management (DRM) Systems with Native HTTP Live Streaming |
US20130174271A1 (en) * | 2010-05-04 | 2013-07-04 | Verimatrix, Inc. | Device authentication for secure key retrieval for streaming media players |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2612549T3 (es) * | 2005-09-02 | 2017-05-17 | Nokia Technologies Oy | Comunicación de datos con nodo de red remoto |
US9124650B2 (en) | 2006-12-13 | 2015-09-01 | Quickplay Media Inc. | Digital rights management in a mobile environment |
CN102137137B (zh) * | 2010-09-17 | 2013-11-06 | 华为技术有限公司 | 基于http流的媒体内容动态插播方法、装置及系统 |
CN102118428B (zh) * | 2010-12-29 | 2012-12-26 | 天脉聚源(北京)传媒科技有限公司 | 一种播放流媒体的方法和系统 |
US9418209B2 (en) * | 2012-10-02 | 2016-08-16 | Google Technology Holdings LLC | Systems and methods for manipulating sensitive information in a secure mobile environment |
US9584557B2 (en) * | 2013-03-15 | 2017-02-28 | Arris Enterprises, Inc. | Proxy for facilitating streaming of media from server to client |
US9692800B2 (en) * | 2014-06-11 | 2017-06-27 | Google Inc. | Enhanced streaming media playback |
US10142386B2 (en) * | 2014-10-29 | 2018-11-27 | DLVR, Inc. | Determining manifest file data used in adaptive streaming video delivery |
US10162944B2 (en) * | 2015-03-30 | 2018-12-25 | Arris Enterprises Llc | Library style media DRM APIs in a hosted architecture |
US9942343B2 (en) * | 2015-08-27 | 2018-04-10 | Kiswe Mobile Inc. | Efficient content streaming utilizing local proxy server implemented on client device |
US10114689B1 (en) * | 2015-12-28 | 2018-10-30 | Amazon Technologies, Inc. | Dynamic playlist generation |
US10142684B2 (en) * | 2017-03-21 | 2018-11-27 | Cisco Technology, Inc. | Pinning encryption metadata to segment URIs |
US20180352287A1 (en) * | 2017-06-02 | 2018-12-06 | Apple Inc. | Persistent ID for Offline Access to Streamed Media |
US11178433B2 (en) * | 2019-11-21 | 2021-11-16 | Pluto Inc. | Methods and systems for dynamic routing of content using a static playlist manifest |
US12047648B2 (en) * | 2020-07-21 | 2024-07-23 | Akamai Technologies, Inc. | Systems and methods for midstream selection of content to insert into a media stream |
-
2014
- 2014-07-23 US US14/907,132 patent/US9781077B2/en active Active
- 2014-07-23 EP EP14829855.7A patent/EP3025267A4/en not_active Withdrawn
- 2014-07-23 BR BR112016001598A patent/BR112016001598A2/pt not_active Application Discontinuation
- 2014-07-23 WO PCT/US2014/047827 patent/WO2015013411A1/en active Application Filing
- 2014-07-23 CA CA2919105A patent/CA2919105C/en not_active Expired - Fee Related
- 2014-07-23 MX MX2016000883A patent/MX354712B/es active IP Right Grant
- 2014-07-23 CN CN201480052372.7A patent/CN105874810B/zh active Active
- 2014-07-23 KR KR1020167004539A patent/KR101835238B1/ko not_active Application Discontinuation
-
2017
- 2017-09-28 US US15/718,205 patent/US10841282B2/en active Active
-
2020
- 2020-10-30 US US17/084,723 patent/US11463413B2/en active Active
-
2022
- 2022-09-30 US US17/957,774 patent/US11777906B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040003139A1 (en) | 2002-06-28 | 2004-01-01 | Microsoft Corporation | Secure server plug-in architecture for digital rights management systems |
WO2011041916A1 (en) * | 2009-10-09 | 2011-04-14 | Quickplay Media Inc. | Digital rights management in a mobile environment |
US20130174271A1 (en) * | 2010-05-04 | 2013-07-04 | Verimatrix, Inc. | Device authentication for secure key retrieval for streaming media players |
US20130166906A1 (en) * | 2011-12-22 | 2013-06-27 | Viswanathan Swaminathan | Methods and Apparatus for Integrating Digital Rights Management (DRM) Systems with Native HTTP Live Streaming |
Also Published As
Publication number | Publication date |
---|---|
US9781077B2 (en) | 2017-10-03 |
US20160164841A1 (en) | 2016-06-09 |
CN105874810A (zh) | 2016-08-17 |
WO2015013411A1 (en) | 2015-01-29 |
MX354712B (es) | 2018-03-16 |
CA2919105A1 (en) | 2015-01-29 |
CA2919105C (en) | 2018-10-16 |
US10841282B2 (en) | 2020-11-17 |
CN105874810B (zh) | 2020-02-07 |
BR112016001598A2 (pt) | 2017-10-31 |
KR20160104611A (ko) | 2016-09-05 |
US11463413B2 (en) | 2022-10-04 |
US11777906B2 (en) | 2023-10-03 |
EP3025267A1 (en) | 2016-06-01 |
EP3025267A4 (en) | 2017-03-22 |
US20230016777A1 (en) | 2023-01-19 |
MX2016000883A (es) | 2017-03-27 |
US20180019973A1 (en) | 2018-01-18 |
US20210075769A1 (en) | 2021-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101835238B1 (ko) | 매니패스트-기반 자격 집행을 갖는 미디어 분배 시스템 | |
US10754930B2 (en) | Remotely managed trusted execution environment for digital rights management in a distributed network with thin clients | |
US9418209B2 (en) | Systems and methods for manipulating sensitive information in a secure mobile environment | |
US10893313B2 (en) | Secure bridging of third-party digital rights management to local security | |
US9152577B2 (en) | Security central processing unit management of a transcoder pipeline | |
KR20070014178A (ko) | 멀티미디어 컨텐츠의 원격 실시간 액세스를 위한 방법,장치 및 시스템 | |
US20170171166A1 (en) | Anti-hotlinking method and electronic device | |
US9852273B2 (en) | Methods and systems of playing multi-license media content | |
EP3317796B1 (en) | Remotely managed trusted execution environment for digital-rights management in a distributed network with thin clients | |
Silhavy et al. | Low latency streaming and multi DRM with dash. js | |
US11095937B2 (en) | Method and device for secure video processing | |
EP3692706A1 (en) | A method for delivering digital content to at least one client device | |
US20240214362A1 (en) | Distributed data content protection | |
US20240214361A1 (en) | Distributed data content protection | |
US20160112379A1 (en) | Apparatus for and method of playing back content | |
Park et al. | Protecting ASF movie on VOD |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal |