KR20160110442A - 이벤트 스트리밍 프레젠테이션 확립 - Google Patents

이벤트 스트리밍 프레젠테이션 확립 Download PDF

Info

Publication number
KR20160110442A
KR20160110442A KR1020167022041A KR20167022041A KR20160110442A KR 20160110442 A KR20160110442 A KR 20160110442A KR 1020167022041 A KR1020167022041 A KR 1020167022041A KR 20167022041 A KR20167022041 A KR 20167022041A KR 20160110442 A KR20160110442 A KR 20160110442A
Authority
KR
South Korea
Prior art keywords
streaming
stream
streaming client
quality
manifest
Prior art date
Application number
KR1020167022041A
Other languages
English (en)
Inventor
마틴 프린스
오마르 아지즈 니아뭇
엠마뉴엘 토마스
레이 반브렌덴버그
한스 마틴 스토킹
Original Assignee
코닌클리즈케 케이피엔 엔.브이.
네덜란제 오르가니자티에 포오르 토에게파스트-나투우르베텐샤펠리즈크 온데르조에크 테엔오
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리즈케 케이피엔 엔.브이., 네덜란제 오르가니자티에 포오르 토에게파스트-나투우르베텐샤펠리즈크 온데르조에크 테엔오 filed Critical 코닌클리즈케 케이피엔 엔.브이.
Publication of KR20160110442A publication Critical patent/KR20160110442A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/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/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • 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/26258Content 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
    • 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/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
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
    • 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/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6175Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via Internet
    • 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

Abstract

본 발명은 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하며, 상기 프레젠테이션은 이벤트의 다른 기록을 나타내는 복수의 미디어 스트림 사이에 동적으로 스위칭함에 의하여 획득된다. 그러한 목적을 위해, 소스 데이터는 복수의 스트림 소스로부터 획득된다. 소스 데이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존 부분의 메타데이터로 구성된다. 소스 데이터에 품질 평가 함수를 적용함에 의하여, 품질 스코어는 공존 부분 각각에 할당된다. 이것은 선택 데이터가 생성되도록 허용하여, 스트리밍 클라이언트가 각 미디어 스트림의 공존 부분 중 선택된 하나에 액세스할 수 있게 한다. 예를 들어, 가장 높은 품질 스코어를 제공하는 세그먼트가 선택될 수 있다. 그렇게 함으로써, 더 이상 소비자가 다른 미디어 스트림들 사이에 수동으로 스위치할 필요가 없다.

Description

이벤트 스트리밍 프레젠테이션 확립{ESTABLISHING A STREAMING PRESENTATION OF AN EVENT}
본 발명은 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템 및 방법에 관한 것이다. 또한 본 발명은 시스템과 방법을 이용하기 위한 스트리밍 클라이언트 및 스트리밍 클라이언트를 위한 매니페스트에 관한 것이다. 또한 발명은 프로세서(processor) 시스템으로 하여금 상기 방법을 실행하게 하는 명령을 포함하는 컴퓨터 프로그램 제품에 관한 것이다.
디지털 카메라 및 모바일 폰과 같은 기록 장치는 오늘날 도처에 존재한다(ubiquitous). 따라서, 콘서트, 게임, 파티 등과 같은 이벤트는 다수의 기록 장치에 의해 동시에 기록될 수 있고 따라서 동일한 이벤트에 대해 다수의 기록을 획득할 수 있다. 그러한 다수의 기록은 다양한 방법으로 차이가 있다. 예를 들어, 기록은 다른 뷰(viewing) 위치에서 이벤트를 보여 줄 수 있다. 다른 예는 기록의 형태가 즉 비디오 기록, 입체 비디오 기록, 오디오 기록 등과 같이, 다를 수 있다. 특히, 기록은 예를 들어, (비)제한된 뷰 각도(viewing angle) 또는 이벤트까지의 (부)적절한 거리에 의하여 콘텐츠 품질이 다를 수도 있다. 기록은 또한 다른 기술적 성능을 가진 기록 장치에서 생성되거나, 다른 비트레이트로 인코딩되거나 등등으로써, 기록 품질이 다를 수도 있다. 그러한 콘텐츠 품질 및 기록 품질은 이제부터 '품질'로 간단하게 언급한다.
이벤트의 다른 기록들은 스트리밍에 의해 이용 가능해질 수 있다. 그러한 경우에, 다른 기록들은 복수의 미디어 스트림에 의해 표현될 수 있으며, 복수의 미디어 스트림들은 복수의 스트림 소스 각각으로부터 액세스 가능하다. 미디어 스트림의 예는 카메라-기록 스트림과 같은 비디오 스트림, 마이크로폰-기록 스트림과 같은 오디오 스트림 및 다른 형태의 미디어 스트림을 포함하는 멀티미디어 스트림을 포함한다. 따라서, 복수의 미디어 스트림에 액세스하는 스트리밍 클라이언트를 이용할 때, 소비자는, 즉 카메라 뷰를 스위치하기 위한 랜더링을 위해, 미디어 스트림을 수동으로 선택할 수 있다.
불리하게도, 다른 미디어 스트림들 사이에 수동으로 스위칭하는 것은 소비자가 일반적으로 다른 스트림들과 용이하게 비교할 수 없고, 따라서 그/그녀의 선호도에 따라 미디어 스트림을 용이하게 선택할 수 없기 때문에 성가시다.
본 발명이 해결하려는 과제는 스트리밍 클라이언트가 직접 선택된 스트림 소스에 액세스할 수 있도록 하여 미디어 스트림(의 부분)의 전달에 시스템이 관여할 필요는 없는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템 및 방법을 구현하는데 있다.
본 발명이 해결하려는 또 다른 과제는 스트리밍 클라이언트에 의해 실제의 선택이 실행될 수 있도록 하여 스트리밍 클라이언트가 다른, 예를 들면 로컬 사항들을 고려할 수 있는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템 및 방법을 구현하는데 있다.
본 발명 과제의 해결 수단은 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템에 있어서, 스트리밍 프레젠테이션은 이벤트의 다른 기록을 표현하는 복수의 미디어 스트림 사이에 동적으로 스위칭함에 의하여 획득되었고, 복수의 미디어 스트림은 각각의 복수의 미디어 스트림으로부터 액세스 가능하되, 시스템은: 복수의 스트림 소스로부터 소스 데이터를 획득하기 위한 입력을 포함하되, 소스 데이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존(concurrent) 부분의 메타데이터에 의해 구성되며, 공존 부분은 이벤트의 공존 시간 주기를 나타내며; i) 공존 부분들 각각에 품질 스코어를 할당하기 위하여 소스 데이터에 적어도 하나의 품질 평가 함수를 적용하고, 그로 인해 복수의 품질 스코어를 확립하는 단계; 및 ii) 스트리밍 클라이언트가 각 미디어 스트림의 공존 부분들 중 복수의 품질 스코어의 비교를 기초로 선택된 하나에 액세스할 수 있도록 선택 데이터를 생성하는 단계를 위해 구성된 프로세싱 서브시스템을 포함함을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템을 제공하는데 있다.
본 발명의 또 다른 과제의 해결 수단은 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하는 방법에 있어서, 스트리밍 프레젠테이션은 이벤트의 다른 기록들을 나타내는 복수의 미디어 스트림 사이에 동적으로 스위칭함에 의하여 획득되었으며, 복수의 미디어 스트림은 각각의 복수의 스트림 소스로부터 액세스 가능하되, 방법은: 복수의 스트림 소스로부터 소스 데이터를 획득하는 단계를 포함하되, 소스 데이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존 부분의 메타데이터로 구성되고, 공존 부분은 이벤트의 공존 시간 주기를 나타내며; 공존 부분 각각에 품질 스코어를 할당하기 위하여 소스 데이터에 적어도 하나의 품질 평가 함수를 적용하고, 그로 인해 복수의 품질 스코어를 확립하는 단계; 및 스트리밍 클라이언트가 각 미디어 스트림의 공존 부분들 중 선택된 하나에 액세스 할 수 있도록 선택 데이터를 생성하는 단계를 포함하되, 선택된 부분은 복수의 품질 스코어의 비교를 기초로 선택된 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하는 방법을 제공하는데 있다.
본 발명의 또 다른 과제의 해결 수단은 컴퓨터 프로그램 제품은 프로세싱 시스템이 청구항 16에 따른 방법을 수행하게 하는 명령을 포함하는 컴퓨터 프로그램 제품을 제공하는데 있다.
본 발명은 스트리밍 클라이언트가 직접 선택된 스트림 소스에 액세스할 수 있도록 하여 미디어 스트림(의 부분)의 전달에 시스템이 관여할 필요는 없는 유리한 효과가 있다.
또한 본 발명은 스트리밍 클라이언트에 의해 실제의 선택이 실행될 수 있도록 하여 스트리밍 클라이언트가 다른, 예를 들면 로컬 사항들을 고려할 수 있는 유리한 효과가 있다.
도1은 본 발명에 따른 시스템의 실시 예를 나탸낸다;
도2는 다른 비트레이트로 동일한 기록을 인코딩하고, 그로 인해 적응형(adaptive) 비트레이트 스트리밍을 가능하게 함에 의하여 획득된 세그먼트화된 미디어 스트림을 도시한다;
도3은 세그먼트화된 미디어 스트림들 각각의 세그먼트에 할당된 품질 스코어로 동일한 이벤트의 다른 기록을 구성하는 세그먼트화된 미디어 스트림을 나타낸다는 점에서 본 발명의 일 측면을 도시한다;
도4는 본 발명에 따른 시스템의 다른 실시 예를 나타내며, 여기서 선택 데이터는 메타데이터로서 포멧되고, 메타데이터 스트림은 스트리밍 클라이언트를 위한 매니페스트에 메타데이터 스트림에 대한 주소 정보를 포함함에 의하여 스트리밍 클라이언트에 액세스 가능하게 된다;
도5는 본 발명에 따른 시스템의 다른 실시 예를 나타내며, 선택 데이터는 시그널링 채널(signaling channel)을 통해 스트리밍 클라이언트에게 제공된다.
도6은 본 발명에 따른 시스템의 다른 실시 예를 나타내며, 여기서 사스템은 복수의 미디어 스트림에 액세스하고 및 상기 미디어 스트림들의 ???다른 부분들로부터 확립된 스트리밍 클라이언트에게 미디어 스트림을 전달함으로써 스트리밍 클라이언트와 스트림 소스 사이에 프록시로서의 역할을 한다;
도7은 본 발명에 따른 시스템의 다른 실시 예를 나타내며, 여기서 시스템은 미디어 스트림 자체를 전달하지는 않지만 매니페스트와 선택 데이터를 스트리밍 클라이언트에게 전달한다;
도8은 세그먼트의 품질을 기초로 소비자에게 피드백을 제공할 수 있고, 그리하여 품질 평가를 개선할 수 있는 피드백 메커니즘을 나타낸다;
도9는 본 발명에 따른 방법을 나타내고; 및
도10은 프로세싱 시스템으로 하여금 본 방법을 수행하게 하는 명령을 포함하는 컴퓨터 프로그램 제품을 나타낸다.
알려진 선행 기술의 적어도 하나의 결점을 해결하면서 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하는 시스템 및 방법을 획득한다면 유리할 것이다.
본 발명의 제1 측면은 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템 및 방법을 제공하는 것이며, 스트리밍 프레젠테이션은 이벤트의 다른 기록들을 나타내는 복수의 미디어 스트림들 사이의 동적 스위칭에 의하여 달성되었고, 복수의 미디어 스트림은 복수의 스트림 소스 각각에서 액세스 가능하다.
시스템은:
복수의 스트림 소스로부터 소스 데이터를 얻기 위한 입력, 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존(concurrent) 부분의 메타데이터에 의해 구성된 소스 데이터, 이벤트의 공존 시간 주기(period)를 나타내는 공존 부분;
i) 공존 부분들 각각에 품질 스코어를 할당하기 위하여 소스 데이터에 적어도 하나의 품질 평가 함수를 적용하고, 그로 인해 복수의 품질 스코어를 확립하는 단계; 및
ii) 스트리밍 클라이언트가 각 미디어 스트림의 공존 부분 중 복수의 품질 스코어의 비교를 기초로 선택된 하나에 액세스할 수 있도록 선택 데이터를 생성하는 단계를 위해 구성된 프로세싱 서브시스템을 포함한다.
방법은:
- 스트림 소스로부터 소스 데이터를 획득하는 단계, 소스 데이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존(concurrent)하는 부분의 메타데이터에 의해 구성될 수 있고, 공존 부분은 이벤트의 공존 시간 주기를 나타낼 수 있음;
- 공존 부분들 각각에 품질 스코어를 할당하고, 그로 인해 복수의 품질 스코어를 확립하기 위해 소스 데이터에 적어도 하나의 품질 평가 기능을 적용하는 단계; 및
- 스트리밍 클라이언트가 각각의 미디어 스트림의 공존 부분 중 복수의 품질 스코어의 비교를 기초로 선택된 하나에 액세스할 수 있도록 선택 데이터를 생성하는 단계를 포함할 수 있다.
본 발명의 다른 측면은 프로세싱 시스템으로 하여금 본 방법을 실행하게 하는 명령을 포함하는 컴퓨터 프로그램 제품을 제공한다. 본 발명의 구현은 종속 항에 정의되어 있다.
상기 측면들은 복수의 스트림 소스가 관련된다. 스트림 소스들 각각은 이벤트의 다른 기록을 위한 스트리밍 소스를 구성할 수 있다. 따라서, 스트림 소스들은 동일한 이벤트에 대해 선택적(alternative) 기록을 제공할 수 있다. 스트리밍은 라이브일 수 있고, 그로 인해 이벤트 자체와 동시에 일어날 수 있다.
소스 데이터는 복수의 스트림 소스에서 획득할 수 있다. 소스 데이터는, 즉 비디오 스트림, 오디오 스트림 등의 일부를 나타내는 콘텐츠 데이터로 구성될 수 있다. 추가적으로 또는 대안적으로, 소스 데이터는 각각의 미디어 스트림의 메타데이터로 구성될 수 있다. 그러한 메타데이터는 각각의 기록의 콘텍스트(context)를 나타낼 수 있고 또는 그 기록의 특징을 나타낼 수 있다.
소스 데이터는 미디어 스트림들의 공존 부분과 관련이 있을 수 있다. 여기서'공존부분(concurrent portions)'이라는 용어는 이벤트의 공통 시간 주기(common time period)에 해당하는 각 미디어 스트림의 일부를 말한다. 그와 같이, 공존 부분들은 시간에 있어서 상기 주기 동안 선택적 기록을 구성한다. 공존 부분은, 예를 들면 미디어 스트림들이 세그먼트화함에 의하여, 각 미디어 스트림에 명백히 존재할 수 있음을 알아야 한다. 그러나, 미디어 스트림들이 동등하게 비-세그먼트화된(non-segmented) 미디어 스트림을 구성할 수 있다는 점에서 이것은 그런 경우에 해당될 필요가 없다. 또한, 세그먼트화된 미디어 스트림의 경우에도, 세그먼트들은 동일한 길이일 필요는 없고 및/또는 동기화될 필요도 없다. 오히려, 이벤트 타임에 세그먼트들이 중첩하고, 그로 인해 공존 부분들을 포함하는 것으로 충분할 것이다.
품질 평가 함수는 소스 데이터에 적용될 수 있다. 그렇게 함으로써, 품질 스코어는 공존 부분들 각각에 할당되고 그리하여 암시적으로 또한 각 미디어 스트림과 스트림 소스에 할당될 수 있다. 따라서, 각각의 공존 부분은, 즉 품질 등급에 따라 등급이 매겨질(rate) 수 있고, 공존 부분들 사이에 품질 비교가 허용될 수 있다. 이러한 품질 평가 함수는 콘텐츠 품질 및/또는 기록 품질을 평가할 수 있고 일반적으로 이용자 피드백을 고려할 수 있음을 알아야 한다. 또한 이러한 품질 평가 함수는 신호 분석 분야에서는 기본적으로 알려진 것으로 이해해야 한다.
게다가, 선택 데이터는 공존 부분들 중 하나를 선택하는데 이용할 수 있도록 생성될 수 있다. 어느 공존 부분을 선택할 지 결정함에 있어서, 공존 부분에 높은 품질 스코어나 또는 일반적으로, 예를 들면, 기준(criterion)에 의해 적당하다고 생각되는 품질 스코어가 할당된 부분이 선택될 수 있다는 점에서 복수의 품질 스코어가 이용될 수 있을 것이다. 따라서, 선택 데이터는 예를 들면, 공존 부분을 포함하는 스트림의 스트림 식별자, 공존 부분을 나타내는 세그먼트를 식별하는 세그먼트 식별자, 상기 스트림 또는 상기 세그먼트와 연관된 품질 스코어, 등을 포함함으로써, 가장 적절한 공존 부분을 명시적 또는 암시적으로 나타낸다.
위 수단들은 상기 시스템이 복수의 미디어 스트림의 공존 부분들의 품질을 평가하고 스트리밍 클라이언트가 품질 스코어의 비교를 기초로 각 미디어 스트림의 공존 부분들 중 특히 하나에 액세스하게 할 수 있는 선택 데이터를 생성한다는 점에서 프록시로서 즉, 스트리밍 클라이언트와 복수의 스트림 소스 사이의 중재자로서 효과적으로 기능하는 시스템을 제공한다.
예를 들면, 선택된 부분은 가장 높은 품질 스코어가 할당되었을 것이다. 이러한 공존 세그먼트들의 연속적인 공존 세그먼트들의 품질을 평가함으로써, 선택 데이터는 스트리밍 클라이언트가 현재의 특정 품질을 제공하는 그러한 미디어 스트림들의 세그먼트에 연속적으로 액세스하게 할 수 있다. 그와 같이, 복수의 미디어 스트림의 다른 부분들에 대한 동적인 선택을 구성하는 이벤트의 스트리밍 프레젠테이션이 확립될 수 있다. 품질 평가를 적용하는 프로세싱 서브시스템이 스트림 소스 내에 구성되거나 또는 가까이에 위치하거나 또는 네트워크에 위치하는 것은 아마도 유리하겠지만, 프로세싱 서브시스템이 스트리밍 클라이언트 내에 구성되거나 또는 가까이에 위치하는 것을 배제할 수 없음을 알아야 한다. 예를 들면, 스트리밍 클라이언트에게 관련 스트림을 전달하기 위해 이용 가능한 충분한 대역폭이 있는 경우, 품질 평가 함수는 스트리밍 클라이언트 내에서 또는 가까이에서 실행될 수 있고 다음 유리한 점들이 여전히 적용된다.
소비자가 다른 미디어 스트림들 사이에 더 이상 수동으로 스위치할 필요가 없다는 점이 한 가지 이점이 될 것이다. 다른 이점은 상기 시스템이 복수의 스트림 소스들이 독립적인, 관리되지 않은 스트림 소스를 구성하는 시나리오에서 이용하기 매우 적합하다는 점이다.
이러한 점에서, "MoViMash: Online Mobile Video Mashup"라는 제목의 Sani, Mukesh Kumar 등의 논문, 멀티미디어에 관한 제 20회 ACM국제 회의 의사록은 다수의 비디오 클립의 '매시업(mashup)' 만들기를 기술하고 있다. 그러나, 이것은 기재된 네트워크가 포스트-프로덕션 동안 비디오 편집의 자동화를 요구하기 때문에 본 발명과는 다르며, 그러므로 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하는 것이 목적인 스트리밍 콘텍스트(문맥)에 채용하는 것은 부적절하다
일 실시 예에서, 스트리밍 클라이언트에게 매니페스트가 제공될 수 있으며, 상기 매니페스트는 스트리밍 클라이언트가 복수의 스트림 소스에 액세스하는 것을 가능하게 하기 위한 주소 정보를 포함할 수 있고 및 여기서: 시스템은 또한 스트리밍 클라이언트에게 선택 데이터를 제공하기 위한 클라이언트 인터페이스를 포함할 수 있으며; 및
- 선택 데이터는 스트리밍 클라이언트가 상기 선택된 부분에 대한 액세스를 제공하는 복수의 스트림 소스들 중 하나를, 상기 매니페스트로부터, 선택할 수 있도록 프로세싱 서브시스템에 의해 생성될 수 있다.
미디어 스트림의 스트리밍 분야에서, 스트리밍 클라이언트에게 매니페스트를 제공하는 것은 알려져 있다. 매니페스트는 다른 미디어 스트림들 및 그들의 주소 정보, 즉, 어느 미디어 스트림 소스로부터 각 미디어 스트림에 액세스할 수 있는지를 식별할 수 있다. 이러한 실시 예에서, 스트리밍 클라이언트가 복수의 스트림 소스에 액세스할 수 있도록 하고 및 그렇게 상기 스트림 소스들에 의해 제공된 미디어 스트림들에 액세스할 수 있게 하는 매니페스트가 스트리밍 클라이언트에게 제공될 수 있다. 설명된 방법으로 선택 데이터를 생성함으로써, 스트리밍 클라이언트는 선택된 부분을 획득하기 위해 매니페스트로부터 어느 스트림 소스에 액세스해야 하는지 식별할 수 있을 것이다. 이러한 실시 예의 이점은 스트리밍 클라이언트가 직접 선택된 스트림 소스에 액세스할 수 있다는 점이다. 따라서, 미디어 스트림(의 부분)의 전달에 시스템이 관여할 필요는 없다. 다른 이점은 스트리밍 클라이언트에 의해 실제의 선택이 실행될 수 있다는 것이며, 그리하여 스트리밍 클라이언트가 다른, 예를 들면 로컬 사항들을 고려할 수 있다. 또한 기존의 매니페스트와 그들의 전달 매커니즘을 이용할 수 있다. 따라서, 스트리밍 클라이언트에 선택 데이터를 추가적으로 제공하는 것만으로도 충분할 것이다
일 실시 예에서, 선택 데이터는 복수의 품질 스코어의 적어도 일부를 포함할 수 있다. 따라서, 스트리밍 클라이언트는 어느 스트림 소스 그리하여 어느 미디어 스트림에 액세스해야 하는지 결정하기 위해, 매니페스트에서 식별된 대로 각각의 스트림 소스에 품질 스코어를 매치(match)시킬 수 있다. 일 실시 예에서, 프로세싱 서브시스템은 i) 상기 품질 스코어를 메타데이터 스트림으로 포멧하고 ii) 스트리밍 클라이언트가 상기 메타데이터에 액세스 할 수 있게 매니페스트에 주소 정보를 포함하도록 구성될 수 있다.
품질 스코어를 메타데이터로 포멧하고 상기 주소 정보를 포함하기 위한 매니페스트를 생성함으로써, 품질 스코어는 미디어 스트림들 자체와 유사한 방법으로, 즉 스트림의 형식으로 및 스트림에 주소 정보를 제공하는 매니페스트에 의해 스트리밍 클라이언트에게 전달될 수 있다. 이러한 실시 예의 한 가지 이점은 MPEG-4 Part 14의 메타데이터 스트림의 전달을 위한 것들처럼, 기존의 전달 메커니즘이 이용될 수 있다는 점이다. 여기서는 오로지 새로운 스트림 식별자만이 품질 스코어를 포함하는 메타데이터 스트림을 식별하도록 선언되어야 할 것이다. 따라서, 이것은 스트리밍 클라이언트(들)에게 품질 스코어를 전달하기 위한 추가적인 전달 메커니즘에 대한 필요를 피할 수 있다.
일 실시 예에서, 클라이언트 인터페이스는 시그널링(signalling) 채널을 통해 스트리밍 클라이언트에게 선택 데이터를 제공하도록 구성될 수 있다. 시그널링 채널을 통해 스트리밍 클라이언트에게 선택 데이터를 제공함으로써, 상기 전달을 위해 기존의 전달 메커니즘에 의존할 필요가 없다. 따라서, 선택 데이터는 심지어 복수의 미디어 스트림을 스트리밍하는데 이용되는 표준이 그러한 선택 데이터가 전달되도록 전달 메커니즘을 명확히 제공하지 않더라도 스트리밍 클라이언트에게 제공된다. 예를 들면, HTTP (DASH)를 통해 MPEG 동적 적응형 스트리밍(Dynamic Adaptive Streaming)을 이용할 때, 그러한 시그널링 채널은 심지어 MPEG-DASH가 적절한 전달 메커니즘을 제공하지 않더라도 선택 데이터를 전달하는데 이용될 수 있다.
일 실시 예에서, 선택 데이터는 매니페스트를 스트리밍 클라이언트에게 제공하는 것으로부터 비동기(asynchromously)로 제공될 수 있다. 선택 데이터를 메니페스트와 비동기로 전달함으로써, 그들의 전달은 시간에 있어서 탈동조화(decoupled)된다.
일 실시 예에서, 선택 데이터는 또한 스트리밍 클라이언트가 복수의 품질 스코어와 복수의 스트림 소스를 연관시킬 수 있게 하는 관련 정보를 더 포함할 수 있다. 그와 같이, 스트리밍 클라이언트에게 상기 품질 소스를 복수의 스트림 소스들과 연관시킬 수 있게 하는 정보가 제공될 수 있다. 그러한 관련 정보는 명시적일 수도 또는 암시적일 수도 있다. 후자의 한 예는 매니페스트에서 스트림 소스의 주소 정보의 순서화(ordering)와 일치되는 복수의 품질 스코어의 순서화(ordering)일 수 있다.
일 실시 예에서, 프로세싱 서브시스템은 스트리밍 클라이언트를 위한 매니페스트를 생성하도록 구성될 수 있고, 상기 매니스트는 복수의 스트림 소스 각각의 스트림 소스로부터 연속적으로 액세스되는 복수의 미디어 스트림의 다른 부분들을 식별하는 플레이리스트(playlist)를 포함하며, 다른 부분들 중 적어도 하나는 선택 데이터를 기초로 선택되었다. 이러한 실시 예에서, 스트리밍 클라이언트 보다 오히려 시스템이 각 미디어 스트림의 선택을 수행한다. 복수의 품질 스코어를 스트리밍 클라이언트에게 전달하기 보다, 시스템은 즉, 적절한 품질 스코어가 할당되었던 부분을 연속적으로 식별함에 의하여, 선택을 나타내는 플레이리스트(playlist)를 제공한다.
따라서, 스트리밍 클라이언트는 플레이리스트에 따라 복수의 스트림 소스에 액세스함으로써 이벤트의 스트리밍 프레젠테이션을 획득할 수 있다.
일 실시 예에서, 프로세싱 서브시스템은 새로운 공존 부분에 대하여 매니페스트를 업데이트하도록 구성될 수 있다. 이러한 실시 예는 스트리밍 동안 미래의 즉, 이제부터 스트리밍되어야 할 부분들의 품질은 여전히 모르기 때문에 전체 미디어 스트림에 대한 매니페스트는 생성할 수 없다는 것을 고려한다. 따라서, 매니페스트는 시간에 걸쳐 내내 업데이트될 것이다.
일 실시 예에서, 프로세싱 서브시스템은, 선택 데이터를 생성할 때, 이전의 미디어 스트림의 공존 부분과 선택된 부분 사이의 품질 스코어의 차이가 품질 임계치(threshold) 이하이거나; 또는 공존 부분의 길이가 길이 임계치 이하인 경우에, 복수의 미디어 스트림 중 하나에 대한 이전의 선택을 유지하도록 구성될 수 있다.
이러한 실시 예는 공존 부분에 적절한 품질 스코어가 할당되었더라도 다른 미디어 스트림으로 스위치하는 것이 항상 바람직하지는 않다는 것을 고려한다. 즉, 공존 세그먼트의 길이 또는 이전에 선택된 미디어 스트림의 공존 부분과의 품질에서의 차이가 각각의 임계치 이하일 때, 그러한 스위칭은 품질의 관점에서 이점보다 불리함이 더 크다. 따라서, 이전의 선택은 유지될 수 있다.
일 실시 예에서, 복수의 미디어 스트림은 하나 이상의 세그먼트화된 미디어 스트림을 포함할 수 있고, 공존 부분들은 적어도 하나 이상의 세그먼트화된 미디어 스트림의 공존 세그먼트들에 의해 적어도 부분적으로 구성될 수 있다.
그렇게 명확히 정의된 세그먼트들은 미디어 스트림들 사이의 동적인 스위칭에 자연스러운 입상도(granularity)를 제공한다, 그러한 세그먼트화된 미디어 스트림들의 예는 적응형(adaptive) 비트레이트 스트리밍에 제공된 것들을 포함한다. 그러므로, 세그먼트-바이-세그먼트(segment-by-segment)를 기초로, 적절한 품질 스코어가 할당된 그러한 세그먼트들을 선택하는 것이 편리할 것이다. 반대로, 하나 이상의 세그먼트화된 미디어 스트림들을 추가적으로 세그먼트화할 필요는 없을 것이고, 다른 입상도를 이용하거나 정의할 필요도 없다.
일 실시 예에서, 시스템은:
i)복수의 스트림 소스로부터 복수의 미디어 스트림의 공존 부분들을 수신하고; 및
ii)스트리밍 클라이언트에게 선택된 부분을 전달함으로써
스트리밍 클라이언트와 복수의 스트림 소스 사이에 프록시로서 역할을 하도록 구성될 수 있다.
따라서, 선택 데이터를 스트리밍 클라이언트에게 전달하기 보다, 시스템은 선택을 하고 이어서 선택된 부분들을 스트리밍 클라이언트에게 전달한다. 이러한 실시 예의 이점은 미디어 스트림들 사이에 동적으로 스위칭함으로써 획득된 미디어 스트림이, 스트리밍 클라이언트가 그러한 동적 스위칭에 관련할 필요도 없이 또는 심지어 알 필요도 없이, 스트리밍 클라이언트에게 제공된다는 것이다. 다른 이점은 선택 데이터를 스트리밍 클라이언트에게 제공할 필요가 없고, 따라서 전달 메커니즘에 대한 필요를 피한다는 점이다.
일 실시 예에서, 복수의 미디어 스트림 중 적어도 하나는 비-세그먼트화된(non-segmented) 형태로 수신될 수 있고, 프로세싱 서브시스템은 상기 미디어 스트림을 세그먼트화하도록 구성될 수 있다. 상기 미디어 스트림을 세그먼트화함으로써, 미디어 스트림들 사이에 동적으로 스위칭 하기 위한 자연스런 입상도 (granularity)가 확립된다. 그러므로 적절한 품질 스코어가 할당된 그러한 세그먼트들을 획득하기 위하여 미디어 스트림들 사이에, 세그먼트-바이-세그먼트를 기초로, 선택하는 것이 편리할 것이다.
일 실시 예에서, 선택된 부분은 공존 부분들 가운데 가장 높은 품질 스코어를 가진 선택된 부분을 기초로 선택된다. 하나 이상의 품질 평가 함수들이 선택된 부분이 최고의 품질을 즉, 소비자에게 제공한다고 생각했다는 점에서, 가장 높은 품질 스코어가 이벤트의 스트리밍 프레젠테이션에 포함되기 위한 최고의 적합성을 나타낼 수 있다.
본 발명의 다른 측면은 시스템과 함께 사용할 스트리밍 클라이언트를 제공한다. 스트리밍 클라이언트는 매니페스트를 획득하도록 구성될 수 있으며, 상기 매니페스트는 스트리밍 클라이언트가 복수의 스트림 소스에 액세스할 수 있도록 주소 정보를 포함한다. 스트리밍 클라이언트는:
시스템으로부터 선택 데이터를 수신하기 위한 입력; 및
i) 선택 데이터를 기초로, 매니페스트로부터 선택된 부분에 대한 액세스를 제공하는 복수의 스트림 소스 중 하나를 선택하고;
ii) 상기 스트리밍 소스로부터 선택된 부분을 액세스하도록 구성된 프로세싱 서브시스템을 포함한다.
따라서, 시스템으로부터, 즉 품질 스코어의 형태로, 선택 데이터를 획득하고 이어서 선택 데이터를 기초로 선택을 수행하기 위해 구성된 스트리밍 클라이언트가 제공된다.
본 발명의 다른 측면은 스트리밍 클라이언트에게 매니페스트를 제공하며, 상기 매니페스트는 스트리밍 클라이언트가 시스템에 의해 생성된 선택 데이터에 액세스할 수 있게 하는 주소 정보를 포함한다. 따라서, 복수의 스트림 소스에 대한 주소 정보 같은, 다른 정보 외에도 매니페스트는 선택 데이터에 대한 주소 정보를 포함한다. 그러므로, 매니페스트를 획득하는 스트리밍 클라이언트는 선택 데이터에 액세스할 수 있다.
요약하면, 본 발명은 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하며, 상기 프레젠테이션은 이벤트에 대한 다른 기록을 표현하는(represent) 복수의 미디어 스트림 사이에 동적으로 스위칭함으로써 획득된다. 그러한 목적을 위하여, 복수의 스트림 소스로부터 소스 데이터를 획득할 수 있다. 소스 데이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존 부분의 메타데이터로 구성될 수 있다. 소스 데이터에 품질 평가 함수를 적용함으로써, 품질 스코어를 공존 부분들 각각의 부분에 할당할 수 있다. 이것은 선택 데이터가 생성되도록 허용하고 스트리밍 클라이언트가 각각의 미디어 스트림의 공존 부분들 중 선택된 하나에 액세스하게 할 수 있다. 예를 들면, 최고의 품질 스코어를 제공하는 선택 데이터가 선택될 수 있다. 그렇게 함으로써, 더 이상 소비자가 다른 미디어 스트림들 사이에 수동으로 스위치할 필요가 없다.
위에 언급한 본 발명의 두 개 이상의 실시 예, 구현 및/또는 측면들은 당해 분야의 통상의 기술자에 의해 유용하다고 생각되는 임의의 방법으로 결합될 수 있음을 이해해야 할 것이다.
상기 시스템의 수정 및 변형에 해당하는 상기 방법의 수정 및 변형, 컴퓨터 프로그램 제품, 스트리밍 클라이언트 및/또는 매니페스트는 본 명세서를 기초로 통상의 기술자에 의해 실행될 수 있다.
본 발명은 독립 항에 명시되어 있다. 유리하나 선택적인 실시 예들은 종속 항에 명시되어 있다.
다른 도면에서 동일한 참고 번호를 가지는 아이템들은 동일한 구조적 특징과 동일한 기능을 가지며 또 동일한 신호임을 알아야 한다. 그러한 아이템의 기능 및/또는 구조가 설명된 곳은 그로 인해 상세한 기술에서 그에 관해 반복된 설명이 필요 없다.
실시 예에 대한 자세한 설명
도1은 시스템(100A)의 형태로 본 발명의 실시 예를 나타낸다. 또한 복수의 미디어 스트림 각각에 대한 액세스를 제공하는 복수의 스트림 소스(020)가 도시되어 있다. 도1은 오디오비쥬얼 센서(audiovisual sensor)를 포함하는 복수의 기록 장치의 형태로 복수의 스트림 소스(020)를 나타낸다. 그러한 기록 장치(020)의 예는 스마트폰, 콤팩트 카메라, 전문 카메라, 스마트-워치, 스마트-안경, 등을 포함한다. 그러나, 이것은 복수의 스트림 소스(020)가 또한 자체로는 이벤트를 기록할 수 없지만 그러나 오히려 미디어 스트림으로서 그러한 기록들이 스트리밍 되게 할 수 있는 스트리밍 서버와 같은, 다른 형태의 장치 또는 시스템을 포함할 수 있다는 점에서 제한이 아니다. 다른 예는 미디어 디스트리뷰션 네트워크 내에서 미디어 스트림을 버퍼(buffer)하는 스트림 버퍼이다.
시스템(100A)은 복수의 스트림 소스(020)로부터 소스 데이터(040)를 획득하기 위한 입력(120)을 포함한다. 그러한 목적을 위해, 시스템(100A)는 로컬 에어리어 네트워크, 광역 네트워크, 및/또는 인터넷 같은 네트워크(도1에 명확히 도시되지 않은)를 통해 복수의 스트림 소스(020)에 연결될 수 있다. 도 1은 복수의 스트림 소스(020) 각각으로부터 획득된, 즉 복수의 스트림 소스(020) 각각으로부터의 별개의(separate) 데이터의 형대로, 소스 데이터(040)을 나타낸다. 대안적으로, 소스 데이터(040)은 상기 스트림 소스(020)로부터 간접적으로 획득된 또는 다른 소스로부터 획득된 스트림 소스(020)의 서브세트로부터 획득할 수도 있다. 소스 데이터(040)는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 적어도 공존 부분들의 메타데이터로 구성될 수 있다. 예를 들면, MPEG-4 Part 14 (MP4)-기반의 미디어 스트림의 경우에, 소스 데이터는 MP4 컨테이너에 메타데이터 트랙으로서 소스를 기록함에 의하여 삽입된 정보로 구성할 수 있다. 그러한 삽입에는 즉, 각 데이터의 유형에 따라 코덱(codec) fourcc를 밝힘으로써, 각각의 데이터 유형에 대한 스트림 식별자 정의하기를 포함할 수 있다.
시스템(100A)은 또한 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 결합으로 구성될 수 있는 프로세싱 서브시스템(140A)를 포함한다. 그러한 하드웨어 및/또는 소프트웨어는 몇몇(several) 기능적 유니트에 분배될 수 있다.
프로세싱 서브시스템(140A)은 시스템(100A)의 동작 동안, 적어도 하나의 품질 평가 함수를 소스 데이터(040)에 적용하도록 구성될 수 있다. 그러한 목적을 위해, 프로세싱 시스템(140A)는 입력(120)으로부터 소스 데이터(040)를 수신하는 것으로 도시된다. 하나 이상의 품질 평가 함수를 소스 데이터(040)에 적용함으로써, 품질 스코어는 공존 부분 각각에 할당될 수 있고, 그로 인해 복수의 품질 스코어가 확립된다. 여기서, '할당함(assigning)' 이라는 용어는 예를 들어, 부분의 식별자와 관련하여 태그(tagged), 저장되는 것 등으로써 각각의 부분들과 연관되거나 또는 연관시킬 수 있는 각각의 품질 스코어를 말한다. 하나 이상의 품질 평가 함수에 의해 획득된 품질 스코어는 또한 품질 평가 스코어(QA score)로 언급될 수 있으며, 본 발명의 이러한 측면들은 도 2, 도 3을 참조하여 더 설명될 것이다. 게다가, 도 1에는 도시되지 않았으나 품질 스코어는 예를 들어, 내부의 또는 외부의 저장소 또는 파일에 (일시적으로) 저장될 수 있다.
프로세싱 시스템(140A)은 또한 시스템 (100A)의 동작 동안에, 스트리밍 클라이언트가 각 미디어 스트림의 공존 부분들 중 선택된 하나에 액세스할 수 있도록 선택 데이터(142)를 생성하도록 구성될 수 있으며, 선택된 부분들은 복수의 품질 스코어에 대한 비교를 기초로 선택이 이루어졌다. 그렇게 함으로써, 그리고 특히 그러한 부분들에 연속적으로 액세스함으로써, 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션이 제공된다. 그러한 선택 데이터(142)는 다양한 형태를 취할 수 있음을 알아야 한다. 도 1은 선택 데이텨(142)가, 즉 메시지(162)의 교환을 통해 복수의 스트리밍 클라이언트에게 선택 데이터를 제공하는 시스템(100A)의 클라이언트 인터페이스(160)를 경유하여, 스트리밍 클라이언트 자체로 제공된다는 점에서 본 발명의 선택적 일 측면을 나타낸다. 본 발명의 이러한 측면뿐만 아니라, 선택 데이터(142)의 대안적 형태 및 스트리밍 클라이언트에게로의 전달도 도 4 내지 도 8을 참조하여 더 설명될 것이다.
일반적으로, 스트리밍 클라이언트(080)는 TVs, DVB 플레이어 및 리코더, 모바일(스마트) 폰, 카메라, 디지털 라디오, MP3 를레이어, PCs, 랩탑, 태블릿, 스마트-워치, 스마트-안경, 셋-톱 박스, 미디어 플레이어, 카 하이-파이 인스톨레이션, 전문적 오디오 및 비디오 장비 등을 포함할 수 있음을 알아야 한다.
소스 데이터(040)는 각 미디어 스트림에 대해 비트스트림 데이터 형태의 콘텐츠 데이터를 포함할 수 있음을 알아야 한다. 그러한 비트스트림 데이터는 인코딩된 비디오 및 오디오 샘플 같은 오디오비쥬얼 데이터를 포함할 수 있다. 특히, 미디어 스트림이 세그먼트화된 미디어 스트림인 경우에, 소스 데이텨(040)는 각 세그먼트들에 대한 비트스트림 데이터로 구성될 수 있다. 그러한 비트스트림 데이터를 획득하기 위해, 시스템(100A)은 복수의 스트림 소스(020)에 의해 제공된 스트리밍 세션에 가입할 수 있다. 추가적으로 또는 대안적으로 소스 데이터(040)는 메타데이터를 포함할 수 있다. 메타데이터는 기록 장치에 의해 생성될 수 있고, 예를 들어 기록 장치의 포화, 폐색, 클립핑, 침묵 등을 나타냄으로써, 기록 장치의 하나 이상의 오디오비쥬얼 센서와 연관될 수 있다. 메타데이터는 또한 장치에서 다른 센서들, 즉 위치 센서와 같은(예를 들면, GPS 센서) 자이로스코프, 가속도계, 등과 관련될 수 있다. 메타데이터는 또한 타이밍 정보, 예를 들어, 타임스탬프를 가리킴으로써, Network Time Protocol (NTP) 정보, 등과 연관될 수 있다. 메타데이터는 각 미디어 스트림에 포함될 수 있으나, 그러나 동등하게 분리되어 제공될 수 있다.
도 2는 적응형 비트레이트 스트리밍 분야에 기본적으로 알려진, 그리고 특히 HTTP 적응형 스트리밍(HAS)의 서브-필드로 알려진 세그먼트화된 미디어 스트림을 도시한다. HAS로, 오디오비쥬얼 미디어 스트림에 다른 비트레이트 그리하여 다른 품질의 표현(representation)이 제공될 수 있다. 예를 들면, 기록은 낮은 품질(LQ) 미디어 스트림을 제공하기 위하여 350 kbit/s로 인코드될 수 있으며, 높은 품질(HQ)을 제공하기 위하여 1500 kbit/s로 인코드될 수 있다. 각 미디어 스트림은 독립적으로 액세스 할 수 있고, 전송할 수 있고 및 디코드할 수 있는 일련의 연속적 세그먼트 S1 내지 S4로 구성될 수 있다. 따라서, 다른 미디어 스트림에서 비롯한 세그먼트들은 inter- 및/또는 exchange될 수 있으며, 그리하여 스트리밍 클라이언트는 이용 가능한 대역폭을 기초로 다른 미디어 스트림들 사이에 스위치할 수 있다. 이것은, 예를 들면, 스트리밍 클라이언트가 낮은 품질을 가지지만 낮은 전송 대역폭을 요구하는 미디어 스트림으로 일시적으로 스위치할 수 있기 때문에, 버퍼링을 방지하거나 또는 감소시킴으로써 원만한 재생을 가능하게 한다.
도 3은 동일한 이벤트에 대해 다른 기록을 구성하는 세그먼트화된 미디어 스트림을 도시한다. 미디어 스트림들은 미디어 스트림들이 다른 스트림 소스에서 비롯되었음을 표시하는 'SRC1', 'SRC2' 및 'SRC3'로 라벨(labeled)을 붙였다. 도 2의 미디어 스트림들과는 달리, 도 3의 미디어 스트림들은 각각 다른 콘텐츠, 예를 들면, 다른 오디오비쥬얼 기록을 나타낸다. 그러나, 미디어 스트림들은 그럼에도 불구하고 동일한 이벤트에 대해 다른 기록들을 표현함으로써 연관이 된다. HAS에 채용된 하나 이상의 기본적인 원칙들이 현재의 문맥에서 마찬가지로, 즉, 뷰어(viewer)에게, 예를 들면, 소비자에게 최상의 경험을 제공하기 위해 다른 미디어 스트림들의 세그먼트로 구성된 스트리밍 프레젠테이션을 확립하는데 마찬가지로 이용될 수 있다고 인정되었다. 최상의 경험을 정량화 하기 위하여, 하나 이상의 품질 평가 함수(function)를 이용할 수 있다. 그러한 품질 평가 함수(들)는 미리 확립된 품질 등급으로 각 공존 세그먼트의 등급을 매길 수 있다. 도 3에서, 공존 세그먼트들은 동일한 서브스크립트(최종) 번호, 예를 들면, S11, S21 및 S31 로 표시된다. 도 3에서 품질 등급은 4 개의 다른 품질 스코어, 즉 'Bad', 'Poor', 'Fair' 및 'Good'을 이용한다. 그러나, 다양한 다른 종류의 품질 등급도 동등하게 생각할 수 있다. 예를 들면, 품질 등급은 범위가 0에서 1까지 일 수 있고, 여기서 1은 가능한 가장 높은 품질을 0은 가능한 가장 낮은 품질을 가리킨다. 대안으로 범위가 1, 즉 가장 낮은 품질에서 5, 즉 가장 높은 품질에 이르는 Mean Opinion Score(MOS) 품질 등급이 대안이 될 수 있다.
전술한 소스 데이터에 하나 이상의 품질 평가 함수(function)를 적용함으로써, 세그먼트들 각각은 품질이라는 관점에서 등급을 매길(rating) 수 있다. 그러한 등급 매기기는 각 공존 세그먼트에 대해 하나의 품질 관련 측면에 등급을 매기는 것이지만, 그러나 동등하게 몇 가지 품질-관련 측면들을 고려할 수 있을 것이다. 예를 들면, 품질 평가 함수는 즉, 콘텐츠 품질에 등급을 매길 수 있다. 품질 평가 함수는 예를 들어, occlusions, 비디오의 안정성, 스피치의 구별성 등을 검출함으로써 콘텐츠 품질에 등급을 매길 수 있을 뿐만 아니라, 예를 들어, 각 공존 세그먼트의 공간 해상도, 프레임 레이트(rate) 및/또는 비트레이트를 검출함으로써, 기록 품질도 등급을 매길 수 있다. 대안으로, 다른 품질 평가 함수들도, 그들의 품질 스코어들을 결합하여, 이용할 수 있다. 각 세그먼트의 등급을 매긴 후, 공존 세그먼트들 중 어느 것이 적절한지, 즉 가장 높은 품질을 제공했는지 결정할 수 있다. 도 3의 예에서, 이것은 공존 세그먼트 S11-S31, S12-S32 및 S14-S34 중 가장 높은 품질을 제공하는 스트림(1) 및 공존 세그먼트 S13- S33 중 가장 높은 품질을 제공하는 스트림(3)을 초래한다. 따라서, 평균적으로 각각의 개별 미디어 스트림 SRC1, SRC2 및 SRC3 보다 더 높은 품질 미디어 스트림을 나타내는 세그먼트 S11, S12, S32, S34 로 구성된 스트리밍 프레젠테이션이 확립된다.
스트리밍 프레젠테이션은 선택 데이터를 생성하는 시스템을 기초로 확립될 수 있다. 이러한 선택 데이터 및 스트리밍 클라이언트에로의 전달은 다양한 형태를 취할 수 있으며 도 4 내지 도 6을 참조하여 더 설명할 것이다.
도 4는 본 발명에 따른 시스템의 실시 예이며, 여기서 선택 데이터는 메타데이터 스트림으로 포멧된다. 여기 및 아래의 도표에서, 클라이언트 인터페이스는 명확히 도시되지는 않고 대신 프로세싱 서브시스템(140B)에 의해 생성되고 클라이언트 인터페이스를 통해 복수의 스트리밍 클라이언트(080)에게 이용 가능해지는 데이터의 그래픽 표현(graphical representation)을 도시하고 있다.
도 4의 실시 예에서, 스트리밍 클라이언트(들)가 복수의 스트림 소스(020)에 액세스할 수 있도록 주소 정보(172)를 포함하는 매니페스트(170)가 스트리밍 클라이언트(들)(080)에게 제공된다. 그러한 매니페스트(170)는 알려진 타입의 매니페스트에 기초 할 수 있다.
예를 들면, MPEG-DASH에 기초한 미디어 스트리밍의 문맥(context) 내에서, 매니페스트는 MPEG-DASH에 의해 정의된 미디어 프레젠테이션 기술(MPD)에 기초 할 수 있고, 이용 가능한 미디어 스트림의 세그먼트들 및 세그먼트들이 액세스 가능한 각 스트림 소스(020)의 주소를 기술할 수 있다. 그러한 주소들은 Uniform Resource Locator (URL) 주소를 포함하나 그에 국한되지는 않는, 적절한 형식을 취할 수 있다. 예를 들면, MPD는 다음 방법으로(여기서는 오디오에 대한 적응세트(AdaptationSet) 정보는 간결함을 이유로 생략되었음) 메타데이터 스트림(들)을 식별할 수 있다:
<?xml version="1 .0" encoding="UTF-8"?>
<MPD
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:mpeg:DASH:schema:MPD:XXXX"
xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd"
<BaseURL>http://cdn1.example.com/</BaseURL>
<BaseURL>http://cdn2.example.com/</BaseURL>
<Period>
<!-- Video ->
<AdaptationSet
id="video"
mimeType="video/mp4"
codecs="avc1.4D401F"
frameRate="30000/1001"
segmentAlignment="true"
startWithSAP="1 ">
<BaseURL>video/</BaseURL>
<SegmentTemplate timescale="90000" media="$Bandwidth$/$Time$.mp4v
<SegmentTimeline>
<S t="0" d="180180" r="432"/>
</SegmentTimeline>
</SegmentTemplate>
Representation id="v0" width="320" height="240" bandwidth="250000"/>
Representation id="v1 " width="640" height="480" bandwidth="500000"/>
<Representation id="v2" width="960" height="720" bandwidth="1000000"/>
</AdaptationSet>
<!--AdaptationSet for selection data -->
<AdaptationSet id="quality_scores" codecs="wxyz"/>
<BaseURL>video_quality/</BaseURL>
<SegmentTemplate timescale="90000" media="$id$/$Time$.mp4m">
<SegmentTimeline>
<S t="0" d="180180" r="432"/>
</SegmentTimeline>
</SegmentTemplate>
<Representation id="quality_scores_vO" bandwidth="1000"
dependencyld="v0"/>
Representation id="quality_scores_v1" bandwidth="1000"
dependencyld="v1"/>
Representation id="quality_scores_v2" bandwidth="1000"
dependencyld="v2"/>
</AdaptationSet>
</Period>
</MPD>
이러한 매니페스트(170)는 시스템(100B)에 의해 스트리밍 클라이언트에게 예를 들면, 메세지(162)의 교환을 통해 제공되며 및 이용 가능한 미디어 스트림의 세그먼트에 대한 전술한 기술(172)을 포함할 수 있다. 본 발명에 따르면, 프로세싱 서브시스템(140B)은 스트리밍 클라이언트에 액세스할 수 있는 선택 데이터를 만들기 위해 매니페스트(170)를 이용하며, 그리하여 스트리밍 클라이언트(들)가 매니페스트로부터 스트림 소스들 중에서 적절한 품질을 제공하는 하나를 식별할 수 있게 한다. 그러한 선택 데이터는 하나 이상의 품질 스코어 형태를 취한다. 프로세싱 서브시스템(140B)은 품질 스코어를 메타데이터 스트림으로 포맷하고 메타데이터 스트림에 대한 기술(174)을 포함하는 매니페스트(174)를 생성한다. 그러한 기술(174)은 주소 정보, 예를 들면 URL 주소를 포함할 수 있고, 그로 인해 스트리밍 클라이언트가 그 주소를 통해 메타데이터 스트림에 액세스할 수 있게 한다.
도 5는 또한 본 발명에 따른 시스템(100C)의 실시 예를 나타내며, 여기서 선택 데이터(142)는 시그널링 채널을 통해 스트리밍 클라이언트(들)에게 직접 제공된다. 시그널링 채널은 도 5에 암시적으로, 즉 매니페스트(170)를 스트리밍 클라이언트(들)에게 제공하는 매세지(162)의 교환과는 별도로 추가적인 메시지 교환(164)으로 도시되어 있다. 선택 데이터(142)는 비동기화(asynchronously)로, 즉, 매니페스트(170)의 제공과 명확히 동기화 되지 않고, 스트리밍 클라이언트(들)에게 제공될 수 있다.
시그널링 채널(signalling channel) 로서, 그렇게 명명된 스트리밍 제어 채널은 즉, WO 2013/098317 A1에 기술된 바와 같이, 이용될 수 있다. 여기서, 방법은 전달 노드, 즉 스트리밍 소스로부터 적어도 하나의 스트리밍 클라이언트에게 세그먼트화된 콘텐츠를 스트리밍하는 것에 대해 네트워크-시작(network-initiated) 제어를 가능하게 하도록 기술한다. 상기 방법은 스트리밍 클라이언트에게 채널 설정(set-up) 정보를 제공하는 단계 및 이어서 상기 클라이언트와 상기 제공된 채널 설정 정보에 기초한 채널 서버 기능(function) 사이에 적어도 하나의 스트리밍 제어 채널을 확립하는 단계를 포함한다. 따라서, 스트리밍 클라이언트는 상기 스트리밍 제어 채널을 통해 매니페스트 파일 또는 매니페스트 파일의 위치를 찾기 위한 매니페스트 파일 위치 정보를 포함할 수 있는 적어도 하나의 매니페스트 파일 업데이트 메시지를 수신할 수 있다. 그 점에서 기술된 스트리밍 제어 채널 및 스트리밍 클라이언트에게 매니페스트 정보를 제공하는 방법은 현재의 문맥에서, 즉 시스템(100C)으로부터 스트리밍 클라이언트(들)에게 정보를 제공하는데 유리하게 이용될 수 있음을 이해해야 할 것이다. 따라서, 상기 시스템(100C)은 WO 2013/098317 A1에 기술된 제어 채널 서버 기능을 포함할 수 있고 및 스트리밍 클라이언트(들)는 스트리밍 제어 채널을 통해 시스템(100C)의 제어 채널 서버 기능과 통신할 수 있다.
일반적으로, 이러한 시그널링 채널은 스트리밍을 위해 매니페스트의 가용성 및/또는 품질 스코어에 대해 스트리밍 클라이언트에게 통지하는데 이용할 수 있다. 상기 통지에 대해 선택적으로 또는 부가적으로, 시그널링 채널은 또한 (업데이트된) 매니페스트, (업데이트된) 품질 스코어 및/또는 제어 정보를 보내는데 이용할 수 있다.
도 4 및 도 5에 도시된 실시 예에서, 스트리밍 클라이언트(들)(080)는, 선택 데이터에 기초하여, 스트림 소스(020)로부터 세그먼트들을 수신하고 이어서 적절한 세그먼트들을 검색할 책임이 있음을 알아야 한다. 그와 같이, 적절한 세그먼트들을 위한 전달 메커니즘, 즉 개념적으로는 현재의 HAS 방법과 유사한 전달 메커니즘이 뒤따르며, 여기서 스트리밍 클라이언트(들) 스스로 MPD의 대역폭 정보에 기초하여 어느 세그먼트들을 검색할지 결정한다.
도 4와 도 5를 더 참조하면, 매니페스트(170)는, 즉 서브-매니페스트의 계층(hierarchy)으로 구성되는 멀티-레블(multi-level) 매니페스트일 수 있다. 따라서, 세그먼트들에 대한 기술(172)은 메타데이터 스트림에 대한 기술(174)과는 다른 서브-매니페스트에서 제공될 수 있다. 이러한 서브-매니페스트는 별도의 채널을 통해 전송될 수 있다, 예를 들면, 메타데이터 스트림에 대한 기술(174)을 포함하는 서브-매니페스트는 시그널링 채널을 통해 전송될 수 있다.
도 6은 본 발명에 따른 시스템(100D)의 다른 실시 예를 나타내며, 여기서 상기 시스템은 복수의 미디어 스트림을 수신하고 및 적절한 품질 스코어를 가진 세그먼트들로부터 확립된 하나의 미디어 스트림을 스트리밍 클라이언트에게로 전달함으로써 스트리밍 클라이언트(081)와 복수의 스트림 소스(020) 사이에 프록시로서의 역할을 한다. 이러한 예에서, 복수의 스트리밍 소스(020)로부터 획득한 소스 데이터(040)는 미디어 스트림들 자체의 세그먼트들을 포함한다. 그러한 목적을 위해, 시스템(100D)는 복수의 스트림 소스(020)에 의해 제공되는 스트리밍 세션에 가입할 수 있다. 시스템(100D)는 세그먼트 서버(031)에, 즉 데이터 통신(421)을 통해 일시적으로 세그먼트들을 저장할 수 있다. 또한, 시스템(100D)는 하나 이상의 품질 평가 함수를 소스 데이터(040)에 적용하여 각 미디어 스트림의 각각의 공존 세그먼트에 품질 스코어를 할당할 수 있다. 도 6은 별도의 유니트, 즉 품질 평가 함수 유니트(300), 줄여서 QAF 유니트에 의해 실행되는 품질 평가 함수를 나타낸다. 그러나, 비록 별도로 도시되었지만, QAF 유니트는 시스템(100D)의 일부분일 수 있다. 소스 데이터(040)를 QAF 유니트(300)로 제공한 결과, 품질 스코어(400)를 획득할 수 있다. 시스템(100D)는 품질 스코어 데이터베이스(310)에 즉, 데이터 통신(430)을 통해, 품질 스코어를 (일시적으로) 저장할 수 있다.
시스템(100D)는 또한 복수의 스트리밍 소스(020)로부터 획득한 오리지널 매니페스트일 수도 있고 또는 하나 이상의 품질 평가 함수를 소스 데이터(040)에 적용한 후 생성된 (업데이트된) 매니페스트일 수도 있는, 매니페스트(170)에 액세스 할 수 있다. 비록 매니페스트(170)이 시스템(100D)의 외부에 도시되어 있지만, 매니페스트(170)는 시스템(100D)의 내부 저장소 또는 메모리에 저장될 수 있다.
따라서, 시스템(100D)는 스트리밍 클라이언트(081)로부터의 매니페스트에 대한 요청(410)에 응답할 수 있고, 스트리밍 클라이언트(081)가 매니페스트를 수신하는 즉시 세그먼트에 대한 스트리밍 클라이언트(081)의 연이은 요청에, 즉 스트리밍 클라이언트(081)에게 매니페스트와 요청된 세그먼트를 전송함에 의하여, 응답할 수 있다.
도 6의 실시 예에서, 다른 미디어 스트림들이, 예를 들면 스트림 소스로부터 비동기화(non-syndhronouly)로 수신됨으로써, 이벤트의 타임라인(timeline)과 관련하여 미스얼라인(misalign)되는 경우가 발생할 수 있음을 알아야 한다. 그러한 경우에는, 다른 미디어 스트림들의 세그먼트들에 대한 일시적 얼라인먼트(alignment)를 보증하기 위하여 미디어 동기화 분야에 기본적으로 알려진, 인터-스트림(inter-stream) 동기화 테크닉을 시스템은 채용할 수 있고, 그로 인해 어느 정도 세그먼트들의 공존 부분을 확립할 수 있다. 동일하지 않은 세그먼트 듀레이션(duration)을 가진 명확히 세그먼트화된 스트림들이 수신되고 있는 경우에는, 수신된 세그먼트들의 동기화 또는 재-세그먼트화(re-segmentation)가 수행될 수 있거나 또는 일부 일시적 미스얼라인먼트(misalignment)를 수용할 수 있다. 얼라인먼트는 완벽해야 할 필요는 없으며, 즉 오디오비쥬얼 데이터의 경우 정확한 프레임(frame-accurate)일 필요는 없음을 이해해야 한다. 즉, 미디어 스트림들이 이벤트의 다른 기록들을 나타내기 때문에 어느 정도의 일시적 미스얼라인‘F트는 허용할 수 있다. 즉 소비자가 수용할 수 있다. 이것은 기록되고 있는 이벤트의 듀레이션 보다 더 긴 듀레이션의 스트리밍 미디어 프레젠테이션을 초래할 수 있다. MPEG-DASH 같은 현재의 적응형 스트리밍 표준들은 일시적으로 얼라인된 세그먼트들뿐만 아니라 일시적으로 비-얼라인(non-aligned)된 세그먼트들도 지원함을 알아야 한다.
도 7은 본 발명에 따른 시스템이 다른 실시 예를 보여주며, 여기서 시스템 (100E)는 미디어 스트림(들)의 세그먼트들을 스트리밍 클라이언트(081)에게로 전달하지 않고 오히려 매니페스트와 선택 데이터를 스트리밍 클라이언트(081)에 전달하며, 그리하여 스트리밍 클라이언트(081)가 각 스트리밍 소스로부터 세그먼트를 요청할 수 있게 한다. 그와 같이, 도 7의 실시 예는 개념적으로 도 6의 실시 예 보다 시스템이 세그먼트를 선택하고 이어서 선택된 세그먼트들을 스트리밍 클라이언트에게 전달하는 도 4 및 도 5의 실시 예에 더 유사하다.
도 7은 제 1스트리밍 소스(021) 및 제2 스트리밍 소스(022)를 도시하고 있으며, 제1 스트리밍 소스(021)는 제1 미디어 스트림의 세그먼트 형태로 및 선택적으로 제1 미디어 스트림의 메타데이터 형태로 제1 소스 데이터를 제1 세그먼트 서버(031)에 제공한다. 제1 세그먼트 서버(031)는 적어도 일시적으로 제1 소스 데이터(041)를 저장한다. 또한, 제2 스트리밍 소스(022)는 제2 미디어 스트림의 세그먼트 형태로 및 선택적으로 제2 미디어 스트림의 메타데이터 형태로 제2 소스 데이터를 제2 세그먼트 서버(032)에 제공한다. 시스템(100E)는, 즉 제1 통신(421)을 통해) 제1 세그먼트 서버(031)로부터 제1 소스 데이터(041)에 액세스할 수 있다. 게다가, 시스템(100E)는 즉, 제2 데이터 통신(422)을 통해 제2 세그먼트 서버(032)로부터 제2 소스 데이터(042)에 액세스할 수 있다. 효과적으로, 이러한 실시 예에서, 제1 세그먼트 서버(031) 및 제2 세그먼트 서버(032)는 스트림 소스를 구성한다.
제1 소스 데이터(041) 및 제2 소스 데이터(042)에 대한 선택을 획득하면, 시스템(100E)는 그런 선택된 소스 데이터(043)를 QAF 유니트(300)에 제공할 수 있으며, 그것은 적어도 하나의 품질 평가 함수를 선택된 소스 데이터(043)에 적용할 수 있다. 그 결과, 품질 스코어(400)를 획득할 수 있다. 시스템(100E)은 또한 품질 스코어를 품질 스코어 데이터베이스(310)에, 즉 데이터 통신(430)을 통해 일시적으로 저장할 수 있다. 시스템(100E)는 또한 매니페스트(170)에 액세스할 수 있다. 따라서, 시스템(100E)는 스트리밍 클라이언트(081)로부터의 매니페스트에 대한 요청(410)에, 즉 매니페스트와 품질 스코어(들)를 스트리밍 클라이언트(081)에게 전송함에 의하여, 응답할 수 있다. 스트리밍 클라이언트(081)는 그러므로 품질 스코어와 매니페스트에 기초하여, 제1 세그먼트 서버(031)로부터, 즉 제1 세그먼트 요청(451)을 통하거나 또는 제2 세그먼트 서버(032)로부터, 즉 제2 세그먼트 요청(452)을 통해서 적절한 세그먼트를 요청할 수 있다. 그렇게 함으로써, 그리고 특히, 연속적인 세그먼트들을 위해 두 세그먼트 서버들 사이에 동적으로 스위칭함에 의하여 스트리밍 클라이언트(081)는 이벤트에 대한 스트리밍 프레젠테이션을 획득할 수 있다.
비록 도 7에 도시하지는 않았지만, 시스템(100E)는 또한 이미 각 스트리밍 소스들로부터 세그먼트들에 대한 적절한 선택을 포함하고 있는 매니페스트를 스트리밍 클라이언트에게(081)) 전달할 수 있다. 예를 들면, MPEG-DASH의 문맥 내에서, MPD는 아래 나타낸 형태를 취할 수 있다. 여기서, 선택(selection)은 다른 스트림 소스들을 식별하는 연속적인 주기(periods)로 나타낸다. 또한, MPD는 여전히 세그먼트 마다 대역폭-기반의 품질 선택을 가능하게 함을 알아야 한다.
<?xml version="1.0" encoding="UTF-8"?>
<MPD
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:mpeg:dash:schema:mpd:2011"
xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd"
type="static"
>
<!-First period of 30 seconds using media stream of camera 1->
<Period id="1 "duration="PT30S">
<BaseURL>http://camera1.example.com/</BaseURL>
<AdaptationSet
mimeType="video/mp2t"
codecs="avc1.4D401 F,mp4a"
frameRate="24000/1001 "
segmentAlignment="true"
subsegmentAlignment="true"
bitstreamSwitching="true"
startWithSAP="2"
subsegmentStartsWithSAP="2">
<ContentComponent contentType="video" id="481"/>
<ContentComponent contentType="audio" id="482" lang="en"/>
<ContentComponent contentType="audio" id="483" Iang="es"/>
<BaseURL>SomeEvent/</BaseURL>
<SegmentTemplate
media="$RepresentationlD$_$Number%05d$.ts"
index="$RepresentationlD$.sidx"
initialization="$RepresentationlD$-init.ts"
bitstreamSwitching="$RepresentationlD$-bssw.ts"
duration="4"/>
<Representation id="1400kbps" bandwidth="1540000" width="960" height="544"/>
Representation id="2700kbps" bandwidth="2970000" width="1280" height="720"/>
</AdaptationSet>
</Period>
<!-Following period of 20 seconds using media stream of camera 2 ->
<Period id="1" duration="PT20S">
<BaseURL>http://camera2.example.com/</BaseURL>
<AdaptationSet
mimeType="video/mp2t"
codecs="avc1.4D401F,mp4a"
frameRate="24000/1001"
segmentAlignment="true"
subsegmentAlignment="true"
bitstreamSwitching="true"
startWithSAP="2"
subsegmentStartsWithSAP="2">
<ContentComponent contentType="video" id="481"/>
<ContentComponent contentType="audio" id="482" lang="en"/>
<ContentComponent contentType="audio" id="483" lang="es"/>
<BaseURL>SomeEvent/</BaseURL>
<SegmentTemplate
media="$RepresentationlD$_$Number%05d$.ts"
index="$RepresentationlD$.sidx"
initialization="$RepresentationlD$-init.ts"
bitstreamSwitching="$RepresentationlD$-bssw.ts"
duration="4"/>
<Representation id="1400kbps" bandwidth="1540000" width="960" height="544"/>
<Representation id="2700kbps" bandwidth="2970000" width="1280" height="720"/>
</AdaptationSet>
</Period>
</MPD>
세그먼트들에 대한 적절한 선택을 포함하는 매니페스트의 가능한 단점은 주기(period)가 짧으면 짧을수록 선언(declare)해야 할 주기(period) 요소(element)는 더 많아지고 그로 인해, 매니페스트의 사이즈는 더 커진다는 점에서 그것의 사이즈가 단점일 수 있다. 사이즈가 너무 커지지 않도록 하기 위해, 다수의 간격을 정의하는 추가적인 속성을 제공하는 한편 다수의 스트림 소스가 선택되어야 하는 단일 주기를 각 스트림 소스에 대해 예를 들면, 각 카메라에 대해 선언할 수 있을 것이다. 예를 들면, MPEG-DASH 표준에 대한 변형(modification)으로서, @startlnterval 및 @durationInterval attributes가 아래 방식으로 주기(Period) 요소에 도입될 수 있다:
<Period id="1" startlnterval="PT0S,PT40S"
durationlnterval="PT30S,PT30S"">
<BaseURL>http://camera1.example.com/</BaseURL>
<AdaptationSet
(...)
</AdaptationSet>
</Period>
<Period id="2"
startlnterval="PT30S,PT70S"
durationlnterval="PT10S,PT30S">
<BaseURL>http://camera2.example.com/</BaseURL>
<AdaptationSet
(...)
</AdaptationSet>
</Period>
위의 예 및 아래의 예에서, AdapationSet(s)의 다양한 속성들은 간결함을 이유로 생략되었다. 위에 도시된 변형들은 @startlnterval 및 @durationInterval 속성에서 다수의 시작 및 듀레이션 값을 특정(specifying)함으로써 주기 내의 다수의 시간 간격을 정의하고, 그로 인해 필수적으로 서브-피리어드(sub-periods)를 정의하는 것을 포함한다. 이러한 서브-피리어드는 (다른) 스트림 소스가 선택되는 다른 시간 간격을 나타내기 위한 것을 제외하고 주기(period)의 모든 속성들을 공유한다.
다른 가능성은 아마도 SegmentTimeline 요소의 이용일 수 있으며, 그것은 MPD author가 주기(Period) 내의 표현(Representation)의 타임라인에서의 불연속(discontinuity)을 설명할 수 있게 한다. 그와 같이 각 스트림 소스에 대해 선언된 하나의 주기(one Period)와 AdaptationSet 가 있을 수 있고 및 다른 SegmentTimeline 요소들은 그들이 커버하는 시간을 정의하기 위해 AdaptationSet 마다 선언할 수 있다.
다른 가능성은 참고 요소들을 이용하는 것이다. 이것들은 전형적으로 xlink를 통해 remote document에 링크하기 위해( http://www.w3.org/TR/xlink/ 참조), 즉 외부 MPD에 포함된 AdaptationSets로 MPD를 채우기 위해 이용된다. 이러한 개념은 확장될 수 있거나 또는 로컬 요소들을 참고하기 위해 즉, 다음과 같은 방법으로 재-이용될 수 있다.
<Period id="1 " start="PTOS" duration="PT30S">
<BaseURL>http://camera1.example.com/</BaseURL>
<AdaptationSet
(...)
</AdaptationSet>
</Period>
<Period id="2" xlink:href="#1 " start="PT40S" duration="PT30s">
[Here everything will copied from Period with id=1]
</Period>
세그먼트들에 대한 적절한 선택을 포함하고 있는 매니페스트의 또 다른 가능한 단점은 앤드-투-앤드 지연(end-to-end delay)을 수용할 만한 레벨로 제한하기 위하여 잦은 MPD의 업데이트가 필요할 수도 있다는 점이다. 여기서, 앤드-투-앤드 지연은 MPD에 의해 커버되는 주기(period)에 의해 적어도 부분적으로 결정된다. MPD가 1 분의 콘텐츠를 커버할 때, 그 MPD를 이용하는 스트리밍 클라이언트는 이벤트의 '라이브' 프레젠테이션에 적어도 1분 뒤쳐진다. 따라서, 앤드-투-앤드 지연은 MPD의 전체 프레젠테이션 타임을 수용할 수 있는 길이, 즉 20초 이하로 제한함으로써 감소시킬 수 있다. 더 짧은 시간의 주기를 커버하는 MPD의 경우에 더 잦은 MPD 업데이트 필요성을 피하기 위하여, 스트리밍 소스는 MPD의 외부에서 선택될 수 있고 그래서 MPD 오서링(authoring)은 스트림 소스 선택과는 무관하다.
예를 들면, URL에 세그먼트들의 이름을 생성하기 위한 템플릿(template) 메커니즘, 즉 SegmentTemplate 요소를 이용하는 것은 알려져 있다. 이러한 개념은 BaseURL로, 즉 아래 방법으로 확장될 수 있다.
<Period id="1">
<BaseURL>http://camera1.example.com/$AdaptationSetlD$/</BaseURL> <AdaptationSet id="camera1"
(...)
</AdaptationSet>
<AdaptationSet id="camera2"
(...)
</AdaptationSet>
</Period>
이 시나리오에서, 스트리밍 클라이언트는 현재 추천된 즉, 시그널링 채널을 통해서 가장 적절한 품질을 제공하는 AdaptationSetld를 수신할 수 있으며, 그로 인해 스트리밍 클라이언트가 스트림 소스 사이에서 스위치하게 할 수 있다. 스트리밍 클라이언트에게 값이 주어지지 않은 경우에는, 임의의 값에서 시작할 수 있다.
다른 가능성은 아마도 하나의 주기 요소가, 즉 모든 스트리밍 소스에 대해 모든 AdaptationSets를 선언할 수 있다는 것이다. 스트리밍 클라이언트는 어느 AdaptationSet 를 선택할지에 관해 시그널링 채널을 통해서 추천을 받을 수 있다.
일반적으로, 선택 데이터는 하나 이상의 품질 데이터 외에도, 스트리밍 클라이언트가 품질 스코어를 복수의 스트림 소스와 연관시킬 수 있도록 관련 정보를 더 포함할 수 있음을 알아야 한다. 또한, 프로세싱 서브시스템은 선택 데이터를 발생할 때, 상기 이전 미디어 스트림의 공존 부분과 선택된 부분 사이의 품질 스코어에서의 차이가 품질 임계치(threshold) 아래이면 복수의 미디어 스트림 중 하나에 대한 이전 선택을 유지하도록 구성될 수 있다. 그와 같이, 품질 스코어에서의 가능한 증가는 다른 미디어 스트림에서 비롯된 세그먼트로 스위칭하는 단점을 능가하지 않도록 결정될 수 있다. 유사하게, 이전 선택은 공존 영역의 길이가 길이 임계치 아래일 때 유지될 수 있다.
앞서의 실시 예는 세그먼트화된 미디어 스트림을 포함함을 알아야 한다.
그러나, 본 발명은 비-세그먼트화된 미디어 스트림에 동일하게 적용될 수 있다. 프로세싱 서브시스템은 그러한 세그먼트화된 미디어 스트림들을 세그먼트화할 수 있다. 대안적으로, 미디어 스트림들 사이의 동적 스위칭은 앞서 언급한 세그먼트-바이-세그먼트(segmenr-by-segment)에 기초한 것과 다른 입상도로 수행될 수 있다. 예를 들어, 동적 스위칭은 즉, 보통H.264/MPEG-4 AVC에서 L 프레임 또는 IDR 프레임으로 언급되는, 독립적으로 디코딩 가능한 비디오 프레임으로 시작하는, 그룹 오브 픽처(Group-Of-Pictures(GOP)) interval의 시작에서 스트림을 스위칭함에 의해 코덱(codec) 레벨에서 수행될 수 있다. 이러한 스위칭은 미디어 스트림이 세그먼트화됨에도 불구하고 수행될 수 있음을 알아야 한다. 따라서, 스위칭은 공존 세그먼트 내에서 즉, 동안에, 수행될 수 있다.
본 발명의 또 다른 선택적 측면은 다음에 관한 것이다: 어느 세그먼트를 선택할지 결정하는 단계에서, 스트리밍 소스(S)의 인그레스(ingress) 대역폭은 복수의 품질 스코어 외에도 고려될 수 있다. 스트리밍 소스(들)의 인그레스 대역폭이 주어지면 이것은 적절한 품질을 스트리밍 클라이언트에게 제공하는 세그먼트가 선택될 수 있도록 한다. 따라서, 다른 스트리밍 소스들이 공통 네트워크 연결을 공유할 경우에, 즉, 다른 스트리밍 클라이언트(들)에게 이미 스트리밍하고 있는 세그먼트에 비교적 높은 품질 스코어를 할당함에 의하여 인제스트(ingest) 연결의 제한된 용량을 최적으로 이용할 수 있다. 다른 이점은 아마도 대역폭 제한 때문에 상기 세그먼트들을 스트리밍 클라이언트에게 스트리밍할 수 없는 스트리밍 소스(들)의 세그먼트들을 선택하지 못하도록 스트리밍 소스의 인그레스(ingress) 대역폭에 대한 지식(knowledge)을 이용할 수 있다.
부가적으로 또는 대안적으로, 세그먼트를 선택할 때 스트리밍 클라이언트에게 이용 가능한 대역폭을 고려할 수 있다. 이러한 선택 측면은 스트리밍 클라이언트가 제한된 대역폭 이용가능성을 가지고 적응형 스트리밍에 기반하여 이용할 때, 클라이언트는 낮은 비트레이트로, 즉 낮은 대역폭을 가진 표현(representation)으로 그리하여 낮은 품질 미디어 스트림으로 스위칭할 것이라는 인식에 기반을 둔다. 그러나, 이러한 표현(representation)은 더 이상 프레젠테이션에 적합하지 않을 수 있는, 즉 부정적인 이용자 경험을 제공할 수도 있는 매우 낮은 품질일 수 있다. 이벤트에 대해 다수의 대안적 기록이 이용 가능한 시나리오에서, 동일한 비트레이트를 가짐에도 불구하고 다른 기록들이 다른 품질을 제공하는 경우가 있을 수 있다. 또한 이것은 비교적 낮은 비트, 즉 초당 500kbit의 비디오 비트레이트 동안 유지할 수 있다. 따라서, 이용 가능한 대역폭의 감소로 인해 다른 미디어 스트림으로 스위치를 해야 할 때 이벤트의 다른 기록으로부터 세그먼트를 선택하는 것이 유리할 수 있다. 예를 들어, 제1 스트림 소스는 그것의 세그먼트('10')에 1의 품질 스코어(5등급 중에서)가 할당된 500 kbit/s의 제1 미디어 스트림을 제공할 수 있다. 게다가, 제2 스트림 소스는 그것의 세그먼트('10')에 2의 품질 스코어(5등급 중에서)가 할당된 역시 500 kbit/s의 제2 미디어 스트림을 제공할 수 있다. 현재 1000 kbit/s의 미디어 스트림을 스트림할 수 있는 스트림 클라이언트가 낮은 품질의 다음 세그먼트('9')로 스위치 할 필요가 있을 때, 그것은 제2 스트림 소스의 세그먼트('10')를 선택할 수 있다 왜냐하면 이것에 제1 스트림 소스의 해당 공존 세그먼트('10')보다 더 높은 품질 스코어가 할당되었기 때문이다. 따라서, 일반적으로, 복수의 스트림 소스 중 하나를 선택하는 것은 복수의 품질 소스의 비교뿐만 아니라 스트리밍 클라이언트의 이용 가능한 대역폭과 각 미디어 스트림의 비트레이트 사이의 비교에 기초할 수 있다.
일반적으로, 선택 데이터는 스트림 소스의 속성(attributes) 또는 기록 장치, 예를 들어 위치 데이터, 방향 데이터 등을 포함할 수 있다. 이러한 속성은 스트림 소스로부터 메타데이터로 획득되었을 수 있고, 하나 이상의 미디어 스트림이 뷰어(viewer)의 스트리밍 클라이언트로 보내질 경우에 예를 들어, 뷰어에게 더 개인적인 선택을 수행할 수 있게 하기 위하여, 스트림 클라이언트에 의해 이용될 수 있다.
품질 평가 함수는 또한 스트림 소스들 자체에 통합될 수 있음을 또한 알아야 한다. 따라서, 스트림 소스는 품질 평가를 수행하여 즉 메타데이터를 미디어 스트림 자체에 추가함에 의하여 시스템에 얻어진 품질 데이터를 제공할 수 있다. 따라서, 품질 평가는 시스템에서라기 보다 스트림 소스에서 수행될 수 있다.
스트림 소스는 라이브 스트림의 소스, 주문형(on-demand) 스트림 또는 둘의 조합을 표현할 수 있다. 따라서, 시스템에 의해 수립된 스트리밍 프레젠테이션은 그러한 라이브 스트림로부터의 세그먼트뿐만 아니라 주문형 스트림으로부터의 세그먼트도 통합할 수 있다. 이것은 즉, 순간(instant) 리플레이 기능을 허용할 수 있다.
일반적으로, 본 발명은, N은 M보다 작은 조건으로, 예를 들어 M 개의 다른 미디어 스트림들에 기초하여, N 개의 미디어 스트림, N 개의 다른 플레이리스트의 형태로, N 개의 다른 스트리밍 프레젠테이션을 확립하기 위해 이용될 수 있다. 이것은 들어오는 미디어 스트림의 수를 줄일 수 있다.
도 8은 소비자가 지각된(perceived) 품질로 피드백을 제공할 수 있고, 그로 인해 품질 평가 기능을 증대시키는 피드백 메커니즘을 보여준다는 점에서 본 발명의 다른 선택적 측면을 나타낸다. 여기서, (라이브) 스트리밍 세션의 초기 뷰어(initial viewer)는 지각된 품질로 암시적 또는 명시적 피드백(240)을 제공할 수 있다. 예를 들어, 품질 평가가 아직 수행되지 않았거나 (대쉬된(dashed) 세그먼트로 도 8에 표시된) 또는 품질 평가 함수로부터 획득된 세그먼트의 선택이 차선(suboptimal)일 경우에, 선택을 개선하기 위하여 피드백(240)을 이용할 수 있다. 도 8의 예에서, 명시적으로, 즉 스트리밍 클라이언트에 의해 공급되는 레이팅(rating) 메커니즘을 통해 세그먼트(S13)를 나쁜 품질을 가지는 것으로 평가(rating)하는 사용자에 의해 또는 암시적으로, 즉 다른 미디어 스트림을 일시적으로 요청하는 사용자에 의해 이것을 보여준다. 시스템은 그러므로 세그먼트(S13)가 나쁜 품질을 가지고 있음을 학습할 수 있다. 시스템은 그러면 하나 이상의 대안 세그먼트들, 예를 들면, 세그먼트(S23)에 대한 품질 평가를 실행할 수 있고, 그로써 상기 세그먼트를 '양호한(Fair)' 것으로 평가한다. 대안적으로, 시스템은 레이팅(rating) 수행 없이 세그먼트(S23)를 선택할 수 있다. 따라서, 이어지는 스트리밍 세션 동안에, 시스템은 이벤트의 스트리밍 프레젠테이션에 포함되도록 세그먼트(S13) 대신에 세그먼트(S23)를 선택할 수 있다. 그러한 피드백은 다양한 형태를 취할 수 있고 다양한 방법으로 이용될 수 있음을 이해해야 한다. 예를 들어, 시스템은 피드백으로부터 즉, 품질 평가 함수를 조정(adapting)하거나 또는 다른 함수들 사이에 가중치를 줌으로써 학습할 수 있다. 또한 시스템은 품질 평가 함수에 우선하기(override) 위하여 피드백을 이용할 수 있다. 다른 예는 피드백이 선택을 개인화(personalize)하는데 사용될 수 있다는 것이다.
도 9는 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 방법을 나타낸다. 방법(200)은 본 발명에 따른 시스템의 동작에 해당할 수 있다. 그러나, 이것은 본 방법(200)이 즉 다른 시스템에, 또는 광범위한 방법으로 별개로 수행될 수 있다는 점에서 제한이 아니다.
방법(200)은, "소스 데이터를 획득하는 단계"라는 제목의 단계에서, 복수의 스트림 소스로부터 소스 데이터를 획득하는 단계(210)를 포함하되, 소스 테이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존 부분에 대한 메타데이터로 구성되고, 공존 부분은 이벤트의 공존 시간 주기(time period)를 나타낸다. 방법(200)은 또한 "품질 평가 함수를 소스 데이터에 적용하는 단계"라는 제목의 단계에서, 품질 스코어를 공존 부분 각각에 할당하기 위하여 적어도 하나의 품질 평가 함수를 소스 데이터에 적용하고(220), 그로써 복수의 품질 스코어를 확립하는 단계를 포함한다. 또한 방법(200)은 "선택 데이터 생성 단계"라는 제목의 단계에서, 스트리밍 클라이언트에게 각 미디어 스트림의 공존 부분들 중 복수의 품질 스코어의 비교에 기초하여 선택된 하나에 액세스할 수 있도록 선택 데이터를 생성하는 단계(230)를 포함한다.
본 발명에 따른 방법은 프로세서 시스템에게 본 방법을 수행하게 하는 명령을 포함하는 컴퓨터 프로그램 형태로 구현될 수 있음을 이해하여야 한다. 방법은 또한 전용 하드웨어 또는 상기의 결합에 의하여 구현될 수 있다.
컴퓨터 프로그램은 컴퓨터 판독 가능한 매체로 비-일시적인(non-transitory) 방법으로 저장될 수 있다. 상기 비-일시적인 저장은 기계 판독이 가능한 물리적인 일련의 마크 및/또는 다른 전기적, 예를 들면, 자기적, 또는 광학적 특성 또는 값을 가지는 일련의 요소들을 포함할 수 있다. 도 10은 컴퓨터 판독 가능한 매체(260) 및 그들에 저장된 컴퓨터 프로그램(250)을 포함하는 컴퓨터 프로그램 제품을 나타낸다. 컴퓨터 프로그램 제품의 예는 메모리 장치, 광 저장 장치, 집적 회로, 서버, 온라인 소프트웨어, 등을 포함한다.
앞서 언급한 실시 예들은 본 발명을 제한하기 보다는 설명하며, 이 기술분야의 통상의 기술자는 많은 대안적인 실시 예들을 설계할 수 있음을 알아야 한다.
청구항(claims)에서, 괄호 사이에 위치한 임의의 참조 사인은 청구항을 제한하지 않는 것으로 이해해야 한다. 동사 "포함하다(comprise)"와 그것의 활용형의 사용은 청구항에 언급된 것 외의 요소 또는 단계의 존재를 배제하지 않는다. 하나의 요소 앞의 관사 "a" 또는 "an"은 복수의 그러한 요소들의 존재를 배제하지 않는다. 본 발명은 다수의 별개의 요소를 포함하는 하드웨어, 및 적절하게 프로그램된 컴퓨터에 의하여 구현될 수 있다. 다수의 수단을 열거하는 장치 청구항에서, 이러한 다수 수단들은 하드웨어의 하나 및 동일한 아이템에 의해 구현될 수 있다. 특정 방법이 서로 다른 종속 항에 재인용된다는 사실은 이들 방법들의 조합이 유리하게 이용될 수 없음을 나타내지 않는다.
020 복수의 스트림 소스;
021 제1 스트림 소스; ;
022 제2 스트림 소스;
031 제1 세그먼트 서버;
032 제2 세그먼트 서버;
040 복수의 스트림 소스로부터의 소스 데이터;
041 제1 스트림 소스로부터의 제1 소스 데이터;
042 제2 스트림 소스로부터의 제2 소스 데이터;
043 제1 소스 데이터와 제2 소스 데이터로부터의 선택;
080 복수의 스트리밍 클라이언트;
081 제1 스트리밍 클라이언트;
100 본 발명에 따른 시스템의 실시 예 A 내지E;
120 입력;
140 프로세싱 서브시스템의 실시 예 A 내지C;
142 선택 데이터;
160 클라이언트 인터페이스;
162 스트리밍 클라이언트(들)와의 통신;
164 시그널링 채널을 통한 스트리밍 클라이언트(들)와의 통신;
170 매니페스트;
172 이용 가능한 미디어 스트림들의 세그먼트에 대한 기술;
174 메타데이터 스트림에 대한 기술;
180 선택 데이터;
300 품질 평가 함수 유니트;
310 품질 스코어 데이터베이스;
400 품질 스코어(들)의 전송;
410 매니페스트/세그먼트를 위한 요청;
412 세그먼트/매니페스트/품질 스코어(들)의 전송;
414 매니페스트/품질 스코어(들)의 전송;
421 제1 세그먼트 서버와의 통신;
422 제2세그먼트 서버와의 통신;
430 품질 스코어 데이터베이스와의 통신;
440 매니페스트의 판독/작성;
451 제1 세그먼트 서버에 대한 세그먼트 요청; 및
452 제2 세그먼트 서버에 대한 세그먼트 요청.

Claims (17)

  1. 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템에 있어서,
    스트리밍 프레젠테이션은 이벤트의 다른 기록을 표현하는 복수의 미디어 스트림 사이에 동적으로 스위칭함에 의하여 획득되고, 복수의 미디어 스트림은 각각의 복수의 미디어 스트림으로부터 액세스 가능하되, 시스템은:
    복수의 스트림 소스로부터 소스 데이터를 획득하기 위한 입력을 포함하되, 소스 데이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존(concurrent) 부분의 메타데이터에 의해 구성되고, 공존 부분은 이벤트의 공존 시간 주기를 나타내며;
    i) 공존 부분들 각각에 품질 스코어를 할당하기 위하여 소스 데이터에 적어도 하나의 품질 평가 함수를 적용하고, 그로 인해 복수의 품질 스코어를 확립하는 단계; 및
    ii) 스트리밍 클라이언트가 각 미디어 스트림의 공존 부분들 중 복수의 품질 스코어의 비교를 기초로 선택된 하나에 액세스할 수 있도록 선택 데이터를 생성하는 단계를 위해 구성된 프로세싱 서브시스템을 포함함을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  2. 청구항 1에 있어서,
    스트리밍 클라이언트에게 매니페스트가 제공되되, 매니페스트는 스트리밍 클라이언트가 복수의 스트림 소스에 액세스할 수 있도록 주소 정보를 포함하며, 여기서:
    시스템은 선택 데이터를 스트리밍 클라이언트에게 제공하기 위해 클라이언트 인터페이스를 더 포함하고; 및
    선택 데이터는 스트리밍 클라이언트가 상기 선택된 부분에 대한 액세스를 제공하는 복수의 스트림 소스 중 하나를 매니페스트로부터 선택할 수 있도록 프로세싱 서브시스템에 의해 생성됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  3. 청구항 2에 있어서,
    선택 데이터는 복수의 품질 스코어의 적어도 일부를 포함함을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  4. 청구항 3에 있어서,
    프로세싱 서브시스템은 i) 상기 품질 스코어를 메타데이터 스트림으로 포맷팅하고; ii) 스트리밍 클라이언트가 메타데이터 스트림에 액세스할 수 있도록 매니페스트에 주소 정보를 포함함을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  5. 청구항 3에 있어서,
    클라이언트 인터페이스는 시그널링 채널(signallind channel)을 통해 스트리밍 클라이언트에게 선택 데이터를 공급하도록 구성됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  6. 청구항 3내지 청구항 5 중 어느 한 항에 있어서,
    선택 데이터는 스트리밍 클라이언트가 상기 품질 스코어를 복수의 스트림 소스와 연관시킬 수 있도록 관련 정보를 더 포함함을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  7. 청구항 1에 있어서,
    프로세싱 서브시스템은 스트리밍 클라이언트를 위하여 매니페스트를 생성하도록 구성되되, 매니페스트는 복수의 스트림 소스 각각으로부터 연속적으로 액세스되도록 복수의 미디어 스트림의 다른 부분을 식별하는 플레이리스트(playlist)를 포함하며, 다른 부분들 중 적어도 하나는 선택 데이터에 기초하여 선택됨음을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  8. 청구항 7에 있어서,
    프로세싱 서브시스템은 새로운 공존 부분에 대하여 매니페스트를 업데이트하도록 구성됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  9. 청구항 1내지 청구항 8 중 어느 한 항에 있어서,
    프로세싱 서브시스템은, 선택 데이터를 발생할 때,
    이전 미디어 스트림의 공존 부분과 선택된 부분 사이의 품질 스코어의 차이가 품질 임계치(threshold) 이하이거나; 또는
    공존 부분의 길이가 길이 임계치 이하 일 때 복수의 미디어 스트림 중 하나에 대한 이전의 선택을 유지하도록 구성됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  10. 청구항 1내지 청구항 9 중 어느 한 항에 있어서,
    복수의 미디어 스트림은 하나 이상의 세그먼트화된 미디어 스트림을 포함하고, 여기서 공존 부분은 하나 이상의 세그먼트화된 미디어 스트림의 공존 세그먼트들로 적어도 부분적으로 구성됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  11. 청구항 1내지 청구항 10 중 어느 한 항에 있어서,
    시스템은:
    i) 복수의 스트림 소스로부터 복수의 미디어 스트림의 공존 부분을 수신하고; 및
    ii) 스트리밍 클라이언트에게 선택된 부분을 전달함에 의하여 스트리밍 클라이언트와 복수의 스트림 소스 사이에 프록시로서 역할을 하도록 구성됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  12. 청구항 11 에 있어서,
    복수의 미디어 스트림의 적어도 하나는 비-세그먼트 형상으로 수신되고, 여기서 프로세싱 서브시스템은 상기 미디어 스트림을 세그먼트화하도록 구성됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  13. 청구항 1 내지 청구항 12 중 어느 한 항에 있어서,
    선택된 부분은 공존 부분들 중에서 가장 높은 품질 스코어를 가진 선택된 부분에 기초하여 선택됨을 특징으로 하는 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하기 위한 시스템.
  14. 청구항 1 내지 청구항 6 중 어느 한 항에 따른 시스템과 함께 이용하기 위한 스트리밍 클라이언트에 있어서,
    스트리밍 클라이언트는 매니페스트를 획득하도록 구성되며, 매니페스트는 스트리밍 클라이언트가 복수의 스트림 소스에 액세스할 수 있도록 주소 정보를 포함하고, 스트리밍 클라이언트는 또한:
    시스템으로부터 선택 데이터를 수신하기 위한 입력; 및
    i) 선택 데이터에 기초하여, 선택된 부분에 대한 액세스를 제공하는 복수의 스트림 소스 중 하나를 매니페스트로부터 선택하고; 및
    ii) 상기 스트리밍 소스로부터 선택된 부분을 액세스하도록 구성된 프로세싱 서브시스템을 포함함을 특징으로 하는 스트리밍 클라이언트.
  15. 스트리밍 클라이언트를 위한 매니페스트에 있어서,
    매니페스트는 스트리밍 클라이언트가 청구항 2 내지 청구항 4 중 어느 한 항에 따른 시스템에 의해 생성된 선택 데이터에 액세스 할 수 있도록 주소 정보를 포함함을 특징으로 하는 스트리밍 클라이언트를 위한 매니페스트.
  16. 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하는 방법에 있어서,
    스트리밍 프레젠테이션은 이벤트의 다른 기록들을 나타내는 복수의 미디어 스트림 사이에 동적으로 스위칭함에 의하여 획득되었으며, 복수의 미디어 스트림은 각각의 복수의 스트림 소스로부터 액세스 가능하되, 방법은:
    복수의 스트림 소스로부터 소스 데이터를 획득하는 단계를 포함하되, 소스 데이터는 콘텐츠 데이터 및/또는 복수의 미디어 스트림의 공존 부분의 메타데이터로 구성되고, 공존 부분은 이벤트의 공존 시간 주기를 나타내며;
    공존 부분 각각에 품질 스코어를 할당하기 위하여 소스 데이터에 적어도 하나의 품질 평가 함수를 적용하고, 그로 인해 복수의 품질 스코어를 확립하는 단계; 및
    스트리밍 클라이언트가 각 미디어 스트림의 공존 부분들 중 선택된 하나에 액세스 할 수 있도록 선택 데이터를 생성하는 단계를 포함하되, 선택된 부분은 복수의 품질 스코어의 비교를 기초로 선택되었음을 특징으로 하는 스트리밍 클라이언트에게 이벤트의 스트리밍 프레젠테이션을 제공하는 방법.
  17. 컴퓨터 프로그램 제품은 프로세싱 시스템이 청구항 16에 따른 방법을 수행하게 하는 명령을 포함함을 특징으로 하는 컴퓨터 프로그램 제품.
KR1020167022041A 2014-01-29 2015-01-27 이벤트 스트리밍 프레젠테이션 확립 KR20160110442A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP14152981 2014-01-29
EP14152981.8 2014-01-29
PCT/EP2015/051581 WO2015113960A1 (en) 2014-01-29 2015-01-27 Establishing a streaming presentation of an event

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020187025211A Division KR102009124B1 (ko) 2014-01-29 2015-01-27 이벤트 스트리밍 프레젠테이션 확립

Publications (1)

Publication Number Publication Date
KR20160110442A true KR20160110442A (ko) 2016-09-21

Family

ID=50064421

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020167022041A KR20160110442A (ko) 2014-01-29 2015-01-27 이벤트 스트리밍 프레젠테이션 확립
KR1020187025211A KR102009124B1 (ko) 2014-01-29 2015-01-27 이벤트 스트리밍 프레젠테이션 확립

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020187025211A KR102009124B1 (ko) 2014-01-29 2015-01-27 이벤트 스트리밍 프레젠테이션 확립

Country Status (5)

Country Link
US (2) US10313723B2 (ko)
EP (1) EP3100464B1 (ko)
KR (2) KR20160110442A (ko)
CN (2) CN106464925B (ko)
WO (1) WO2015113960A1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160110442A (ko) 2014-01-29 2016-09-21 코닌클리즈케 케이피엔 엔.브이. 이벤트 스트리밍 프레젠테이션 확립
CN107079013B (zh) 2014-10-14 2020-07-10 皇家Kpn公司 管理媒体流的并发流式传输
US9794601B2 (en) * 2014-10-21 2017-10-17 Cisco Technology, Inc. Dynamic programming across multiple streams
KR101897959B1 (ko) 2015-02-27 2018-09-12 쏘닉 아이피, 아이엔씨. 라이브 비디오 인코딩 및 스트리밍에서의 프레임 복제 및 프레임 확장을 위한 시스템 및 방법
US20160295264A1 (en) * 2015-03-02 2016-10-06 Steven Yanovsky System and Method for Generating and Sharing Compilations of Video Streams
WO2017083985A1 (en) 2015-11-20 2017-05-26 Genetec Inc. Media streaming
CA3005476C (en) 2015-11-20 2024-03-05 Genetec Inc. Secure layered encryption of data streams
WO2019051133A1 (en) 2017-09-06 2019-03-14 Siteimprove A/S INTERNET SITE RATING SYSTEM
CN109788357B (zh) * 2018-11-07 2022-04-15 合肥杰发科技有限公司 一种播放媒体文件的方法及装置
US11936962B2 (en) * 2019-03-08 2024-03-19 Sony Group Corporation Information processing device and information processing method
US10965986B2 (en) 2019-05-20 2021-03-30 Rovi Guides, Inc. Systems and methods for switching content providers to maintain streaming experience
US11509972B2 (en) 2019-07-09 2022-11-22 Dolby International Ab Method and device for personalization of media data for playback
US11461430B1 (en) 2021-11-10 2022-10-04 Siteimprove A/S Systems and methods for diagnosing quality issues in websites
US11397789B1 (en) 2021-11-10 2022-07-26 Siteimprove A/S Normalizing uniform resource locators
US11836439B2 (en) 2021-11-10 2023-12-05 Siteimprove A/S Website plugin and framework for content management services
US11461429B1 (en) 2021-11-10 2022-10-04 Siteimprove A/S Systems and methods for website segmentation and quality analysis
US11687613B2 (en) 2021-11-12 2023-06-27 Siteimprove A/S Generating lossless static object models of dynamic webpages
US11468058B1 (en) 2021-11-12 2022-10-11 Siteimprove A/S Schema aggregating and querying system
US11960561B2 (en) 2022-07-28 2024-04-16 Siteimprove A/S Client-side generation of lossless object model representations of dynamic webpages

Family Cites Families (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5729471A (en) 1995-03-31 1998-03-17 The Regents Of The University Of California Machine dynamic selection of one video camera/image of a scene from multiple video cameras/images of the scene in accordance with a particular perspective on the scene, an object in the scene, or an event in the scene
JP3216534B2 (ja) 1996-08-29 2001-10-09 三菱電機株式会社 多重化方法
US6169789B1 (en) * 1996-12-16 2001-01-02 Sanjay K. Rao Intelligent keyboard system
US6577333B2 (en) 2000-12-12 2003-06-10 Intel Corporation Automatic multi-camera video composition
US7099281B1 (en) * 2001-03-30 2006-08-29 Verizon Corproate Services Group Inc. Passive system and method for measuring the subjective quality of real-time media streams in a packet-switching network
US20030189589A1 (en) 2002-03-15 2003-10-09 Air-Grid Networks, Inc. Systems and methods for enhancing event quality
US6817097B2 (en) * 2002-03-25 2004-11-16 Thermal Corp. Flat plate fuel cell cooler
US7436885B2 (en) * 2002-10-09 2008-10-14 Hewlett-Packard Development Company, L.P. Method for presenting streaming media
US7643550B2 (en) * 2002-10-09 2010-01-05 Hewlett-Packard Development Company, L.P. Method for presenting streaming media for an event
US7835437B1 (en) * 2003-03-10 2010-11-16 Ji Zhang Statistical remultiplexing of compressed video segments
ITBA20030039A1 (it) 2003-08-29 2005-02-28 Grieco Luigi Alfredo Controllo di congestione rate-based del traffico entrante
US8010652B2 (en) * 2004-05-07 2011-08-30 Nokia Corporation Refined quality feedback in streaming services
EP1776800A1 (en) 2004-08-11 2007-04-25 Vidiator Enterprises Inc. Multicast and broadcast streaming method and system
US20080069086A1 (en) 2004-12-13 2008-03-20 Dong-Jin Shin Mobile Communication System Based On Ip And Session Initiation Method Thereof
EP1727375A1 (en) * 2005-05-27 2006-11-29 Psytechnics Limited Assessment of perceived quality of a packetized video stream
US20070073596A1 (en) * 2005-09-23 2007-03-29 Alexander Jonathon P Systems and methods for marketing and selling media
JP2007115293A (ja) * 2005-10-17 2007-05-10 Toshiba Corp 情報記憶媒体、プログラム、情報再生方法、情報再生装置、データ転送方法、及びデータ処理方法
AU2007236534B2 (en) * 2006-02-13 2012-09-06 Vividas Technologies Pty Ltd Method, system and software product for streaming content
US8335873B2 (en) * 2006-09-14 2012-12-18 Opentv, Inc. Method and systems for data transmission
US20080127272A1 (en) * 2006-11-28 2008-05-29 Brian John Cragun Aggregation of Multiple Media Streams to a User
US7961665B2 (en) 2006-12-13 2011-06-14 Viasat, Inc. Terminal aware multicasting
JP5168283B2 (ja) * 2007-08-20 2013-03-21 富士通株式会社 映像品質監視方法及び配信サーバ及びクライアント
US8522289B2 (en) * 2007-09-28 2013-08-27 Yahoo! Inc. Distributed automatic recording of live event
US8099757B2 (en) 2007-10-15 2012-01-17 Time Warner Cable Inc. Methods and apparatus for revenue-optimized delivery of content in a network
US7920523B2 (en) * 2008-01-07 2011-04-05 Alcatel-Lucent Usa Inc. Method of supporting quality-of-service application session continuity during inter-technology handover using a common packet data function
JP2009188735A (ja) 2008-02-06 2009-08-20 Nec Corp 動画データ配信装置、動画データ配信システム、動画データ配信方法およびプログラム
US20090238371A1 (en) * 2008-03-20 2009-09-24 Francis Rumsey System, devices and methods for predicting the perceived spatial quality of sound processing and reproducing equipment
US20090309977A1 (en) * 2008-06-12 2009-12-17 Microsoft Corporation Benchmarking and calibrating video quality assessment tools
EP2139179A1 (en) 2008-06-26 2009-12-30 THOMSON Licensing Method and apparatus for reporting state information
DE102008039584B3 (de) * 2008-08-25 2010-04-15 Siemens Programm- Und Systementwicklung Gmbh & Co. Kg Verfahren und Einrichtung zur Auswahl von Satellitenkanälen
US8028082B2 (en) * 2008-10-03 2011-09-27 Cisco Technology, Inc. Location based multicast policies
US20100094972A1 (en) 2008-10-15 2010-04-15 Patentvc Ltd. Hybrid distributed streaming system comprising high-bandwidth servers and peer-to-peer devices
US7818441B2 (en) 2008-10-15 2010-10-19 Patentvc Ltd. Methods and systems for using a distributed storage to its maximum bandwidth
US8156089B2 (en) 2008-12-31 2012-04-10 Apple, Inc. Real-time or near real-time streaming with compressed playlists
US8767081B2 (en) 2009-02-23 2014-07-01 Microsoft Corporation Sharing video data associated with the same event
US8909806B2 (en) * 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US8280226B2 (en) 2009-04-06 2012-10-02 International Business Machines Corporation Content recorder multi-angle viewing and playback
US20130298170A1 (en) * 2009-06-12 2013-11-07 Cygnus Broadband, Inc. Video streaming quality of experience recovery using a video quality metric
WO2011039293A1 (en) 2009-10-02 2011-04-07 Koninklijke Kpn N.V. Scalable video controls bandwidth allocation to data services
EP2486491A4 (en) 2009-10-06 2013-10-23 Unwired Planet Llc MANAGING NETWORK TRAFFIC BY EDITING A MANIFEST FILE AND / OR USING A INTERMEDIATE FLOW CONTROL
US8606073B2 (en) * 2010-05-12 2013-12-10 Woodman Labs, Inc. Broadcast management system
KR101837687B1 (ko) 2010-06-04 2018-03-12 삼성전자주식회사 콘텐트의 품질을 결정하는 복수의 인자에 기초한 적응적인 스트리밍 방법 및 장치
US8683337B2 (en) * 2010-06-09 2014-03-25 Microsoft Corporation Seamless playback of composite media
EP2583435A1 (en) * 2010-06-17 2013-04-24 Nokia Siemens Networks OY Improved peer-to-peer system
EP2583432B1 (en) * 2010-06-18 2019-02-20 Nokia Technologies Oy Method and apparatus for generating and handling streaming media quality-of-experience metrics
GB2484061A (en) * 2010-06-22 2012-04-04 Gi Provision Ltd Optimising target bit rate for wireless transmission of multiple video streams
ITBO20100462A1 (it) 2010-07-22 2012-01-23 Benini Nabore Velivolo e metodo per realizzarlo
US9716920B2 (en) * 2010-08-05 2017-07-25 Qualcomm Incorporated Signaling attributes for network-streamed video data
US8826349B2 (en) * 2011-02-01 2014-09-02 Verizon Patent And Licensing Inc. Multicast adaptive stream switching for delivery of over the top video content
EP2511818A3 (en) * 2011-04-12 2012-12-26 Samsung Electronics Co., Ltd. Display apparatus and control method thereof
US10320869B2 (en) 2011-07-07 2019-06-11 Telefonaktiebolaget Lm Ericsson (Publ) Network-capacity optimized adaptive HTTP streaming
GB2493498A (en) * 2011-07-18 2013-02-13 Nds Ltd Fast channel change using an aggregated video service
US8924580B2 (en) * 2011-08-12 2014-12-30 Cisco Technology, Inc. Constant-quality rate-adaptive streaming
US8789081B2 (en) * 2011-09-02 2014-07-22 Verizon Patent And Licensing Inc. Video quality scoring
EP2566172A1 (en) * 2011-09-02 2013-03-06 Thomson Licensing Method and apparatus for adaptive transcoding of multimedia stream
US20130301415A1 (en) 2011-09-29 2013-11-14 Avvasi Inc. Methods and systems for managing media traffic based on network conditions
US9479807B1 (en) * 2011-09-29 2016-10-25 Arris Enterprises, Inc. Gateway-based video client-proxy sub-system for managed delivery of A/V content using fragmented method in a stateful system
US20130084053A1 (en) * 2011-10-04 2013-04-04 Utc Fire & Security Corporation System to merge multiple recorded video timelines
US9911209B2 (en) * 2011-12-14 2018-03-06 Christopher V. Beckman System and method for improving video and other media playback
US9292826B1 (en) * 2011-12-21 2016-03-22 Time Warner Cable Enterprises Llc Adaptive bit rates in multicast communications
EP2798816B1 (en) 2011-12-29 2016-05-11 Koninklijke KPN N.V. Network-initiated content streaming control
US8953478B2 (en) * 2012-01-27 2015-02-10 Intel Corporation Evolved node B and method for coherent coordinated multipoint transmission with per CSI-RS feedback
US8645485B1 (en) * 2012-01-30 2014-02-04 Google Inc. Social based aggregation of related media content
US8806529B2 (en) * 2012-04-06 2014-08-12 Time Warner Cable Enterprises Llc Variability in available levels of quality of encoded content
US9438883B2 (en) * 2012-04-09 2016-09-06 Intel Corporation Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content
US9661047B2 (en) * 2012-04-30 2017-05-23 Mobilatv Ltd. Method and system for central utilization of remotely generated large media data streams despite network bandwidth limitations
KR20190026965A (ko) * 2012-07-10 2019-03-13 브이아이디 스케일, 인크. 품질 주도형 스트리밍
WO2014011848A2 (en) * 2012-07-12 2014-01-16 Huawei Technologies Co., Ltd. Signaling and processing content with variable bitrates for adaptive streaming
US9125073B2 (en) * 2012-08-03 2015-09-01 Intel Corporation Quality-aware adaptive streaming over hypertext transfer protocol using quality attributes in manifest file
US9300710B2 (en) * 2013-03-07 2016-03-29 Qualcomm Innovation Center, Inc. Adaptive bandwidth switching via short-circuitable download
US9402107B2 (en) * 2013-03-15 2016-07-26 Time Warner Cable Enterprises Llc Apparatus and methods for delivery of multicast and unicast content in a content delivery network
US9338209B1 (en) * 2013-04-23 2016-05-10 Cisco Technology, Inc. Use of metadata for aiding adaptive streaming clients
CN105230024B (zh) * 2013-07-19 2019-05-24 华为技术有限公司 一种媒体表示自适应方法、装置及计算机存储介质
KR20160110442A (ko) 2014-01-29 2016-09-21 코닌클리즈케 케이피엔 엔.브이. 이벤트 스트리밍 프레젠테이션 확립
US9866608B2 (en) * 2014-03-24 2018-01-09 Qualcomm Incorporated Processing continuous multi-period content
CA2962040C (en) * 2014-09-22 2020-07-21 Arris Enterprises Llc Video quality of experience based on video quality estimation
US9894130B2 (en) * 2014-09-23 2018-02-13 Intel Corporation Video quality enhancement
CN107079013B (zh) 2014-10-14 2020-07-10 皇家Kpn公司 管理媒体流的并发流式传输
US9712860B1 (en) * 2014-12-12 2017-07-18 Amazon Technologies, Inc. Delivering media content to achieve a consistent user experience

Also Published As

Publication number Publication date
WO2015113960A1 (en) 2015-08-06
KR20180100716A (ko) 2018-09-11
US20160353148A1 (en) 2016-12-01
EP3100464B1 (en) 2020-11-18
KR102009124B1 (ko) 2019-08-08
CN111416984A (zh) 2020-07-14
EP3100464A1 (en) 2016-12-07
CN106464925B (zh) 2020-04-14
US11778258B2 (en) 2023-10-03
US10313723B2 (en) 2019-06-04
CN106464925A (zh) 2017-02-22
US20190273960A1 (en) 2019-09-05

Similar Documents

Publication Publication Date Title
US11778258B2 (en) Establishing a streaming presentation of an event
US11765410B2 (en) Synchronizing multiple over the top streaming clients
US20210326378A1 (en) Information processing apparatus and information processing method
US10693936B2 (en) Transporting coded audio data
US10911512B2 (en) Personalized content streams using aligned encoded content segments
KR101786050B1 (ko) 데이터 전송 방법 및 장치
RU2571375C2 (ru) Режимы быстрого доступа к произвольной точке для сетевой потоковой передачи кодированных видеоданных
US9185439B2 (en) Signaling data for multiplexing video components
US10616297B2 (en) Content-specific identification and timing behavior in dynamic adaptive streaming over hypertext transfer protocol
US20110145430A1 (en) Streaming method and apparatus operating by inserting other content into main content
KR20170116027A (ko) 저 레이턴시 비디오 스트리밍
JPWO2012096372A1 (ja) コンテンツ再生装置、コンテンツ再生方法、配信システム、コンテンツ再生プログラム、記録媒体、およびデータ構造
US20180069910A1 (en) Systems and Methods for Live Voice-Over Solutions
Vincken Multi-layer en multi-resolutie streaming van omni-directionele video
Thomas et al. FascinatE D3. 1.1 Survey of metadata and knowledge for automated scripting
UPC et al. Survey of Metadata and Knowledge for Automated Scripting

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment