KR20220116162A - Atsc 3.0 tv에서의 대체 콘텐츠 시그널링에 대한 기술들 - Google Patents

Atsc 3.0 tv에서의 대체 콘텐츠 시그널링에 대한 기술들 Download PDF

Info

Publication number
KR20220116162A
KR20220116162A KR1020227018899A KR20227018899A KR20220116162A KR 20220116162 A KR20220116162 A KR 20220116162A KR 1020227018899 A KR1020227018899 A KR 1020227018899A KR 20227018899 A KR20227018899 A KR 20227018899A KR 20220116162 A KR20220116162 A KR 20220116162A
Authority
KR
South Korea
Prior art keywords
interval
content
mpd
receiver
xlink
Prior art date
Application number
KR1020227018899A
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 KR20220116162A publication Critical patent/KR20220116162A/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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/10Arrangements for replacing or switching information during the broadcast or the distribution
    • H04H20/106Receiver-side switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/86Arrangements characterised by the broadcast information itself
    • H04H20/93Arrangements characterised by the broadcast information itself which locates resources of other pieces of information, e.g. URL [Uniform Resource Locator]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/11Arrangements for counter-measures when a portion of broadcast information is unavailable
    • H04H60/12Arrangements for counter-measures when a portion of broadcast information is unavailable wherein another information is substituted for the portion of broadcast information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/14Arrangements for conditional access to broadcast information or to broadcast-related services
    • H04H60/15Arrangements for conditional access to broadcast information or to broadcast-related services on receiving information
    • 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/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H2201/00Aspects of broadcast communication
    • H04H2201/30Aspects of broadcast communication characterised by the use of a return channel, e.g. for collecting users' opinions, for returning broadcast space/time information or for requesting data
    • H04H2201/37Aspects of broadcast communication characterised by the use of a return channel, e.g. for collecting users' opinions, for returning broadcast space/time information or for requesting data via a different channel

Abstract

차세대 방송 TV 서비스들을 견고하게 전송함에 있어서 ATSC(Advanced Television Systems Committee) 3.0 TV 프로토콜을 확장 및/또는 개선하기 위한 기술들이 설명된다. 수신기에서의 새로운 조정을 알려 그 구간에 대체 광고를 획득하고 삽입하기 위해 MPD의 끝에 빈 x-링크(x-link) 구간이 제공된다.

Description

ATSC 3.0 TV에서의 대체 콘텐츠 시그널링에 대한 기술들
본 출원은 컴퓨터 기술에 반드시 근거를 둔, 디지털 TV에 관한 기술 발전에 관한 것으로, 특히 ATSC(Advanced Television Systems Committee) 3.0에 관한 것이다.
ATSC(Advanced Television Systems Committee) 3.0 표준 규격(suite of standards)은 차세대 방송 TV를 제공하기 위해 A/300에 표시된 바와 같은 십여 개 이상의 산업 기술 표준 세트이다. ATSC 3.0은, 초고화질 TV에서 무선 전화에 이르기까지 다수의 수신 디바이스들에, TV로 방송되는 비디오(televised video), 양방향 서비스(interactive services), 데이터의 비실시간 전송, 및 맞춤형 광고를 포함한 광범위한 TV 서비스의 제공을 지원한다. ATSC 3.0은 또한 방송 콘텐츠("오버 더 에어(over the air)"로 지칭됨)와 관련 광대역 제공 콘텐츠 및 서비스들("오더 더 톱(over the top)"으로 지칭됨) 사이의 조정을 조율한다. ATSC 3.0은 기술이 진화함에 따라, 임의의 관련된 기술 표준을 완전히 정비할 필요 없이 발전들이 용이하게 통합될 수 있도록 유연하게 설계되었다. 본 원리들은 아래에 개시된 것과 같은 발전들에 관한 것이다.
본 명세서에서 이해되는 바와 같이, ATSC 3.0 A/331은 미디어 프리젠테이션 디스크립션(Media Presentation Description)(MPD)에서 미디어 콘텐츠 프리젠테이션 정보를 제공하는 ISO/IEC 23009-1에 설명된 HTTP 동적 적응 스트리밍(Dynamic Adaptive Streaming over HTTP)(DASH)을 지칭한다. MPD는 미디어 세그먼트들에 대한 리소스 식별자들, 및 미디어 프레젠테이션에서의 식별된 리소스들에 대한 맥락을 알리는 포맷들을 제공한다. MPD들은 시간이 지남에 따라 별개의 콘텐츠 프리젠테이션들을 기술하는 다수의 구간들(periods)을 포함할 수 있다. 이러한 별개의 콘텐츠 설명들은 미래에 프레젠테이션 시간들을 가지며, 디바이스들이 콘텐츠의 미래의 프레젠테이션을 위한 리소스들을 준비할 수 있게 한다. 미래 콘텐츠의 준비들은 정기적으로 편성된 프로그램들이 대체 콘텐츠로 대체될 수 있는, 해당 콘텐츠 내의 선택들(choices)을 포함한다.
본 명세서에서 또한 이해되는 바와 같이, 현재 프레젠테이션 시간("라이브 포인트(live point)"라고 지칭됨)이 현재 MPD 구간의 끝에 있을 때 이러한 대체 콘텐츠를 삽입하려고 하면 문제가 발생할 수 있다. 확장성 마크업 언어(extensible markup language)(XML) 연결 언어(linking language)(XLink) 호출들은 대체 콘텐츠를 검색하도록 디바이스들을 트리거하는 데 사용되며, 이는 몇 초 전에 미리 알려야 할 수 있고, 그 시간 동안 대체 콘텐츠를 기술하는 MPD는 이용가능하지 않을 수 있다. 방송 서비스들의 경우, MPD들은 DASH-IF 라이브 프로파일들(Live Profiles)을 사용하고, 프레젠테이션은 “표현(Representation)”에서의 번호-기반 세그먼트 설명들을 위해 SegmentTemplate 템플릿들을 사용할 수 있다. MPEG DASH 표준에 따르면, Representation은 전송 포맷(delivery format)에서의 하나 이상의 미디어 스트림들의 집합 및 캡슐화(encapsulation)이고, 기술 메타데이터(descriptive metadata)와 연관이 있다. 세그먼트들의 프레젠테이션 타이밍은 DASH-Interoperability Forum Interoperability Points Version 4.3 Section 3.2.7.1에 설명된 대로 계산된다. 구체적으로, 프레젠테이션 시간(presentation time)은 "Presentation Time = Availability Start Time + Period@start + Representation@presentationTimeOffset"으로 주어진다. 이 방정식의 마지막 항은 선택 사항이다. 각각의 세그먼트는 내부 샘플의 정확한 프레젠테이션 시간 = 가장 빠른 프레젠테이션 시간(earliest presentation time)(EPT) 및 세그먼트 지속시간(segment duration)(DUR)을 갖는다. 세그먼트들이 들어오면, 수신기들은 방정식 MPD 시작 시간 = EPT - Period@start - 0.5*DUR으로 그러한 세그먼트들이 적용되는 MPD 구간을 식별할 수 있다.
미래의 세그먼트들은 현재 벽시계 시간(wall clock time)을 초과하는 상이한 구간 시작(Period Start) 및 구간 지속시간(Period Duration) 시간들을 갖는 구간들(Periods)에서 시그널링될 수 있다. 그러한 미래의 구간들에서, XLink는 대안 콘텐츠를 가져오기 위해 Rx를 트리거하도록 시그널링될 수 있다. 이것은 XLink 사용의 간단한 경우이며, 작동하는 것으로 입증되었다.
본 명세서에서 이해되는 바와 같이, MPD들은 상이한 템플릿들을 가질 수 있고, SegmentTimeline 템플릿의 경우 XLink 동작이 복잡해진다. SegmentTemplate과의 차이는, SegmentTimeline에서 나열된 모든 DASH 세그먼트들이 "지금(now)" 이용가능할 것이라는 점인데, 이는 MPD를 전송할 때를 의미한다. 결과적으로, 세그먼트들의 미래 리스트는 가능하지 않다. 본 명세서에서는 SegmentTimeline 템플릿들로 미래의 XLink 대체가능 콘텐츠를 시그널링하는 방법과 관련된 기술들이 제공된다.
다시 말해서, SegmentTimeline에서, 현재 MPD 구간에 식별된 마지막 세그먼트는 프레젠테이션을 위해 이용가능해야 하고, 라이브 포인트의 위치이다. 대부분의 MPD 프로세서들은 SegmentTimeline 템플릿에서 마지막으로 나열된 세그먼트로 이동하여 그것을 비디오/오디오 디코더에 공급하는데, 이는 표시된 임의의 대체가능 콘텐츠가 마지막 세그먼트의 뒤를 이어야 한다는 점에서 XLink 사용에 문제가 될 수 있음을 의미한다.
달리 말하면, XLink가 대체 콘텐츠가 삽입되어야 한다고 표시한 경우, 제1 단계는 현재 MPD 구간이 끝난 후에 나타나는 XLink 트리거 또는 마커(marker)를 사용하여 새로운 미래 구간을 식별하는 것이다. 서버가 아직 세그먼트들을 준비하지 않았기 때문에 이 미래 구간에서의 임의의 세그먼트들은 재생 가능하지 않을 것이다.
수신기가 미리 조정되고 미디어의 라이브 포인트로부터 재생되는 경우, 이 새로운 미래 구간으로 업데이트된 MPD는 문제가 되지 않을 수 있다. 그러나, 수신기가 이 미래 구간을 이미 설정한 상태로 조정하는 경우, 미디어의 라이브 포인트는 XLink가 표시한 미래 구간의 끝에 있다고 가정할 수 있고, 따라서 실패할 수 있다. 이것은 수신기를 손상시키지 않고서 어떻게 SegmentTimeline 템플릿들을 이용하여 동적 타입 MPD을 가진 라이브 프로파일에서 미래의 XLink-표시 구간을 시그널링할 것인지에 관한 문제를 제기한다. SegmentTimeline 라이브 프로파일 동적 MPD는 세그먼트 지속시간 속도로 한 번에 하나의 세그먼트씩 업데이트한다. 그러한 경우들에서, 비디오 인코더는 현재 구간에 대한 끝을 생성하지 않고, 오히려 그것은 시간이 지남에 따라 커지며, 이전 세그먼트들은 미리 결정된 시간이 지나면 줄어든다. 세그먼트들의 프레젠테이션 시간은 SegmentTimeline 템플릿에 명시적으로 열거된다. 디바이스들은 현재 UTC 벽시계 시간을 판독하고, 미디어 디코딩을 위해 그 시간과 정렬하는 세그먼트(일반적으로 MPD 구간에서 마지막으로 열거된 것)를 선택할 수 있다.
위의 문제를 해결하기 위해, MPD는 세그먼트 없이 제2 미래 구간을 열거하도록 구성될 수 있고, 따라서 가져올 미디어는 없을 것이지만, 제2 미래 구간은 XLink를 포함한다. 그렇지 않았으면 비어있을 구간에서 XLink를 검출함으로써, 수신기는 대체 콘텐츠 삽입을 준비할 수 있는 시간을 부여받는다. 이것은 세그먼트 지속시간들이 2초보다 길 때 잘 작동한다. XLink는 본질적으로 MPD에서의 트리거인데, 대체 콘텐츠 데이터가 제공될 것이며 해당 콘텐츠 가져오기를 준비하라는 것을 수신기에 표시한다. 시간이 지남에 따라, 세그먼트들은 제2 구간을 채우기 시작하여 결국 제2 구간에 대한 시작 시간에 도달한다. 이러한 세그먼트들은 XLink에 의해 지시된 바와 같이 가져온 업데이트된 세그먼트로 대체될 것이다.
XLink 트리거는 제2 미래 구간 시작 시간이 미래의 다수의 세그먼트 지속시간 길이가 되도록 함으로써 의도된 대체 광고 삽입 시간보다 상당히 앞서 전송될 수 있다. 그 후, 수신기들은 현재 프리젠테이션 시간에 상당히 앞서 디스플레이 렌더링을 준비하기 위해 콘텐츠를 가져올 수 있다. 콘텐츠 대체는 또한 방송사 애플리케이션을 통해 이루어질 수 있는데, HTML5 응용 프로그램은 대체가능 콘텐츠 구간을 통지 받을 수 있고 수신측 디바이스에 대한 대체 콘텐츠를 선택한다. 이러한 대안적인 모드는 ATSC A/344 Interactive Content standard에 기술되어 있다.
또한, XLink를 갖는 식별된 미래 제2 구간은, 수신기가 필요한 세그먼트들을 캐시에 저장(cache)하고 대체 콘텐츠를 준비하라고 수신기에 지시하게끔 방송사 애플리케이션에 알리는 것을 가능하게 할 수 있다. 따라서, 고정된 지속시간의 빈 XLink-표시 구간은 MPD 끝에 세그먼트 없이 배치되어, 수신기가 방송사 애플리케이션에 경고하고, 방송사 애플리케이션과의 트랜잭션(transaction)에 대한 응답으로 대체 콘텐츠를 검색할 위치에 관한 정보를 수신하는 트리거로서 역할을 할 수 있다. 수신기는 UTC 벽시계 시간 및 식별된 세그먼트를 참조하여 정확한 라이브 세그먼트로 조정하고, 방송사 애플리케이션에 미래의 XLink 광고를 사용할 수 있음을 통지하며, 세그먼트들을 캐시에 저장하라는 명령을 다시 수신하고, 이 미래의 빈 구간을 대체 콘텐츠로 대체할 것이다. 수신기에서 실행 중인 방송사 애플리케이션은 경험을 개인별로 맞춤화하는 데 이용될 수 있는 사용자에 관한 정보에 액세스할 수 있는데, 예를 들어, XLink를 해결하라는 요청에 응답하여, 그 시청자에게 적합한 콘텐츠, 예를 들어, "맞춤형" 광고에 대한 참조를 제공할 수 있다는 점에 유의한다.
수신기는 동적으로 추가된 세그먼트들을 갖는 MPD에 정의된 SegmentTimeline 내의 동일한 포인트로부터, 대체 콘텐츠(예컨대, 광고)가 재생되는 지점인 이 새로운 구간 시작 시간에 도달할 때까지 재생을 계속한다. 대안 콘텐츠를 가져오는 데 실패한 수신기는 이 구간이 끝나고 XLink가 아닌 새로운 구간이 시작될 때까지 이 빈 구간이 정기적으로 스케줄링된 세그먼트들로 채워지기 시작하는 것을 보게될 것이다. 두 경우 모두에서, XLink-표시 구간의 재생이 끝나면, 수신기는 XLink가 없는 새로운 SegmentTimeline 구간, 또는 잠재적으로는, 상이한 XLink를 갖는 새로운 SegmentTimeline 구간으로부터 재생한다. 따라서, 이 프로세스는 다수의 연속적인 대체 구간들을 포함하도록 확장될 수 있다.
따라서, ATSC(Advanced Television Systems Committee) 3.0 시스템과 같은 디지털 TV 시스템은 적어도 하나의 방송 소스 및 적어도 하나의 광대역 소스를 차례로 포함하는 적어도 하나의 송신기 어셈블리를 포함한다. 송신기 어셈블리는 적어도 제1 및 제2 구간 요소들을 갖는 제1 미디어 프레젠테이션 디스크립션(MPD)을 생성하기 위한 명령어들로 프로그래밍된 적어도 하나의 프로세서를 포함한다. 제1 구간 요소는 MPD의 수신기로 하여금 세그먼트에 의해 식별된 미디어 콘텐츠를 재생하도록 하는 적어도 하나의 세그먼트를 포함하는 반면, 제2 구간 요소는 세그먼트들을 포함하지 않아서, MPD의 수신기로 하여금, 대체가능 콘텐츠를 직접 가져오게 하거나, 가능한 대체가능 콘텐츠를 방송사 애플리케이션에 통지하고, 표시된 URL로부터의 대체 콘텐츠를 캐시에 저장하고 제2 구간에 대응하는 시간에 대체 콘텐츠를 재생하라는 명령어를 방송사 애플리케이션으로부터 수신하게 한다.
예시적인 실시예들에서, 제2 구간은 확장성 마크업 언어(XML) 연결 언어(XLink) 구간 요소이다. XML 구간 요소는 XLink 속성들을 포함하는 MPD 내의 구간 요소이다. A/344에 따라 2가지 타입의 XLink 속성들, 즉, XLink를 URI 참조와 연관시키는 "xlink:href" 속성, 및 종료 리소스의 원하는 프레젠테이션을 나타내는 "xlink:show" 속성이 사용될 수 있다.
시그널링의 OTA 전달은 방송사들이 그들 각각의 시장 영역에 그들의 콘텐츠의 수신을 유지할 수 있게 하기 때문에, 명령어들은 방송 소스로부터 MPD를 제공하도록 실행가능할 수 있다. 원한다면, 명령어들은 방송 소스 또는 광대역 소스로부터 대체 콘텐츠를 제공하도록 실행가능할 수 있다. 예시적인 실시예들에서, 명령어들은 제2 구간 요소를 MPD의 끝에 위치시키고, 대체 콘텐츠의 지속시간을 나타내게끔 제2 구간 요소를 구성하도록 실행가능하다.
다른 양태에서, ATSC(Advanced Television Systems Committee) 3.0 시스템은 적어도 하나의 수신기를 포함하고, 이는 적어도 제1 및 제2 구간 요소들을 갖는 미디어 프레젠테이션 디스크립션(MPD)을 수신하도록 프로세서를 구성하는 명령어들로 프로그래밍된 적어도 하나의 프로세서를 포함한다. 제1 구간 요소는 적어도 하나의 세그먼트를 포함하고 제2 구간 요소는 어떠한 세그먼트도 포함하지 않는다. 제1 구간 요소에 응답하여, 명령어들은 (SegmentTemplate 또는 SegmentTimeline 템플릿들을 갖는) 세그먼트 타이밍에 따라 콘텐츠를 재생하도록 실행가능한 반면, 제2 구간 요소에 응답하여, 명령어들은 XLink들을 직접 실행하거나 또는 확장성 마크업 언어(XML) 연결 언어(XLink) 대체 콘텐츠가 미래에 이용가능하다는 것을 방송사 애플리케이션에 시그널링하도록 실행가능하다. 시그널링에 응답하여, 명령어들은 XLink 대체 콘텐츠를 캐시에 저장하고 제2 구간 요소에 의해 표시된 시간에 제2 구간을 대체 콘텐츠로 대체하라는 명령을 방송사 애플리케이션으로부터 수신하도록 실행가능하다. 명령어들은, 제2 구간 요소에 의해 표시되는 시간 이전에, MPD에 따라 미디어의 재생을 계속하고, 제2 구간 요소에 의해 표시되는 시간에, 대체 콘텐츠를 재생하도록 실행가능하다.
다른 양태에서, 디지털 TV 전송 시스템에서의 방법은 적어도 하나의 미디어 프레젠테이션 디스크립션(MPD) 파일을 수신하는 단계, 및 하나 이상의 세그먼트들을 포함하는 MPD에서의 제1 구간에 응답하여, 하나 이상의 세그먼트들에 따라 콘텐츠를 재생하는 단계를 포함한다. 세그먼트들을 포함하지 않는 MPD에서의 제2 구간에 응답하여, 방법은 제2 구간에 의해 표시되는 지속시간을 갖는 대체 콘텐츠를 검색하는 단계, 및 제2 구간에 의해 표시되는 시간에, 대체 콘텐츠를 재생하는 단계를 포함한다.
구조 및 작동 모두에 관한 본 출원의 세부사항들은 첨부 도면들을 참조하여 가장 잘 이해될 수 있으며, 도면들에서 유사한 참조 번호들은 유사한 부분들을 나타낸다.
도 1은 ATSC(Advanced Television Systems Committee) 3.0 시스템의 블록도이다.
도 2는 도 1에 도시된 디바이스들의 구성요소들을 도시하는 블록도이다.
도 3은 대체 광고를 위한 시작 시간을 정의하는 빈 x-링크 구간(empty x-link period)을 갖는 MPD의 XML 설명이다.
도 4는 세그먼트들을 갖는 MPD 구간 및 빈 x-링크 구간의 도해이다.
도 5는 예시적인 송신기 측 로직의 흐름도이다.
도 6은 예시적인 수신기 측 로직의 흐름도이다.
본 개시 내용은 ATSC(Advanced Television Systems Committee) 3.0 TV에서의 기술적 발전에 관한 것이다. 본 명세서의 시스템은 클라이언트와 ATSC 3.0 소스 구성요소들 사이에서 데이터가 교환될 수 있도록 방송을 통해 및/또는 네트워크를 통해 접속된 ATSC 3.0 소스 구성요소들 및 클라이언트 구성요소들을 포함할 수 있다. 클라이언트 구성요소들은 휴대용 TV(예를 들어, 스마트 TV, 인터넷 접속이 가능한 TV), 노트북 및 태블릿 컴퓨터와 같은 휴대용 컴퓨터, 및 스마트폰과 이하에서 논의되는 추가적인 예들을 포함하는 다른 모바일 디바이스들을 포함하는 하나 이상의 컴퓨팅 디바이스들을 포함할 수 있다. 이러한 클라이언트 디바이스는 다양한 운영 환경에서 동작할 수 있다. 예를 들어, 클라이언트 컴퓨터들 중 일부는, 예로서, 마이크로소프트(Microsoft)로부터의 운영체제 또는 Unix 운영 체제, 또는 Android® 와 같이 애플 컴퓨터(Apple Computer) 또는 구글(Google)에 의해 제작된 운영 체제를 이용할 수 있다. 이러한 운영 환경들은 마이크로소프트(Microsoft) 또는 구글(Google) 또는 모질라(Mozilla)에 의해 만들어진 브라우저 또는 아래에 논의되는 인터넷 서버들에 의해 호스팅되는 웹사이트들에 액세스할 수 있는 다른 브라우저 프로그램과 같은 하나 이상의 브라우징 프로그램들을 실행하기 위해 사용될 수 있다.
ATSC 3.0 소스 구성요소들은 인터넷과 같은 네트워크를 통해 데이터를 방송하고/하거나 데이터를 전송하도록 소스 구성요소들을 구성하는 명령어들을 실행하는 하나 이상의 프로세서를 포함할 수 있는 방송 송신 구성요소 및 서버 및/또는 게이트웨이들을 포함할 수 있다. 클라이언트 구성요소 및/또는 로컬 ATSC 3.0 소스 구성요소는 Sony PlayStation®, 개인용 컴퓨터 등과 같은 게임 콘솔에 의해 인스턴스화될 수 있다.
정보는 클라이언트와 서버 사이에서 네트워크를 통해 교환될 수 있다. 이를 위해 그리고 보안을 위해, 서버들 및/또는 클라이언트들은 방화벽, 부하 분산기(load balancers), 임시 저장 장치, 및 프록시, 그리고 신뢰성 및 보안을 위한 기타 네트워크 인프라를 포함할 수 있다.
본 명세서에서 사용되는 바와 같이, 명령어들은 시스템에서 정보를 처리하기 위한 컴퓨터 구현 단계들을 일컫는다. 명령어들은 소프트웨어, 펌웨어 또는 하드웨어로 구현될 수 있고, 시스템의 구성요소들에 의해 수행되는 임의의 타입의 프로그래밍된 단계를 포함할 수 있다.
프로세서는 어드레스 라인(address lines), 데이터 라인(data lines), 및 제어 라인(control lines)과 같은 다양한 라인들 및 레지스터(registers) 및 시프트 레지스터(shift registers)를 통해 로직을 실행할 수 있는 임의의 종래 범용 단일 칩 또는 다중 칩 프로세서일 수 있다.
본 명세서에서 흐름도 및 사용자 인터페이스에 의해 설명되는 소프트웨어 모듈들은 다양한 서브루틴, 절차 등을 포함할 수 있다. 본 개시 내용을 제한하지 않고, 특정 모듈에 의해 실행되도록 언급된 로직은 다른 소프트웨어 모듈들에 재분배될 수 있고/있거나 단일 모듈에서 함께 결합될 수 있고/있거나 공유 가능한 라이브러리에서 이용가능하게 될 수 있다. 흐름도 형식이 이용될 수 있지만, 소프트웨어는 상태 머신(state machine) 또는 기타 논리적 방법으로서 구현될 수 있다는 것을 이해해야 한다.
본 명세서에 설명된 본 원리들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합들로서 구현될 수 있고; 따라서, 예시적인 구성요소, 블록, 모듈, 회로, 및 단계들은 기능 측면에서 설명된다.
위에서 언급된 것에 더하여, 논리 블록, 모듈, 및 회로들은 범용 프로세서, 디지털 신호 프로세서(digital signal processor)(DSP), 필드 프로그래머블 게이트 어레이(field programmable gate array)(FPGA), 또는 주문형 집적 회로(application specific integrated circuit)(ASIC)와 같은 다른 프로그래머블 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 구성요소들, 또는 본 명세서에 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현되거나 수행될 수 있다. 프로세서는 컨트롤러 또는 상태 머신, 또는 컴퓨팅 디바이스들의 조합에 의해 구현될 수 있다.
후술하는 기능들 및 방법들은 소프트웨어로 구현될 때 하이퍼텍스트 마크업 언어(hypertext markup language)(HTML)-5, Java®/Javascript, C# 또는 C++와 같은, 그러나 이에 국한되지 않는 적절한 언어로 작성될 수 있으며, RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM(compact disk read-only memory) 또는 DVD(digital versatile disc)와 같은 다른 광 디스크 저장 장치, 자기 디스크 저장 장치 또는 이동식 USB 플래시 드라이브(removable thumb drives) 등을 포함하는 다른 자기 저장 디바이스들과 같은 컴퓨터 판독 가능 저장 매체 상에 저장되거나 그를 통해 전송될 수 있다. 접속은 컴퓨터 판독 가능 매체를 설정할 수 있다. 그러한 접속들은, 예로서, 광섬유 및 동축 와이어 및 디지털 가입자 회선(digital subscriber line)(DSL) 및 트위스트 페어 와이어들(twisted pair wires)을 포함하는, 하드웨어에 내장된 케이블들을 포함할 수 있다.
일 실시예에 포함된 구성요소들은 다른 실시예들에서 임의의 적절한 조합으로 사용될 수 있다. 예를 들어, 본 명세서에 설명되고/되거나 도면들에 도시된 다양한 구성요소들 중 임의의 것은 다른 실시예에서는 결합, 교환 또는 배제될 수 있다.
"A, B, 및 C 중 적어도 하나를 갖는 시스템"(마찬가지로 "A, B, 또는 C 중 적어도 하나를 갖는 시스템" 및 "A, B, C 중 적어도 하나를 갖는 시스템")은 A 단독, B 단독, C 단독, A 및 B, A 및 C, B 및 C, 및/또는 A, B, 및 C 등을 갖는 시스템들을 포함한다.
도 1을 참조하면, ATSC 3.0 소스 구성요소의 일 예는 "방송사 장비"(10)로 라벨링되고, 통상적으로 일대다(one-to-many) 관계의 직교 주파수 분할 다중화(orthogonal frequency division multiplexing)(OFDM)를 통해 TV 데이터를 ATSC 3.0 TV들과 같은 복수의 수신기들(14)에 무선으로 방송하는 오버-더-에어(over-the-air)(OTA) 장비(12)를 포함할 수 있다. 하나 이상의 수신기(14)는 Bluetooth®, 저전력 Bluetooth, 기타 근거리 무선 통신(near field communication)(NFC) 프로토콜, 적외선(IR) 등에 의해 구현될 수 있는 근거리, 통상적으로 무선 링크(18)를 통해 리모컨, 태블릿 컴퓨터, 휴대 전화 등과 같은 하나 이상의 컴패니언 디바이스(16)와 통신할 수 있다.
또한, 수신기들(14) 중 하나 이상은 인터넷과 같은 유선 및/또는 무선 네트워크 링크(20)를 통해, 방송사 장비(10)의 오버-더-톱(over-the-top)(OTT) 장비(22)와 통상적으로 일대일(one-to-one) 관계로 통신할 수 있다. OTA 장비(12)는 OTT 장비(22)와 함께 위치될 수 있고, 또는 방송사 장비(10)의 양 측(12, 22)은 서로 떨어져 있어서 적절한 수단을 통해 서로 통신할 수 있다. 어쨌든, 수신기(14)는 조정된 ATSC 3.0 TV 채널을 통해 ATSC 3.0 TV 신호 OTA를 수신할 수 있고, 또한 TV, OTT(광대역)를 포함하는 관련 콘텐츠를 수신할 수 있다. 본 명세서의 도면들 모두에 설명된 컴퓨터화된 디바이스들은 도 1 및 도 2의 다양한 디바이스들에 대해 설명된 구성요소들 일부 또는 전부를 포함할 수 있다는 점에 유의한다.
이제 도 2를 참조하면, 도 1에 도시된 구성요소들의 세부사항들을 볼 수 있다. 도 2는 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있는 프로토콜 스택을 도시한다. 이하에서 논의되는 바와 같이, 도 2에 도시되고 방송사 측에 대해 적절하게 수정된 ATSC 3.0 프로토콜 스택을 이용하여, 방송사들은 무선 방송(본 명세서에서 "방송" 및 "오버-더-에어(over-the-air)"(OTA)라고 함)뿐만 아니라 컴퓨터 네트워크(본 명세서에서 "광대역" 및 "오버-더-톱(over-the-top)"(OTT)이라고 함)를 통해서 하나 이상의 프로그램 요소들이 전달되는 하이브리드 서비스 전송을 보낼 수 있다.
방송사 장비(10)는 최상위 애플리케이션 계층(204)에 하나 이상의 소프트웨어 응용 프로그램들을 제공하기 위해 본 명세서에 기술된 임의의 메모리 또는 저장 장치와 같은 하나 이상의 컴퓨터 저장 매체(202)에 액세스하는 하나 이상의 프로세서(200)를 포함할 수 있다. 애플리케이션 계층(204)은, 예를 들어, 런타임 환경(runtime environment)에서 실행되는 HTML5/Javascript로 작성된 하나 이상의 소프트웨어 응용 프로그램을 포함할 수 있다. 제한 없이, 애플리케이션 스택(204)의 응용 프로그램들은 선형 TV 응용 프로그램, 양방향 서비스 응용 프로그램, 컴패니언 스크린(companion screen) 응용 프로그램, 개인화(personalization) 응용 프로그램, 비상 경보(emergency alert) 응용 프로그램, 및 사용 보고(usage report) 응용 프로그램을 포함할 수 있다. 응용 프로그램들은 비디오 코딩, 오디오 코딩 및 런타임 환경을 포함하는, 시청자가 경험하는 요소들을 나타내는 소프트웨어로 통상적으로 구현된다. 예로서, 사용자가 대화를 제어하고, 대체 오디오 트랙들을 사용하며, 정규화 및 동적 범위와 같은 오디오 파라미터들을 제어할 수 있도록 하는 등의 응용 프로그램이 제공될 수 있다.
애플리케이션 계층(204) 아래에는 프레젠테이션 계층(206)이 있다. 프레젠테이션 계층(206)은 방송(OTA) 측에 미디어 처리 유닛(Media Processing Units)(MPU)(208)으로 지칭되는 방송 오디오-비디오 재생 디바이스들을 포함하는데, 이는 수신기에서 구현될 때, 하나 이상의 디스플레이 및 스피커 상에서 무선 방송 오디오 비디오 콘텐츠를 디코딩하고 재생한다. MPU(208)는 ISO(International Organization for Standardization) BMFF(base media file format) 데이터 표현들(210) 및 비디오를, 예를 들어, Dolby 오디오 압축(AC)-4 형식의 오디오와 함께 고효율 비디오 코딩(high efficiency video coding)(HEVC)으로 제시하도록 구성된다. ISO BMFF는 "세그먼트" 및 프레젠테이션 메타데이터(presentation metadata)로 분할된 시간 기반 미디어 파일들에 대한 일반적인 파일 구조이다. 파일들 각각은 본질적으로 유형 및 길이를 각각 갖는 네스팅된 객체들(nested objects)의 집합이다. 복호화를 용이하게 하기 위해, MPU(208)는 방송측 암호화된 미디어 확장(encrypted media extension)(EME)/공통 암호화(common encryption)(CENC) 모듈(212)에 액세스할 수 있다.
도 2는 방송 측에서 프레젠테이션 계층(206)이, 애플리케이션 계층(204)이 액세스할 수 있는 비실시간(non-real time)(NRT) 콘텐츠(218)를 전송하기 위한 MPEG(motion pictures expert group) MMTP(media transport protocol) 시그널링 모듈(214) 또는 ROUTE(real-time object delivery over unidirectional transport) 시그널링 모듈(216)을 포함하는 시그널링 모듈들을 포함할 수 있음을 추가로 도시한다. NRT 콘텐츠는 저장된 대체 광고들을 포함할 수 있지만 이에 국한되지 않는다.
광대역(OTT 또는 컴퓨터 네트워크) 측에서, 수신기에 의해 구현될 때, 프레젠테이션 계층(206)은 인터넷으로부터 오디오-비디오 콘텐츠를 디코딩하고 재생하기 위한 하나 이상의 HTTP 동적 적응 스트리밍(dynamic adaptive streaming over hypertext transfer protocol(HTTP))(DASH) 플레이어/디코더들(220)을 포함할 수 있다. 이를 위해, DASH 플레이어(220)는 광대역 측 EME/CENC 모듈(222)에 액세스할 수 있다. DASH 콘텐츠는 ISO/BMFF 형식으로 DASH 세그먼트들(224)로서 제공될 수 있다.
방송 측의 경우에서와 같이, 프레젠테이션 계층(206)의 광대역 측은 파일들(226)에 NRT 콘텐츠를 포함할 수 있으며, 재생 시그널링을 제공하기 위한 시그널링 객체들(228)도 포함할 수 있다.
프로토콜 스택에서 프레젠테이션 계층(206) 아래에는 세션 계층(230)이 있다. 세션 계층(230)은, 방송 측에서 MMTP 프로토콜(232) 또는 ROUTE 프로토콜(234)을 포함한다. ATSC 표준은 전송을 위해 MPEG MMT를 이용하는 옵션을 제공하지만, 여기에는 도시되지 않는다는 점에 유의한다.
광대역 측에서, 세션 계층(230)은 HTTP-secure(HTTP(S))로서 구현될 수 있는 HTTP 프로토콜(236)을 포함한다. 세션 계층(230)의 방송 측은 또한 HTTP 프록시 모듈(238) 및 서비스 리스트 테이블(SLT)(service list table)(240)을 이용할 수 있다. SLT(240)는 기본 서비스 리스트를 구축하고 방송 콘텐츠의 부트스트랩(bootstrap) 발견을 제공하는 데 사용되는 시그널링 정보의 테이블을 포함한다. 미디어 프리젠테이션 디스크립션(media presentation descriptions)(MPD)은 ROUTE 전송 프로토콜에 의해 사용자 데이터그램 프로토콜(user datagram protocol)(UDP)을 통해 전송되는 "ROUTE 시그널링" 테이블들에 포함된다.
전송 계층(242)은 저지연(low latency) 및 손실 허용 접속(loss-tolerating connections)을 확립하기 위해 프로토콜 스택에서 세션 계층(230) 아래에 있다. 방송 측에서 전송 계층(242)은 UDP(244)를 사용하고, 광대역 측에서 전송 제어 프로토콜(transmission control protocol)(TCP)(246)을 이용한다.
프로토콜 스택은 또한 전송 계층(242) 아래에 네트워크 계층(248)을 포함한다. 네트워크 계층(248)은 IP 패킷 통신을 위해 양측에서 인터넷 프로토콜(IP)을 사용하며, 방송 측에서는 멀티캐스트(multicast) 전송이 일반적이고, 광대역 측에서는 유니캐스트(unicast)가 일반적이다.
네트워크 계층(248) 아래에는 양측과 연관된 각각의 물리적 매체 상에서 통신하기 위한 방송 송신/수신 장비(252)와 컴퓨터 네트워크 인터페이스(들)(254)를 포함하는 물리 계층(250)이 있다. 물리 계층(250)은 인터넷 프로토콜(IP) 패킷들을 관련 매체를 통해 전송되기에 적합하도록 변환하고, 변조 및 복조 기능들을 통합하는 변조 및 복조 모듈들을 포함할 뿐만 아니라 수신기에서 오류 정정을 가능하게 하는 순방향 오류 정정 기능을 추가할 수 있다. 이것은 대역폭 효율을 증가시킬 뿐만 아니라 장거리 전송을 위해 비트를 심볼로 변환시킨다. OTA 측에서 물리 계층(250)은 일반적으로 직교 주파수 분할 다중화(OFDM)를 사용하여 데이터를 무선으로 방송하는 무선 방송 송신기를 포함하는 반면, OTT 측에서 물리 계층(250)은 인터넷을 통해 데이터를 송신하는 컴퓨터 송신 구성요소들을 포함한다.
프로토콜 스택 내의 다양한 프로토콜들(HTTP/TCP/IP)을 통해 전송된 DASH 산업 포럼(DASH-IF) 프로파일이 광대역 측에서 사용될 수 있다. ISO BMFF에 기초한 DASH-IF 프로파일 내의 미디어 파일들은 방송 및 광대역 전송 모두를 위한 전송, 미디어 캡슐화 및 동기화 형식으로서 사용될 수 있다.
각각의 수신기(14)는 일반적으로 방송사 장비의 프로토콜 스택과 상보적인 프로토콜 스택을 포함한다.
도 1의 수신기(14)는, 도 2에 도시된 바와 같이, ATSC 3.0 TV 튜너(등가적으로, TV를 제어하는 셋톱 박스)(256)를 갖는, 인터넷 접속이 가능한 TV를 포함할 수 있다. 수신기(14)는 Android®-기반 시스템일 수 있다. 수신기(14)는 대안적으로 인터넷 접속이 가능한 컴퓨터화된("스마트") 전화, 태블릿 컴퓨터, 노트북 컴퓨터, 컴퓨터화된 웨어러블 디바이스 등에 의해 구현될 수 있다. 여하튼, 본 명세서에 설명된 수신기(14) 및/또는 다른 컴퓨터들은 본 원리들을 수행하도록(예를 들어, 본 원리들을 수행하고, 본 명세서에 설명된 로직을 실행하며, 본 명세서에 설명된 임의의 다른 기능들 및/또는 동작들을 수행하기 위해 다른 디바이스들과 통신하도록) 구성된다는 점이 이해되어야 한다.
따라서, 그러한 원리들을 수행하기 위해, 수신기(14)는 도 1에 도시된 구성요소들 중 일부 또는 전부에 의해 설정될 수 있다. 예를 들어, 수신기(14)는 고화질 또는 초고화질 "4K" 또는 더 상위의 평면 스크린에 의해 구현될 수 있고 디스플레이 상의 터치를 통해 사용자 입력 신호들을 수신하기 위해서 터치가 활성화되거나 활성화되지 않을 수 있는 하나 이상의 디스플레이(258)를 포함할 수 있다. 수신기(14)는 또한 본 발명의 원리에 따라 오디오를 출력하기 위한 하나 이상의 스피커들(260), 및 예를 들어 수신기(14)를 제어하기 위해 수신기(14)에 가청 명령을 입력하기 위한, 예를 들어 오디오 수신기/마이크와 같은 적어도 하나의 추가 입력 디바이스(262)를 포함할 수 있다. 예시적인 수신기(14)는 하나 이상의 프로세서들(266)의 제어 하에 인터넷, WAN, LAN, PAN 등과 같은 적어도 하나의 네트워크를 통한 통신을 위한 하나 이상의 네트워크 인터페이스(264)를 더 포함할 수 있다. 따라서, 인터페이스(264)는, 메쉬 네트워크 송수신기(mesh network transceiver)와 같은, 그러나 이에 국한되지 않는 무선 컴퓨터 네트워크 인터페이스의 예인 Wi-Fi 송수신기일 수 있지만, 이에 국한되지 않는다. 인터페이스(264)는, Bluetooth® 송수신기, Zigbee® 송수신기, IrDA(Infrared Data Association) 송수신기, 무선 USB 송수신기, 유선 USB, 유선 LAN, 전력선(Powerline) 또는 MoCA(Multimedia over Coax Alliance)일 수 있지만, 이에 국한되지 않는다. 프로세서(266)는, 예를 들어, 디스플레이(258)를 제어하여 그 위에 이미지들을 표시하고 그로부터 입력을 수신하는 것과 같이, 본 명세서에 설명된 수신기(14)의 다른 요소들을 포함하여, 본 원리들을 수행하도록 수신기(14)를 제어한다는 것을 이해해야 한다. 또한, 네트워크 인터페이스(264)는 예를 들어, 유선 또는 무선 모뎀 또는 라우터, 또는 예를 들어, 무선 전화 송수신기, 또는 전술한 바와 같은 Wi-Fi 송수신기 등과 같은 다른 적절한 인터페이스일 수 있다는 점에 유의한다.
전술한 것에 더하여, 수신기(14)는 또한 다른 CE 디바이스에 (유선 접속을 이용하여) 물리적으로 접속하기 위한 고화질 멀티미디어 인터페이스(high definition multimedia interface)(HDMI) 포트 또는 USB 포트, 및/또는 헤드폰을 통해 수신기(14)로부터 사용자에게 오디오를 제시하기 위해 헤드폰을 수신기(14)에 접속하기 위한 헤드폰 포트와 같은 하나 이상의 입력 포트(268)를 포함할 수 있다. 예를 들어, 입력 포트(268)는 유선 또는 무선으로 오디오 비디오 콘텐츠의 케이블 또는 위성 소스에 접속될 수 있다. 따라서, 소스는 별개의 또는 통합된 셋톱 박스, 또는 위성 수신기일 수 있다. 또는, 소스는 게임 콘솔이거나 디스크 플레이어일 수 있다.
수신기(14)는 일시적 신호(transitory signal)가 아닌 디스크-기반 또는 솔리드 스테이트 저장장치(solid state storage)와 같은 하나 이상의 컴퓨터 메모리(270)를 더 포함할 수 있고, 일부 경우에 독립형 디바이스로서 수신기의 섀시(chassis) 내에, 또는 오디오 비디오(AV) 프로그램들을 재생하기 위한 수신기의 섀시(chassis) 내부 또는 외부의 비디오 디스크 플레이어 또는 개인용 비디오 기록 디바이스(personal video recording device)(PVR)로서, 또는 이동식 메모리 매체(removable memory media)로서 구현될 수 있다. 또한, 일부 실시예에서, 수신기(14)는 휴대폰 수신기, GPS(global positioning satellite) 수신기, 및/또는 고도계와 같은, 그러나 이에 국한되지는 않는 위치(position) 또는 위치(location) 수신기(272)를 포함할 수 있는데, 이들은, 예를 들어, 적어도 하나의 위성 또는 휴대폰 기지국(cellphone tower)으로부터 지리적 위치 정보를 수신하고, 그 정보를 프로세서(266)에 제공하며/제공하거나 프로세서(266)와 관련하여 수신기(14)가 배치되어 있는 고도를 결정하도록 구성되어 있다. 그러나, 휴대폰 수신기, GPS 수신기 및/또는 고도계 이외의 다른 적당한 위치 수신기가, 예를 들어, 3개의 차원 모두에서 수신기(14)의 위치를 결정하기 위해 본 원리에 따라 사용될 수 있다는 것을 이해해야 한다.
수신기(14)에 대한 설명을 계속하면, 일부 실시예들에서, 수신기(14)는 열화상 카메라, 웹캠과 같은 디지털 카메라, 및/또는 수신기(14)에 통합되고 본 원리에 따라 사진/이미지들 및/또는 비디오를 수집하기 위해 프로세서(266)에 의해 제어 가능한 카메라 중 하나 이상을 포함할 수 있는 하나 이상의 카메라(274)를 포함할 수 있다. 또한, 수신기(14)에는 Bluetooth® 및/또는 NFC 기술을 각각 이용하여 다른 디바이스들과 통신하기 위한 Bluetooth® 송수신기(276) 또는 다른 근거리 무선 통신(Near Field Communication)(NFC) 요소가 포함될 수 있다. 예시적인 NFC 요소는 무선 주파수 식별(radio frequency identification)(RFID) 요소일 수 있다.
또한, 수신기(14)는 하나 이상의 보조 센서(278)(예컨대, 가속도계, 자이로스코프(gyroscope), 사이클로미터(cyclometer), 또는 자기 센서 및 이들의 조합과 같은 모션 센서), 리모콘으로부터 IR 명령을 수신하기 위한 적외선(IR) 센서, 광학 센서, 속도 및/또는 케이던스(cadence) 센서, (제스처 명령을 감지하기 위한) 제스처 센서 등을 포함할 수 있고, 이들은 프로세서(266)에 입력을 제공한다. IR 센서(280)는 무선 리모콘으로부터 명령들을 수신하기 위해 제공될 수 있다. 배터리(미도시)가 수신기(14)에 전력을 공급하기 위해 제공될 수 있다.
컴패니언 디바이스(companion device)(16)는 전술한 수신기(14)와 관련하여 도시된 요소들 중 일부 또는 전부를 통합할 수 있다.
본 명세서에 설명된 방법들은 프로세서, 적절하게 구성된 주문형 집적 회로(ASIC) 또는 필드 프로그래머블 게이트 어레이(FPGA) 모듈들에 의해 실행되는 소프트웨어 명령어들, 또는 본 기술분야의 통상의 기술자에 의해 이해되는 바와 같은 임의의 다른 편리한 방식으로서 구현될 수 있다. 사용되는 경우, 소프트웨어 명령어들은 CD ROM 또는 플래시 드라이브와 같은 비-일시적인(non-transitory) 디바이스에서 구현될 수 있다. 소프트웨어 코드 명령어들은 대안적으로 라디오 또는 광학 신호와 같은 일시적인 배열로, 또는 인터넷을 통한 다운로드를 통해 구현될 수 있다.
이제 도 3을 참조하면, ATSC 3.0 미디어 프레젠테이션 디스크립션(MPD)(300)의 일부는 요소들의 시작 부분이 "<"로 시작하고 요소들의 끝이 "</"로 끝나는, 단순화된 형태로 도시되어 있다. MPD는 방송 소스로부터 제공될 수 있지만, 일부 구현들에서는 광대역 소스로부터 제공될 수 있다.
최상위 레벨에서 MPD(300)는 구간 지속시간(304) 및, 원한다면, 시작 시간을 나타내는 제1 구간 또는 구간(Period) 요소(302)를 포함한다. 미디어 스트림 또는 미디어 스트림들의 세트에 대한 참조들을 포함하는 적응 세트(adaptation set)(306)가 구간(302) 내에 네스팅(nested)된다. 적응 세트(306)에 네스팅된 것은 표현 세트(representation set)(308)인데, 이는 적응 세트가 상이한 방식들로 인코딩된 동일한 콘텐츠를 포함할 수 있게 한다. 표현 세트(308)에는, DASH 플레이어가 재생하는 실제 미디어 파일들인 하나 이상의 미디어 세그먼트들(segments)(310)에 대한 참조들이 있는데, DASH 플레이어는 일반적으로 마치 그들이 하나의 파일의 인접한 부분들인 것처럼 연속적으로 재생한다.
제1 구간(302)에 이어서, MPD의 끝에 배치될 수 있는 제2 구간(312)이 이어진다. 제1 구간(302)(및 임의의 중간 구간들)과 달리, 제2 구간(312)은 적응 세트가 미디어 세그먼트들에 대한 참조들을 갖지 않는다는 점에서 비어 있다. 제2 구간(312)이 신택스(syntax) 목적을 위한 적응 세트 및 표현 세트를 포함한다면, 이들은 비어 있는데, 즉, 제2 구간(312)에는 세그먼트 참조가 없다. 대신에, 제2 구간(312)은 XLink 정보(314)를 포함하는데, 이는 DASH 수신기로 하여금 XLink를 직접 실행하게 하거나, 대체가능 콘텐츠의 방송사 애플리케이션에 시그널링하여, 대체 콘텐츠를 캐시에 저장하고 제2 구간에 대응하는 시간에 대체 콘텐츠를 재생하기 위해 방송사 애플리케이션으로부터 명령어를 수신하게 한다. 대체 콘텐츠는 방송 소스 또는 광대역 소스로부터 제공될 수 있다. XLink(314)는 제2 구간의 지속시간, 따라서 대체 콘텐츠의 지속시간을 표시할 수 있다.
도 4는 400으로 표시되는 바와 같이, 제1 구간(302)은 다수의 세그먼트들(310)을 포함하지만 제2 구간(312)은 세그먼트를 포함하지 않는 것을 개략적으로 나타낸다.
도 5는 송신기 로직을 도시하고, 도 6은 수신기 로직을 도시한다. 도 5의 블록(500)에서 시작하여, 도 3에 도시된 MPD(300)가 생성된다. 블록(502)에서, XLink 구간(312)은 세그먼트 참조 없이, 일반적으로 파일의 끝에서 MPD에 추가된다. 그 다음, 파일은 블록(504)에서, 예를 들어, 방송 수단에 의해 수신기에 전송된다.
수신기는 블록(600)에서 MPD(300)를 수신한다. 블록(602)으로 이동하면, 수신기는 제1 구간(302)에서 세그먼트들(310)과 일치하는 콘텐츠를 재생하기 시작하고, 일반적으로 동시에 블록(604)에서 XLink 구간(312)을 검출하는데, 그 이유는 마지막 구간이 비어 있기 때문이다. 수신기는 XLink를 실행하거나, 수신기 프로세서에 의해 수신기 상에서 실행되는 방송사 애플리케이션에 XLink를 보고한다. 그렇게 함으로써, 수신기는 XLink와 연관된 URL(uniform resource locator)을 사용하여 인터넷 상의 참조된 위치로부터 객체(예컨대, 파일)를 가져오고 이를 대체 구간(Period) 요소로서 사용한다. 블록(606)은 응답으로 수신기가 방송사 애플리케이션으로부터 XLink를 포함하는 빈 구간을 대체하는 데 사용될 구간 요소를 수신하는 것을 나타낸다. 구간(Period) 요소는 수신기가 대체 콘텐츠로서 캐시에 저장할 수 있는 세그먼트들에 대한 참조들을 포함한다. 세그먼트들의 위치는 방송사 애플리케이션에 의해 제공된다. 전술한 바와 같이, 위치는 URL(uniform resource locator)과 같은 네트워크 주소일 수 있다. 블록(610)에서 XLink 구간(312)의 시간이 도달될 때까지, 블록(608)에서 콘텐츠는 세그먼트 타임라인에서 계속 재생되고, 이 시점에서 블록(606)에서 캐시에 저장된 대체 콘텐츠는 그 구간 동안 재생되었을 방송 콘텐츠 대신에 재생된다.
본 원리들이 일부 예시적인 실시예들을 참조하여 설명되었지만, 이들은 제한하려는 의도가 아니며, 다양한 대안적인 배열들(arrangements)이 명세서에 청구된 주제를 구현하기 위해 사용될 수 있음을 이해할 것이다.

Claims (20)

  1. 디지털 TV 시스템으로서,
    적어도 하나의 방송 소스(broadcast source) 및 적어도 하나의 광대역 소스(broadband source)를 포함하는 적어도 하나의 송신기 어셈블리(transmitter assembly)를 포함하고, 상기 송신기 어셈블리는:
    적어도 제1 및 제2 구간(Period) 요소들을 포함하는 SegmentTimeline 템플릿을 갖는 제1 미디어 프레젠테이션 디스크립션(media presentation description)(MPD)을 생성하기 위한 명령어들로 프로그래밍된 적어도 하나의 프로세서를 포함하고, 상기 제1 구간 요소는 상기 MPD의 수신기로 하여금 해당 세그먼트에 의해 식별된 미디어 콘텐츠를 재생하도록 하는 적어도 하나의 세그먼트를 포함하며, 상기 제2 구간 요소는 세그먼트들을 포함하지 않아서, 상기 MPD의 수신기로 하여금, 대체가능 콘텐츠를 가져오게 하거나, 대체가능 콘텐츠를 방송사 애플리케이션에 통지하고, 표시된 네트워크 주소로부터의 대체 콘텐츠를 캐시에 저장하고 제2 구간에 대응하는 시간에 상기 대체 콘텐츠를 재생하라는 명령어를 상기 방송사 애플리케이션으로부터 수신하게 하는,
    디지털 TV 시스템.
  2. 제1항에 있어서, 상기 제2 구간은 확장성 마크업 언어(extensible markup language)(XML) 연결 언어(linking language)(XLink) 구간 요소인, 디지털 TV 시스템.
  3. 제1항에 있어서, 상기 명령어들은:
    상기 방송 소스로부터 상기 MPD를 제공하도록 실행가능한, 디지털 TV 시스템.
  4. 제1항에 있어서, 상기 명령어들은:
    상기 방송 소스로부터 상기 대체 콘텐츠를 제공하도록 실행가능한, 디지털 TV 시스템.
  5. 제1항에 있어서, 상기 명령어들은:
    상기 광대역 소스로부터 상기 대체 콘텐츠를 제공하도록 실행가능한, 디지털 TV 시스템.
  6. 제1항에 있어서, 상기 명령어들은:
    상기 MPD의 끝에 상기 제2 구간 요소를 위치시키도록 실행가능한, 디지털 TV 시스템.
  7. 제1항에 있어서, 상기 명령어들은:
    상기 대체 콘텐츠의 지속시간을 표시하기 위해 상기 제2 구간 요소를 구성하도록 실행가능한, 디지털 TV 시스템.
  8. 제1항에 있어서, 상기 수신기를 포함하는, 디지털 TV 시스템.
  9. 디지털 TV 시스템으로서,
    적어도 하나의 프로세서를 포함하는 적어도 하나의 수신기를 포함하고, 상기 프로세서는:
    적어도 제1 및 제2 구간 요소들을 포함하는 SegmentTimeline 템플릿을 갖는 제1 미디어 프레젠테이션 디스크립션(MPD)을 수신하고 -상기 제1 구간 요소는 적어도 하나의 세그먼트를 포함하고 상기 제2 구간 요소는 어떠한 세그먼트들도 포함하지 않음- ;
    상기 제1 구간 요소에 응답하여, 상기 세그먼트에 따라 콘텐츠를 재생하며;
    상기 제2 구간 요소에 응답하여, 적어도 하나의 확장성 마크업 언어(XML) 연결 언어(XLink)를 실행하거나, 방송사 애플리케이션에 확장성 마크업 언어(XML) 연결 언어(XLink) 대체 콘텐츠가 미래에 이용가능하다는 것을 시그널링하고;
    상기 시그널링에 응답하여, 상기 XLink 대체 콘텐츠를 캐시에 저장하고 상기 제2 구간 요소에 의해 표시된 시간에 제2 구간을 상기 대체 콘텐츠로 대체하라는 명령을 상기 방송사 애플리케이션으로부터 수신하며;
    상기 제2 구간 요소에 의해 표시되는 시간 이전에, 상기 MPD에 따라 미디어의 재생을 계속하고;
    상기 제2 구간 요소에 의해 표시되는 시간에, 상기 대체 콘텐츠를 재생하도록
    상기 프로세서를 구성하는 명령어들로 프로그래밍되는, 디지털 TV 시스템.
  10. 제9항에 있어서, 상기 명령어들은:
    상기 제2 구간에 상기 대체 콘텐츠를 재생하지 못하는 것에 응답하여, 상기 구간이 종료될 때까지 상기 제2 구간이 세그먼트들로 채워지는 것을 식별하고;
    상기 제2 구간에서 상기 세그먼트들에 의해 표시된 콘텐츠를 재생하도록
    실행가능한, 디지털 TV 시스템.
  11. 제9항에 있어서, 상기 명령어들은:
    방송 소스로부터 상기 MPD를 수신하도록 실행가능한, 디지털 TV 시스템.
  12. 제9항에 있어서, 상기 명령어들은:
    방송 소스로부터 상기 대체 콘텐츠를 수신하도록 실행가능한, 디지털 TV 시스템.
  13. 제9항에 있어서, 상기 명령어들은:
    광대역 소스로부터 상기 대체 콘텐츠를 수신하도록 실행가능한, 디지털 TV 시스템.
  14. 제9항에 있어서, 상기 방송사 애플리케이션은 상기 수신기의 프로세서에 의해 실행되는, 디지털 TV 시스템.
  15. 디지털 TV 시스템에서의 방법으로서,
    적어도 하나의 미디어 프레젠테이션 디스크립션(MPD)을 수신하는 단계;
    하나 이상의 세그먼트를 포함하는 상기 MPD에서의 제1 구간에 응답하여, 상기 하나 이상의 세그먼트에 따라 콘텐츠를 재생하는 단계;
    세그먼트들을 포함하지 않는 상기 MPD에서의 제2 구간에 응답하여, 상기 제2 구간에 의해 표시된 지속시간을 갖는 대체 콘텐츠를 검색하는 단계; 및
    상기 제2 구간에 의해 표시된 시간에, 상기 대체 콘텐츠를 재생하는 단계
    를 포함하는, 방법.
  16. 제15항에 있어서,
    상기 제2 구간에 응답하여, 확장성 하이퍼텍스트 마크업 언어 링크(XLink) 트리거가 도달했다는 것을 방송사 애플리케이션에 시그널링하는 단계
    를 포함하는, 방법.
  17. 제16항에 있어서,
    상기 XLink 트리거가 도달했다는 것을 상기 방송사 애플리케이션에 시그널링하는 것에 응답하여, 상기 방송사 애플리케이션으로부터 상기 대체 콘텐츠를 검색하라는 명령을 수신하는 단계
    를 포함하는, 방법.
  18. 제15항에 있어서, 광대역 소스로부터 상기 대체 콘텐츠를 검색하는 단계를 포함하는, 방법.
  19. 제15항에 있어서, 방송 소스로부터 상기 대체 콘텐츠를 검색하는 단계를 포함하는, 방법.
  20. 제15항에 있어서, 방송 소스로부터 상기 MPD를 수신하는 단계를 포함하는, 방법.
KR1020227018899A 2019-12-17 2020-12-17 Atsc 3.0 tv에서의 대체 콘텐츠 시그널링에 대한 기술들 KR20220116162A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/717,958 US11012761B1 (en) 2019-12-17 2019-12-17 Techniques for replacement content signaling in advanced television systems committee (ATSC) 3.0 television
US16/717,958 2019-12-17
PCT/US2020/065672 WO2021127220A1 (en) 2019-12-17 2020-12-17 Techniques for replacement content signaling in atsc 3.0 television

Publications (1)

Publication Number Publication Date
KR20220116162A true KR20220116162A (ko) 2022-08-22

Family

ID=75910279

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227018899A KR20220116162A (ko) 2019-12-17 2020-12-17 Atsc 3.0 tv에서의 대체 콘텐츠 시그널링에 대한 기술들

Country Status (6)

Country Link
US (1) US11012761B1 (ko)
KR (1) KR20220116162A (ko)
BR (1) BR112022011438A2 (ko)
CA (1) CA3160253A1 (ko)
MX (1) MX2022006953A (ko)
WO (1) WO2021127220A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11706465B2 (en) * 2019-01-15 2023-07-18 Sony Group Corporation ATSC 3.0 advertising notification using event streams
US11418561B2 (en) * 2020-03-03 2022-08-16 Tencent America LLC Remote link validity interval in media streaming

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6698020B1 (en) * 1998-06-15 2004-02-24 Webtv Networks, Inc. Techniques for intelligent video ad insertion
EP2153356A4 (en) 2007-05-15 2011-03-16 Tivo Inc MEDIA DATA CONTENT SEARCH SYSTEM
US9152300B2 (en) 2008-12-31 2015-10-06 Tivo Inc. Methods and techniques for adaptive search
JP2013021574A (ja) * 2011-07-12 2013-01-31 Sharp Corp 生成装置、配信サーバ、生成方法、再生装置、再生方法、再生システム、生成プログラム、再生プログラム、記録媒体およびデータ構造
US9699229B2 (en) * 2014-01-16 2017-07-04 Qualcomm Incorporated Robust live operation of dash
US10205991B2 (en) 2015-07-27 2019-02-12 Sony Corporation Hidden replaceable media slots
US11039206B2 (en) * 2018-04-09 2021-06-15 Hulu, LLC Differential media presentation descriptions for video streaming
US10904642B2 (en) * 2018-06-21 2021-01-26 Mediatek Singapore Pte. Ltd. Methods and apparatus for updating media presentation data

Also Published As

Publication number Publication date
CA3160253A1 (en) 2021-06-24
US11012761B1 (en) 2021-05-18
BR112022011438A2 (pt) 2022-08-30
WO2021127220A1 (en) 2021-06-24
MX2022006953A (es) 2022-07-13

Similar Documents

Publication Publication Date Title
US11350138B2 (en) Managing a multi-view event comprising several streams, stream buffers, and rendering onto a single canvas
JP7468575B2 (ja) 受信装置および受信方法
US11323768B2 (en) Reducing latency during service change and improving robustness in advanced television systems committee (ATSC) 3.0 system
KR102499231B1 (ko) 수신 장치, 송신 장치 및 데이터 처리 방법
US11729456B2 (en) Long duration error correction with fast channel change for ATSC 3.0 real-time broadcast mobile application
KR20220116162A (ko) Atsc 3.0 tv에서의 대체 콘텐츠 시그널링에 대한 기술들
KR20180105026A (ko) 전자장치 및 그 제어방법
US20190141361A1 (en) Systems and methods for signaling of an identifier of a data channel
US20210185381A1 (en) Reducing latency during service change and improving robustness in advanced television systems committee (atsc) 3.0 system
US11553245B1 (en) Techniques for receiving non-real time (NRT) data whilst traversing a multi-frequency network boundary
US11363310B2 (en) ATSC 3.0 hospitality TV system
US11190835B2 (en) Intelligent unload of broadcaster application on channel change
US11153640B2 (en) Memory management of replacement content in digital TV system
US11606528B2 (en) Advanced television systems committee (ATSC) 3.0 latency-free display of content attribute
US11895345B2 (en) Obfuscating replaceable content in advanced television systems committee (ATSC) 3.0 system
US11553230B2 (en) Platform-independent USB driver communicating I2C commands to USB dongle through JAVA application
US11159831B2 (en) Non-real time (NRT) memory management in advanced television systems committee (ATSC) 3.0 system
US11812083B2 (en) Techniques for pushing personalized storefront ads using digital TV
WO2021116839A1 (en) Advanced television systems committee (atsc) 3.0 latency-free display of content attribute
WO2023242663A1 (en) Obfuscating replaceable content in advanced television systems committee (atsc) 3.0 system
US20210329348A1 (en) Memory management in advanced television systems committee (atsc) 3.0 system
US11451854B2 (en) Dongle to convert formats to ATSC 3.0 low power wireless
US20220124401A1 (en) Digital signage using atsc 3.0
KR20210025508A (ko) Atsc 3.0 기반의 방송 콘텐츠 전송 장치 및 방법과, 방송 콘텐츠 수신 장치 및 방법
KR20160129631A (ko) 방송 시스템에서 이벤트 정보 전송장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination