KR101554387B1 - 콘텐츠 인식 멀티미디어 스트리밍을 위한 방법 및 시스템 - Google Patents

콘텐츠 인식 멀티미디어 스트리밍을 위한 방법 및 시스템 Download PDF

Info

Publication number
KR101554387B1
KR101554387B1 KR1020130094990A KR20130094990A KR101554387B1 KR 101554387 B1 KR101554387 B1 KR 101554387B1 KR 1020130094990 A KR1020130094990 A KR 1020130094990A KR 20130094990 A KR20130094990 A KR 20130094990A KR 101554387 B1 KR101554387 B1 KR 101554387B1
Authority
KR
South Korea
Prior art keywords
video
video content
content
profiles
encoding
Prior art date
Application number
KR1020130094990A
Other languages
English (en)
Other versions
KR20140020807A (ko
Inventor
이팅 리아오
제프리 알. 푀르스터
Original Assignee
인텔 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인텔 코포레이션 filed Critical 인텔 코포레이션
Publication of KR20140020807A publication Critical patent/KR20140020807A/ko
Application granted granted Critical
Publication of KR101554387B1 publication Critical patent/KR101554387B1/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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26603Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for automatically generating descriptors from content, e.g. when it is not made available by its provider, using content analysis techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

비디오 콘텐츠를 복수의 비디오 콘텐츠 카테고리들로 분류하고; 적어도, 상기 복수의 비디오 콘텐츠 카테고리에 기초하여, 비디오 콘텐츠에 대한 비디오 인코딩 프로파일들을 적응적으로 생성하기 위한 시스템 및 방법이 개시된다.

Description

콘텐츠 인식 멀티미디어 스트리밍을 위한 방법 및 시스템{METHOD AND SYSTEM FOR CONTENT-AWARE MULTIMEDIA STREAMING}
네트워크들을 통한 멀티미디어의 스트리밍이 굉장한 속도로 계속해서 성장하고 있다. 일부 관점들에서, 멀티미디어 스트리밍의 계속적인 성장은 교육, 사업, 여행, 및 다른 콘텍스트들에서의 이용의 이득들뿐만 아니라, 새로운 미디어 및 엔터테인먼트 애플리케이션들에서 그의 존재도 및/또는 중요도 증가 덕분일 수 있다. 일부 경우들에서, 멀티미디어를 스트리밍하는 데 이용되는 네트워크들은 유선 또는 무선일 수 있고, 인터넷, 텔레비전 방송, 위성, 셀룰러, 및 와이파이 네트워크들을 포함할 수 있다. 비디오 경험에 중요한 것은 사용자가 시청할 수신된 비디오의 품질이다. 일부 양태들에서, 서비스 용량을 증가시키고 최종 사용자 경험 품질(quality of experience; QoE)을 개선하는 것은 상이한 최적화 기법들에 의해 용이하게 될 수 있다.
서비스 용량을 증가시키고 최종 사용자 QoE를 개선하려는 노력으로 다수의 적응적 비디오 스트리밍 기법들이 제안되었다. 일부 이러한 기법들은 상이한 미리 결정된 비트레이트들에서 비디오 소스를 짧은 세그먼트들로 인코딩함으로써 스트리밍 용량 및 품질 문제들을 다룬다. 그 다음에, 비디오의 인코딩된 짧은 세그먼트들은 이용 가능한 네트워크 대역폭 및 프로세싱 상태들에 기초하여 네트워크를 거쳐서 전달된다.
이용 가능한 네트워크 대역폭 및 프로세싱 상태들을 고려하는 기법들은 일부 폭넓은 비디오 품질 이슈들을 어느 정도로 처리할 수 있거나 처리하지 않을 수 있지만, 그러한 기법들은 통상적으로 송신되는 비디오의 다양한 타입들에 적응적이지 않거나, 그에 응답적이지 않거나, 또는 심지어 그것을 인식하지 않는다.
본원에서 본 개시의 양태들은 첨부 도면들에서 제한사항이 아닌 예시에 의해 설명된다. 제한사항이라기보다는 예시의 간단함 및 명확함과 관련된 목적들을 위해, 도면들에 도시된 양태들은 반드시 비례적으로 그려지지는 않는다. 또한, 적절하다고 생각되는 경우, 참조 라벨들은 대응하는 또는 유사한 요소들을 나타내기 위해 도면들 사이에서 반복되었다.
도 1은 본원의 비디오의 일부 양태들에 관련된 예시적인 그래프이다.
도 2는 본원의 일 실시예에 따른, 프로세스의 흐름도이다.
도 3은 본원의 일부 실시예들에 따른, 프로세서의 다른 흐름도이다.
도 4는 실시예에 따른, 시스템의 기능 블록도이다.
도 5a 내지 5d는 본원의 일부 실시예들에 따른, 비디오 씬들(video scenes)의 예시적인 도면들이다.
도 6은 본원의 일부 실시예들에 따른 시스템의 예시적인 개략 블록도이다.
다음의 설명은 콘텐츠 인식 비디오 적응 기법을 제공함으로써 비디오 전송의 품질 및 효율성을 향상시키기 위한 프로세스들 및 동작들을 지원할 수 있는 방법 및 시스템을 설명한다. 아래 더욱 상세히 설명되는 바와 같이, 본 개시는 본원에서 네트워크를 통한 전송을 위해 인코딩되는 비디오 시퀀스의 콘텐츠에 기초하여 적응적으로 코딩 파라미터들을 선택하고 리소스들을 할당하는 기법 또는 메커니즘의 일부 실시예들을 제공한다. 본원에 개시된 기법(들)은, 일부 실시예들에서, 네트워크를 통해 전송되는 인코딩된 비디오의 품질을 향상시키고 및/또는 비트레이트 소비(bitrate consumption)를 최소화하도록 동작할 수 있다.
일부 측면에서, 본 개시는 본원에서 프로세스들 및 시스템들을 구현하기 위한 방법(들) 및 시스템(들)에 관한 특정 상세들을 포함한다. 그러나, 그와 관련된 기술분야의 통상의 기술자에 의해, 본 개시의 실시예들은 그러한 특정 상세들 없이 실시될 수 있다는 것을 알 것이다. 따라서, 일부 사례에서, 제어 메커니즘들 및 풀 소프트웨어 명령어 시퀀스들과 같은 양태들은 본 개시의 다른 양태들을 모호하게 하지 않도록 하기 위하여 상세히 나타내지 않았다. 이 기술분야의 통상의 기술자는 본원에 포함된 설명들을 고려하여 과도한 실험 없이 적절한 기능을 구현할 수 있을 것이다.
본 개시에서 "일 실시예", "일부 실시예들", "실시예", "예시적인 실시예", "사례(instance)", "일부 사례들"에 대한 언급은, 설명된 실시예가 특정 특징, 구조 또는 특성을 포함할 수 있지만, 모든 실시예가 그 특정 특징, 구조 또는 특성을 반드시 포함하지는 않을 수 있다는 것을 나타낸다. 또한, 그러한 구절들이 반드시 동일한 실시예를 가리키는 것은 아니다. 또한, 특정 특징, 구조, 또는 특성이 실시예와 관련하여 설명될 때, 명시적으로 설명되든 설명되지 않든 다른 실시예들과 관련하여 그러한 특징, 구조, 또는 특성에 영향을 미치는 것이 이 기술분야의 통상의 기술자의 지식 내에 있다는 것이 제기된다.
일부 실시예들은 본원에서 하드웨어, 펌웨어, 소프트웨어, 또는 그의 임의의 결합으로 구현될 수 있다. 실시예들은 또한 하나 이상의 프로세서에 의해 판독되어 실행될 수 있는 머신 판독 가능한 매체에 저장된 실행 가능한 명령어들로서 구현될 수 있다. 머신 판독 가능한 저장 매체는 머신(예를 들어, 컴퓨팅 장치)에 의해 판독 가능한 형태로 정보를 저장하기 위한 임의의 유형의 비-일시적 메커니즘을 포함할 수 있다. 일부 양태들에서, 머신 판독 가능한 저장 매체는 ROM(read only memory); RAM(random access memory); 자기 디스크 저장 매체; 광 저장 매체; 플래시 메모리 장치들; 및 신호들의 전기 및 광 형태들을 포함할 수 있다. 펌웨어, 소프트웨어, 루틴들, 및 명령어들이 본원에서 특정 액션들을 수행하는 것으로서 설명될 수 있지만, 그러한 설명들은 단지 편의를 위한 것이고, 그러한 액션들은 사실상 컴퓨팅 장치들, 프로세서들, 컨트롤러들, 및 다른 장치들에 펌웨어, 소프트웨어, 루틴들, 및 명령어들을 실행시킨다는 것을 알아야 한다.
도 1은 상이한 코딩 설정들 하에서 다양한 비디오 콘텐츠에 대한 관측된 레이트-품질 특성을 도시하는 예시적인 그래프(100)이다. 그래프(100)에 반영된 비디오의 콘텐츠 특성은 달라진다. 예를 들어, 비디오 콘텐츠의 일부는 매우 적은 모션(예를 들어, 데스크에 앉아 있는 앵커들의 뉴스캐스트)을 포함할 수 있고, 비디오 콘텐츠의 일부는 높은 양의 모션(예를 들어, 많은 선수가 동시에 경기장을 돌아다니는 스포츠 이벤트)을 포함할 수 있다. 코딩 설정들은 예를 들어, 프레임 구조, GOP(group of pictures) 크기 등을 포함할 수 있다. 그래프(100)에 관하여, 수평 축(105)은 비트레이트 스케일을 나타내고, 수직 축(110)은 비디오 품질 메트릭(즉, MS-SSIM(Multi-Scale Structural SIMilarity) 인덱스) 스케일을 나타낸다. 그래프(100)는 비디오 품질이 동일한 비트레이트에서 인코딩된 비디오에 대하여 큰 범위에 걸쳐서 변할 수 있다는 점을 예시한다. 예를 들어, 4 Mbps 레이트에서, 평균 MS-SSIM 값은 상이한 설정들에서 인코딩된 상이한 비디오들에 대해 약 0.87로부터 약 0.98까지 변한다. 또한, 그래프(100)는 예를 들어, 0.95 MS-SSIM의 비디오 품질에 대하여, 요구되는 비트레이트는 약 2 Mbps로부터 약 14 Mbps까지 변할 수 있다는 것을 보여준다.
따라서, 그래프(100)는 모든 비디오 콘텐츠에 대해 고정된 (인)코딩 파라미터(들)를 이용하는 비디오 인코딩 및 전송 방법이 대역폭의 낭비 또는 비디오 품질 저하를 일으킬 수 있다는 것을 보여준다.
도 2는 본원의 실시예에 따른, 프로세스(200)의 예시적인 흐름도이다. 프로세스(200)는 사용자 QoE 표준들을 만족시키면서도 비트레이트 소비를 최소화하는 최적화된, 또는 적어도 더 효율적인, 코딩 프로파일을 결정함으로써 상이한 비디오 콘텐츠로부터 생길 수 있는 큰 변화량의 레이트-품질 성능을 고려할 수 있다.
동작(205)에서, 유입 비디오 콘텐츠는 다양한 비디오 콘텐츠 카테고리들로 분류될 수 있다. 동작(205)에서 수신된 비디오는 생방송 및 저장 장소로부터 검색되는 것을 포함하는 임의의 소스로부터 나올 수 있다. 동작(205)에서 수신된 비디오는 비디오 자체(즉, 비디오의 콘텐츠)의 하나 이상의 특성에 기초하여 분류될 수 있다. 일부 실시예들에서, 수신된 비디오의 모션 강도(motion intensity) 특성이 평가될 수 있고, 비디오는 3개의 카테고리 - 낮은 모션, 중간 모션, 또는 높은 모션 중 하나로 분류될 수 있다.
동작(210)에서, 하나 이상의 비디오 코딩 프로파일들은 적어도, 동작(205)에서 결정된 복수의 비디오 콘텐츠 카테고리에 기초하여 비디오 콘텐츠에 대해 적응적으로 생성될 수 있다. 도 2에 예시된 바와 같이, 동작(210)은 동작(205)으로부터 비디오 콘텐츠 카테고리들의 표시를 수신할 수 있다. (아래 더 상세히 논의되는 바와 같은) 일부 양태들에서, 동작(210)은 동작(205)으로부터의 비디오 콘텐츠 카테고리 정보 이외에 부가적인 정보를 입력들로서 수신할 수 있다. 동작(205)으로부터의 비디오 콘텐츠 카테고리들 및 다른 정보는 비디오 콘텐츠의 상이한 카테고리들에 대한 코딩 프로파일들을 적응적으로 생성하기 위해 동작(210)에 의해 이용될 수 있다. 비디오 콘텐츠의 상이한 카테고리들은 각각 상이한 타입의 비디오 콘텐츠(즉, 상이한 특성들을 갖는 비디오)에 관련되거나 그와 연관될 수 있다는 것에 주목한다.
적어도 결정된 복수의 비디오 콘텐츠 카테고리들에 기초하여 동작(210)에서 적응적으로 생성된 코딩 프로파일들은 비디오 콘텐츠의 추가 프로세싱 및 전송을 위한, 및 다른 프로세스들을 위한 입력으로서 이용되는, 레코드 또는 파일에 저장 또는 출력될 수 있다.
도 3은 본원의 일부 실시예들에 따른, 프로세스(300)와 관련된다. 일부 양태들에서, 프로세스(300)는 도 2의 프로세스(200)와 유사하다. 예를 들어, 동작들(305 및 310)은 각각 동작들(205 및 210)에 대응할 수 있다. 따라서, 그 동작들에 대해서는 위의 동작들(205 및 210)의 논의를 참조함으로써 완전히 이해할 수 있기 때문에, 동작들(305 및 310)의 상세한 논의는 본원에 제공되지 않는다.
도 3을 참조하면, 동작(315)은 동작(310)에서 적응적으로 생성된 비디오 코딩 프로파일들 중 적어도 하나에 기초하여 (인)코딩된 비디오의 출력을 생성한다. 동작(315)의 출력은 동작(320)에서 인코딩된 비디오에 대한 비디오 품질 스코어(video quality score) 또는 측정치를 결정 또는 계산하는 데 이용될 수 있다. 동작(320)에서 결정된 비디오 품질 스코어는 인코딩된 비디오의 품질 표시를 제공할 수 있다. 일부 양태들에서, 비디오 품질 스코어는 하나 이상의 비디오 품질 평가(video quality assessment; VQA) 알고리즘들에 따라 계산된 VQA 메트릭을 포함할 수 있다.
도 3에 더 예시된 바와 같이, 동작(320)에서 결정된 비디오 품질 스코어는 동작(310)으로 전달될 수 있어서, 코딩 프로파일들을 생성하기 위해 동작(310)에서 이용된 코딩 파라미터들은, 부분적으로, 비디오 콘텐츠 카테고리들 및 인코딩된 비디오 콘텐츠의 품질에 기초하여, 코딩 프로파일들을 적응적으로 생성하기 위해 재귀적으로 조절될 수 있다.
도 4는 본원에서 일부 실시예들에 따른, 장치 또는 디바이스(400)의 기능 블록도의 예시적인 도면이다. 일부 양태들에서, 디바이스(400)는 본원에 개시된 프로세스들(예를 들어, 프로세스들(200 및 300)의 일부 부분들을 구현하기 위해 콘텐츠 인식 멀티미디어 스트리밍 서버를 포함할 수 있다. 일부 실시예들에서, 디바이스(400)는 하드웨어, 소프트웨어, 및 그의 결합들로 구현될 수 있다. 일부 양태들에서, 디바이스(400)는 도 4에 구체적으로 도시된 것들보다 더 적거나, 더 많거나, 유사하거나, 대안적인 기능 컴포넌트들을 포함할 수 있다. 일부 실시예들에서, 도 4에 도시된 기능 블록들은 하나 이상의 컴포넌트들로 구현될 수 있을 뿐만 아니라, 다른 기능들 및/또는 컴포넌트들과 결합될 수 있다.
비디오 콘텐츠는 비디오 소스(405)에 의해 제공되거나 비디오 소스(405)로부터 수신된다. 비디오 소스(405)는 생방송 또는 재방송 데이터 스트림을 포함한 비디오 콘텐츠, 및 저장 설비(즉, 메모리)로부터 검색된 비디오 시퀀스를 포함한 파일 또는 레코드를 제공하기 위한 임의의 타입의 메커니즘일 수 있다. 비디오 소스(405)로부터의 비디오 콘텐츠는 비디오 콘텐츠 분석기(410)에 공급된다. 비디오 콘텐츠 분석기(410)는 비디오 소스(405)로부터 비디오의 콘텐츠 특성들을 분석하도록 동작할 수 있다. 일부 실시예들에서, 비디오 콘텐츠 분석기(410)는 비디오의 콘텐츠의 상이한 특성들을 식별하기 위해 비디오 특징 추출 메커니즘들 또는 기법들을 포함할 수 있다. 비디오 콘텐츠 분석기(410)는 또한 분류된 비디오 콘텐츠(예를 들어, 동작들(205 및 305))에 기초하여 비디오 콘텐츠를 상이한 카테고리들로 분류할 수 있다.
비디오 콘텐츠 분석기(410)에 의해 분석된 비디오 콘텐츠와 연관된 상이한 비디오 카테고리들의 표시가 콘텐츠 인식 코딩 프로파일 생성기(415)에 제공된다. 콘텐츠 인식 코딩 프로파일 생성기(415)는 비디오 콘텐츠의 상이한 타입들에 대한 최적화된 코딩 프로파일들을 적응적으로 생성하기 위해 복수의 소스들로부터 정보를 모을 수 있다. 일부 실시예들에서, 비디오 콘텐츠의 상이한 타입들은 비디오 콘텐츠의 상이한 카테고리들에 대응한다. 일부 양태들에서, 콘텐츠 인식 코딩 프로파일 생성기(415)에 대한 입력 정보는, 적어도, 비디오 콘텐츠 분석기(410)로부터의 비디오 콘텐츠 카테고리들을 포함할 수 있다. 콘텐츠 인식 코딩 프로파일 생성기(415)에 대한 부가적인 입력 정보는, 예를 들어, 비디오 품질 평가 툴(430)에 의해 서버(400)에서 계산된 비디오 품질 스코어들과 네트워크 상태와 다른 사용자 요건 피드백(420)을 포함할 수 있다.
코딩 프로파일 생성기(415)는 타겟 비트레이트, 인코딩 해상도, 인코딩 프레임 레이트, 레이트 제어 알고리즘, 프레임 구조, 화상 집합(group of picture; GOP) 크기, 특정 프레임 타입의 개수(예를 들어, "B" 프레임들의 양방향성), 및 다른 코딩 파라미터들을 단독으로 및 그의 결합들로 적응적으로 선택함으로써 하나 이상의 콘텐츠 최적화된 코딩 프로파일들을 생성하도록 동작할 수 있다. 본 개시는, 본원에 구체적으로 열거되어 있든지, 이들 및 다른 코딩 파라미터들을 포함한다는 것을 알 것이다.
코딩 프로파일 생성기(415)는 그로써 생성된 하나 이상의 콘텐츠 최적화된 코딩 프로파일들을 멀티미디어 스트리밍 코덱(425)에 제공할 수 있다. 코덱(425)은 콘텐츠 최적화된 코딩 프로파일들을 이용하여 비디오 코딩 프로파일 생성기(415)에 의해 생성된 적절한 코딩 프로파일들로 비디오 소스(405)로부터의 비디오 콘텐츠를 인코딩할 수 있다. 적절한 코딩 프로파일(들)은 비디오 내의 콘텐츠의 타입을 최적으로 매칭할 수 있다.
코덱(425)에 의해 출력된 인코딩된 비디오는 비디오 품질 평가(video quality assessment; VQA) 툴(430)에 부분적으로 제공된다. VQA 툴(430)은 인코딩된 비디오에 대한 비디오 품질 또는 VQA 스코어(들)를 계산할 수 있다. VQA 스코어(들)는 콘텐츠 인식 코딩 프로파일 생성기(415)에 전달될 수 있다. VQA 스코어들을 수신하면, 콘텐츠 인식 코딩 프로파일 생성기(415)는 적어도, 비디오 콘텐츠 및 VQA 스코어들에 기초하여, 거기서 이용된 코딩 파라미터들을 재귀적으로 조절하고 최적화된 코딩 프로파일들을 생성할 수 있다.
일부 실시예들에서, 비디오 소스는 서버측에서 이용 가능하기 때문에 MS-SSIM과 같은 참조 기반 VQA 메트릭들(reference-based VQA metrics)이 이용될 수 있다.
출원인은 본원에 개시된 콘텐츠 인식 비디오 적응 프로세스들을 이용하여 비트레이트 최소화를 결정하고, 그것들을 모든 비디오 시퀀스에 대해 고정된 코딩 프로파일을 이용하는 베이스라인 코딩 스킴들과 비교함으로써 본원에 개시된 프로세스들의 유효성을 실현하였다. 평가 및 다음 표들에서 이용된 비디오 시퀀스들은 상이한 비트레이트들하에서 대중적으로 이용 가능한 "Aspen", "ControlledBurn", "RedKayak", "SpeedBag", "TouchdownPass" 및 "WestWindEasy" 비디오 시퀀스들을 포함한다.
아래 표 1은 입력 비디오 시퀀스들 전부에 고정된 코딩 프로파일이 적용되는 베이스라인 스킴들과 비교된 본원의 콘텐츠 인식 비디오 적응 방법(들)에 대해 관측된 이득들을 나타낸다. 표 1의 예에서, 평균 PSNR(Peak Signal to Noise Ratio)이 34 dB보다 클 때 사용자들이 만족한다는 것이 가정된다. 표 1에 관한 베이스라인 스킴들은 고정된 양자화 파라미터들(quantization parameters; QPs)을 이용하여 비디오 시퀀스들을 인코딩하고, 콘텐츠 인식(즉, 최적화된) 방법은 입력 비디오 시퀀스에서 검출된 비디오 콘텐츠 특성들의 상이한 타입들에 기초하여 코딩 파라미터들을 적응적으로 선택한다. 보이는 바와 같이, 표 1에 열거된 결과들은, 모든 비디오 시퀀스에 대해 사용자들을 만족시키기 위해, 본원에 개시된 콘텐츠 인식 비디오 적응 프로세스를 이용하여 3.55 Mbps의 평균 비트레이트 절감이 실현된다는 것을 나타낸다.
Figure 112013072532298-pat00001
아래 표 2는 표 1의 각각의 비디오 시퀀스에 대한 코딩 파라미터 설정들의 목록을 예로서 제공한다.
Figure 112013072532298-pat00002
도 5a 내지 5d는 본원에 개시된 비디오 콘텐츠에 대해 인코딩 해상도들을 적응시키는 프로세스들이 어떻게 비디오 시퀀스의 비디오 품질을 향상시킬 수 있는지에 대한 예들을 그림을 이용하여 예시한다. 비디오 시퀀스들 "Controlledburn"(도 5a 및 5b) 및 "Redkayak"(도 5c 및 5d)은 각각 220 x 124 해상도(도 5a 및 5c) 및 768 x 432 해상도(도 5b 및 5d)로 인코딩되는 것으로 도시되어 있다. 비디오 시퀀스들 둘다는 동일한 비트레이트(즉, 230 kbps)로 인코딩된다는 것에 주목한다. "Controlledburn" 비디오 시퀀스의 경우, 도 5b에 도시된 바와 같이 더 높은 해상도로 인코딩하면, 비디오의 흐릿함을 줄이고 지각적 비디오 품질을 향상시킨다. 그러나, "Redkayak" 비디오 시퀀스를 더 높은 해상도로 인코딩하면, 도 5d에 도시된 바와 같이, 비디오가 매우 블록진 것처럼(blocky) 보이고 비디오 품질을 저하한다. 따라서, 비디오 시퀀스의 비디오 콘텐츠의 특정 타입(들)(즉, 비디오 특성)에 코딩 파라미터들(예를 들어, 인코딩 해상도 등)을 적응시키는 것은 비디오 스트리밍 서비스, 애플리케이션, 시스템, 프로세스, 또는 디바이스의 QoE를 효과적으로 개선할 수 있다는 것이 입증된다.
도 6은 일부 실시예들에 따른 시스템 또는 장치(600)의 블록도 개요이다. 시스템(600)은, 예를 들어 멀티미디어 데이터 또는 임의의 다른 엔티티를 공급하는 스트리밍 서비스 제공자의 서버(예를 들어, 도 4, 디바이스(400))를 포함한, 본원에 설명된 방법들 및 프로세스들을 구현하는 임의의 디바이스와 연관될 수 있다. 시스템(600)은 예를 들어, 다른 디바이스 또는 시스템에 대하여 통신 네트워크(도 6에 도시되지 않음)를 통해 통신하도록 구성된 통신 장치(615)에 결합된, 단일 칩 마이크로프로세서들 또는 멀티 코어 프로세서 형태의 하나 이상의 상업적으로 이용 가능한 중앙 처리 장치(CPU)와 같은 프로세서(605)를 포함한다. 시스템(600)이 애플리케이션 서버를 포함하는 사례에서, 통신 장치(615)는 시스템(600)이 클라이언트 장치와 인터페이스하기 위한 수단을 제공할 수 있다. 시스템(600)은 또한 RAM 메모리 모듈들과 같은 로컬 메모리(610)를 포함할 수 있다. 시스템(600)은 입력 장치(620)(예를 들어, 콘텐츠를 입력하기 위한 터치 스크린, 마우스 및/또는 키보드) 및 출력 장치(625)(예를 들어, 사용자 인터페이스를 디스플레이하기 위한 컴퓨터 또는 다른 장치 모니터/스크린)를 더 포함한다.
프로세서(605)는 저장 장치(630)와 통신한다. 저장 장치(630)는 자기 저장 장치들(예를 들어, 하드 디스크 드라이브), 광 저장 장치들, 및/또는 고체 상태 메모리 디바이스들의 반도체의 결합들을 포함한, 임의의 적절한 정보 저장 장치를 포함할 수 있다. 일부 실시예들에서, 저장 장치는 데이터베이스 시스템을 포함할 수 있다.
저장 장치(630)는 예를 들어, 본원의 프로세스들에 따라 클라이언트 장치들로부터의 요구들을 프로세싱하기 위한 컴퓨터 실행 가능한 명령어들을 제공할 수 있는 프로그램 코드(635)를 저장한다. 프로세서(605)는 프로그램(635)의 명령어들을 수행하여 그로써 본원에 설명된 실시예들 중 임의의 것에 따라 동작할 수 있다. 프로그램 코드(635)는 압축된, 컴파일되지 않은 및/또는 암호화된 포맷으로 저장될 수 있다. 프로그램 코드(635)는 또한 예를 들어, 주변 장치들과 인터페이스하기 위해 프로세서(605)에 의해 이용되는 오퍼레이팅 시스템, 데이터베이스 관리 시스템, 및/또는 디바이스 드라이버들과 같은, 다른 프로그램 요소들을 포함할 수 있다. 저장 장치(630)는 또한 비디오 시퀀스 및/또는 사용자 선호도들 또는 설정들과 같은 데이터(645)를 포함할 수 있다. 콘텍스트 인식 코딩 프로파일 생성기(640)와 결합하여, 데이터(645)는 일부 양태들에서, 프로세스들(200 및 300)과 같은, 본원의 프로세스들을 수행함에 있어서, 시스템(600)에 의해 이용될 수 있다.
본원에 논의된 모든 시스템 및 프로세스는 하나 이상의 컴퓨터 판독 가능한 매체에 저장된 프로그램 코드로 구현될 수 있다. 그러한 매체는 예를 들어, 플로피 디스크, CD-ROM, DVD-ROM, 하나 이상의 타입들의 "디스크들", 자기 테이프, 메모리 카드, 플래시 드라이브, 고체 상태 드라이브, 및 고체 상태 RAM(Random Access Memory), ROM(Read Only Memory) 저장 유닛들, 및 다른 비-일시적 매체를 포함할 수 있다. 또한, 본원에 개시 또는 참조된 시스템들 및 장치들은 범용, 전용, 및 분산 컴퓨팅 장치들, 프로세서들, 프로세싱 코어들, 및 마이크로프로세서들을 포함한, 하드웨어, 소프트웨어, 및 펌웨어를 포함할 수 있다. 일부 양태들에서, 본원에 개시된 프로세스들 및 방법들은 서비스로서 전달 및 제공될 수 있다. 실시예들은 따라서 하드웨어 및 소프트웨어의 임의의 특정 결합으로 한정되지 않는다.
실시예들은 예시의 목적으로만 본원에서 설명되었다. 이 기술분야의 통상의 기술자는 이 설명으로부터, 실시예들은 설명된 것들로 한정되지 않고, 첨부된 청구항들의 범위 및 사상에 의해서만 제한되는 수정들 및 변경들로 실시될 수 있다는 것을 인식할 것이다.

Claims (21)

  1. 비디오 콘텐츠를 복수의 비디오 콘텐츠 카테고리들로 분류하는 단계;
    적어도, 상기 복수의 비디오 콘텐츠 카테고리에 기초하여, 상기 비디오 콘텐츠에 대한 비디오 인코딩 프로파일들을 적응적으로 생성하는 단계;
    상기 비디오 인코딩 프로파일들 중 적어도 하나에 기초하여 인코딩된 비디오의 출력을 생성하는 단계;
    생성된 인코딩된 비디오 출력에 대한 비디오 품질을 결정하는 단계; 및
    결정된 비디오 품질에 기초하여 상기 비디오 인코딩 프로파일들을 적응적으로 생성하는 단계
    를 포함하는 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서, 상기 비디오 콘텐츠의 적어도 하나의 비디오 특성을 식별하고, 상기 비디오 콘텐츠의 분류를 상기 적어도 하나의 비디오 특성에 기초하는 단계를 더 포함하는 방법.
  5. 제1항에 있어서, 상기 복수의 비디오 콘텐츠 카테고리는 상기 비디오 콘텐츠 내의 모션의 상이한 양들을 나타내는 적어도 2개의 카테고리를 포함하는 방법.
  6. 제1항에 있어서, 상기 비디오 콘텐츠에 대한 비디오 인코딩 프로파일들을 적응적으로 생성하는 단계는 또한 비디오 품질 스코어(video quality score), 네트워크 상태의 표시, 사용자 선호도 및 이들의 조합들 중 적어도 하나에 기초하는 방법.
  7. 제1항에 있어서, 상기 비디오 콘텐츠에 대해 적응적으로 생성된 비디오 인코딩 프로파일들은, 이하의 파라미터들: 타겟 비트레이트, 인코딩 해상도, 인코딩 프레임 레이트, 레이트 제어 알고리즘, 프레임 구조, 화상 집합 크기(a group of picture size), 및 특정 프레임 타입의 개수 중 적어도 하나에 대한 값들을 확립하는 방법.
  8. 비디오 콘텐츠를 복수의 비디오 콘텐츠 카테고리들로 분류하는 비디오 콘텐츠 분석기;
    적어도, 상기 복수의 비디오 콘텐츠 카테고리에 기초하여, 상기 비디오 콘텐츠에 대한 비디오 코딩 프로파일들을 적응적으로 생성하는 콘텐츠 인식 코딩 프로파일 생성기; 및
    상기 비디오 코딩 프로파일들 중 적어도 하나에 기초하여 코딩된 비디오의 출력을 생성하는 비디오 품질 평가 모듈을 포함하고,
    상기 비디오 품질 평가 모듈은 또한, 생성된 코딩된 비디오 출력에 대한 비디오 품질을 결정하고; 상기 콘텐츠 인식 코딩 프로파일 생성기는 결정된 비디오 품질에 기초하여 상기 비디오 코딩 프로파일들을 적응적으로 생성하는 시스템.
  9. 삭제
  10. 삭제
  11. 제8항에 있어서, 상기 비디오 콘텐츠 분석기는 또한 상기 비디오 콘텐츠의 적어도 하나의 비디오 특성을 식별하고, 상기 콘텐츠 인식 코딩 프로파일 생성기는 상기 비디오 콘텐츠의 분류를 상기 적어도 하나의 비디오 특성에 기초하는 시스템.
  12. 제8항에 있어서, 상기 복수의 비디오 콘텐츠 카테고리는 상기 비디오 콘텐츠 내의 모션의 상이한 양들을 나타내는 적어도 2개의 카테고리를 포함하는 시스템.
  13. 제8항에 있어서, 상기 콘텐츠 인식 코딩 프로파일 생성기는 또한, 비디오 품질 스코어, 네트워크 상태의 표시, 사용자 선호도, 및 이들의 조합들 중 적어도 하나에 기초하여 상기 비디오 콘텐츠에 대한 비디오 코딩 프로파일들을 적응적으로 생성하는 시스템.
  14. 제8항에 있어서, 상기 비디오 콘텐츠에 대해 적응적으로 생성된 비디오 코딩 프로파일들은, 이하의 파라미터들: 타겟 비트레이트, 인코딩 해상도, 인코딩 프레임 레이트, 레이트 제어 알고리즘, 프레임 구조, 화상 집합 크기, 및 특정 프레임 타입의 개수 중 적어도 하나에 대한 값들을 확립하는 시스템.
  15. 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체로서,
    비디오 콘텐츠를 복수의 비디오 콘텐츠 카테고리들로 분류하는 명령어들;
    적어도, 상기 복수의 비디오 콘텐츠 카테고리에 기초하여, 상기 비디오 콘텐츠에 대한 비디오 인코딩 프로파일들을 적응적으로 생성하는 명령어들;
    상기 비디오 인코딩 프로파일들 중 적어도 하나에 기초하여 인코딩된 비디오의 출력을 생성하는 명령어들;
    생성된 인코딩된 비디오 출력에 대한 비디오 품질을 결정하는 명령어들; 및
    결정된 비디오 품질에 기초하여 상기 비디오 인코딩 프로파일들을 적응적으로 생성하는 명령어들
    을 포함하는 기록 매체.
  16. 삭제
  17. 삭제
  18. 제15항에 있어서, 상기 비디오 콘텐츠의 적어도 하나의 비디오 특성을 식별하고, 상기 비디오 콘텐츠의 분류를 상기 적어도 하나의 비디오 특성에 기초하는 명령어들을 더 포함하는 기록 매체.
  19. 제15항에 있어서, 상기 복수의 비디오 콘텐츠 카테고리는 상기 비디오 콘텐츠 내의 모션의 상이한 양들을 나타내는 적어도 2개의 카테고리를 포함하는 기록 매체.
  20. 제15항에 있어서, 상기 비디오 콘텐츠에 대해 비디오 인코딩 프로파일들을 적응적으로 생성하는 것은 비디오 품질 스코어, 네트워크 상태의 표시, 사용자 선호도, 및 그의 결합들 중 적어도 하나에 더 기초하는 기록 매체.
  21. 제15항에 있어서, 상기 비디오 콘텐츠에 대해 적응적으로 생성된 비디오 인코딩 프로파일들은, 이하의 파라미터들: 타겟 비트레이트, 인코딩 해상도, 인코딩 프레임 레이트, 레이트 제어 알고리즘, 프레임 구조, 화상 집합 크기, 및 특정 프레임 타입의 개수 중 적어도 하나에 대한 값들을 확립하는 기록 매체.
KR1020130094990A 2012-08-10 2013-08-09 콘텐츠 인식 멀티미디어 스트리밍을 위한 방법 및 시스템 KR101554387B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/571,479 2012-08-10
US13/571,479 US20140044197A1 (en) 2012-08-10 2012-08-10 Method and system for content-aware multimedia streaming

Publications (2)

Publication Number Publication Date
KR20140020807A KR20140020807A (ko) 2014-02-19
KR101554387B1 true KR101554387B1 (ko) 2015-09-18

Family

ID=50052469

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130094990A KR101554387B1 (ko) 2012-08-10 2013-08-09 콘텐츠 인식 멀티미디어 스트리밍을 위한 방법 및 시스템

Country Status (3)

Country Link
US (1) US20140044197A1 (ko)
KR (1) KR101554387B1 (ko)
CN (1) CN103581696A (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9544623B2 (en) * 2013-07-08 2017-01-10 The Trustees Of Princeton University Quota aware video adaptation
CN107852491B (zh) * 2015-07-31 2021-09-14 深圳市大疆创新科技有限公司 传感器辅助的码率控制方法
WO2017219353A1 (en) * 2016-06-24 2017-12-28 Qualcomm Incorporated Methods and systems of performing rate control based on scene dynamics and channel dynamics
AU2017368324B2 (en) * 2016-12-01 2022-08-25 Brightcove, Inc. Optimization of encoding profiles for media streaming
KR102586695B1 (ko) * 2018-02-09 2023-10-11 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
US10419773B1 (en) * 2018-03-22 2019-09-17 Amazon Technologies, Inc. Hybrid learning for adaptive video grouping and compression
US11677796B2 (en) * 2018-06-20 2023-06-13 Logitech Europe S.A. System and method for video encoding optimization and broadcasting
CN110187961A (zh) * 2019-04-25 2019-08-30 北京易华录信息技术股份有限公司 一种视频数据处理系统及方法
CN110139113B (zh) * 2019-04-30 2021-05-14 腾讯科技(深圳)有限公司 视频资源的传输参数分发方法及装置
CN110266714B (zh) 2019-06-28 2020-04-21 合肥工业大学 一种QoE驱动下的VR视频自适应采集与传输方法
CN113382241A (zh) * 2021-06-08 2021-09-10 北京奇艺世纪科技有限公司 视频编码方法、装置、电子设备和存储介质
CN115225961B (zh) * 2022-04-22 2024-01-16 上海赛连信息科技有限公司 一种无参考网络视频质量评价方法和装置
CN116071691B (zh) * 2023-04-03 2023-06-23 成都索贝数码科技股份有限公司 一种基于内容感知融合特征的视频质量评价方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080052414A1 (en) * 2006-08-28 2008-02-28 Ortiva Wireless, Inc. Network adaptation of digital content

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7394850B1 (en) * 1999-10-25 2008-07-01 Sedna Patent Services, Llc Method and apparatus for performing digital-to-digital video insertion
US6490320B1 (en) * 2000-02-02 2002-12-03 Mitsubishi Electric Research Laboratories Inc. Adaptable bitstream video delivery system
CN1344112A (zh) * 2000-09-18 2002-04-10 株式会社东芝 视频编码方法和视频编码设备
US6947378B2 (en) * 2001-02-28 2005-09-20 Mitsubishi Electric Research Labs, Inc. Dynamic network resource allocation using multimedia content features and traffic features
US20040028139A1 (en) * 2002-08-06 2004-02-12 Andre Zaccarin Video encoding
KR100586883B1 (ko) * 2004-03-04 2006-06-08 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법
US20100110199A1 (en) * 2008-11-03 2010-05-06 Stefan Winkler Measuring Video Quality Using Partial Decoding
CN101742293B (zh) * 2008-11-14 2012-11-28 北京中星微电子有限公司 一种基于视频运动特征的图像自适应帧场编码方法
CN101404767A (zh) * 2008-11-24 2009-04-08 崔天龙 一种基于图像分析及人工智能的可变参数的自动化视频转码方法
CN102595093A (zh) * 2011-01-05 2012-07-18 腾讯科技(深圳)有限公司 动态更改视频编码的视频通信方法及系统
CN102496165A (zh) * 2011-12-07 2012-06-13 四川九洲电器集团有限责任公司 一种基于运动检测与特征提取的综合性视频处理方法
US9532080B2 (en) * 2012-05-31 2016-12-27 Sonic Ip, Inc. Systems and methods for the reuse of encoding information in encoding alternative streams of video data
US20140003523A1 (en) * 2012-06-30 2014-01-02 Divx, Llc Systems and methods for encoding video using higher rate video sequences

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080052414A1 (en) * 2006-08-28 2008-02-28 Ortiva Wireless, Inc. Network adaptation of digital content

Also Published As

Publication number Publication date
US20140044197A1 (en) 2014-02-13
KR20140020807A (ko) 2014-02-19
CN103581696A (zh) 2014-02-12

Similar Documents

Publication Publication Date Title
KR101554387B1 (ko) 콘텐츠 인식 멀티미디어 스트리밍을 위한 방법 및 시스템
US20220030244A1 (en) Content adaptation for streaming
US20220086453A1 (en) Techniques for selecting resolutions for encoding different shot sequences
CN110268717B (zh) 使用播放统计信息对多表示编码的比特率优化
CN109844736B (zh) 概括视频内容
US8892764B1 (en) Dynamic selection of parameter sets for transcoding media data
US20190028529A1 (en) Encoding techniques for optimizing distortion and bitrate
JP2020096342A (ja) 動画を処理するための方法および装置
US20130223509A1 (en) Content network optimization utilizing source media characteristics
US20170347159A1 (en) Qoe analysis-based video frame management method and apparatus
US20060188014A1 (en) Video coding and adaptation by semantics-driven resolution control for transport and storage
US20110047155A1 (en) Multimedia encoding method and device based on multimedia content characteristics, and a multimedia decoding method and device based on multimedia
TW201404170A (zh) 用於可調適視訊串流之技術
US11477461B2 (en) Optimized multipass encoding
US11508053B2 (en) Systems and methods for compression artifact detection and remediation
US20210334266A1 (en) Embedding codebooks for resource optimization
EP3322189B1 (en) Method and system for controlling video transcoding
CN112584119A (zh) 一种基于强化学习的自适应全景视频传输方法及系统
Zabrovskiy et al. ComplexCTTP: complexity class based transcoding time prediction for video sequences using artificial neural network
US10942914B2 (en) Latency optimization for digital asset compression
US10609383B2 (en) Video compression using down-sampling patterns in two phases
US10264273B2 (en) Computed information for metadata extraction applied to transcoding
CN110545418A (zh) 一种基于场景的自适应视频编码方法
EP4068779A1 (en) Cross-validation of video encoding
KR102574353B1 (ko) 모바일 단말에서 유해 동영상 차단을 위한 단말 자원 기반의 적응적 프레임 추출 및 스트리밍 제어 시스템 및 방법

Legal Events

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

Payment date: 20180903

Year of fee payment: 4