KR101100413B1 - 트랜스코딩된 미디어 스트림들을 위해 상호운용성 포인트의 미리결정된 시그널링을 제공하고 사용하기 위한 시스템 및 방법 - Google Patents

트랜스코딩된 미디어 스트림들을 위해 상호운용성 포인트의 미리결정된 시그널링을 제공하고 사용하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR101100413B1
KR101100413B1 KR1020097014060A KR20097014060A KR101100413B1 KR 101100413 B1 KR101100413 B1 KR 101100413B1 KR 1020097014060 A KR1020097014060 A KR 1020097014060A KR 20097014060 A KR20097014060 A KR 20097014060A KR 101100413 B1 KR101100413 B1 KR 101100413B1
Authority
KR
South Korea
Prior art keywords
delete delete
media stream
coding
coding attribute
transcoding process
Prior art date
Application number
KR1020097014060A
Other languages
English (en)
Other versions
KR20090097907A (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 KR20090097907A publication Critical patent/KR20090097907A/ko
Application granted granted Critical
Publication of KR101100413B1 publication Critical patent/KR101100413B1/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/222Secondary servers, e.g. proxy server, cable television Head-end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • 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/25808Management of client data
    • H04N21/25833Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
    • 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)
  • Library & Information Science (AREA)
  • Computer Graphics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

표시된 또는 미리결정된 미디어 트랜스코딩 프로세스의 적용결과로, 표시된 상호운용성 포인트에 따르는 미디어 비트스트림이 생기는 때를 식별하기 위한 시스템 및 방법이 제공된다. 본 발명의 다양한 실시 예들에서, 미디어 스트림의 인코딩, 저장, 트랜스코딩, 및 전송이 되고, 이때 미디어 스트림에 대한 트랜스코딩 프로세스가 식별되고, 그리고 트랜스코딩 프로세스의 결과로서 생긴 미디어 스트림이 적어도 하나의 속성과 연관된다. 그 속성 또는 속성들 및 트랜스코딩 프로세스의 식별정보의 시그널링은 미디어 비트스트림을 담고 있는 파일 포맷 컨테이너 내의 미디어 비트스트림을 통해 이뤄지거나, 미디어 비트 스트림의 전송 또는 제어를 위한 전송 또는 제어 프로토콜을 통해 이뤄질 수 있다.

Description

트랜스코딩된 미디어 스트림들을 위해 상호운용성 포인트의 미리결정된 시그널링을 제공하고 사용하기 위한 시스템 및 방법{System and method for providing and using predetermined signaling of interoperability points for transcoded media streams}
본 발명은 하나의 포맷에서 다른 하나의 포맷으로 데이터를 트랜스코딩하는 것에 일반적으로 관련된다. 특히, 본 발명은 타깃 트랜스코딩 포맷의 식별(identification)과, 그리고 변환 디바이스로 하여금, 원하는 트랜스코딩의 결과로, 사용가능한 미디어 스트림이 생길지 여부를 판단하도록 타깃 트랜스코딩된 비트스트림의 대응하는 상호운용성(interoperability) 포인트의 표시(indication)에 관련된다.
이 섹션은 청구항들에 기재된 본 발명의 배경기술 또는 콘텍스트를 제공할 의도이다. 여기의 설명은 추구될 수 있는 개념들을 포함할 수 있지만, 반드시 이전에 착상되거나 추구되었던 것들은 아니다. 따라서 여기에서 다르게 지시되지 않는 한 이 섹션에서 설명되는 것은 이 출원의 설명 및 청구항들에 대한 종래 기술이 아니고 이 섹션의 삽입으로 인해 종래 기술로 인정되어서는 안 된다.
멀티미디어 애플리케이션들에는 로컬 플레이백, 스트리밍 또는 온디맨드(on- demand), 대화형 서비스 및 브로드캐스트/멀티캐스트 서비스가 포함된다. 이런 서비스들 중 IOP(interoperability, 상호운용성)이 각 멀티미디어 애플리케이션의 빠른 보급과, 대규모 시장을 위해 중요하다. 높은 상호운용성(interoperability)을 달성하기 위해, 상이한 표준(standard)들이 특정된다.
전형적인 오디오 및 비디오 코딩 표준은 프로파일(profile)들과 레벨들을 특정한다. 프로파일(profile)은 이 표준의 알고리즘적 특징들의 부집합(subset)이다. 레벨(level)은 디코더 자원 소비시 일련의 제약들을 부과하는 코딩 파라미터들에 대한 일련의 제한들이다. 프로파일 및 레벨이 미디어 스트림의 속성들을 시그널링하기 위해 사용될 수 있고, 또한 미디어 디코더의 성능을 시그널링하기 위해 사용될 수 있다. 프로파일 및 레벨의 각 쌍이 "상호운용성 포인트"를 형성한다.
프로파일과 레벨의 조합을 통해, 디코더는, 디코더가 스트림을 디코딩할 능력이 없는 경우, 디코더를 망가지게 만들고/거나, 실시간보다 느리게 동작하게 하고/거나, 버퍼 오버플로로 인해 데이터를 버리게 만들 수 있는 디코딩을 시도하지 않고 그 스트림을 복호화할 수 있는지의 여부를 명확히 할 수 있다.
멀티미디어 애플리케이션들에 관련된 기술들은, 특히 미디어 코딩, 저장 및 전송을 포함한다. 미디어유형들은, 대화(speech), 오디오, 이미지, 비디오, 그래픽스, 타임 텍스트, 기타 등등을 포함한다. 여기에 포함된 설명이 모든 미디어 유형들에 적용가능하지만, 비디오가 일 예로서 설명된다.
상이한 표준들이 상이한 기술들을 위해 특정되었다. 비디오 코딩 표준은, ITU-T H.261, ISO/IEC MPEG-I Visual, ITU-T H.262 또는 ISO/IEC MPEG-2 Visual, ITU-T H.263, ISO/IEC MPEG-4 Visual 및 ITU-T H.264 (ISO/IEC MPEG-4 Advanced Video Coding (AVC) 또는, 축약하여 H.264/ AVC)를 포함한다. 또한 새로운 비디오 코딩 표준들이 현재 개발 진행중이다. 개발중인 이런 하나의 표준은, H.264/AVC 표준에 대한 확장판이 될, SVC(scalable video coding) 표준이다. 개발중인 다른 하나의 이런 표준은 H.264/AVC 표준에 대한 또 다른 하나의 확장판이 될 MVC(multi-view video coding) 표준이다. SVC 표준의 최신 초안인, Joint Draft 8.0는 JVT-U201, "Joint Draft 8 of SVC Amendment", 21st JVT meeting, HangZhou, China, 2006년 10월 (출처 ftp3.itu.ch/av-arch/jvt-site/2006_l0_Hangzhou/JVT-U201.zip)에서 입수할 수 있다. MVC 표준의 최신 초안은, JVT-U209, "Joint Draft 1.0 on Multiview Video Coding", 21st JVT meeting, HangZhou, China, 2006년 10월 (출처 http://ftp3.itu.ch/av-arch/jvt-site/2006 10 Hangzhou/JVT-U209.zip)에서 입수할 수 있다. MVC 표준의 비디오 모델의 최신 초안은 JVT-U207, "Joint Multiview Video Model (JMVM) 2.0", 21st JVT meeting, HangZhou, China, 2006년 10월(출처 http://ftp3.itu.ch/av-arch/jvt-site/2006 10 Hangzhou/JVT- U207.zip)에서 기술된다. 이 문서들 모두가 전체로서 본원에 참조병합된다.
규모가변적 미디어는 계층구조로 된 데이터의 계층들로 정렬되는 것이 전형적이다. 베이스(base) 계층은 비디오 시퀀스와 같은 코딩된 미디어 스트림의 개개의 표현(representation)을 담고 있다. 인핸스먼트(enhanceme) 계층들은 계층의 계층구조에서 이전 계층들에 대한 정련(refinement) 데이터이다. 인핸스먼트 계층이 베이스 계층에 추가됨에 따라 디코딩된 미디어 스트림의 품질이 점진적으로 향상된 다. 인핸스먼트 계층은 시간적 해상도(temporal resolution)(즉 프레임 레이트), 공간 해상도, 또는 단순히 다른 계층 또는 그 일부에 의해 표현되는 비디오 콘텐츠의 품질을 향상시킨다. 모든 자신의 종속(dependent) 계층과 함께 각 계층은, 일정 공간적 해상도, 시간적 해상도 및 품질 레벨에서 비디오 신호의 하나의 표현이다. 따라서 "규모가변적 계층 표현(scalable layer representation)"은 여기서 하나의 규모가변적 계층과 그 종속 계층들 모두를 설명하기 위해 사용된다. 하나의 규모가변적 계층 표현에 대응하는 규모가변적 비트스트림의 일부가, 일정 충실도(fidelity)에서 원본 신호의 표현을 산출하기 위해서 추출되고 디코딩될 수 있다.
H.264/AVC 또는 그 확장판(예를 들어, SVC 및 MVC)에 따라 인코딩된 비트스트림은, NAL 유닛 스트림, 또는 NAL 유닛 스트림에서 각 NAL 유닛에 시작 코드를 프리픽스한(prefix) 바이트 스트림 중 하나이다. NAL 유닛 스트림은 다수의 NAL 유닛들의 연속(concatenation)이다. NAL 유닛은 NAL 유닛 헤더와 NAL 유닛 페이로드로 이뤄져 있다. NAL 유닛 헤더는 다른 아이템들보다 특히, NAL 유닛이 코딩된 슬라이스, 코딩된 슬라이스 데이터 일부(partition), 시퀀스 또는 픽쳐 파라미터 집합, 기타 등등을 담고 있는지를 나타내는 NAL 유닛 타입을 담고 있다. VCL(video coding layer)은 코덱의 시그널 프로세싱 기능성(functionality); 변환, 양자화(quantization), 모션-보상(motion-compensated) 예측, 루프 필터, 계층간(inter-layer) 예측과 같은 메커니즘들을 담고 있다. 기본 또는 인핸스먼트 계층의 코딩된 픽쳐는 하나 이상의 슬라이스들로 이뤄져 있다. NAL은 VCL(video coding layer)에 의해 생성된 각각의 슬라이스를 하나 이상의 NAL 유닛들로 캡슐화한다.
코딩된 비디오 비트스트림들은 다양한 목적들로 비디오의 사용을 향상시키기 위해서 추가 정보를 포함할 수 있다. 예컨대 H264/AVC에서 정의된, SEI (Supplemental Enhancement Information, 보충적 인핸스먼트 정보) 및 VUI(video usability information)는 이런 기능성을 제공한다. H264/AVC 표준 및 그 확장판은 SEI 메시지들을 통한 SEI(supplemental enhancement information) 시그널링 지원을 포함한다. SEI 메시지들은 출력 픽쳐들의 정확한 샘플 값들을 생성하기 위해서 디코딩 프로세스에서 필요하지 않다. 그보다는, SEI 메시지들은 다른 목적들, 예컨대 오류 복원력(resilience) 및 디스플레이에 도움이 된다. H.264/AVC는 상술되는 SEI 메시지들을 위한 신택스(syntax) 및 시맨틱스(semantics)를 담고 있지만, 수신측에서 메시지들을 핸들링하기 위한 어떤 프로세스도 정의되지 않는다. 결론적으로, 인코더들이 SEI 메시지들을 생성할 때 H.264/AVC 표준을 따르도록 요구되고, H.264/AVC 표준에 따르는 디코더들은 출력 순서가 일치하도록 SEI 메시지들을 프로세싱할 것이 요구되지 않는다. H.264/AVC 내에 SEI 메시지들의 신택스 및 시맨틱스를 포함시키는 이유 중 하나는, 3GPP 멀티미디어 사양들 및 DVB 사양들과 같은 시스템 사양들로 하여금, 보충 정보를 동일하게 해석해서 상호운용할(interoperate) 수 있도록 하기 위함이다. 시스템 사양들이 인코딩 말단(end)과 디코딩 말단 모두에서 특정 SEI 메시지들의 사용을 요청할 수 있고, 수신 측에서 SEI 메시지들을 다루기 위한 프로세스가 시스템 사양의 애플리케이션을 위해 상술될 수 있다.
사용 가능한 미디어 파일 포맷 표준들에는 ISO 파일 포맷 (ISO/IEC 14496- 12), MPEG-4 파일 포맷 (ISO/IEC 14496-14), AVC 파일 포맷 (ISO/IEC 14496-15) 및 3GPP 파일 포맷 (3GPP TS 26.244)가 포함된다. SVC 비디오의 저장을 위한 파일 포맷 표준인 SVC 파일 포맷이 AVC 파일 포맷에 대한 확장판으로서, 현재 개발 중에 있다. 최신 SVC 파일 포맷 초안이 MPEG 문서 N8663에서 입수가능하다.
3GPP TS 26.140은 3GPP 시스템 내에서의 멀티미디어 메시징 서비스(MMS)를 위한 미디어 타입, 포맷 및 코덱들을 특정한다. 3GPP TS 26.234는 3GPP 시스템 안에서의 패킷 교환 스트리밍 서비스 (PSS)를 위한 프로토콜들과 코덱들을 명시한다. 현재 진행중인 3GPP TS 26.346은 3GPP 시스템 내에서의 멀티미디어 브로드캐스트/멀티캐스트 서비스 (MBMS)를 위한 프로토콜들과 코덱들을 특정한다.
이용 가능한 비디오 코딩 표준들이 비트 스트림들을 위해 버퍼링 모델들과 버퍼링 파라미터들을 특정한다. 그 버퍼링 모델들을 가정적 레퍼런스 디코더 (Hypothetical Reference Decoder, HRD) 혹은 비디오 버퍼 검사기 (Video Buffer Verifier, VBV)라 부른다. 표준에 따르는(standard compliant) 비트스트림은, 해당 표준에 명시된 버퍼링 파라미터들의 집합을 갖는 버퍼링 모델을 따라야 한다. 비트 스트림에 대한 이러한 버퍼링 파라미터들이 명시적으로나 암시적으로 시그날링 될 수 있다. '암시적으로 시그날링한다'는 뜻은, 프로파일 및 레벨에 의한 디폴트 버퍼링 파라미터 값들을 적용한다는 것이다. HRD/VBV 파라미터들은 주로, 규칙을 따르는 비트 스트림들의 비트 레이트 변경에 대한 제약을 부과하기 위해 사용된다.
2004년 5월 12일에 출원되고 본원에 전체로서 참조병합된 미국출원공개번호 제2005/0254575는 규모가변적 미디어 스트림들을 위해 다중 동작 포인트들의 시그널링의 프로세스를 기술한다. 이 공개물에 설명된 프로세스에 따라, 프로파일, 레벨, 및 HRD/VBV 파라미터들의 임의의 부집합과 같은, 동작 포인트가 규모가변적 미디어 스트림의 계층들의 임의의 유효 부집합(subset)과 연관될 수 있다. 규모가변적 계층들을 위해 특히 프로파일 및 레벨 정보가 SVC 명세(JVT-U201, ftp3.itu.ch/av-arch/jvt-site/2006_10_Hangzhou/JVT-U201.zip에서 입수가능하고, 그 내용이 본원에 전체로서 참조병합됨)의 SEI(supplemental enhancement information) 메시지에 포함된다.
규모가변적 비트스트림을 위해, 각 규모가변적 계층이, 그 규모가변적 계층이 종속한 계층들과 함께, 규모가변적 비스트스림의 부집합으로서 추출될 수 있다. 아래에서 정의되는 것과 같은 트랜스코딩이 규모가변적 계층 및 그것의 종속 계층들을 추출하기 위해 필요하지 않다. 트랜스코딩 프로세스의 결과로 생기는 코딩된 미디어 스트림의 적어도 일부는, 트랜스코딩 프로세스에 입력인 원본 코딩된 미디어 스트림의 부집합(subset)가 아니다. 규모가변적 미디어 스트림의 추출은 트랜스코딩으로 분류되지 않는데, 그 이유는 절단(truncation) 프로세스로부터 생긴 스트림이 원본 스트림의 부집합(subset)이기 때문이다.
다음으로 다수의 대표적인 트랜스코딩 사용 예들을 설명한다. MANE(media-aware network element)들의 하나의 기능은, 미디어 콘텐츠의 수신자가 미디어 콘텐츠를 디코딩하고 표현할 수 있는 것을 보장하는 것이다. MANE은 예컨대 게이트웨이들, MCU(multipoint conference unit)들, RTP(Real-Time Transport Protocol), 번역기들(translator), RTP 믹서들, MMSC(multimedia messaging center)들, PoC(push-to-talk over cellular) 서버들, DVB-H(digital video broadcasting-handheld) 시스템들에서의 IP(Internet Protocol) 인캡슐레터들, 또는 홈 무선 네트워크들로 브로드캐스트 전송을 로컬하게 포워딩하는 셋톱 박스들과 같은 기기들을 포함한다. 성공적인 디코딩 및 표현을 보장하도록, MANE은 입력 미디어 스트림을 수신자의 성능에 따르는 포맷으로 변환해야 할 것이다. 미디어 스트림을 트랜스코딩하는 것은 미디어 스트림을 변환하는 하나의 방식이다. 다른 하나의 상황에서, 입력 미디어 스트림을 실시간으로 디코딩할 수 없기 때문에, 입력 미디어 스트림이 예컨대 백그라운드 동작과 같이 실시간보다 더 느리게 트랜스코딩된다. 그 다음에, 트랜스코딩된 스트림은 실시간으로 디코딩되고 재생될 수 있다.
미디어 스트림을 위한 코딩 포맷(코딩 포맷 A, 예를 들어 규모가변적 비트스트림)이 다른 하나의 코딩 포맷(코딩 포맷 B, 예를 들어 비-규모가변적 비트스트림)으로 트랜스코딩될 수 있다. 코딩 포맷 B는 코딩 포맷 A를 지원하는 디바이스들의 수에 비교해서 코딩 포맷 B를 지원하는 디바이스들의 수가 더 크기 때문에 몇몇 환경들에서는 바람직할 수 있다. 따라서, 코딩 포맷 B로의 코딩 포맷 A의 트랜스코딩은 코딩 포맷 A의 미디어 스트림의 발신기(originator) 또는 송신기에서 수행된다. 예컨대 SVC로 코딩된 비트스트림은 플레인(plain) H.264/AVC 비트스트림으로 트랜스코딩될 수 있다. H.264/AVC 디바이스들의 수는 SVC 디바이스들의 수를 초과한다. 따라서 몇몇 애플리케이션들에서, H.264/AVC 로의 SVC 스트림들의 트랜스코딩이 더 많은 개수의 수신기 디바이스들을 지원하기 위해 바람직할 수 있다.
간단히 말하면, 여전히 계산적으로 고도 인텐시브(intensive) 트랜스코딩 방법이 비트스트림을 완전히 디코딩하고, 그 다음에 디코딩된 시퀀스를 재인코딩하는 것를 수반한다. 또한 픽셀 도메인 대신에 트랜스폼 도메인에서 동작되는 많은 트랜스코딩 기술들이 가장 직접적인(straightforward) 방법으로서 또한 존재한다. 비디오 트랜스코딩 기술들은 A. Vetro, C. Christopoulos, 및 H. Sun, "Video Transcoding Architectures and Techniques: An Overview," IEEE Signal Processing Magazine, vol. 20, no. 2, pp. 18-29, 2003년 3월(그 내용이 본원에 전체로서 참조병합됨)에 상세히 설명된다.
보다 전통적인 트랜스코딩 기술들 이외에, H.264/ AVC로의 SVC 또는 MVC 비트스트림들의 경량(lightweight) 트랜스코딩이 가능한데, 그 이유는 SVC 및 MVC이 H.264/AVC 확장판들이고, 코딩 툴들의 상당수가 유사하기 때문에 가능하다. 일정 제약들을 갖는, H.264/ AVC 비트스트림으로의 SVC 비트스트림의 경량 트랜스코딩 한 예가 ftp3.itu.ch/av-arch/jvt-site/2006_10_Hangzhou/JVT-U043.zip에서 입수가능하고, 그 전체로서 본원에 참조병합된 JVT-U043에서 보여진다. 이 방법은 첫 번째 경량 트랜스코딩 방법으로서 나타난다.
경량 트랜스코딩의 다른 하나의 예가 다음과 같이 설명된다. 인핸스먼트 계층들이 H.264/AVC 디코더들에 들어갈 때 SVC 스트림들의 베이스 계층이 H.264/ AVC 디코더들에 의해 디코딩될 수 있다. 이것은 NAL(Network Abstraction Layer) 유닛 타입이 H.264/AVC 표준으로 유지되고, 따라서 H.264/AVC 디코더들에 의해 SVC 인핸스먼트 계층 데이터에 대해 무시되는 이런 NAL(Network Abstraction Layer) 유닛 타입들을 사용하여 달성된다. SVC 스트림들은 때때로 하나 이상의 독립적으로 코딩된 계층 - 즉 임의의 다른 계층으로부터 계층간(inter-layer) 예측되지 않은 계층 - 을 담고 있을 수 있다. 그러나 H.264/AVC 표준 및 디코더들과의 SVC 표준의 역방향 호환성을 유지하도록, 이런 계층들 중 오직 하나만이 H.264/AVC 호환형(compatible) 베이스 계층으로 코딩될 수 있다. 최신 SVC 설계는 NAL 유닛 헤더에 대한 수정만으로써, 독립 SVC 계층이 H.264/AVC 비트스트림으로 변환되도록 할 수 있다. 그 수정들은 SVC NAL 유닛 헤더 확장 바이트들을 제거하고, 다음과 같이 신택스 요소 nal_unit_type의 값을 변경하는 것을 포함한다. original_nal_unit_type 값이 20이라면, 그 값은 1로 변경된다. original_nal_unit_type 값이 21이라면, 그 값은 5로 변경된다. 이 방법은 두 번째 경량 트랜스코딩 방법으로 불려진다.
상기 첫 번째 및 두 번째 경량 트랜스코딩 방법에서, 트랜스코딩되었던 타깃 계층과 요구된 하위 계층들에 의해 참조되지 않은 파라미터 집합들(SPS(sequence parameter set)들 및 PSS(picture parameter set)들 모두)이 폐기되어야 하고, 반면에 타깃 계층 및 요구된 하위 계층들에 의해 참조되었던 SPS들은 이에 따라 변경되어야 한다. 예컨대 프로파일 및 레벨 정보(즉 SPS(sequence parameter set)에서 초기 3번째 바이트)가 트랜스코딩된 비트스트림의 대응 정보를 담도록 변경되어야 하고, SPS SVC 확장판(seq_parameter_set_ svc_extension())이 존재한다면, 제거되어야 한다. 또한 타깃 계층을 위해 원본 SVC 비트스트림에서 규모가변적 네스팅 SEI 메시지들에 담긴 SEI 메시지들이 있다면, 그 SEI 메시지들은 원본 형태로 트랜 스코딩된 비트스트림에 나타나야 하고, 즉 규모가변적 네스팅 SEI 메시지들에 담겨 있으면 안 된다. 첫 번째 경량 트랜스코딩의 경우에, NAL 유닛 헤더(두 번째 경량 트랜스코딩 방법의 경우와 동일한 것임) 및 슬라이스 헤더에 대한 수정들이 또한 요구된다.
SVC의 경우에서와 유사하게, MVC NAL 유닛들이 H.264/AVC 표준으로 유지되는 NAL 유닛 타입들만을 사용하기 때문에, 임의 MVC 스트림의 기본 뷰(view)는 H.264/AVC 표준과 호환성있고 H.264/AVC 디코더들에 의해 디코딩될 수 있다. 그러나 다중 독립 뷰 - 임의의 다른 뷰로부터 뷰간(inter-view) 예측되지 않은 뷰 - 들이 있을 수 있다. 이런 독립 뷰들은 NAL 유닛 헤더만을 수정해서 H.264/AVC 스트림으로 변환될 수 있다. 독립 MVC 뷰들이 H.264/AVC 이외에 SVC와 호환할 수 있다는 것을 주목해야 한다.
현재, 미디어 스트림이 일정 트랜스코딩 프로세스에 의해 트랜스코딩될 때, 일정 상호운용성 (interoperability) 포인트에 따르는 비트스트림이 결과로서 생기는 방식을 써서, 미디어 스트림이 인코딩되는지 여부가 판단될 수 없다. 현재 트랜스코딩된 스트림에 대한 상호운용성 포인트를 판단하는 시스템만이, HRD/VBV와 같은, 스트림 검증기(verifier)를 통해 트랜스코딩된 스트림을 실행하여, 스트림의 상호운용성정보(interoperability)를 반환하였다. 이것은 계산적으로 비용이 많이 들고, 트랜스코더와 연결된 검증기를 요구한다. 경량 트랜스코딩 방법 및 몇몇 다른 덜 복잡한 트랜스코딩 방법들, 예컨대 몇몇 트랜스폼-도메인 방법들의 경우에, 트랜스코더 자체의 복잡도는 검증기보다 훨씬 더 낮을 것이다. 또한 수신자가 일정 상호운용성 포인트를 따르는 스트림을 요청했을 때, 부가 스트림 검증기가 동시에 실행되지 않는다면, 트랜스코딩과 트랜스코딩된 스트림의 전송이 동시에 수행되지 않을 수 있다.
Joint Video Team document JVT-U044 (ftp3.itu.ch/av- arch/jvt-site/2006_10_Hangzhou/JVT-U044.zip 에서 입수가능하고 본원에 전체로서 참조 병합) 는 트랜스코딩 동작의 결과로서 생긴 평균 비트레이트와 최대 비트 레이트를 시그널링 하는 규모가변성(scalability) 정보 SEI (Supplemental Enhancement Information, 보충적 인핸스먼트 정보) 메시지에 대한 추가사항을 제안한다. 그러나, 이런 정보의 일부들은 디코더 구현이 트랜스코딩된 스트림을 실시간으로 디코딩할 수 있는지 여부를 판단하기 위해 충분하지 않다.
따라서 복잡도가 낮은 트랜스코딩 방법을 위해 트랜스코딩된 비트스트림들의 IOP 정보를 시그널링 하는 개선된 시스템 및 방법에 대한 필요가 존재한다.
본 발명의 다양한 실시 예들에서, 표시된 또는 미리결정된 미디어 트랜스코딩 프로세스의 적용 결과, 미디어 코딩 포맷에 대해 특정된 프로파일 및 레벨과 같은 표시된 상호운용성 포인트에 따르는 미디어 비트스트림이 생기는 때를 식별하기 위한 시스템 및 방법이 제공된다. 본 발명의 다양한 실시 예들에서, 미디어 스트림의 인코딩, 저장, 트랜스코딩, 및 전송이 되고, 이때 미디어 스트림에 대한 트랜스코딩 프로세스가 식별되고, 그리고 트랜스코딩 프로세스의 결과로서 생긴 미디어 스트림이 적어도 하나의 속성과 연관된다. 속성 또는 속성들은 예컨대, 프로파일, 레벨 및 적어도 하나의 HRD/VBV (Hypothetical Reference Decoder/Video Buffer Verifier) 파라미터들의 집합을 포함할 수 있다. 트랜스코딩 프로세스의 식별정보(identification)와, 하나의 속성 또는 속성들의 시그널링은 미디어 비트스트림을 담고 있는 파일 포맷 컨테이너 내의 미디어 비트스트림을 통해 이뤄지거나, 미디어 비트 스트림의 전송 또는 제어를 위한 전송 또는 제어 프로토콜을 통해 이뤄질 수 있다. 이 정보는 원하는 트랜스코딩의 결과로, 사용할 수 있는 미디어 스트림이 생겼는지 여부를 판단하기 위해 컨버터에 의해 사용될 수 있다. 본 발명의 다양한 실시 예들에서, 서버 또는 게이트웨이는, 트랜스코딩 프로세스의 결과로 생긴 스트림을 검증함으로써 그 결과 스트림의 코딩 포맷, 프로파일, 레벨, 및 HRD/VBV 파라미터들을 분석할 필요가 없다. 따라서, 이는 계산적 복잡도를 감소시키고, 그리고 서버 또는 게이트웨이에서의 HRD/VBV 검증기에 대한 필요를 회피한다. 다양한 실시 예들에서 인코딩된 미디어 스트림에 트랜스코딩 정보를 제공하기 위한 방법, 컴퓨터 프로그램 제품, 및 장치가 제공되며, 그리고 이들은, 비디오 시퀀스를 복수의 계층들을 포함하는 규모가변적 인코딩된 비트스트림으로 인코딩하며; 그리고, 복수의 계층들 중 하나의 계층에 대응하는 시그널링을 제공하는 것[인코딩한 이후에 트랜스코딩 프로세스가 미디어 스트림에 적용되었을 때, 원하는 트랜스코딩된 미디어 스트림의 결과를 생기게하는 상기 트랜스코딩 프로세스를 식별하는 정보, 및 상기 트랜스코딩된 미디어 스트림을 특징지우는 코딩 속성을 상기 시그널링이 포함]을 포함한다.
다양한 실시 예들에서 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환기 위한 방법, 컴퓨터 프로그램 제품, 및 장치가 제공되며, 그리고 이들은, 원하는 트랜스코딩된 미디어 스트림을 특징지우는 제1 코딩 속성을 식별하고; 원하는 출력 미디어 스트림을 특징지우는 제2 코딩 속성을 식별하고; 트랜스코딩된 미디어 스트림을 생성하는데 사용하기 위해 트랜스코딩 프로세스를 식별하기 위해 규모가변적 인코딩된 비트스트림의 복수의 계층들 중 하나에 대응하여 제공된 시그널링을 사용하고; 제1 코딩 속성이 제2 코딩 속성과 일치한다면, 식별된 트랜스코딩 프로세스에 따라 상기 입력 미디어 스트림을 변환하며; 그리고 트랜스코딩된 미디어 스트림을 출력하는 것을 포함한다.
다양한 실시 예들에서 인코딩된 미디어 스트림에 트랜스코딩 정보를 제공하기 위한 방법, 컴퓨터 프로그램 제품, 및 장치가 제공된다. 이런 실시 예들에서, 비디오 시퀀스가 복수의 계층들을 포함하는 규모가변적 인코딩된 비트스트림으로 인코딩된다. 복수의 계층들 중 하나의 계층에 대응하는 시그널링이 또한 제공된다. 시그널링은 인코딩한 이후에 트랜스코딩 프로세스가 미디어 스트림에 적용되었을 때, 원하는 트랜스코딩된 미디어 스트림의 결과를 생기게하는 상기 트랜스코딩 프로세스를 식별하는 정보, 및 상기 트랜스코딩된 미디어 스트림을 특징지우는 코딩 속성을 포함한다.
다양한 실시 예에서 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환기 위한 방법, 컴퓨터 프로그램 제품, 및 장치가 제공된다. 원하는 트랜스코딩된 미디어 스트림을 특징지우는 제1 코딩 속성 및 제2 코딩 속성을 식별된다. 규모가변적 인코딩된 비트스트림의 복수의 계층들 중 하나에 대응하여 제공된 시그널링은, 트랜스코딩된 미디어 스트림을 생성하는데 사용하기 위해 트랜스코딩 프로세스를 식별하기 위해 사용된다. 제1 코딩 속성이 제2 코딩 속성과 일치한다면, 식별된 트랜스코딩 프로세스에 따라 상기 입력 미디어 스트림이 변환되고, 그리고 그 다음에 트랜스코딩된 미디어 스트림이 출력된다.
다양한 실시 예들에서, 미디어 스트림과 연관되고, 컴퓨터 판독가능 매체에 구체화된 데이터 구조가 제공된다. 데이터 구조는, 트랜스코딩 프로세스, 및 상기 트랜스코딩 프로세스가 규모가변적 인코딩된 비트스트림의 복수의 계층들 중 하나에 적용될 때 결과로서 생기는, 트랜스코딩된 미디어 스트림을 특징지우는 코딩 속성과 연관된 적어도 하나의 신택스 요소를 포함한다. 미디어 스트림을 저장하는 방법이 또한 제공되며, 상기 방법은 원하는 트랜스코딩 프로세스에 따라 트랜스코딩된 미디어 스트림을 특징지우는 코딩 속성을 식별하기 위해 미디어 스트림을 분석하며; 그리고 파일 포맷 사양에 따라, 파일 포맷 컨테이너에 상기 코딩 속성을 저장하는 것을 포함한다. 다양한 실시 예들에서, 트랜스코딩 정보가 담긴 비트스트림을 생성하는 방법이 제공된다. 상기 방법은 제1 비트스트림을 분석하고; 상기 제1 비트스트림을 위한 원하는 트랜스코딩 프로세스, 및 상기 원하는 트랜스코딩 프로세스의 코딩 속성을 식별하고; 상기 제1 비트스트림 내에 상기 코딩 속성의 시그널링을 포함시켜서, 제2 비트스트림을 발생시키는 것을 포함한다.
본 발명의 다양한 실시 예들이 비디오 코딩에 대해서, 그리고 H.264/AVC 표준 및 그 확장판들에 대해서 설명되었지만, 본 발명은 임의의 다른 미디어 타입과 코딩 포맷에 대해서도 똑같이 적용가능하다. 본 발명은 하나 이상의 미디어 타입 또는 코딩 포맷에 관련된 멀티미디어 표현들에 또한 적용가능하다.
본 발명의 구성 및 동작 방법과 함께, 이런 그리고 다른 이점들이, 동일한 요소들은 동일한 번호들을 갖는 이하의 첨부된 도면과 이하의 상세 설명을 참조할 때 보다 자명해질 것이다:
도 1은 본 발명에서 사용되는 범용 멀티미디어 통신 시스템의 도면이다;
도 2는 본 발명의 전형적 실시예로서, 인코딩 디바이스를 도시한 도면이다;
도 3은 본 발명의 전형적 실시예로서, 컨버터 디바이스를 도시한 도면이다;
도 4는 본 발명의 구축에서 사용될 수 있는 전자 디바이스의 투시도이다;
도 5는 도 4의 전자 디바이스의 회로소자의 개략도이다.
도 1은 본 발명에 사용되는 일반적 멀티미디어 통신 시스템을 보여준다. 도 4에 도시된 바와 같이, 데이터 소스(100)는 아날로그, 압축해제된 디지털이거나, 압축된 디지털 포맷 또는 이런 포맷들의 임의의 조합으로 소스 신호를 제공한다. 인코더(110)는 소스 신호를 코딩된 미디어 비트스트림으로 인코딩한다. 인코더(110)는 오디오 및 비디오와 같은 하나 이상의 미디어 타입을 인코딩할 수 있거나, 하나 이상의 인코더(110)는 소스 신호의 다른 미디어 유형들을 코딩하도록 요구될 수 있다. 인코더(110)는 그래픽스와 텍스트와 같은, 합성적으로(synthetically) 산출된 입력을 또한 얻을 수 있고, 또는 인코더(110)는 합성(synthetic) 미디어의 코딩된 비트스트림들을 산출할 수 있다. 다음에서, 하나의 미디어 타입의 하나의 코딩된 미디어 비트스트림의 프로세싱(processing)만이 설명(description)을 단순화하기 위해 고려된다. 그러나 일반적으로 실시간 방송(broadcast) 서비스가 여러 스트림을(일반적으로 적어도 하나의 오디오, 비디오 및 텍스트 자막 처리(sub-titling) 스트림) 포함하는 것이 주목되어야 한다. 시스템이 많은 인코더를 포함할 수 있지만, 다음에서 범용성을 잃지 않고 설명을 단순화시키기 위해 단지 하나의 인코더(110)만이 간주되는 것을 또한 주의되어야 한다.
코딩된 미디어 비트스트림은 저장소(120)로 이동된다. 저장소(120)는 코딩된 미디어 비트스트림을 저장하기 위한 임의 유형의 대용량 메모리(mass memory)를 포함할 수 있다. 저장소(120)에 있는 코딩된 미디어 비트스트림의 포맷은 엘리멘터리(elementary) 자급식(self-contained) 비트스트림 포맷일 수 있거나, 한 개 이상의 코딩된 미디어 비트스트림이 컨테이너 파일 안으로 캡슐화될 수 있다. 몇몇 시스템은 ˝라이브˝로서 동작한다 - 즉 저장을 생략하고 인코더(110)로부터 송신기(130)로 직접적으로 코딩된 미디어 비트스트림을 전송한다. 그런 다음에 코딩된 미디어 비트스트림은 필요하다면, 서버로서 또한 언급된 송신기(130)로 이동된다. 전송에서 사용된 포맷이 엘리멘터리 자급식 비트스트림 포맷, 패킷 스트림 포맷일 수 있거나, 1개 이상의 코딩된 미디어 비트스트림들이 컨테이너 파일 안으로 캡슐화될 수 있다. 인코더(110), 저장소(120)와 송신기(130)는 동일한 물리적 디바이스 내에 구비되거나, 혹은 분리된 기기들에 포함될 수 있다. 인코더(110)와 송신기(130)는 라이브 실시간 콘텐츠에 의해서 동작할 수 있고, 그런 경우에 코딩된 미디어 비트스트림은 프로세싱 지연, 전달 지연과 코딩된 미디어 비트레이트에 있는 변동(variation)을 매끄럽게하기 위하여 콘텐츠 인코더(110)에서 그리고/또는 송신기(130)에서 영구히 저장되지 않는 것이 통상적이고, 오히려 작은 시간 구간들 동안 버퍼링된다.
송신기(130)는 통신 프로토콜 스택을 사용하여 코딩된 미디어 비트스트림을 송신한다. 스택은 실시간 트랜스포트 프로토콜(RTP : Real-time Transport Protocol), 사용자 데이터그램 프로토콜(UDP : User Datagram Protocol)과 인터넷 프로토콜(IP : Internet Protocol)을 포함할 수 있지만, 이에 제한되지 않는다. 통신 프로토콜 스택이 패킷 지향 방식(packet-oriented)일 때, 송신기(130)는 패킷들 안으로 코딩된 미디어 비트스트림을 캡슐화한다. 예를 들어, RTP가 사용될 때, 송신기(130)는 RTP 페이로드 포맷에 따라서 RTP 패킷들 안으로 코딩된 미디어 비트스트림을 캡슐화한다. 일반적으로, 각각의 미디어 유형은 전용 RTP 페이로드 포맷을 가진다. 시스템이 하나 이상의 송신기(130)를 포함할 수 있지만, 간이화 목적을 위해서 아래의 설명은 하나의 송신기(130)만을 고려하는 것을 주목해야 한다.
송신기(130)는 통신 네트워크를 통해 게이트웨이(140)에 연결될 수도 연결되지 않을 수도 있다. 게이트웨이(140)는 하나의 통신 프로토콜 스택으로부터 다른 하나의 통신 프로토콜 스택에 따라 패킷 스트림의 번역(translation), 데이터 스트림의 통합과 포킹(forking), 및 다운링크 그리고/또는 수신기 성능에 따라 데이터 스트림의 조작(manipulation)[예컨데 우세한(prevailing) 다운링크 네트워크 상태에 따라서 포워드된 스트림의 비트 레이트를 제어하는 것]과 같은 기능의 서로 다른 타입들을 수행할 수 있다. 게이트웨이(140)의 예가 MCUs(multipoint conference control unit), 회선-교환과 패킷-교환 비디오 텔레포니(telephony) 사이의 게이트웨이, PoC(Push-to-talk over Cellular) 서버들, DVB-H(digital video broadcasting-handheld) 시스템들에서의 IP 인캡슐레이터들, 또는 브로드캐스트 전송들을 로컬하게 홈 무선 네트워크들로 포워드하는 셋톱 박스들을 포함한다, RTP가 사용될 때, 게이트웨이(140)는 RTP 믹서로 지칭되고, RTP 커넥션의 엔드포인트로 동작한다.
시스템은, 코딩된 미디어 비트스트림으로 전송된 신호를 수신하고, 복조하고 캡슐화 취소(de-capsulating)할 수 있는 것이 일반적인 한 개 이상의 수신기(150)를 포함한다. 코딩된 미디어 비트스트림은 일반적으로 디코더(160)에 의해 추가 프로세스되며, 디코더(160)의 출력은 하나 이상의 압축해제된(uncompressed) 미디어 스트림이다. 디코딩될 비트스트림은 가상적으로 임의 유형의 네트워크 내에 위치된 원격 디바이스로부터 수신될 수 있다. 또한 비트스트림은 로컬 하드웨어 또는 소프트웨어로부터 수신될 수 있다. 마침내, 렌더러(renderer)(170)는 예를 들어, 확성기 또는 디스플레이를 사용하여 압축해제된 미디어 스트림을 재생할 수 있다. 수신기(150), 디코더(160)와, 및 렌더러(renderer)(170)는 동일한 물리 기기에 상주할 수 있거나 그것들은 분리된 기기들에 포함될 수 있다.
본 발명의 다양한 실시 예들에서, 표시된 또는 미리결정된 미디어 트랜스코딩 프로세스의 적용 결과, 미디어 코딩 포맷에 대해 특정된 프로파일 및 레벨과 같은 표시된 상호운용성 포인트에 따르는 미디어 비트스트림이 생기는 때를 식별하기 위한 시스템 및 방법이 제공된다. 미디어 스트림의 인코딩, 저장, 트랜스코딩, 및 전송이 되고, 이때 미디어 스트림에 대한 트랜스코딩 프로세스가 식별되고, 그리고 트랜스코딩 프로세스의 결과로서 생긴 미디어 스트림이 적어도 하나의 속성과 연관된다. 속성 또는 속성들은 예컨대, 프로파일, 레벨 및 적어도 하나의 HRD/VBV (Hypothetical Reference Decoder/Video Buffer Verifier) 파라미터들의 집합을 포함할 수 있다. 트랜스코딩 프로세스의 식별정보와, 하나의 속성 또는 속성들의 시그널링은 미디어 비트스트림을 담고 있는 파일 포맷 컨테이너 내의 미디어 비트스트림을 통해 이뤄지거나, 미디어 비트 스트림의 전송 또는 제어를 위한 전송 또는 제어 프로토콜을 통해 이뤄질 수 있다. 이 정보는 원하는 트랜스코딩의 결과로, 사용할 수 있는 미디어 스트림이 생겼는지 여부를 판단하기 위해 컨버터에 의해 사용될 수 있다. 본 발명의 다양한 실시 예들에서, 서버 또는 게이트웨이는, 트랜스코딩 프로세스의 결과로 생긴 스트림을 검증함으로써 그 결과 스트림의 코딩 포맷, 프로파일, 레벨, 및 HRD/VBV 파라미터들을 분석할 필요가 없다. 따라서, 이는 계산적 복잡도를 감소시키고, 그리고 서버 또는 게이트웨이에서의 HRD/VBV 검증기에 대한 필요를 회피한다.
명세서의 본문 및 예들이 특히 인코딩 프로세스를 설명하였지만, 이 기술분야의 당업자는 동일한 개념들 및 원리들이 대응 디코딩 프로세스에 적용될 수 있다는 것고 그 반대의 경우도 마찬가지라는 것을 쉽게 알 수 있다는 것을 알아야 한다. 이하는, 특히 멀티미디어 메시징에 관련된, 본 발명의 다양한 실시 예들의 예시적인 구현이다.
비트스트림이 예컨대 SVC, 레벨 1.1에 따르는 멀티미디어 메시지가 생성된 다. SVC 비트스트림들의 기본 계층은 H.264/AVC 베이스라인, 레벨1.1을 따른다. SVC 비트스트림이 JVT-U043에서 서술된 방법과 유사한 트랜스코딩 방법을 사용해서 H.264/AVC 비트스트림으로 트랜스코딩된다. 생성시, 발신(origination) 단말은 수신 단말의 능력을 알지 못한다. 멀티미디어 메시징 서비스 센터 (MMSC)는 이와 반대로, 수신 단말의 능력을 알고, 그에 따라 메시지를 조정하는 일을 담당한다. 이러한 예에서, 첫 번째 수신 단말은 H.264/AVC 베이스라인 프로파일, 레벨 1.1 비트스트림들을 디코딩할 능력이 있고, 반면에 두 번째 수신 단말은 H.264/ AVC 베이스라인 프로파일, 레벨 1.0 비트스트림들을 디코딩할 능력이 있다. 결국, 본 발명을 이용한 조정은, 첫 번째 수신 단말에게 필요한 반면에, 베이스 계층은 두번째 수신 단말로부터 직접적으로 추출될 수 있다.
본 발명을 이용한 조정 프로세스는, 표시된 경량 트랜스코딩 프로세스가 SVC 비트스트림을 H.264/AVC 베이스라인 프로파일, 레벨 1.1 비트스트림으로 트랜스코딩할 것을 요구한다. 본 발명이 아니면, MMSC는 SVC 비트스트림을 H.264/AVC 포맷으로 경량 트랜스코딩 프로세스에 따라 트랜스코딩할 수 있고, 그리고 트랜스코딩된 비트스트림이 타깃 프로파일 및 레벨에 따르는지 여부를 확실히 알 수 없다. MMSC는 트랜스코딩된 스트림에 대해 분석 프로세스, 가령 가정적 참조 (hypothetical reference) 디코더를 동작시켜 그러한 판단을 내려야 할 것이다. 따라서, 본 발명은 MMSC에서의 계산 동작을 절약하고, 분석 기능의 구축을 피할 수 있다. 본 발명 없이, 그리고 MMSC가 분석 기능을 구축하지도 못하면, 첫 번째 수신 디바이스의 상술한 서비스는 불가능하다. 이 경우에, 베이스 계층은 H. 264/AVC 베 이스라인 프로파일, 레벨 1에 따라 코딩되어, 트랜스코딩된 스트림에 비교해서 열악한 품질을 제공할 수 있다. 따라서 그 구축은 H. 264/AVC 호환가능 베이스 계층이 이와 같이 전송될 때의 상황과 비교할 때, 달성할 수 있는 품질을 개선시킨다.
본 발명의 두 번째 예는 위의 첫 번째 예와 유사하다. 그러나 이 예는 다자간 화상 회의(multiparty video conferencing)를 설명한다. 이 예에서, 제1 참여자(제1 송신기)는 SVC 레벨 1.1 비트스트림을 MCU로 보내고, 2명의 다른 참여자들(제1 수신기 및 제2 수신기)은 제1 참여자가 보낸 뷰를 보기를 원할 것이다. 제1 수신기는 H.264/AVC 베이스라인 프로파일, 레벨 1.1 비트스트림들을 디코딩할 수 있고, 반면에 제2 수신 단말은 H.264/AVC 베이스라인 프로파일, 레벨 1.0 비트스트림들을 디코딩할 수 있다. 따라서, 본 발명의 실시 예에 따르면, MCU는 분석 기능을 구축하거나 동작시킬 필요없이, 제1 수신 디바이스를 위해서, 시그널링된 IOP 포인트, 즉 H.264/AVC 베이스라인 프로파일, 레벨 1.1에 따르는 H.264/AVC 비스트스트림으로 SVC 비트스트림을 트랜스코딩하도록, 식별된 경량 트랜스코딩 프로세스를 이용할 수 있다.
도 2는 본 발명의 전형적 실시예로서, 인코딩 디바이스(304)를 도시한 도면이다. 도 2에 도시된 것과 같이, 인코딩 장치(204)는 비가공(raw) 데이터 스트림(202)을 수신한다. 규모가변적 데이터 인코더(206)는 트랜스코딩 프로세스가 인코딩된 미디어 스트림에 적용될 때 트랜스코딩된 미디어 스트림이 결과로서 생기게 하는, 그 트랜스코딩 프로세스를 식별한다. 비가공 데이터 스트림(202)은 인코딩되고, 인코더(204)의 규모가변적 데이터 인코더(206)에 의해 한 개 이상의 계층들이 생성된다. 그런 다음에, 규모가변적 데이터 인코더(206)에 의해 생성된 계층들은 시그날링 소자(208)에 의해 시그날링된다. 시그날링 소자(208)는 트랜스코딩된 미디어 스트림을 특징지우는 코딩 속성, 및 식별된 트랜스코딩 프로세스에 따라, 한 계층 및 요구된 하위 계층들이 트랜스코딩 된다면, 트랜스코딩 프로세스의 식별정보(identification)를 시그널링한다. 트랜스코딩된 비트스트림의 코딩 속성, 및 트랜스코딩 프로세스의 식별정보 모두에 대한 시그널링은, 미디어 스트림을 담고 있는 파일 내에서 미디어 스트림을 통해 이뤄질 수 있고, 또는 트랜스포트 또는 제어 프로토콜을 통해 이뤄질 수 있다. 코딩 속성 지시 데이터 스트림(210)이 인코딩 디바이스(204)로부터 출력되어, 적절한 트랜스코딩이 가능한지 여부를 판단할 수 있도록 적절한 트랜스코딩이 가능한지 여부가 신호들을 읽을 수 있게 한다. 코딩 속성은, 코딩 포맷, 프로파일, 레벨, 및/또는 HRD/VBV의 적어도 하나의 파라미터를 포함할 수 있다.
도 3는 본 발명의 전형적 실시예를 통한 컨버터 디바이스(304)를 도시한 도면이다. 컨버터 디바이스(304)는 입력 미디어 스트림(302)을, 그 후의 디코더가 디코딩할 수 있는 포맷에 따르는 미디어 스트림과 같은, 원하는 출력 미디어 스트림(수정된 미디어 스트림(316)로 도시됨)으로 변환하기 위해 사용된다. 컨버터 디바이스(304)는 예컨대 게이트웨이, MCU, RTP 번역기, RTP 믹서, MANE 또는 스트리밍 서버를 포함할 수 있다. 또한 컨버터 디바이스(304)는 그 안에 집적된 디코더를 포함할 수 있다.
입력 미디어 스트림(302)이 수신기(306)에 의해 수신된다. 입력 미디어 스트 림(302)은 원하는 트랜스코딩된 미디어 스트림(입력 미디어 스트림(302)이 변환된 것)을 식별하는 코딩 속성의 시그널링과 연관된다. 코딩 속성은, 코딩 포맷, 프로파일, 레벨, 및/또는 HRD/VBV의 적어도 하나의 파라미터를 포함할 수 있다. 입력 미디어 스트림(302), 및 원하는 트랜스코딩된 미디어 스트림에 대한 코딩 속성에 더하여, 원하는 트랜스코딩 프로세스의 식별정보(identification)가 또한 수신된다. 이런 정보 모두가, 원한다면 이후 트랜스코딩 및/또는 사용을 위해 저장될 수 있다.
컨버터 디바이스(304)의 내부에서, 원하는 출력 미디어 스트림에 대한 적어도 하나의 코딩 속성이 판단된다. 코딩 속성 비교기(310)에서, 트랜스코딩된 미디어 스트림을 특징지우는 코딩 속성이 원하는 출력 미디어 스트림을 특징지우는 코딩 속성과 일치하는지 여부가 판단된다. 예컨대 이 판단은 입력 미디어 스트림(203)을 통해 수신된 시그널링에 따라 트랜스코딩된 때, 디코더가 결과 스트림을 디코딩할 수 있을지 여부를 판단하는 것을 포함한다. 트랜스코딩된 미디어 스트림을 특징지우는 코딩 속성이 원하는 출력 미디어 스트림을 특징지우는 코딩 속성과 일치한다면(예컨대 코딩 속성이 프로파일 및 레벨 정보를 포함하고 있고, 그 프로파일 및 레벨 정보 모두가 그 트랜스코딩된 미디어 스트림 및 원하는 출력 미디어 스트림 모두에 대해 동일하다면), 식별된 트랜스코딩 프로세스에 따라 미디어 스트림 변형기(312)에서 규모가변적인 입력 미디어 스트림(302)이 변형된다. 변형된 데이터 스트림은 이제 전송기(314)에 의해 전송된다. 변형된 데이터 스트림(316)은 컨버터(304)로부터 출력되어 수신 디바이스 (MMSC 또는 디코더)로 보내진다. 장치 (MMSC 또는 디코더)로 보내진다. 변형된 데이터 스트림(3316)이 전통적인 방식으로 프로세싱될 수 있고/또는 디코딩될 수 있다.
이하 본 발명의 성공적인 구현에서 사용될 수 있는 예시적인 신택스 및 시맨틱스를 설명한다. 비트스트림에서 SVC의 시그널링을 위해, 규모가변성 정보 SEI 메시지의 신택스가 다음과 같을 수 있다. SEI 메시지는 제시된다면, IDR 액세스 유닛내에 나타난다.
Figure 112009041005193-pct00001
위의 신택스에서, 1 인 transcoding_info_present_flag[i]는, layer_id[i]인 계층 식별자로 지시된 계층에 대한 트랜스코딩 정보가 시그널링된다는 것을 나타낸다. 0 값은 layer_id[i]인 계층 식별자로 지시된 계층에 대한 어떤 트랜스코딩 정보도 시그널링되지 않는다는 것을 나타낸다.
num_transcoding_processes_minusl[i] plus 1은 트랜스코딩 프로세스 식별자들 및 트랜스코딩된 비트스트림들의 프로파일들 및 레벨의 대응 정보가 시그널링되는 트랜스코딩 프로세스들의 개수를 나타낸다. 각 트랜스코딩 프로세스마다, 트랜스코딩 프로세스에 따라 layer_id[i]인 계층 식별자로 지시된 규모가변적 계층 표현인 비트스트림을 트랜스코딩함으로써, 트랜스코딩된 비트스트림이 획득된다.
trans_process_id[i][j]는 layer_id[i]인 계층 식별자로 지시된 규모가변적 계층에 대해서 시그널링되는 j번째 트랜스코딩 프로세스의 트랜스코딩 프로세스 식별자를 표시한다. 추가적인 트랜스코딩 프로세스가 더해질 수도 있지만, 트랜스코딩 프로세스는 다음과 같이 특정된다.
Figure 112009041005193-pct00002
trans_profile_idc[i][j], trans_constraint_setO_flag[i][j], trans_constraint_setl_flag[i][j], trans_constraint_set2_flag[i][j], trans_constraint_set3_flag[i][j], 및 trans_level_idc[i][j] 는, trans_process_id[i][j]인 트랜스코딩 프로세스 식별자로 지시된 트랜스코딩 프로세스에 따라 layer_id[i]인 계층 식별자로 지시된 규모가변적 계층 표현인 비트스트림이 트랜스코딩될 때의 결과 비트스트림의 프로파일 및 레벨 컴플라이언시(compliancy)를 나타낸다. trans_profile_idc[i], trans_constraint_setO_flag[i],trans_constraint_setl_flag[i], trans_constraint_set2_flag[i], trans_constraint_set3_flag[i], 및 trans_level_idc[i]의 시맨틱스는 profile_idc, constraint_setO_flag, constraint_setl_flag, constraint_set2_flag, constraint_set3_flag 및 level_idc의 시맨티스와 각각 일치하고, 해당 비트스트림이 트랜스코딩된 비트스트림이다.
위의 시그널링되는 프로파일 및 레벨에 더하여, 다른 속성들이 규모가변성 정보 SEI 메시지에 유사하게 포함될 수 있다. 이런 속성들은 HRD/VBV 파라미터들, 비트레이트 정보, 프레임 레이트 정보, 초기 파라미터들의 집합들을 포함하지만 이에 제한되는 것은 아니다.
SVC 파일 포맷에 대한 예시적인 시그널링이 다음과 같다. 이 예에서, 새로운 박스 TranscodingInfoBox()가 다음과 같이 정의되고, ScalableTierEntry()에 선택적으로(optionally) 포함된다.
Figure 112009041005193-pct00003
위의 신택스에서, transcoding_process_id_count는 다음 표의 엔트리들의 개수이다. transcoding_process_id는 트랜스코딩 프로세스 식별자들 및 트랜스코딩된 비트스트림들의 프로파일 및 레벨의 대응 정보가 시그널링되는 트랜스코딩 프로세 스들의 개수를 나타낸다. 각 트랜스코딩 프로세스마다, 트랜스코딩 프로세스에 따라 현재 규모가변적 계층 표현인 비트스트림을 트랜스코딩함으로써, 트랜스코딩된 비트스트림이 획득된다. 추가적인 트랜스코딩 프로세스가 더해질 수도 있지만, 트랜스코딩 프로세스는 다음과 같이 특정된다.
Figure 112009041005193-pct00004
trans_profilelndication는 트랜스코딩된 비트스트림의 프로파일 코드를 담고 있다. trans_profile_compatibility는 시퀀스 파라미터 집합 내의 profile_idc와 level_idc 사이에 생긴 바이트와 정확히 동일하게 정의된 바이트이다. trans_levellndication은 트랜스코딩된 비트스트림의 레벨 코드를 담고 있다.
상기 시그널링된 프로파일과 레벨에 더하여, HRD/VBV 파라미터들, 비트레이트 정보, 프레임 레이트 정보, 초기 파라미터들의 집합들을 포함하는 다른 속성들이 TrancodingInfoBox() 내에 유사하게 포함될 수 있다.
다음으로, SDP(Session Description Protocol) 환경에서 SVC에 대해 논의한 다. 미디어 타입은 보통 동일한 사양에서 RTP 페이로드 포맷과 함께 특정된다. 미디어 타입은 프로토콜을 통해 전달되는 콘텐츠를 식별하기 위해 HTTP 및 RTP와 같은 다양한 프로토콜들과 함께 사용될 수 있다. 미디어 타입의 이름은 콘텐츠 타입 및 슬래시로 분리되는 부-타입, 예컨대 "video/H.264-SVC"을 포함한다. 임의 개수의 요구되는 그리고 선택적인 파라미터들이 보다 상세한 레벨에서 미디어의 특성들을 나타내기 위해 각 미디어 타입에 대해 특정될 수 있다. SVC RTP 페이로드 포맷에 대한 인터넷 초안(www.ietf.org/internet-drafts/draft-ietf-avt-rtp-
svc-00. txt에서 입수할 수 있는 최신 버전이고, 그 전체로서 본원에 참조병합됨)에 따라 선택적인 미디어 파라미터 sprop-scalability-info가 규모가변성 정보 SEI 메시지를 전달하기 위해 사용될 수 있다. RTP 기반 세션에 대해 사용할 수 있는 미디어 스트림들이 보통 SDP에 따라 포맷된 세션 SDP 설명문(description)에 포함된 대응하는 미디어 타입 및 그 파라미터들을 써서 설명된다. 유니캐스트 스트리밍 애플리케이션들에서, 세션 설명문은 스트리밍 세션을 셋업하고 제어하는 RTSP(Real-Time Streaming Protocol)에 의해 전달되는 것이 보통이다. 브로드캐스트 및 멀티캐스트 스트리밍 애플리케이션들에서, 세션 설명문은 서비스의 ESG(electronic service guide)의 일부로서 전달될 수 있다. 화상 회의(video conferencing) 애플리케이션들에서, 사용되는 코덱들 및 그 모드들이, SDP 오퍼(offer)/앤써(answer) 모델에 따라 포맷된 메시지들을 전달하는 SIP(Session Initiation Protocol)에 따라 세션 셋업동안 협상된다(negotiated).
다자간 화상 회의의 애플리케이션 예로서, 제1 송신기는 상술된 트랜스코딩 정보가 담긴 규모가변성 정보 SEI 메시지를 SDP 파일로 포함시키고, 그리고 SDP 파일을 예컨대 SIP를 사용해서 MCU로 전달한다. 그런 다음에 MCU는 비트스트림 추출 또는 트랜스코딩 중 어느 하나에 의해 어떤 IOP 포인트들이 가능한지를 얻는다. 따라서 MCU는 수신기들 모두에 대해 적절하게 제1 송신기로부터의 SVC 비트스트림을 정할 수 있다. 대안적으로, 대응 SDP 필드들이 트랜스코딩 식별정보 및 트랜스코딩된 비트스트림의 속성을 전달하도록 정의될 수 있다.
도 4 및 도 5는 본 발명이 구현될 수 있는 하나의 대표적인 전자 디바이스(12)를 도시한다. 그러나 본 발명은 전자 디바이스(12)의 하나의 특정 타입 또는 다른 전자 디바이스에 제한될 의도가 아님을 알아야 한다. 도 4 및 도 5의 전자 디바이스(12)는 하우징(30), LCD(liquid crystal display) 형태의 디스플레이(32), 키패드 (34), 마이크로 폰(36), 이어피스(ear-piece)(38), 배터리(40), 적외선 포트(42), 안테나(44), 본 발명의 하나의 실시 예에 따른 UICC 형태의 스마트 카드(46), 카드 리더(48), 무선 인터페이스 회로소자(52), 코덱 회로소자(54), 컨트롤러(56), 및 메모리(58)를 포함한다. 개별 회로들 및 엘리먼트들은 본 기술분야, 예를 들면 노키아 범위의 이동 전화들에서 모두 잘 알려진 형태이다. 이런 회로들은 여기서 논의된 인코더, 컨버터 및 디코더를 포함하는 디바이스들 모두에 가상적으로 포함될 수 있다.
본 발명의 통신 디바이스들은 다양한 전송 기술들을 사용하여 통신할 수 있고, 이때 전송 기술은 CDMA(Code Division Multiple Access), GSM(Global System for Mobile Communications), UMTS(Universal Mobile Telecommunications System), TDMA(Time Division Multiple Access), FDMA(Frequency Division Multiple Access), TCP/IP(Transmission Control Protocol/Internet Protocol), SMA(Short Messaging Service), MMS(Multimedia Messaging Service), 이메일, IMS(Instant Messaging Service), 블루투스(Bluetooth), IEEE 802.11, 기타 등등을 포함하지만 이에 제한되지는 않는다. 통신 디바이스는 무선(radio), 적외선(infrared), 레이저, 케이블 연결 기타 등등을 사용하여 통신할 수 있지만 이에 제한되는 것은 아니다.
본 발명은 방법 단계들의 일반적인 정황에서 설명되고, 네트워크 환경에서 컴퓨터에 의해 실행될 수 있고 컴퓨터 판독가능 매체 내에 구체화된 프로그램 코드와 같은 컴퓨터 실행 가능한 명령어들을 포함하는 프로그램 제품에 의하여 일 실시예에서 그 단계들이 구현될 수 있다. 일반적으로 프로그램 모듈들은 특정 작업들을 수행하거나 특정 추출(abstract) 데이터형을 구현하는 루틴들, 프로그램들, 객체들, 컴포넌트들, 데이터 구조들 등을 포함한다. 데이터 구조들과 관련된 컴퓨터 실행 가능한 명령어들 및 프로그램 모듈들은, 여기에 개시된 방법들의 단계들을 실행하기 위한 프로그램 코딩의 예들을 나타낸다. 이와 같은 실행 가능한 명령어들 또는 관련된 데이터 구조들의 특정 시퀀스는 이와 같은 단계들에서 묘사된 기능들을 구성하기 위한 상응하는 동작의 예들을 나타낸다.
다양한 데이터베이스 검색 단계, 상호연관(correlation) 단계, 비교 단계 및 결정 단계를 달성하기 위한 규칙 기반 로직 및 다른 로직을 갖는 표준 프로그래밍 테크닉들을 써서 본 발명의 소프트웨어 및 웹 구현들이 달성될 수 있다. 본 발명의 상세한 설명 및 청구항에서 사용되는 "컴포넌트(component)" 및 "모듈"이라는 용어는 하나 이상의 소프트웨어 코딩 라인들 및/또는 하드웨어 구현들, 및/또는 수신하는 수동 입력들을 위한 장치를 이용하여 구현되는 예들을 모두 포함하는 의도라는 것을 주목해야 한다.
본 발명의 실시 예들의 전술한 설명은 도해 및 설명 목적들을 위해 제시되었다. 본 발명을 개시된 정확한 형태로 제한하거나 한정시키려는 의도가 아니고, 수정들 및 변경들이 위의 교시들에 비추어 가능하거나 본 발명의 실행으로부터 얻어질 수 있다. 발명의 원리들 및 다양한 실시 예들과 고려되는 특정 용도에 적합한 다양한 수정들을 써서 당업자가 본 발명을 이용할 수 있도록 하는 그것의 실제적인 애플리케이션들을 설명하기 위해 실시 예들이 선택되고 설명되었다.

Claims (61)

  1. 인코딩된 미디어 스트림에 트랜스코딩(transcoding) 정보를 제공하는 방법으로서,
    비디오 시퀀스를, 복수의 계층들을 포함하는 규모가변적(scalable) 인코딩된 비트스트림으로 인코딩하며; 그리고,
    상기 복수의 계층들 중 하나의 계층에 대응하는 시그널링을, 상기 규모가변적 인코딩된 비트스트림에서, 제공하는 것을 포함하며, 상기 시그널링은,
    인코딩한 이후에, 트랜스코딩 프로세스가 상기 하나의 계층에 적용되었을 때, 비-규모가변적(non-scalable) 트랜스코딩된 미디어 스트림의 결과를 생기게 하는, 상기 트랜스코딩 프로세스, 및
    상기 트랜스코딩된 미디어 스트림을 특징 지우는 코딩 속성을 식별하는 정보를 포함하는, 트랜스코딩 정보 제공 방법.
  2. 제1항에 있어서,
    상기 시그널링이 SEI (Supplemental Enhancement Information, 보충적 인핸스먼트 정보)로 제공되는, 트랜스코딩 정보 제공 방법.
  3. 제1항에 있어서,
    상기 코딩 속성 및 상기 트랜스코딩 프로세스의 식별정보는 상기 인코딩된 미디어 스트림을 담고 있는 파일 내에서 시그널링되는, 트랜스코딩 정보 제공 방법.
  4. 제1항에 있어서,
    상기 코딩 속성 및 상기 트랜스코딩 프로세스의 식별정보는 트랜스포트 프로토콜, 또는 제어 프로토콜을 통해서 시그널링되는, 트랜스코딩 정보 제공 방법.
  5. 제1항에 있어서,
    상기 코딩 속성은,
    코딩 포맷; 표준 프로파일; 표준 레벨; 및 가정적 레퍼런스 디코더 (Hypothetical Reference Decoder, HRD) 파라미터 또는 비디오 버퍼 검증기 (Video Buffer Verifier, VBV) 파라미터 중 적어도 하나를 포함하는, 트랜스코딩 정보 제공 방법.
  6. 제1항 내지 제5항 중 어느 한 항의 프로세스들을 수행하는, 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
  7. 프로세서; 및,
    상기 프로세서에 연결되어 통신하는 메모리 유닛을 포함하는 인코딩 장치로서, 상기 프로세서는, 상기 인코딩 장치로 하여금:
    비디오 시퀀스를, 복수의 계층들을 포함하는 규모가변적 인코딩된 비트스트림으로 인코딩하며; 그리고,
    상기 복수의 계층들 중 하나의 계층에 대응하는 시그널링을, 상기 규모가변적 인코딩된 비트스트림에서, 제공하도록 구성되며, 상기 시그널링은,
    인코딩한 이후에, 트랜스코딩 프로세스가 상기 하나의 계층에 적용되었을 때, 비-규모가변적 트랜스코딩된 미디어 스트림의 결과를 생기게 하는, 상기 트랜스코딩 프로세스, 및
    상기 트랜스코딩된 미디어 스트림을 특징 지우는 코딩 속성을 식별하는 정보를 포함하는, 인코딩 장치.
  8. 제7항에 있어서,
    상기 시그널링은 SEI(Supplemental Enhancement Information, 보충적 인핸스먼트 정보)로 제공되는, 인코딩 장치.
  9. 제7항에 있어서,
    상기 코딩 속성 및 상기 트랜스코딩 프로세스의 식별정보는 인코딩된 미디어 스트림을 담고 있는 파일 내에서 시그널링되는, 인코딩 장치.
  10. 제7항에 있어서,
    상기 코딩 속성 및 상기 트랜스코딩 프로세스의 식별정보는 트랜스포트 프로토콜, 또는 제어 프로토콜을 통해서 시그널링되는, 인코딩 장치.
  11. 제7항에 있어서,
    상기 코딩 속성은,
    코딩 포맷; 표준 프로파일; 표준 레벨; 및 가정적 레퍼런스 디코더 (Hypothetical Reference Decoder, HRD) 파라미터 또는 비디오 버퍼 검증기 (Video Buffer Verifier, VBV) 파라미터 중 적어도 하나를 포함하는, 인코딩 장치.
  12. 입력 규모가변적 미디어 스트림을 원하는 비-규모가변적 출력 미디어 스트림으로 변환하는 방법으로서:
    규모가변적 인코딩된 비트스트림의 복수의 계층들 중 하나의 계층에 대응하는 시그널링을 사용해서, 상기 하나의 계층을, 비-규모가변적 출력 미디어 스트림으로 트랜스코딩하기 위한 트랜스코딩 프로세스를 식별하고 - 상기 시그널링은, 상기 규모가변적 인코딩된 비트스트림에 제공됨 - ;
    상기 하나의 계층에 대응하는 제1 코딩 속성을 식별하고, 상기 제1 코딩 속성은, 상기 식별된 트랜스코딩 프로세스가 상기 하나의 계층에 적용된다면, 결과로 생길, 트랜스코딩된 미디어 스트림을 특징지우는 제1 코딩 속성을 식별하고;
    상기 원하는 비-규모가변적 출력 미디어 스트림을 특징지우는 제2 코딩 속성을 식별하고;
    상기 제1 코딩 속성이 상기 제2 코딩 속성과 일치한다면, 상기 식별된 트랜스코딩 프로세스에 따라 상기 입력 미디어 스트림을 변환하며; 그리고
    상기 트랜스코딩된 미디어 스트림을 출력하는 것을 포함하는, 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환하는 방법.
  13. 제12항에 있어서,
    상기 제2 코딩 속성은 목적지 디코더의 성능들에 기초하는, 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환하는 방법.
  14. 제12항에 있어서,
    상기 방법은 다지점 화상회의 유닛(MCU, Multipoint Conference Unit), 실시간 전송 프로토콜(RTP, Real-Time Transport Protocol) 번역기, 실시간 전송 프로토콜 믹서, 및 미디어-인지 네트워크 엘리먼트(media-aware network element) 중 하나에 의해 수행되는, 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환하는 방법.
  15. 제12항에 있어서,
    상기 제1 코딩 속성 및 상기 트랜스코딩 프로세스의 식별정보는 트랜스포트 프로토콜, 또는 제어 프로토콜을 통해서 시그널링되는, 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환하는 방법.
  16. 제12항에 있어서,
    상기 제1 코딩 속성은,
    코딩 포맷; 표준 프로파일; 표준 레벨; 및 가정적 레퍼런스 디코더 (Hypothetical Reference Decoder, HRD) 파라미터 또는 비디오 버퍼 검증기 (Video Buffer Verifier, VBV) 파라미터 중 적어도 하나를 포함하는, 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환하는 방법.
  17. 제12항에 있어서,
    상기 시그널링이 SEI (Supplemental Enhancement Information, 보충적 인핸스먼트 정보)로 제공되거나, 또는
    상기 시그널링이 상기 입력 미디어 스트림을 담고 있는 파일 내에서 제공되는, 입력 미디어 스트림을 원하는 출력 미디어 스트림으로 변환하는 방법.
  18. 제12항 내지 제17항 중 어느 한 항의 프로세스들을 수행하는, 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체.
  19. 입력 규모가변적 미디어 스트림을 원하는 비-규모가변적 출력 미디어 스트림으로 변환하는 장치로서,
    프로세서; 및
    상기 프로세서에 연결되어 통신하는 메모리 유닛을 포함하고, 상기 프로세서는 상기 장치로 하여금:
    규모가변적 인코딩된 비트스트림의 복수의 계층들 중 하나의 계층에 대응하는 시그널링을 사용해서, 트랜스코딩된 미디어 스트림을 생성하는데 사용하기 위한 트랜스코딩 프로세스를 식별하고 - 상기 시그널링은 상기 규모가변적 인코딩된 비트스트림에 제공됨 -;
    상기 하나의 계층에 대응하는 제1 코딩 속성을 식별하고, 상기 제1 코딩 속성은, 상기 식별된 트랜스코딩 프로세스가 상기 하나의 계층에 적용된다면, 결과로 생길, 트랜스코딩된 미디어 스트림을 특징지우는 제1 코딩 속성을 식별하고;
    상기 비-규모가변적 출력 미디어 스트림을 특징지우는 제2 코딩 속성을 식별하고;
    상기 제1 코딩 속성이 상기 제2 코딩 속성과 일치한다면, 상기 식별된 트랜스코딩 프로세스에 따라 상기 입력 미디어 스트림을 변환하며; 그리고
    상기 트랜스코딩된 미디어 스트림을 출력하는 것을 포함하도록 구성된, 변환 장치.
  20. 제19항에 있어서,
    상기 제2 코딩 속성은 목적지 디코더의 성능들에 기초하는, 변환 장치.
  21. 제19항에 있어서,
    상기 변환 장치는 다지점 화상회의 유닛(MCU, Multipoint Conference Unit), 실시간 전송 프로토콜(RTP, Real-Time Transport Protocol) 번역기, 실시간 전송 프로토콜 믹서, 및 미디어-인지 네트워크 엘리먼트(media-aware network element) 중 하나를 포함하는, 변환 장치.
  22. 제19항에 있어서,
    상기 제1 코딩 속성 및 상기 트랜스코딩 프로세스의 식별정보는, SEI (Supplemental Enhancement Information, 보충적 인핸스먼트 정보)내에서, 또는 상기 입력 미디어 스트림을 담고 있는 파일 내에서 시그널링되는, 변환 장치.
  23. 제19항에 있어서,
    상기 제1 코딩 속성 및 상기 트랜스코딩 프로세스의 식별정보는 트랜스포트 프로토콜, 또는 제어 프로토콜을 통해서 시그널링되는, 변환 장치.
  24. 제19항에 있어서,
    상기 제1 코딩 속성은,
    코딩 포맷; 표준 프로파일; 표준 레벨; 및 적어도 하나의 가정적 레퍼런스 디코더 (Hypothetical Reference Decoder, HRD) 파라미터 또는 비디오 버퍼 검증기 (Video Buffer Verifier, VBV) 파라미터 중 적어도 하나를 포함하는, 변환 장치.
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
  47. 삭제
  48. 삭제
  49. 삭제
  50. 삭제
  51. 삭제
  52. 삭제
  53. 삭제
  54. 삭제
  55. 삭제
  56. 삭제
  57. 삭제
  58. 삭제
  59. 삭제
  60. 삭제
  61. 삭제
KR1020097014060A 2007-01-08 2008-01-05 트랜스코딩된 미디어 스트림들을 위해 상호운용성 포인트의 미리결정된 시그널링을 제공하고 사용하기 위한 시스템 및 방법 KR101100413B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US88398907P 2007-01-08 2007-01-08
US60/883,989 2007-01-08
PCT/IB2008/050023 WO2008084424A1 (en) 2007-01-08 2008-01-05 System and method for providing and using predetermined signaling of interoperability points for transcoded media streams

Publications (2)

Publication Number Publication Date
KR20090097907A KR20090097907A (ko) 2009-09-16
KR101100413B1 true KR101100413B1 (ko) 2011-12-30

Family

ID=39608407

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097014060A KR101100413B1 (ko) 2007-01-08 2008-01-05 트랜스코딩된 미디어 스트림들을 위해 상호운용성 포인트의 미리결정된 시그널링을 제공하고 사용하기 위한 시스템 및 방법

Country Status (9)

Country Link
US (1) US9319717B2 (ko)
EP (1) EP2100459B1 (ko)
KR (1) KR101100413B1 (ko)
CN (1) CN101578884B (ko)
AR (1) AR064783A1 (ko)
HK (1) HK1137602A1 (ko)
MX (1) MX2009007240A (ko)
TW (1) TWI528733B (ko)
WO (1) WO2008084424A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10264216B2 (en) 2016-08-16 2019-04-16 Line Corporation Method and system for providing video stream of video conference

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7296295B2 (en) * 2002-12-11 2007-11-13 Broadcom Corporation Media processing system supporting different media formats via server-based transcoding
KR100800690B1 (ko) * 2006-02-10 2008-02-01 삼성전자주식회사 디지털 방송 서비스 시스템에서 방송 데이터 전송 장치 및방법
MX2009007240A (es) * 2007-01-08 2009-08-07 Nokia Corp Sistema y procedimiento para proporcionar y usar señalizacion predeterminada de puntos de interoperabilidad para flujos de medios transcodificados.
EP3968642A1 (en) 2007-04-12 2022-03-16 InterDigital VC Holdings, Inc. Methods and apparatus for video usability information (vui) for scalable video coding (svc)
CN105979270B (zh) * 2007-10-05 2019-05-28 汤姆森特许公司 将视频可用性信息并入多视图视频编码***的方法和装置
KR101345287B1 (ko) * 2007-10-12 2013-12-27 삼성전자주식회사 스케일러블 영상 부호화 방법 및 장치와 그 영상 복호화방법 및 장치
US8121191B1 (en) * 2007-11-13 2012-02-21 Harmonic Inc. AVC to SVC transcoder
KR101144539B1 (ko) * 2008-06-05 2012-05-14 한국전자통신연구원 스케일러블 비디오 코딩 비트스트림의 적응 변환 장치 및 그 방법
KR101691050B1 (ko) * 2008-09-16 2016-12-29 톰슨 라이센싱 스케일러블 비디오 코딩을 사용한 디지털 선형 tv 프로그래밍의 송신 방법
US8270495B2 (en) * 2009-02-13 2012-09-18 Cisco Technology, Inc. Reduced bandwidth off-loading of entropy coding/decoding
JP4962525B2 (ja) * 2009-04-08 2012-06-27 ソニー株式会社 再生装置、再生方法、およびプログラム
US8948247B2 (en) * 2009-04-14 2015-02-03 Futurewei Technologies, Inc. System and method for processing video files
US8948241B2 (en) * 2009-08-07 2015-02-03 Qualcomm Incorporated Signaling characteristics of an MVC operation point
KR20110017719A (ko) 2009-08-14 2011-02-22 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US20120174174A1 (en) * 2009-09-14 2012-07-05 Kazunori Ozawa Delivery system, gateway, delivery method, and program
CN102075766B (zh) * 2009-11-23 2013-01-09 华为技术有限公司 视频编码、解码方法、装置及视频编解码***
RU2553433C2 (ru) 2010-01-18 2015-06-10 Телефонактиеболагет Лм Эрикссон (Пабл) Способ и компоновка для поддержки воспроизведения контента
CN102447673A (zh) * 2010-09-30 2012-05-09 突触计算机***(上海)有限公司 一种用于解封装携有封装格式的多媒体文件的方法与设备
US9215471B2 (en) 2010-11-12 2015-12-15 Microsoft Technology Licensing, Llc Bitstream manipulation and verification of encoded digital media data
EP2659676A4 (en) * 2010-12-27 2018-01-03 Telefonaktiebolaget LM Ericsson (publ) Method and arrangement for processing of encoded video
CN102696226B (zh) * 2010-12-31 2015-12-02 北京世纪高蓝科技有限公司 复用码流信息的h264转码方法
US10045089B2 (en) * 2011-08-02 2018-08-07 Apple Inc. Selection of encoder and decoder for a video communications session
BR112014003909B1 (pt) * 2011-08-29 2022-10-18 Sling Media Pvt Ltd Sistema de codificação de mídia e respectivo método implementado por computador
US9204156B2 (en) 2011-11-03 2015-12-01 Microsoft Technology Licensing, Llc Adding temporal scalability to a non-scalable bitstream
JP6079174B2 (ja) 2011-12-27 2017-02-15 株式会社リコー 通信管理システム、通信システム、プログラム、及びメンテナンスシステム
KR20140001477A (ko) * 2012-06-27 2014-01-07 삼성전자주식회사 영상통화의 효율적 세션 교섭을 위한 장치 및 방법
US9413985B2 (en) * 2012-09-12 2016-08-09 Lattice Semiconductor Corporation Combining video and audio streams utilizing pixel repetition bandwidth
US9591355B2 (en) * 2012-10-19 2017-03-07 Broadcom Corporation Decoding video streams using decoders supporting a different encoding profile
US9521393B2 (en) 2013-01-07 2016-12-13 Qualcomm Incorporated Non-nested SEI messages in video coding
US9262419B2 (en) * 2013-04-05 2016-02-16 Microsoft Technology Licensing, Llc Syntax-aware manipulation of media files in a container format
RU2650181C2 (ru) * 2013-07-22 2018-04-11 Сони Корпорейшн Устройство обработки информации и способ
KR101584111B1 (ko) * 2013-08-19 2016-01-11 경희대학교 산학협력단 클라우드 컴퓨팅을 이용한 멀티미디어 서비스 품질 향상 방법 및 이를 위한 기기
US10284858B2 (en) * 2013-10-15 2019-05-07 Qualcomm Incorporated Support of multi-mode extraction for multi-layer video codecs
KR102294092B1 (ko) 2014-01-02 2021-08-27 한국전자통신연구원 영상의 복호화 방법 및 이를 이용하는 장치
WO2015102271A1 (ko) * 2014-01-02 2015-07-09 한국전자통신연구원 영상의 복호화 방법 및 이를 이용하는 장치
JP5836424B2 (ja) * 2014-04-14 2015-12-24 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
US9912985B2 (en) * 2014-09-26 2018-03-06 Intel Corporation Content distribution
US9979983B2 (en) 2015-03-16 2018-05-22 Microsoft Technology Licensing, Llc Application- or context-guided video decoding performance enhancements
US10129566B2 (en) * 2015-03-16 2018-11-13 Microsoft Technology Licensing, Llc Standard-guided video decoding performance enhancements
US9538137B2 (en) 2015-04-09 2017-01-03 Microsoft Technology Licensing, Llc Mitigating loss in inter-operability scenarios for digital video
CN110198474B (zh) 2018-02-27 2022-03-15 中兴通讯股份有限公司 一种码流处理方法及装置
KR102495915B1 (ko) 2018-04-30 2023-02-03 삼성전자 주식회사 스토리지 장치 및 상기 스토리지 장치를 포함하는 서버
AU2020318673A1 (en) * 2019-07-23 2022-03-03 Lazar Entertainment Inc. Live media content delivery systems and methods
US11824915B2 (en) * 2021-11-04 2023-11-21 Pexip AS Method, computer program and system for streaming a video conference in a multi-point videoconferencing system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6490320B1 (en) 2000-02-02 2002-12-03 Mitsubishi Electric Research Laboratories Inc. Adaptable bitstream video delivery system
WO2005112464A1 (en) * 2004-05-12 2005-11-24 Nokia Corporation, Multiple interoperability points for scalable media coding and transmission

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7020196B2 (en) * 2000-03-13 2006-03-28 Sony Corporation Content supplying apparatus and method, and recording medium
WO2002035784A1 (en) * 2000-10-23 2002-05-02 Radisys Corporation Method and apparatus for common channel communication using a packet switched network
EP1309181A1 (en) * 2001-11-06 2003-05-07 Thomson Licensing S.A. Device, method and system for multimedia content adaption
WO2006058921A1 (en) * 2004-12-03 2006-06-08 Thomson Licensing Method for scalable video coding
KR20080006609A (ko) 2005-04-13 2008-01-16 노키아 코포레이션 스케일링가능성 정보의 코딩, 저장, 및 시그널링
US8320450B2 (en) * 2006-03-29 2012-11-27 Vidyo, Inc. System and method for transcoding between scalable and non-scalable video codecs
MX2009007240A (es) * 2007-01-08 2009-08-07 Nokia Corp Sistema y procedimiento para proporcionar y usar señalizacion predeterminada de puntos de interoperabilidad para flujos de medios transcodificados.

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6490320B1 (en) 2000-02-02 2002-12-03 Mitsubishi Electric Research Laboratories Inc. Adaptable bitstream video delivery system
WO2005112464A1 (en) * 2004-05-12 2005-11-24 Nokia Corporation, Multiple interoperability points for scalable media coding and transmission

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10264216B2 (en) 2016-08-16 2019-04-16 Line Corporation Method and system for providing video stream of video conference
US10554930B2 (en) 2016-08-16 2020-02-04 Line Corporation Method and system for providing video stream of video conference
US10911717B2 (en) 2016-08-16 2021-02-02 Line Corporation Method and system for providing video stream of video conference

Also Published As

Publication number Publication date
CN101578884B (zh) 2015-03-04
TW200840239A (en) 2008-10-01
US9319717B2 (en) 2016-04-19
EP2100459A4 (en) 2012-09-26
AR064783A1 (es) 2009-04-22
CN101578884A (zh) 2009-11-11
EP2100459A1 (en) 2009-09-16
HK1137602A1 (en) 2010-07-30
TWI528733B (zh) 2016-04-01
KR20090097907A (ko) 2009-09-16
EP2100459B1 (en) 2019-04-03
US20080175325A1 (en) 2008-07-24
WO2008084424A1 (en) 2008-07-17
MX2009007240A (es) 2009-08-07

Similar Documents

Publication Publication Date Title
KR101100413B1 (ko) 트랜스코딩된 미디어 스트림들을 위해 상호운용성 포인트의 미리결정된 시그널링을 제공하고 사용하기 위한 시스템 및 방법
KR101021831B1 (ko) 미디어 파일에서 트랙 관계를 표시하는 시스템 및 방법
US9807431B2 (en) Generic indication of adaptation paths for scalable multimedia
RU2697741C2 (ru) Система и способ предоставления указаний о выводе кадров при видеокодировании
KR101037338B1 (ko) 스케일러블 비디오 코딩 및 디코딩
US9161032B2 (en) Picture delimiter in scalable video coding
US8365060B2 (en) System and method for indicating track relationships in media files
US8442109B2 (en) Signaling of region-of-interest scalability information in media files
US8355448B2 (en) Carriage of SEI messages in RTP payload format
TWI482498B (zh) 媒體檔案之多重解碼時間發訊技術
KR20090123908A (ko) 패킷화 방법 및 장치, 비트스트림 처리 방법 및 장치와 컴퓨터 판독 가능 매체
AU2012202346B2 (en) System and method for indicating track relationships in media files

Legal Events

Date Code Title Description
A201 Request for examination
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: 20141201

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151118

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161123

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171117

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181115

Year of fee payment: 8