KR102373187B1 - 수신 장치 및 데이터 처리 방법 - Google Patents

수신 장치 및 데이터 처리 방법 Download PDF

Info

Publication number
KR102373187B1
KR102373187B1 KR1020187031839A KR20187031839A KR102373187B1 KR 102373187 B1 KR102373187 B1 KR 102373187B1 KR 1020187031839 A KR1020187031839 A KR 1020187031839A KR 20187031839 A KR20187031839 A KR 20187031839A KR 102373187 B1 KR102373187 B1 KR 102373187B1
Authority
KR
South Korea
Prior art keywords
time
information
content
broadcast
time information
Prior art date
Application number
KR1020187031839A
Other languages
English (en)
Other versions
KR20190008204A (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 KR20190008204A publication Critical patent/KR20190008204A/ko
Application granted granted Critical
Publication of KR102373187B1 publication Critical patent/KR102373187B1/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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • 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/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/38Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space
    • H04H60/40Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying broadcast time or space for identifying broadcast time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/18Arrangements for synchronising broadcast or distribution via plural systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/28Arrangements for simultaneous broadcast of plural pieces of 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/13Arrangements for device control affected by the 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/68Systems specially adapted for using specific information, e.g. geographical or meteorological information
    • H04H60/73Systems specially adapted for using specific information, e.g. geographical or meteorological information using meta-information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • 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
    • 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

본 기술은, 확실하게, 콘텐츠를 재생할 수 있도록 하는 수신 장치 및 데이터 처리 방법에 관한 것이다. 수신 장치는, 콘텐츠를 수신하고, 콘텐츠의 송신측으로부터 제공되는 제1 시각 정보와, 콘텐츠의 수신측에서 생성되는 제2 시각 정보를 대응지은 시각 대응 정보에 기초하여, 제2 시각 정보에 대응한 제1 시각 정보에 따른 시간축으로, 콘텐츠의 재생을 제어한다. 본 기술은, 예를 들어 ATSC3.0에 대응한 텔레비전 수상기에 적용할 수 있다.

Description

수신 장치 및 데이터 처리 방법
본 기술은, 수신 장치 및 데이터 처리 방법에 관한 것이며, 특히 확실하게, 콘텐츠를 재생할 수 있도록 한 수신 장치 및 데이터 처리 방법에 관한 것이다.
송신측의 서버로부터 배신되는 콘텐츠를, 수신측의 클라이언트 장치에 의해 재생할 때에, 송신측과 수신측에서 시각 정보가 공유되는 경우에는, 당해 시각 정보의 동기를 취할 필요가 있다(예를 들어, 특허문헌 1 참조).
일본 특허 공개 제2014-230154호 공보
그런데, 클라이언트 장치의 환경에 따라서는, 송신측과 수신측에서 시각 정보를 동기할 수 없는 경우가 있고, 그와 같은 경우라도, 확실하게, 콘텐츠를 재생 가능하게 하기 위한 제안이 요청되었다.
본 기술은 이와 같은 상황을 감안하여 이루어진 것이며, 확실하게, 콘텐츠를 재생할 수 있도록 하는 것이다.
본 기술의 일 측면의 수신 장치는, 콘텐츠를 수신하는 수신부와, 상기 콘텐츠의 송신측으로부터 제공되는 제1 시각 정보와, 상기 콘텐츠의 수신측에서 생성되는 제2 시각 정보를 대응지은 시각 대응 정보에 기초하여, 상기 제2 시각 정보에 대응한 상기 제1 시각 정보에 따른 시간축으로, 상기 콘텐츠의 재생을 제어하는 제어부를 구비하는 수신 장치이다.
본 기술의 일 측면의 수신 장치는, 독립된 장치여도 되고, 하나의 장치를 구성하고 있는 내부 블록이어도 된다. 또한, 본 기술의 일 측면의 데이터 처리 방법은, 상술한 본 기술의 일 측면의 수신 장치에 대응하는 데이터 처리 방법이다.
본 기술의 일 측면의 수신 장치 및 데이터 처리 방법에 있어서는, 콘텐츠가 수신되고, 상기 콘텐츠의 송신측으로부터 제공되는 제1 시각 정보와, 상기 콘텐츠의 수신측에서 생성되는 제2 시각 정보가 대응지어진 시각 대응 정보에 기초하여, 상기 제2 시각 정보에 대응한 상기 제1 시각 정보에 따른 시간축으로, 상기 콘텐츠의 재생이 제어된다.
본 기술의 일 측면에 따르면, 확실하게, 콘텐츠를 재생할 수 있다.
또한, 여기에 기재된 효과는 반드시 한정되는 것은 아니고, 본 개시 중에 기재된 어느 효과여도 된다.
도 1은 본 기술을 적용한 전송 시스템의 일 실시 형태의 구성을 도시하는 도면이다.
도 2는 본 기술의 콘텐츠 재생 제어의 개요를 설명하는 도면이다.
도 3은 본 기술의 IP 전송 방식의 프로토콜 스택의 예를 도시하는 도면이다.
도 4는 L1 시그널링의 구성예를 도시하는 도면이다.
도 5는 물리층 프레임의 구성예를 도시하는 도면이다.
도 6은 L1 기본 정보의 신택스의 예를 도시하는 도면이다.
도 7은 L1 상세 정보의 신택스의 예를 도시하는 도면이다.
도 8은 LLS 테이블의 신택스의 예를 도시하는 도면이다.
도 9는 SystemTime 요소의 구성예를 도시하는 도면이다.
도 10은 RF 디모듈레이터와 방송 미들웨어에 의해 실행되는 처리의 흐름을 설명하는 도면이다.
도 11은 어플리케이션에 의해 실행되는 처리의 흐름을 설명하는 도면이다.
도 12는 브로드캐스트 시각의 산출 방법을 설명하는 도면이다.
도 13은 DASH 세그먼트의 특정 방법을 설명하는 도면이다.
도 14는 어플리케이션과 방송 미들웨어간의 메시징을 설명하는 도면이다.
도 15는 GetBroadcastTime 리퀘스트의 정의의 예를 도시하는 도면이다.
도 16은 GetBroadcastTime 리퀘스트의 메시지의 예를 도시하는 도면이다.
도 17은 GetBroadcastTime 리스폰스의 정의의 예를 도시하는 도면이다.
도 18은 GetBroadcastTime 리스폰스의 메시지의 예를 도시하는 도면이다.
도 19는 시각 대응 정보 관리 처리의 흐름을 설명하는 흐름도이다.
도 20은 콘텐츠 재생 제어 처리의 흐름을 설명하는 흐름도이다.
도 21은 콘텐츠 재생 처리의 흐름을 설명하는 흐름도이다.
도 22는 컴퓨터의 구성예를 도시하는 도면이다.
이하, 도면을 참조하면서 본 기술의 실시 형태에 대하여 설명한다. 또한, 설명은 이하의 순서로 행하는 것으로 한다.
1. 시스템의 구성
2. 본 기술의 개요
3. 클라이언트 장치에서 처리되는 시각 정보
4. 어플리케이션과 방송 미들웨어간의 메시징
5. 클라이언트 장치에서 실행되는 처리의 흐름
6. 변형예
7. 컴퓨터의 구성
<1. 시스템의 구성>
(전송 시스템의 구성예)
도 1은 본 기술을 적용한 전송 시스템의 일 실시 형태의 구성을 도시하는 도면이다. 또한, 시스템이란, 복수의 장치가 논리적으로 집합된 것을 말한다.
도 1에 있어서, 전송 시스템(1)은 방송 서버(10)와 클라이언트 장치(20)로 구성된다.
방송 서버(10)는, 텔레비전 프로그램이나 CM 등의 콘텐츠를, 전송로(30)를 통해 송신하는 송신기이다. 방송 서버(10)는 콘텐츠의 비디오나 오디오의 데이터와, 시그널링을 포함하는 방송 스트림을, 방송파로서 송신(일제 동보 배신)한다.
클라이언트 장치(20)는, 방송 서버(10)로부터 전송로(30)를 통해 송신되어 오는, 콘텐츠를 수신하는 수신기이다. 클라이언트 장치(20)는 방송 서버(10)로부터의 방송파를 수신하여, 방송 스트림으로부터, 콘텐츠의 비디오나 오디오의 데이터와, 시그널링을 취득하고, 텔레비전 프로그램 등의 콘텐츠의 영상이나 음성을 재생한다.
전송 시스템(1)에 있어서는, 예를 들어 현재 책정이 진행되고 있는 ATSC(Advanced Television Systems Committee)3.0 등의 소정의 방송 규격에 준거한 데이터 전송이 행해진다. 또한, 전송 시스템(1)에 있어서, 전송로(30)는 지상파 방송 외에, 예를 들어 방송 위성(BS : Broadcasting Satellite)이나 통신 위성(CS : Communications Satellite)을 이용한 위성 방송, 혹은, 케이블을 사용한 유선 방송(CATV) 등이어도 된다.
여기서, 도 1의 전송 시스템(1)에 있어서는, 설명을 간단하게 하기 위해, 클라이언트 장치(20)를 하나만 도시하고 있지만, 클라이언트 장치(20)는 복수 설치할 수 있고, 방송 서버(10)에 의해 송신(일제 동보 배신)되는 방송파는, 전송로(30)를 통해, 상이한 장소에 설치된 복수의 클라이언트 장치(20)에서 동시에 수신되게 된다.
또한, 방송 서버(10)도 복수 설치할 수 있다. 복수의 방송 서버(10)의 각각에서는, 별개의 채널(서비스)로서의, 예를 들어 별개의 주파수 대역에서, 방송 스트림을 포함하는 방송파를 송신하고, 클라이언트 장치(20)에서는, 복수의 방송 서버(10)의 각각의 채널 중으로부터, 방송 스트림을 수신하는 채널을 선국할 수 있다.
<2. 본 기술의 개요>
그런데, 클라이언트 장치(20)가, 방송 서버(10)로부터 스트리밍 배신되는 콘텐츠를 재생하기 위해서는, 방송 서버(10)로부터 제공되는 시각 정보(절대 시각)를 방송 서버(10)와 클라이언트 장치(20)에서 공유하여, 동기를 취할 필요가 있다. 방송 서버(10)와 클라이언트 장치(20)에서 공유되어야만 하는 정확한 절대 시각은, 월 클럭 시각(WallClockTime)이라고도 칭해진다.
이러한 종류의 시각의 동기 방법으로서는, 예를 들어, 방송 서버(10)와 클라이언트 장치(20)의 각각이, NTP(Network Time Protocol) 프로토콜 등을 이용하여, 외부의 클럭 소스로부터 시각 정보를 취득함으로써, 시각의 동기를 취하는 방법이 있다. 그러나, NTP 프로토콜을 이용하기 위해서는, 방송 서버(10)와 클라이언트 장치(20)의 각각이, 네트워크에 접속하고 있을 필요가 있고, 예를 들어 클라이언트 장치(20)가, 방송 배신되는 콘텐츠를 수신하는 기능만 갖고 있는 경우(통신 기능을 갖고 있지 않은 경우)에는, NTP 프로토콜을 이용할 수는 없다.
한편, 클라이언트 장치(20)가, 예를 들어 퍼스널 컴퓨터나 태블릿형 단말 장치, 스마트폰 등인 경우, 거기에서 실행되는 어플리케이션으로부터는, 시스템 클럭(시스템 시각)을 간단히 변경할 수 없다. 그러나, 이와 같은 환경에서도, 콘텐츠를 재생하기 위한 플레이어로서의 어플리케이션을 실장할 수 있도록 하고 싶다는 요청이 있다.
이와 같이, 클라이언트 장치(20)에 있어서, 예를 들어 NTP 프로토콜 등을 이용할 수 없고, 또한, 실행 중인 어플리케이션으로부터 시스템 시각을 간단히 변경할 수 없는 환경에서도, 방송 서버(10)와 시각 정보를 공유하여, 스트리밍 배신되는 콘텐츠를 재생하기 위한 제안이 요청되고 있다. 따라서, 본 기술에서는, 이들 요청에 부응하기 위해, 이하에 설명하는 제안을 행하기로 한다.
(본 기술의 콘텐츠 재생 제어의 개요)
도 2는 본 기술의 콘텐츠 재생 제어의 개요를 설명하는 도면이다.
도 2에 있어서, 도면 중 좌측의 서버측은, 방송 서버(10)에 의해 실행되는 처리를 나타내고, 도면 중의 우측의 클라이언트측은, 클라이언트 장치(20)에 의해 실행되는 처리를 나타내고 있다.
방송 서버(10)는 콘텐츠의 데이터를 포함하는 물리층 프레임을 방송파에 의해 송신한다. 상세는 후술하지만, 물리층 프레임은, 콘텐츠의 데이터를 전송하는 단위이다. 또한, 방송 서버(10)는 PTP 클럭 소스(11)로부터 PTP(Precision Time Protocol) 시각을 취득하고, 임의의 물리층 프레임에 포함시켜 송신되도록 한다.
여기서, PTP는, IEEE 1588-2008에서 규정되어 있는 시각을 나타내는 정보이다. 예를 들어, 80비트의 PTP는, 48비트의 초 필드와, 32비트의 나노초 필드로 구성된다. 이하의 설명에서는, 방송 서버(10)로부터 제공되는 시각 정보로서, PTP 시각(PTP Time)이 사용되는 경우를 설명한다.
클라이언트 장치(20)는, RF 디모듈레이터(101), 방송 미들웨어(102), 기억부(103), 브라우저(104), DASH 클라이언트(105), 디코더(106) 및 출력부(107)를 포함하여 구성된다.
RF 디모듈레이터(101)는, 방송 서버(10)로부터 송신되어 오는 방송파를 수신하는 안테나와 접속되어, 방송파에 의해 전송되는 물리층 프레임을 추출한다. RF 디모듈레이터(101)는, 추출한 물리층 프레임 중, 임의의 물리층 프레임으로부터 PTP 시각을 추출하여, 방송 미들웨어(102)에 공급한다.
방송 미들웨어(102)는, RF 디모듈레이터(101)에 의한 PTP 시각의 추출과 동시(거의 동시)에, 시스템 클럭 소스(21)로부터 시스템 시각(System Time)을 취득한다. 또한, 시스템 클럭 소스(21)에 의해 생성되는 시스템 시각은, 방송 미들웨어(102)뿐만 아니라, 클라이언트 장치(20)의 각 부에서 사용된다. 예를 들어, 브라우저(104)에 의해 실행되는 어플리케이션(121)은, 시스템 클럭 소스(21)로부터 시스템 시각을 취득할 수 있다.
방송 미들웨어(102)는, RF 디모듈레이터(101)로부터 공급되는 PTP 시각을, 브로드캐스트 시각(Broadcast Time)으로서, 시스템 시각과 대응짓고(페어링하고), 그 결과 얻어지는 정보(이하, 시각 대응 정보라 함)를 기억부(103)에 기억한다. 기억부(103)는 예를 들어 반도체 메모리로 구성된다.
여기서, 브로드캐스트 시각은, 콘텐츠의 송신측으로부터 제공되는 시각 정보이며, 예를 들어 콘텐츠의 재생 등에 사용된다. 한편, 시스템 시각은, 콘텐츠의 수신측에서 생성되는 시각 정보이며, 예를 들어 현재 시각의 표시나 로그 정보의 기록 등에 사용된다. 즉, 시각 대응 정보로서 대응지어져 있는 브로드캐스트 시각과 시스템 시각은, 기본적으로 다른 용도로 사용되는 시각 정보라고 할 수 있다.
방송 미들웨어(102)는, 브라우저(104)에 의해 실행되는 어플리케이션(121)으로부터 GetBroadcastTime 리퀘스트를 접수한 경우, 기억부(103)로부터 시각 대응 정보를 판독하고, 어플리케이션(121)에 대해, GetBroadcastTime 리스폰스로서 회답한다. 즉, 방송 미들웨어(102)는 시각 대응 정보를 관리하는 관리부로서의 기능을 갖고 있다.
브라우저(104)는, 예를 들어 HTML5(HyperText Markup Language 5)에 대응한 브라우저이다. 브라우저(104)는 방송 경유 또는 통신 경유로 배신되는 어플리케이션(121)을 취득하여 실행한다. 어플리케이션(121)은 방송 서버(10)로부터 배신되는 콘텐츠에 부수되는 어플리케이션이며, 예를 들어 HTML5 등의 마크업 언어나 JavaScript(등록 상표) 등으로 기술된다. 또한, 어플리케이션(121)은 방송 서버(10)로부터 배신되는 콘텐츠를 재생하기 위한 플레이어로서도 기능한다. 또한, 어플리케이션(121)은 클라이언트 장치(20)에, 미리 기록되어 있도록 해도 된다.
어플리케이션(121)은, 콘텐츠의 재생 개시 시에, 방송 미들웨어(102)에 대해, GetBroadcastTime 리퀘스트를 발행한다. 이에 의해, 어플리케이션(121)은 방송 미들웨어(102)로부터의 GetBroadcastTime 리스폰스로서, 시각 대응 정보를 취득할 수 있다.
어플리케이션(121)은, 방송 미들웨어(102)로부터의 시각 대응 정보에 기초하여, 시스템 시각에 대응한 브로드캐스트 시각에 따른 시간축으로, 콘텐츠의 재생이 행해지도록, 디코드의 대상이 되는 데이터(DASH 세그먼트)의 전송을 제어한다. 즉, 어플리케이션(121)은 콘텐츠의 재생을 제어하는 재생 제어부(플레이어)로서의 기능을 갖고 있다.
RF 디모듈레이터(101)는, 물리층 프레임에 대한 복조 처리에 의해 얻어지는 복조 데이터를, 방송 미들웨어(102)에 공급한다. 방송 미들웨어(102)는 시그널링 등에 기초하여, RF 디모듈레이터(101)로부터 공급되는 복조 데이터를 처리하고, 그 결과 얻어지는 데이터를, DASH 클라이언트(105)에 공급한다.
DASH 클라이언트(105)는 방송 미들웨어(102)로부터 공급되는 데이터(DASH 세그먼트)를 처리한다. DASH 클라이언트(105)는 어플리케이션(121)으로부터의 제어에 따라, 적절한 타이밍(적당한 타이밍)에, DASH 세그먼트를, 디코더(106)에 공급한다.
디코더(106)는, 소정의 복호 방식에 따라, DASH 클라이언트(105)로부터 공급되는 DASH 세그먼트로부터 얻어지는 비디오와 오디오의 데이터의 디코드를 행한다. 여기에서는, 예를 들어 HEVC(High Efficiency Video Coding)나, AAC(Advanced Audio Coding) 등의 복호 방식에 따른 디코드가 행해진다. 이 디코드에 의해 얻어진 비디오와 오디오의 데이터는 출력부(107)에 공급된다.
출력부(107)는, 디코더(106)로부터 공급되는 비디오와 오디오의 데이터에 대하여 렌더링 등의 처리를 행하고, 그 결과 얻어지는 데이터를 출력한다. 이에 의해, 클라이언트 장치(20)에서는, 텔레비전 프로그램 등의 콘텐츠의 영상이나 음성이 재생되게 된다.
이상과 같이 하여, 클라이언트 장치(20)에서는, 방송 서버(10)로부터 스트리밍 배신되는 콘텐츠의 재생이 행해진다. 단, 클라이언트 장치(20)에 있어서, 예를 들어 방송 미들웨어(102), 브라우저(104) 및 어플리케이션(121)은 소프트웨어로서 제공되고, CPU(후술하는 도 22의 CPU(1001))가 소정의 프로그램을 실행함으로써, 실현되도록 할 수 있다.
또한, 방송 서버(10)로부터 클라이언트 장치(20)에, 시각 정보로서, 물리층 프레임에 포함되는 PTP 시각을 송신할 때에는, 전송로(30)에서의 지연이 발생하게 되지만, 어떤 장소에 존재하는 클라이언트 장치(20)에 있어서는, 이 지연량은 일정해지므로, 대상인 클라이언트 장치(20)에서의 지연량이 계속해서 일정한 간격이기만 하면, 특별히 문제가 되는 일은 없다.
또한, 이하, 방송 서버(10)로부터 클라이언트 장치(20)에 제공되는 시각 정보로서, PTP 시각을 설명하지만, 시각 정보로서는, PTP 시각에 한하지 않고, 임의의 시각의 정보를 사용할 수 있다. 예를 들어, UTC(협정 세계시 : Coordinated Universal Time)나 각 타임존의 표준시의 시각인 로컬 시각(LT : Local Time)에 의해 규정되는 시각의 정보, NTP(Network Time Protocol)에 의해 규정되는 시각의 정보, 3GPP(Third Generation Partnership Project)에서 규정되어 있는 시각의 정보나, GPS(Global Positioning System) 정보에 포함되는 시각의 정보, 그 밖에 독자적으로 결정된 형식의 시각의 정보 등을 사용할 수 있다.
(본 기술의 데이터 전송 방식)
그런데, ATSC3.0에서는, 전송 방식으로서, 현재 널리 보급되어 있는 MPEG2-TS(Transport Stream) 방식이 아니라, 통신 분야에서 사용되고 있는 IP(Internet Protocol) 패킷을 디지털 방송에 사용한 IP 전송 방식을 도입함으로써, 보다 고도의 서비스를 제공하는 것이 상정되어 있다.
또한, ATSC3.0에서는, 시그널링으로서, LLS(Link Layer Signaling) 시그널링과 SLS(Service Layer Signaling) 시그널링을 사용하는 것이 상정되어 있다. LLS 시그널링은, SLS 시그널링에 선행하여 취득되는 시그널링이며, LLS 시그널링에 포함되는 정보에 따라, SLS 시그널링이 취득된다. SLS 시그널링은, 서비스 단위의 시그널링이다.
LLS 시그널링은, SLT(Service List Table)나 RRT(Rating Region Table) 등의 메타데이터를 포함한다. SLT 메타데이터는, 서비스의 선국에 필요한 정보(선국 정보) 등, 방송 네트워크에 있어서의 스트림이나 서비스의 구성을 나타내는 기본 정보를 포함한다. RRT 메타데이터는 레이팅에 관한 정보를 포함한다.
SLS 시그널링은, USD(User Service Description), S-TSID(Service-based Transport Session Instance Description), MPD(Media Presentation Description) 등의 메타데이터를 포함한다. USD 메타데이터는, 다른 메타데이터의 취득처 등의 정보를 포함한다. 단, USD는 USBD(User Service Bundle Description)라 칭해지는 경우가 있다.
S-TSID 메타데이터는, LSID(LCT Session Instance Description)를 ATSC3.0용으로 확장한 것이며, ROUTE(Real-time Object Delivery over Unidirectional Transport) 프로토콜의 제어 정보이다. 또한, ROUTE는, 스트리밍 파일 전송용의 프로토콜이며, FLUTE(File Delivery over Unidirectional Transport)를 확장한 것이다.
MPD 메타데이터는, MPEG-DASH(Dynamic Adaptive Streaming over HTTP)에 준거한 스트리밍 배신을 행하기 위해 사용되는, 비디오나 오디오의 파일의 관리 정보이다. 여기서, MPEG-DASH는, OTT-V(Over The Top Video)에 따른 스트리밍 배신 규격이며, HTTP(Hypertext Transfer Protocol)를 베이스로 한 스트리밍 프로토콜을 사용한 어댑티브 스트리밍 배신에 관한 규격이다.
이 MPEG-DASH의 규격에서는, 비디오나 오디오의 파일의 관리 정보인 메타데이터를 기술하기 위한 매니페스트 파일과, 동화상의 콘텐츠를 전송하기 위한 파일 포맷이 규정되어 있다. 그리고, 전자의 매니페스트 파일이, MPD(Media Presentation Description)라 칭해지는 것이다. 또한, 후자의 파일 포맷은 세그먼트 포맷이라고도 칭해진다.
또한, SLT나 RRT 등의 LLS 시그널링과, SLT, USD, S-TSID, MPD 등의 SLS 시그널링은, 예를 들어 XML(Extensible Markup Language) 등의 마크업 언어에 의해 기술할 수 있다.
(본 기술의 프로토콜 스택)
도 3은 본 기술의 IP 전송 방식의 프로토콜 스택의 예를 도시하는 도면이다.
도 3에 있어서, 가장 하위의 계층은, 물리층(PHY(Physical)/MAC(Media Access Control))으로 된다. 또한, 여기에서는, 데이터 링크층을, 물리층의 일부인 것으로서 설명하고 있다. 또한, 물리층에 인접하는 상위의 계층은, IP(Internet Protocol)층으로 된다. IP층은, 통신의 계층 모델에 있어서의 네트워크층에 상당하는 층이며, IP 어드레스에 의해 IP 패킷이 식별된다.
또한, IP층에 인접하는 상위의 계층은, UDP(User Datagram Protocol)층으로 된다. UDP층은, 통신의 계층 모델에 있어서의 트랜스포트층에 상당하는 층이며, 포트 번호에 의해 UDP 패킷이 식별된다. UDP층에 인접하는 상위의 계층은, LLS 시그널링을 전송하는 LLS층으로 된다.
도 3에 있어서, LLS층에서 전송되는 LLS 시그널링에는, 선국 정보 등 외에, 시각 메타데이터가 포함된다. 이 시각 메타데이터는, 윤초나 여름 시간을 조정하기 위한 보정 정보를 포함한다. 클라이언트 장치(20)는, LLS 시그널링에 포함되는 보정 정보를 사용하여, PTP 시각 등의 시각 정보를 보정함으로써, 윤초나 여름 시간에 대응한 시각 정보에 의한 처리를 행할 수 있다.
여기서, 윤초는, TAI(국제 원자시)와 동기하여 진행되는 UTC가, 지구의 자전 속도의 변화에 따라 세계시(UT1)로부터 긴 세월 동안 크게 어긋나지 않도록, 세계적인 협정에 기초하여 UTC에 삽입 또는 삭제되는 1초를 말한다. 예를 들어, UTC나 로컬 시각에서는, 윤초를 조정할 필요가 있는 한편, PTP에서는 윤초를 조정할 필요가 없다.
여름 시간(DST : Daylight Saving Time)은, 1년 중, 여름을 중심으로 한 기간에, 태양이 나와 있는 시간대를 유효하게 이용할 목적으로, 표준시를 1시간 빠르게 하는 제도, 또는 그 더 가게 해 둔 시각을 나타낸다. 단, 일부의 지역에서는, 여름 시간과 통상의 시간의 차가 1시간이 아니라, 30분 등으로 규정되어 있는 경우가 있다. 또한, 여름 시간은 데이라이트 세이빙 타임(Daylight Saving Time) 외에, 서머타임(Summer Time)이라고도 칭해진다.
또한, 도 3에 있어서, 물리층에서 전송되는 L1 시그널링에는, 복조 정보 등 외에, PTP 시각이 포함된다. 여기서, 도 4에는, L1 시그널링의 구성예를 도시하고 있다. L1 시그널링은, 물리층에 있어서, 데이터를 전송하는 단위인 물리층 프레임의 프리앰블에 포함된다. 또한, L1 시그널링으로서는, L1 기본 정보(L1 Basic Signaling)와, L1 상세 정보(L1 Detail Signaling)가 있다.
여기서, L1 기본 정보와 L1 상세 정보를 비교하면, L1 기본 정보는 200비트 정도의 비트로 구성되지만, L1 상세 정보는 400 내지 수천비트로 구성되는 점에서 그 사이즈가 상이하다. 또한, 물리층 프레임의 프리앰블에서는, L1 기본 정보와 L1 상세 정보가 그 순서로 판독되기 때문에, L1 상세 정보보다도 L1 기본 정보쪽이 먼저 판독된다. 또한, L1 기본 정보는, L1 상세 정보와 비교하여, 보다 로버스트하게 전송되는 점에서도 상이하다.
PTP 시각 등의 시각 정보는, L1 시그널링으로서의 L1 기본 정보 또는 L1 상세 정보에 포함시킬 수 있다.
(물리층 프레임의 구성)
도 5는 물리층 프레임의 구성예를 도시하는 도면이다. 또한, 도 5에 있어서, 시간의 방향은, 도면 중의 좌측으로부터 우측을 향하는 방향으로 된다.
도 5에 있어서, 물리층 프레임은, 부트스트랩(Bootstrap), 프리앰블(Preamble) 및 페이로드(Payload)로 구성된다. 물리층 프레임은, 밀리초 단위 등의 소정의 프레임 길이로 구성된다. 물리층 프레임에 있어서는, 부트스트랩과 프리앰블을 취득한 후에, 그 후의 페이로드를 취득하는 것이 가능해진다.
또한, 부트스트랩은, 예를 들어 DVB-T2(Digital Video Broadcasting-Second Generation Terrestrial)의 T2 프레임을 구성하는 P1 심볼에 대응하고, 프리앰블은, 예를 들어 DVB-T2의 T2 프레임을 구성하는 P2 심볼에 대응하고 있다. 따라서, 부트스트랩은 프리앰블이라고 할 수도 있다.
도 5에 있어서는, 시계열로 전송되는 복수의 물리층 프레임 중, 임의의 물리층 프레임의 상세한 구성을 도시하고 있다. 예를 들어, 선두로부터 2번째의 물리층 프레임의 프리앰블에 포함되는 L1 시그널링에는, PTP 시각이 포함되어 있다. 이 PTP 시각이 나타내는 시각은, 점선의 화살표 A로 나타내는 바와 같이, 당해 PTP 시각을 포함하는 L1 시그널링의 프리앰블을 갖는 물리층 프레임의 선두 위치(부트스트랩의 선두 위치)의 시각을 나타내고 있다.
즉, 선두로부터 2번째의 물리층 프레임에 포함되는 PTP 시각이 나타내는 시각은, 2번째의 물리층 프레임의 선두의 위치의 시각이다.
또한, 여기에서는, PTP 시각이 나타내는 시각이, 물리층 프레임의 선두의 위치의 시각인 경우를 설명하였지만, PTP 시각이 나타내는 시각은, 물리층 프레임에 있어서의 소정의 위치의 절대적인 시각을 나타내도록 할 수 있다. 예를 들어, PTP 시각이 포함되는 프리앰블을 갖는 물리층 프레임의 부트스트랩과 프리앰블의 경계의 위치나, 프리앰블의 최후의 위치 등, 당해 물리층 프레임의 임의의 위치가, PTP 시각이 나타내는 시각에 의해 나타내어지도록 할 수 있다.
(L1 기본 정보의 구성)
도 6은 도 4의 L1 기본 정보(L1 Basic Signaling)의 신택스의 예를 도시하는 도면이다.
또한, L1 기본 정보에 대해서는, 하기의 비특허문헌 1의 「Table 9.2 L1-Basic Signaling Fields and Syntax」에 그 상세한 내용이 기재되어 있다. 그 때문에, 도 6의 신택스에는, L1 기본 정보 중, 특히 본 기술에 관계되는 부분을 발췌하여 기술하고 있다.
비특허문헌 1 : ATSC Candidate Standard : Physical Layer Protocol (A/322) Doc. S32-230r456 April 2016
2비트의 L1B_content_tag는, 콘텐츠를 식별하는 태그값을 나타내고 있다. 3비트의 L1B_version은, L1 기본 정보의 버전을 나타내고 있다. 1비트의 L1B_slt_flag는, SLT(Service Labeling Table)가 존재하는지 여부를 나타내고 있다.
2비트의 L1B_time_info_flag는, 시각 정보가 존재하는지 여부를 나타내고 있다.
L1B_time_info_flag로서, "00"이 설정된 경우, 대상의 물리층 프레임에는, 시각 정보가 포함되어 있지 않는 것을 나타낸다. L1B_time_info_flag로서, "01"이 설정된 경우, 대상의 물리층 프레임에는, 밀리초 단위의 정밀도의 시각 정보가 포함되어 있는 것을 나타낸다.
L1B_time_info_flag로서, "10"이 설정된 경우, 대상의 물리층 프레임에는, 마이크로초 단위의 정밀도의 시각 정보가 포함되어 있는 것을 나타낸다. L1B_time_info_flag로서, "11"이 설정된 경우, 대상의 물리층 프레임에는, 나노초 단위의 시각 정보가 포함되어 있는 것을 나타낸다.
(L1 상세 정보의 구성)
도 7은 도 4의 L1 상세 정보(L1 Detail Signaling)의 신택스의 예를 도시하는 도면이다.
또한, L1 상세 정보에 대해서는, 상술한 비특허문헌 1의 「Table 9.8 L1-Detail Signaling Fields and Syntax」에 그 상세한 내용이 기재되어 있다. 그 때문에, 도 7의 신택스에는, L1 상세 정보 중, 특히 본 기술에 관계되는 부분을 발췌하여 기술하고 있다.
4비트의 L1D_version은, L1 상세 정보의 버전을 나타내고 있다.
3비트의 L1D_num_rf에 따른 루프에는, 채널 본딩(Channel Bonding)에 관한 파라미터가 배치된다. 즉, 19비트의 L1D_rf_frequency는, 채널 본딩에 의해 결합되는 RF 채널의 주파수를 나타내고 있다.
여기서, 도 6의 L1 기본 정보에 있어서, L1B_time_info_flag로서, "00" 이외가 설정된 경우, 시각 정보가 존재하고 있는 것을 나타내고 있으므로, 도 7의 L1 상세 정보에는, 시각 정보로서, 32비트의 L1D_time_sec와, 10비트의 L1D_time_msec가 배치된다. 여기서, L1D_time_sec는, 초 단위(sec)의 시각 정보를 나타내고 있다. 또한, L1D_time_msec는, 밀리초 단위(msec)의 시각 정보를 나타내고 있다.
또한, L1B_time_info_flag로서, "10" 또는 "11"이 설정된 경우에는, 시각 정보로서, 10비트의 L1D_time_usec가 더 배치된다. 여기서, L1D_time_usec는, 마이크로초 단위(usec)의 시각 정보를 나타내고 있다.
또한, L1B_time_info_flag로서, "11"이 설정된 경우에는, 시각 정보로서, 10비트의 L1D_time_nsec가 더 배치된다. 여기서, L1D_time_nsec는, 나노초 단위(nsec)의 시각 정보를 나타내고 있다.
이와 같이, L1B_time_info_flag로서, "01"이 설정된 경우에는, 밀리초 단위가 되므로, L1D_time_sec 및 L1D_time_msec가 배치된다. 또한, L1B_time_info_flag로서, "10"이 설정된 경우에는, 마이크로초 단위가 되므로, L1D_time_sec, L1D_time_msec 및 L1D_time_usec가 배치된다. 또한, L1B_time_info_flag로서, "11"이 설정된 경우에는, 나노초 단위가 되므로, L1D_time_sec, L1D_time_msec, L1D_time_usec 및 L1D_time_nsec가 배치된다.
(LLS 테이블의 구성)
도 8은 LLS 테이블의 신택스의 예를 도시하는 도면이다.
또한, LLS 테이블에 대해서는, 하기의 비특허문헌 2의 「Table 6.1 Common Bit Stream Syntax for LLS Tables」에 그 상세한 내용이 기재되어 있다. 그 때문에, 도 8의 신택스에는, LLS 테이블 중, 특히 본 기술에 관계되는 부분을 발췌하여 기술하고 있다.
비특허문헌 2 : ATSC Candidate Standard : Signaling, Delivery, Synchronization, and Error Protection (A/331) Doc. S33-174r15 January 2016
8비트의 LLS_table_id는, LLS 테이블의 ID를 나타내고 있다. 8비트의provider_id는, 프로바이더의 ID를 나타내고 있다. 8비트의 LLS_table_version은, LLS 테이블의 버전을 나타내고 있다.
LLS_table_id로서, "0x01"이 설정된 경우, LLS 시그널링으로서, SLT 메타데이터가 배치된다. LLS_table_id로서, "0x02"가 설정된 경우, LLS 시그널링으로서, RRT 메타데이터가 배치된다.
LLS_table_id로서, "0x03"이 설정된 경우, LLS 시그널링으로서, 시스템 시간(SystemTime)이 배치된다. 이 시스템 시간이, 상술한 시각 메타데이터에 상당한다.
(SystemTime 요소의 구성)
도 9는 시각 메타데이터로서의 SystemTime 요소의 구성예를 도시하는 도면이다. 또한, 도 9에 있어서, 요소와 속성 중, 속성에는 「@」가 붙여져 있다. 또한, 인덴트된 요소와 속성은, 그 상위의 요소에 대하여 지정된 것으로 된다.
SystemTime 요소는, currentUtcOffset 속성, ptpPrepend 속성, leap59 속성, leap61 속성, utcLocalOffset 속성, dsStatus 속성, dsDayOfMonth 속성 및 dsHour 속성의 상위 요소가 된다.
currentUtcOffset 속성에는, PTP와 UTC의 오프셋이 설정된다. ptpPrepend 속성에는, 물리층 프레임에서는 전송되지 않는 PTP의 상위의 16비트가 설정된다. 단, 여기서 설정되는 정보는 2106년 이전에는 불필요하다.
leap59 속성에는, UTC의 윤초의 삭제를 나타내는 플래그에 따른 값이 설정된다. leap61 속성에는, UTC의 윤초의 삽입을 나타내는 플래그에 따른 값이 설정된다.
utcLocalOffset 속성에는, UTC와 로컬 시각의 차(타임존)가 설정된다. dsStatus 속성에는, 여름 시간의 스테이터스가 설정된다. dsDayOfMonth 속성에는, 여름 시간의 개시와 종료의 일자가 설정된다. dsHour 속성에는, 여름 시간의 개시와 종료의 시각이 설정된다.
또한, 도 9에 있어서, "Use"의 항목이지만, "1"이 지정된 경우에는 그 요소 또는 속성은 반드시 하나만 지정되고, "0..1"이 지정된 경우에는, 그 요소 또는 속성을 지정할지 여부는 임의이다. 또한, "Data Type"의 항목이지만, "unsignedByte"또는 "unsignedshort"가 지정된 경우에는, 그 요소 또는 속성의 값이 정수형인 것을 나타내고 있다. "boolean"이 지정된 경우에는, 그 요소 또는 속성이 부울리언형인 것을 나타내고 있다. "duration"이 지정된 경우에는, 시간을 나타내는 데이터형이며, 어떤 일정 기간인 것을 나타내고 있다.
<3. 클라이언트 장치에서 처리되는 시각 정보>
(방송 미들웨어의 처리의 흐름)
도 10은 RF 디모듈레이터(101)와 방송 미들웨어(102)에 의해 실행되는 처리의 흐름을 설명하는 도면이다.
도 10에 있어서, RF 디모듈레이터(101)는, 안테나에 의해 수신된 방송파로부터 물리층 프레임을 추출하고, 그 프리앰블의 L1 시그널링으로부터 PTP 시각을 추출한다(S11). 또한, PTP 시각은 임의의 물리층 프레임에 포함된다.
PTP 시각은, RF 디모듈레이터(101)로부터, 방송 미들웨어(102)에 공급된다. 또한, 방송 미들웨어(102)는, LLS 시그널링으로서 전송되는 시각 메타데이터를, 미리 취득하여 기억하고 있고, 그 시각 메타데이터를 취득한다(S12).
방송 미들웨어(102)는 RF 디모듈레이터(101)로부터 공급되는 PTP 시각을, UTC 시각으로 변환한다(S13). 또한, 방송 미들웨어(102)는 스텝 S12의 처리에서 취득된 시각 메타데이터에 기초하여, 변환 전의 PTP 시각 또는 변환 후의 UTC 시각을 보정한다(S13). 이와 같이 하여 보정이 실시된 UTC 시각이, 브로드캐스트 시각으로 된다.
한편, 방송 미들웨어(102)는 스텝 S11의 처리에서 행해지는, 물리층 프레임으로부터의 PTP 시각의 추출과 동시(거의 동시)에, 시스템 클럭을 계측하여, 시스템 시각을 취득하고 있다(S21). 또한, 이 시스템 시각이 취득되는 타이밍은, RF 디모듈레이터(101)에 의한 시각 정보의 추출과 동시에 한하지 않고, 다른 타이밍이어도 된다.
예를 들어, 복조 LSI로서 구성되는 RF 디모듈레이터(101)로부터의 출력은, 디멀티플렉서의 기능을 갖는 시스템 온 칩(SoC : System on a Chip)에 입력되지만, 시각 정보를 ALP(ATSC Link-layer Protocol) 패킷 등의 MAC(Media Access Control) 프레임에 저장하여 시스템 온 칩에 전송할 때에, 그 전송의 타이밍에 시스템 시각이 계측되도록 해도 된다. 또한, ALP 패킷은, UDP 패킷을 포함하는 IP 패킷을 저장하는 레이어2의 패킷이다.
방송 미들웨어(102)는, 스텝 S13의 처리에서 얻어지는 브로드캐스트 시각(UTC 시각)과, 스텝 S21의 처리에서 얻어지는 시스템 시각을 페어링하고, 그 결과 얻어지는 시각 대응 정보를, 기억부(103)에 기억한다(S22).
이 시각 대응 정보가 기억되는 타이밍으로서는, 예를 들어 1 내지 5초의 간격 등, 물리층 프레임으로부터 PTP 시각이 추출된 타이밍에, 추출된 PTP 시각마다, 시스템 시각과 페어링하여, 시각 대응 정보로서 기억할 수 있다. 단, 시각 대응 정보를 기억하는 타이밍으로서는, 예를 들어 수시간 단위나 1일 단위 등, 운용에 따라서 그 타이밍을 변경할 수 있다. 또한, 기억부(103)에 있어서는, 기본적으로는 시각 대응 정보가 덮어쓰기 보존되어, 최신의 시각 대응 정보만이 유지되도록 한다.
그 후, 방송 미들웨어(102)는, 어플리케이션(121)으로부터 GetBroadcastTime 리퀘스트를 접수한 경우, 당해 리퀘스트에 따른 GetBroadcastTime 리스폰스를 생성한다(S23, S24). 여기서 생성되는 GetBroadcastTime 리스폰스에는, 스텝 S22의 처리에서 생성된 시각 대응 정보이며, 기억부(103)로부터 판독된 시각 대응 정보가 포함된다.
방송 미들웨어(102)는, 어플리케이션(121)에 대해, 스텝 S24의 처리에서 생성된 GetBroadcastTime 리스폰스를 회답한다(S25).
이상, RF 디모듈레이터(101)와 방송 미들웨어(102)에 의해 실행되는 처리의 흐름을 설명하였다.
(어플리케이션의 처리의 흐름)
도 11은 어플리케이션(121)에 의해 실행되는 처리의 흐름을 설명하는 도면이다.
도 11에 있어서, 어플리케이션(121)은, 콘텐츠의 재생 개시 시에, 방송 미들웨어(102)에 대해, GetBroadcastTime 리퀘스트를 발행한다(S51). 이 GetBroadcastTime 리퀘스트가 발행되면, 방송 미들웨어(102)에서는, 스텝 S23 내지 S25(도 10)가 실행되고, GetBroadcastTime 리스폰스가 회답된다.
어플리케이션(121)은 방송 미들웨어(102)로부터 회답되는 GetBroadcastTime 리스폰스를 수취한다(S52). 이 GetBroadcastTime 리스폰스에는, 시각 대응 정보로서, 브로드캐스트 시각과 시스템 시각을 페어링한 정보가 포함된다.
여기에서는, 설명의 편의상, 시각 대응 정보에 포함되는, 브로드캐스트 시각과 시스템 시각을 각각, BroadcastTime(1)과 SystemTime(1)라 칭하기로 한다. 즉, BroadcastTime(1)과 SystemTime(1)은, 과거의 어떤 시점에서의 브로드캐스트 시각과 시스템 시각의 조라고도 할 수 있다. 어플리케이션(121)은 BroadcastTime(1)과 SystemTime(1)을 일시적으로 기억(유지)한다(S53).
어플리케이션(121)은 Date( ) 함수를 실행함으로써, 그 시점에서의 시스템 시각으로서, SystemTime(2)을 취득한다(S54). 또한, Date( ) 함수는, 예를 들어 JavaScript(등록 상표)의 API(Application Program Interface)로서 제공된다.
어플리케이션(121)은, 스텝 S53의 처리에서 일시적으로 기억(유지)된 BroadcastTime(1)과 SystemTime(1), 및 스텝 S54의 처리에서 취득된 SystemTime(2)에 기초하여, SystemTime(2)에 대응하는 브로드캐스트 시각으로서, BroadcastTime(2)을 산출한다(S55). 즉, BroadcastTime(2)은, 그 시점에서의 시스템 시각에 대응하는, 그 시점에서의 브로드캐스트 시각이라고도 할 수 있다. 또한, BroadcastTime(2)의 산출 방법의 상세는, 도 12를 참조하여 후술한다.
어플리케이션(121)은, 스텝 S55의 처리에서 산출된 BroadcastTime(2)이 나타내는 시각에, 디코더(106)에 걸어야 할, DASH 세그먼트의 특정을 행한다(S56). 이에 의해, 적절한 타이밍에, DASH 클라이언트(105)로부터 디코더(106)에 대해 DASH 세그먼트가 전송되어, 콘텐츠의 재생이 행해진다. 또한, DASH 세그먼트의 특정 방법의 상세는, 도 13을 참조하여 후술한다.
이상, 어플리케이션(121)에 의해 실행되는 처리의 흐름을 설명하였다.
(브로드캐스트 시각의 산출 방법)
도 12는 도 11의 스텝 S55의 처리에 있어서의, 브로드캐스트 시각의 산출 방법을 설명하는 도면이다.
스텝 S71에 있어서, 어플리케이션(121)은, 방송 미들웨어(102)에 대해, GetBroadcastTime 리퀘스트를 발행함으로써, 시각 대응 정보를 취득한다. 여기에서는, 시각 대응 정보로서, 과거의 어떤 시점에서의 BroadcastTime(1)과 SystemTime(1)을 대응지은 정보가 취득된다.
스텝 S72에 있어서, 어플리케이션(121)은 Date( ) 함수를 실행함으로써, SystemTime(2)을 취득한다.
스텝 S73에 있어서, 어플리케이션(121)은, 스텝 S71, S72의 처리에서 얻어진 시각 정보를 사용하여, 하기의 식 (1)을 연산함으로써, BroadcastTime(2)을 산출한다. 이에 의해, 어플리케이션(121)에서는, 그 시점에서의 시스템 시각에 대응하는 브로드캐스트 시각으로서, SystemTime(2)에 대응하는 BroadcastTime(2)을 구할 수 있다.
Figure 112018108410636-pct00001
또한, 어플리케이션(121)에서는, 그 후에도 마찬가지로, 임의의 타이밍에, Date( ) 함수에 의해 SystemTime(N)이 취득되고(S74), 하기의 식 (2)가 연산됨으로써, BroadcastTime(N)이 산출된다(S75).
Figure 112018108410636-pct00002
(DASH 세그먼트의 특정 방법)
도 13은, 도 11의 스텝 S56의 처리에 있어서의, DASH 세그먼트의 특정 방법을 설명하는 도면이다.
어플리케이션(121)에서는, 상술한 브로드캐스트 시각의 산출 방법(예를 들어, 식 (1))에 의해 산출된 BroadcastTime(2)에 기초하여, MPD 메타데이터에 의해, BroadcastTime(2)이 나타내는 브로드캐스트 시각에서 미리 준비해야만 하는 DASH 세그먼트의 무비 프래그먼트(MF : Movie Fragment)를 특정한다. 즉, 여기에서 특정되는 무비 프래그먼트는, 적절한 타이밍에 후단의 디코더(106)에 전달할 수 있도록 준비를 개시해야 할, DASH 세그먼트의 무비 프래그먼트이다.
여기서, MPD 메타데이터에서는, 루트 요소인 MPD 요소의 availabilityStartTime 속성에, UTC 시각에 따른 스트리밍 배신의 개시 시각이 지정된다. 또한, MPD 메타데이터에는, Period 요소로서, Period(1), Period(2), ···이 지정되고, 그것들의 Period 요소에는, start 속성으로서, 각 Period(기간)의 개시 시각이 지정된다.
즉, 도 13에 도시한 바와 같이, MPD 메타데이터에서는, availabilityStartTime 속성에 의해 지정되는 개시 시각(월 클럭 시간축 상의 시각)과, Period 요소로 지정되는 시각(MPD 시간축 상의 시각)의 합에 의해, 각 Period의 선두의 시각이 나타내어진다.
또한, MPD 메타데이터는, Period 요소, AdaptationSet 요소 및 Representation 요소가 계층 구조로 기술되어 있다. Period 요소는, 텔레비전 프로그램 등의 콘텐츠의 구성을 기술하는 단위가 된다. AdaptationSet 요소 또는 Representation 요소는, 비디오나 오디오, 자막 등의 각각의 스트림마다 이용되며, 각각의 스트림의 속성을 기술할 수 있도록 되어 있다.
구체적으로는, AdaptationSet 요소는, 각종 소스로부터 인코딩된 스트림을 나타내고 있다. 그리고, 당해 스트림을, 예를 들어 비트 레이트 등의 파라메트릭에 따라, 클라이언트 장치(20)측에서 선택시키기 위해, AdaptationSet 요소 내에, Representation 요소를 배치하여, 예를 들어 비트 레이트 등의 파라미터가 상이한 복수의 선택지가 되는 스트림을 열거하고 있다. 통상, AdaptationSet 요소나 Representation 요소는, 비디오나 오디오, 자막의 스트림 등, 단일의 스트림에 대응시키고 있다.
또한, 트랜스포트ㆍ프로토콜로서, ROUTE를 사용하는 경우에는, 스트리밍의 파일 포맷으로서, MP4 파일 포맷을 사용하는 것이 상정된다. MP4 파일 포맷은, ISO/IEC 14496-12에서 규정되어 있는 ISO 베이스 미디어 파일 포맷(ISO Base Media File Format)의 파생 포맷이다. ISO 베이스 미디어 파일 포맷은, 박스(Box)라 불리는 트리 구조로 구성된다.
ROUTE 세션에서 전송되는 세그먼트는, 이니셜라이제이션 세그먼트(IS : Initialization Segment)와, 미디어 세그먼트(MS : Media Segment)로 구성된다. 이니셜라이제이션 세그먼트는, 데이터 압축 방식 등의 초기화 정보를 포함하고 있다. 또한, 미디어 세그먼트는, 비디오나 오디오, 자막 등의 스트림의 데이터를 저장하고 있다. 또한, 이 미디어 세그먼트가, 상술한 DASH 세그먼트에 상당하고 있다.
도 13에 있어서, 각 미디어 세그먼트(MS)는, 복수의 무비 프래그먼트(MF : Movie Fragment)로 구성된다. 예를 들어, 미디어 세그먼트 MS-1은, 무비 프래그먼트 MF-11, MF-12, MF-13으로 구성된다. 또한, 예를 들어 미디어 세그먼트 MS-2는, 무비 프래그먼트 MF-21, MF-22, MF-23으로 구성된다.
각 무비 프래그먼트의 Moof 헤더에는, Bmdt(Base Media Decode Time)가 기술되어 있다. Bmdt는 샘플의 디코드 개시 시간을 나타내고 있다.
예를 들어, 미디어 세그먼트 MS-1에 있어서, 무비 프래그먼트 MF-11의 Moof 헤더에는, Bmdt-11이 기술된다. 마찬가지로, 무비 프래그먼트 MF-12에는, 그 Moof 헤더에 Bmdt-12가 기술되고, 무비 프래그먼트 MF-13에는, 그 Moof 헤더에 Bmdt-13이 기술된다.
또한, 미디어 세그먼트 MS-2에 있어서, 무비 프래그먼트 MF-21의 Moof 헤더에는 Bmdt-21이 기술된다. 마찬가지로, 무비 프래그먼트 MF-22에는, 그 Moof 헤더에 Bmdt-22가 기술되고, 무비 프래그먼트 MF-23에는, 그 Moof 헤더에 Bmdt-23이 기술된다.
여기서, 상술한 스텝 S73의 처리(도 12)에서 산출된 BroadcastTime(2)이 나타내는 시각이, 도 13의 시간축 상의 시각 ta가 되는 경우, 어플리케이션(121)은 무비 프래그먼트 MF-22를, 다음 렌더링의 대상으로 한다. 그리고, 어플리케이션(121)은 availabilityStartTime 속성에 의해 지정되는 시각과, Period 요소의 start 속성에 의해 지정되는 시각과, 무비 프래그먼트 MF-22의 Bmdt-22가 나타내는 시각의 합(MPD@availabilityStartTime+MPD/Period@start+Bmdt-22)에 의해 얻어지는 시각(이하, MF-22 제시 시각이라 함)에, 미디어 세그먼트 MS-2의 무비 프래그먼트 MF-22가 재생(출력)되도록 제어한다.
구체적으로는, 어플리케이션(121)은, MF-22 제시 시각에, 미디어 세그먼트 MS-2의 무비 프래그먼트 MF-22가 재생되도록, 적절한 타이밍에, DASH 클라이언트(105)로부터 디코더(106)에 대해, 미디어 세그먼트 MS-2의 무비 프래그먼트 MF-22가 전달되도록 한다(전송되도록 한다).
즉, 어플리케이션(121)은, BroadcastTime(2)=SystemTime(2)이 되는 시점에서, 하기의 식 (3)을 연산함으로써 구해지는 시스템 시각(MF-22 제시 시각)에, 미디어 세그먼트 MS-2의 무비 프래그먼트 MF-22가 재생(출력)되도록, 당해 무비 프래그먼트 MF-22가, 디코더(106)에 전달되도록 한다.
Figure 112018108410636-pct00003
또한, 여기에서는, 브로드캐스트 시각으로서, BroadcastTime(2)이 산출된 경우를 예시하였지만, BroadcastTime(2) 이후에 대해서도 마찬가지로 처리함으로써, 예를 들어 MPD 메타데이터에 있어서, BroadcastTime(N)이 나타내는 브로드캐스트 시각에서 미리 준비해야 할 DASH 세그먼트(미디어 세그먼트)의 무비 프래그먼트를 특정하고, 적절한 타이밍에, 디코더(106)에 전달하는 것이 가능해진다.
또한, 여기서는, DASH 세그먼트의 특정 방법으로서, 미디어 세그먼트 MS-2의 무비 프래그먼트 MF-22가 특정되는 경우를 일례로 설명하였지만, 다른 무비 프래그먼트(MF)에 대해서도 마찬가지로 특정되며, 적절한 타이밍에, 후단의 디코더(106)에 전달되게 된다.
<4. 어플리케이션과 방송 미들웨어간의 메시징>
도 14는 어플리케이션(121)과 방송 미들웨어(102) 사이의 메시징을 설명하는 도면이다.
상술한 바와 같이, 어플리케이션(121)은 방송 미들웨어(102)에 대해 GetBroadcastTime 리퀘스트와 GetBroadcastTime 리스폰스를 교환함으로써, 시각 대응 정보를 취득할 수 있다. 이 GetBroadcastTime 리퀘스트와 GetBroadcastTime 리스폰스의 교환은, 예를 들어 웹 소켓과 JSON-RPC를 조합함으로써, 실현할 수 있다.
웹 소켓(WebSocket)은, W3C(World Wide Web Consortium)와 IETF(The Internet Engineering Task Force)에 의해 책정된, 웹 서버와 브라우저 사이의 통신의 규격이다. JSON-RPC는, 텍스트 포맷의 1종인 JSON(JavaScript(등록 상표) Object Notation) 형식으로, RPC(Remote Procedure Call)하기 위한 프로토콜이다.
도 14에 있어서, 클라이언트 장치(20)에는, 소프트웨어로서 제공되는 웹 소켓 서버가 설치되어 있다. 어플리케이션(121)과 방송 미들웨어(102) 사이에서, 당해 웹 소켓 서버를 통해, 커넥션이 확립되면, 어플리케이션(121)과 방송 미들웨어(102)는, JSON-RPC를 이용하여, 메시지를 교환할 수 있다.
여기서, 도 14의 프로토콜 스택에 도시한 바와 같이, 개념적으로는, 웹 소켓의 계층은, IP층과 HTTP/TCP층의 상위의 계층으로 된다. 또한, JSON-RPC의 계층은, 웹 소켓의 계층의 상위의 계층으로 된다. 그리고, 이와 같은 프로토콜에서, 어플리케이션(121)과 방송 미들웨어(102)는, GetBroadcastTime 리퀘스트와 GetBroadcastTime 리스폰스를 교환하게 된다.
또한, 여기에서는, 어플리케이션(121)과 방송 미들웨어(102) 사이의 메시징 프로토콜로서, 웹 소켓과 JSON-RPC를 조합을 이용한 경우를 설명하였지만, 다른 프로토콜을 이용하도록 해도 된다. 또한, 어플리케이션(121)을 실행하는 브라우저(104)에 실장되는 API(Application Programming Interface) 등을 이용하여 메시지를 교환하도록 해도 된다. 요컨대, 어플리케이션(121)과 방송 미들웨어(102) 사이에서, 메시지를 교환할 수 있으면 되고, 그 실현 방법은 임의이다.
(GetBroadcastTime 리퀘스트)
도 15는 GetBroadcastTime 리퀘스트의 정의의 예를 도시하는 도면이다.
method, params는, JSON-RPC에 의해 규정되어 있다.
method에는 호출되는 메소드의 이름이 설정된다. GetBroadcastTime 리퀘스트의 경우, "org.atsc.query.broadcastTime"을 기술함으로써, 리퀘스트의 종류가, GetBroadcastTime 리퀘스트인 것을 식별할 수 있도록 하고 있다.
params에는 메소드의 인수(파라미터)가 설정된다. GetBroadcastTime 리퀘스트의 경우에는, 특히, 파라미터를 설정할 필요는 없다.
도 16은 GetBroadcastTime 리퀘스트의 메시지의 예를 도시하는 도면이다. 이 메시지는, JSON 형식으로 기술되어 있다. JSON 형식의 오브젝트는, 키와 값의 페어를 콜론(:)으로 쌍으로 하고, 이들 쌍을 콤마(,)로 구획하여 제로개 이상 열거하고, 전체를 파괄호({ })로 묶음으로써 표현된다.
도 16의 메시지에 있어서는, "jsonrpc"인 키에 대해, 그 버전을 나타내는 "2.0"인 값이 설정되어 있다. 즉, 방송 미들웨어(102)는, 이 값을 참조하여, JSON-RPC 2.0에 따른 리퀘스트로서 처리할지 여부를 판단하게 된다.
"method"인 키에 대해, "org.atsc.query.broadcastTime"이 설정되어 있다. 즉, 방송 미들웨어(102)는 이 값을 참조하여, 리퀘스트의 종류가, GetBroadcastTime 리퀘스트인 것을 판단할 수 있다.
"id"인 키에 대해, "37"이 설정되어 있다. 이 id는, 리퀘스트에 대한 리스폰스의 대응을 취하기 위한 식별 정보이다. 즉, 방송 미들웨어(102)는 id가 "37"인 GetBroadcastTime 리퀘스트를 접수한 경우에는, 그 회답인 GetBroadcastTime 리스폰스에 대해, 동일한 id인 "37"을 설정하게 된다.
(GetBroadcastTime 리스폰스)
도 17은 GetBroadcastTime 리스폰스의 정의의 예를 도시하는 도면이다.
result는 JSON-RPC에 의해 규정되어 있다.
result에는 메소드의 복귀값이 설정된다. GetBroadcastTime 리스폰스의 경우, JSON 형식의 오브젝트가 설정된다. 이 오브젝트에서는, 프로퍼티로서, "broadcastTime"인 키에 대해, 브로드캐스트 시각의 값이 설정되고, "systemTime"인 키에 대해, 시스템 시각의 값이 설정된다. 단, 브로드캐스트 시각과 시스템 시각의 데이터형은, 문자열형(string)으로 된다.
또한, "required"로서, "broadcastTime"과 "systemTime"이 설정되어 있지만, 이것은, 브로드캐스트 시각과 시스템 시각을 양쪽 모두 설정할 필요가 있는 것을 의미한다. 즉, 브로드캐스트 시각과 시스템 시각 중, 어느 한쪽의 시각만을 설정하는 것은 허가되지 않는다.
즉, 이 "broadcastTime"과 "systemTime"에서 설정되는, 브로드캐스트 시각과 시스템 시각의 조가, 상술한 시각 대응 정보에 상당하는 것이다. 단, 여기에서는, 브로드캐스트 시각과 시스템 시각의 조가 정의되어 있지만, 예를 들어 브로드캐스트 시각과 시스템 시각의 차분의 시각을 나타내는 차분 정보 등, 다른 형식의 정보가 설정되도록 해도 된다.
또한, 도 17에 있어서는, 브로드캐스트 시각은, 방송 스트림에 포함되는 월 클럭 시각이며, 시스템 시각은, 브로드캐스트 시각을 추출하였을 때의 시각이라고 정의되어 있다.
도 18은 GetBroadcastTime 리스폰스의 메시지의 예를 도시하는 도면이다.
도 18의 메시지에 있어서는, "jsonrpc"인 키에 대해, 그 버전을 나타내는 "2.0"인 값이 설정되어 있다. 즉, 방송 미들웨어(102)가 JSON-RPC 2.0에 따른 리퀘스트로서 처리함을 나타내고 있다.
"result"인 키에 대해, "broadcastTime"과 "systemTime"이 설정되어 있다. "broadcastTime"인 키에는, "Thu Apr 28 2016 10:31:14 GMT+0900"이 설정되어 있다. 또한, "systemTime"인 키에는, "Thu Apr 28 2016 10:31:28 GMT+0900"이 설정되어 있다.
즉, 브로드캐스트 시각으로서, 2016년 4월 28일(목) 10:31:14가 설정되고, 시스템 시각으로서, 2016년 4월 28일(목) 10:31:28이 설정되어 있다. 이 시각의 조가, 상술한 시각 대응 정보에 상당하는 것은 앞서 설명한 바와 같다. 또한, 이 예에서는, 브로드캐스트 시각과 시스템 시각의 차분은, 14초가 되므로, 이 14초인 차분 정보를, 시각 대응 정보로 해도 된다.
"id"인 키에 대해, "37"이 설정되어 있다. 즉, 방송 미들웨어(102)는 어플리케이션(121)으로부터 접수한 GetBroadcastTime 리퀘스트의 메시지 id와 동일한 id인 "37"을, 그 회답인 GetBroadcastTime 리스폰스의 메시지 id로 설정한 것으로 된다.
<5. 클라이언트 장치에서 실행되는 처리의 흐름>
다음에, 도 19 내지 도 21의 흐름도를 참조하여, 클라이언트 장치(20)에서 실행되는 처리의 흐름을 설명한다.
(시각 대응 정보 관리 처리)
먼저, 도 19의 흐름도를 참조하여, 클라이언트 장치(20)에 의해 실행되는 시각 대응 정보 관리 처리의 흐름을 설명한다.
스텝 S201에 있어서, RF 디모듈레이터(101)는, 안테나를 통해, 방송 서버(10)로부터 송신되어 오는 방송파를 수신한다.
스텝 S202에 있어서, RF 디모듈레이터(101)는, 스텝 S201의 처리에서 수신된 방송파로부터 물리층 프레임을 추출한다.
스텝 S203에 있어서, RF 디모듈레이터(101)는, 스텝 S202의 처리에서 추출된 물리층 프레임 중, 임의의 물리층 프레임으로부터, PTP 시각을 추출한다.
스텝 S204에 있어서, 방송 미들웨어(102)는, 스텝 S203의 처리에서 PTP 시각이 추출되는 것과 동시(거의 동시)에, 시스템 클럭 리소스(21)로부터 시스템 시각을 취득한다.
스텝 S205에 있어서, 방송 미들웨어(102)는, 스텝 S203의 처리에서 얻어진 PTP 시각을, 브로드캐스트 시각으로서, 스텝 S204의 처리에서 얻어진 시스템 시각과 대응짓기를 함으로써, 시각 대응 정보를 생성한다.
스텝 S206에 있어서, 방송 미들웨어(102)는 스텝 S205의 처리에서 생성된 시각 대응 정보를, 기억부(103)에 기억한다.
이상, 시각 대응 정보 관리 처리의 흐름을 설명하였다. 이 시각 대응 정보 관리 처리에서는, 동시(거의 동시)에 얻어지는 브로드캐스트 시각과 시스템 시각으로부터 시각 대응 정보가 생성되고, 기억부(103)에 기억된다.
(콘텐츠 재생 제어 처리)
다음에, 도 20의 흐름도를 참조하여, 콘텐츠 재생 제어 처리의 흐름을 설명한다.
스텝 S221에 있어서, 어플리케이션(121)은, 방송 미들웨어(102)로부터, 시각 대응 정보를 취득한다. 여기에서는, 어플리케이션(121)이 방송 미들웨어(102)에 대해 GetBroadcastTime 리퀘스트를 발행하고, 그 회답으로서의 GetBroadcastTime 리스폰스를 수취함으로써, 시각 대응 정보가 취득된다.
단, 스텝 S221의 처리에서 얻어지는 시각 대응 정보는, 상술한 시각 대응 정보 관리 처리(도 19)에서, 방송 미들웨어(102)에 의해 생성된 것이다.
스텝 S222에 있어서, 어플리케이션(121)은 그 시점에서의 시스템 시각을 취득한다. 여기에서는, 어플리케이션(121)은 Date( ) 함수를 실행함으로써, 그 시점에서의 시스템 시각(SystemTime(2))을 취득할 수 있다.
스텝 S223에 있어서, 어플리케이션(121)은 스텝 S221의 처리에서 얻어진 시각 대응 정보와, 스텝 S222의 처리에서 얻어진 그 시점에서의 시스템 시각에 기초하여, 그 시점에서의 브로드캐스트 시각을 산출한다.
여기서, 시각 대응 정보에는, 과거의 어떤 시점에서의 브로드캐스트 시각(BroadcastTime(1))과 시스템 시각(SystemTime(1))이 대응지어져 있으므로, 그것에, 그 시점에서의 시스템 시각(SystemTime(2))을 가하여, 상술한 식 (1)을 연산함으로써, 그 시점에서의 브로드캐스트 시각(BroadcastTime(2))을 구할 수 있다.
스텝 S224에 있어서, 어플리케이션(121)은 스텝 S223의 처리에서 얻어진 브로드캐스트 시각(BroadcastTime(2))에 따른 특정한 타이밍에, 특정한 DASH 세그먼트(미디어 세그먼트)의 무비 프래그먼트가, 디코더(106)에 전송되도록 한다.
이상, 콘텐츠 재생 제어 처리의 흐름을 설명하였다. 이 콘텐츠 재생 제어 처리에서는, 어플리케이션(121)에 의해, 디코더(106)에 전송되는 DASH 세그먼트(미디어 세그먼트)의 무비 프래그먼트가 제어됨으로써, 방송 서버(10)로부터 스트리밍 배신되는 콘텐츠의 재생이 제어된다.
(콘텐츠 재생 처리)
마지막으로, 도 21의 흐름도를 참조하여, 콘텐츠 재생 처리의 흐름을 설명한다.
스텝 S241 내지 S242에 있어서는, 도 19의 스텝 S201 내지 202와 마찬가지로, RF 디모듈레이터(101)에 의해, 수신된 방송파로부터, 물리층 프레임이 추출된다.
스텝 S243에 있어서, 방송 미들웨어(102)는 필터링 처리를 행한다. 이 필터링 처리에서는, LLS 시그널링이나 SLS 시그널링에 기초하여, 물리층 프레임에 대한 복조 처리에서 얻어지는 복조 데이터로부터, IP 패킷이나 UDP 패킷이 추출되고, ROUTE 세션에서 전송되는 DASH 세그먼트가 추출된다.
스텝 S244에 있어서, DASH 클라이언트(105)는 스텝 S243의 처리에서 얻어지는 DASH 세그먼트를 처리한다. 단, DASH 클라이언트(105)는 어플리케이션(121)으로부터의 제어(도 20의 스텝 S224의 처리)에 따라, 적절한 타이밍에, DASH 세그먼트(미디어 세그먼트)의 무비 프래그먼트가, 디코더(106)에 전달되도록 한다.
스텝 S245에 있어서, 디코더(106)는, 스텝 S244의 처리에서 적절한 타이밍에 전송되어 오는, DASH 세그먼트로부터 얻어지는 비디오와 오디오의 데이터의 디코드를 행한다.
스텝 S246에 있어서, 출력부(107)는, 스텝 S245의 처리에서 디코드된 비디오와 오디오의 데이터에 대한 렌더링을 행하고, 그 결과 얻어지는 데이터를 출력한다.
이상, 콘텐츠 재생 처리의 흐름을 설명하였다. 이 콘텐츠 재생 처리에서는, 어플리케이션(121)에 의한 콘텐츠 재생 제어 처리(도 20)에 따라, 방송 서버(10)로부터 스트리밍 배신되는 콘텐츠의 재생이 행해진다.
이에 의해, 예를 들어 방송 서버(10)와 클라이언트 장치(20)(의 어플리케이션(121))에서, 시각 정보를 동기할 수 없는 경우에, 클라이언트 장치(20)에 있어서, 어플리케이션(121)으로부터 시스템 시각을 간단하게 변경할 수 없을 때라도, 당해 클라이언트 장치(20)는 확실하게, 방송 서버(10)로부터 스트리밍 배신되는 콘텐츠를 재생할 수 있다.
또한, 상술한 설명에서는, 시각 대응 정보를 사용한 동기 제어로서, 콘텐츠의 재생 제어를 설명하였지만, 예를 들어 어플리케이션(121)이 처리해야 할 이벤트로서, 시간 동기가 필요한 이벤트가 통지된 경우에는, 상술한 시각 대응 정보를 사용한 동기 제어를 사용함으로써, 방송국측이 의도하는 정확한 제시 제어를 행할 수 있다.
<6. 변형예>
상술한 설명으로서는, 디지털 방송의 규격으로서, 미국 등에서 채용되고 있는 방식인 ATSC(특히, ATSC3.0)를 설명하였지만, 본 기술은, 일본 등이 채용하는 방식인 ISDB(Integrated Services Digital Broadcasting)나, 유럽의 각국 등이 채용하는 방식인 DVB(Digital Video Broadcasting) 등에 적용하도록 해도 된다. 또한, 상술한 설명에서는, IP 전송 방식이 채용되는 ATSC3.0을 예로 하여 설명하였지만, IP 전송 방식에 한하지 않고, 예를 들어 MPEG2-TS(Transport Stream) 방식 등의 다른 방식에 적용하도록 해도 된다.
또한, 디지털 방송의 규격으로서는, 지상파 방송 외에, 방송 위성(BS : Broadcasting Satellite)이나 통신 위성(CS : Communications Satellite) 등을 이용한 위성 방송이나, 케이블 텔레비전(CATV) 등의 유선 방송 등의 규격에 적용할 수 있다.
또한, 상술한 시그널링이나 패킷 등의 명칭은 일례이며, 다른 명칭이 사용되는 경우가 있다. 단, 이들 명칭의 차이는 형식적인 차이이며, 대상의 시그널링이나 패킷 등의 실질적인 내용이 상이한 것은 아니다. 예를 들어, ALP(ATSC Link-layer Protocol) 패킷은, Generic 패킷 등이라 칭해지는 경우가 있다.
또한, 어플리케이션은, HTML5 등의 마크업 언어나 JavaScript(등록 상표) 등의 스크립트 언어로 개발된 어플리케이션에 한하지 않고, 예를 들어 Java(등록 상표) 등의 프로그래밍 언어로 개발된 어플리케이션이어도 된다. 또한, 어플리케이션은, 브라우저에 의해 실행되는 어플리케이션에 한하지 않고, 소위 네이티브 어플리케이션으로서, OS(Operating System) 환경(제시 제어 환경) 등에서 실행되도록 해도 된다.
또한, 본 기술은, 전송로로서, 방송망 이외의 전송로, 즉, 예를 들어 인터넷이나 전화망 등의 통신 회선(통신망) 등을 이용하는 것을 상정하여 규정되어 있는 소정의 규격(디지털 방송의 규격 이외의 규격) 등에도 적용할 수 있다. 그 경우에는, 전송 시스템(1)(도 1)의 전송로(30)로서, 인터넷이나 전화망 등의 통신 회선이 이용되고, 방송 서버(10)는 인터넷 상에 설치된 통신 서버로 할 수 있다. 그리고, 당해 통신 서버와, 클라이언트 장치(20)가 전송로(30)(통신 회선)를 통해 쌍방향의 통신을 행하게 된다.
<7. 컴퓨터의 구성>
상술한 일련의 처리는, 하드웨어에 의해 실행할 수도 있고, 소프트웨어에 의해 실행할 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 컴퓨터에 인스톨된다. 도 22는 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어의 구성예를 도시하는 도면이다.
컴퓨터(1000)에 있어서, CPU(Central Processing Unit)(1001), ROM(Read Only Memory)(1002), RAM(Random Access Memory)(1003)은, 버스(1004)에 의해 서로 접속되어 있다. 버스(1004)에는, 또한, 입출력 인터페이스(1005)가 접속되어 있다. 입출력 인터페이스(1005)에는, 입력부(1006), 출력부(1007), 기록부(1008), 통신부(1009) 및 드라이브(1010)가 접속되어 있다.
입력부(1006)는 키보드, 마우스, 마이크로폰 등으로 이루어진다. 출력부(1007)는 디스플레이, 스피커 등으로 이루어진다. 기록부(1008)는 하드 디스크나 불휘발성이 메모리 등으로 이루어진다. 통신부(1009)는 네트워크 인터페이스 등으로 이루어진다. 드라이브(1010)는 자기 디스크, 광 디스크, 광자기 디스크, 또는 반도체 메모리 등의 리무버블 기록 매체(1011)를 구동한다.
이상과 같이 구성되는 컴퓨터(1000)에서는, CPU(1001)가, ROM(1002)이나 기록부(1008)에 기록되어 있는 프로그램을, 입출력 인터페이스(1005) 및 버스(1004)를 통해, RAM(1003)에 로드하여 실행함으로써, 상술한 일련의 처리가 행해진다.
컴퓨터(1000)(CPU(1001))가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 기록 매체(1011)에 기록하여 제공할 수 있다. 또한, 프로그램은, 로컬 에어리어 네트워크, 인터넷, 디지털 위성 방송 등의, 유선 또는 무선의 전송 매체를 통해 제공할 수 있다.
컴퓨터(1000)에서는, 프로그램은, 리무버블 기록 매체(1011)를 드라이브(1010)에 장착함으로써, 입출력 인터페이스(1005)를 통해, 기록부(1008)에 인스톨할 수 있다. 또한, 프로그램은, 유선 또는 무선의 전송 매체를 통해, 통신부(1009)에서 수신하고, 기록부(1008)에 인스톨할 수 있다. 그 밖에, 프로그램은, ROM(1002)이나 기록부(1008)에, 미리 인스톨해 둘 수 있다.
여기서, 본 명세서에 있어서, 컴퓨터가 프로그램에 따라서 행하는 처리는, 반드시 흐름도로서 기재된 순서에 따라서 시계열로 행해질 필요는 없다. 즉, 컴퓨터가 프로그램에 따라서 행하는 처리는, 병렬적 혹은 개별로 실행되는 처리(예를 들어, 병렬 처리 혹은 오브젝트에 의한 처리)도 포함한다. 또한, 프로그램은, 하나의 컴퓨터(프로세서)에 의해 처리되는 것이어도 되고, 복수의 컴퓨터에 의해 분산 처리되는 것이어도 된다.
또한, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니고, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
또한, 본 기술은 이하와 같은 구성을 취할 수 있다.
(1)
콘텐츠를 수신하는 수신부와,
상기 콘텐츠의 송신측으로부터 제공되는 제1 시각 정보와, 상기 콘텐츠의 수신측에서 생성되는 제2 시각 정보를 대응지은 시각 대응 정보에 기초하여, 상기 제2 시각 정보에 대응한 상기 제1 시각 정보에 따른 시간축으로, 상기 콘텐츠의 재생을 제어하는 제어부를 구비하는 수신 장치.
(2)
상기 콘텐츠는, 상기 콘텐츠의 데이터를 전송하는 단위인 프레임 단위로 전송되고,
상기 제1 시각 정보는, 상기 프레임에 포함되고,
상기 제어부는,
상기 프레임에 포함되는 상기 제1 시각 정보가 수신된 경우, 상기 제1 시각 정보가 수신된 타이밍에 따른 상기 제2 시각 정보를 취득하고,
취득된 상기 제2 시각 정보를, 수신된 상기 제1 시각 정보와 대응지어, 상기 시각 대응 정보로서 관리하는 (1)에 기재된 수신 장치.
(3)
상기 제어부는,
과거의 어떤 시점에서의 제1 시각 정보와 제2 시각 정보를 대응지은 상기 시각 대응 정보를 취득하고,
그 시점에서의 제2 시각 정보를 취득하고,
상기 그 시점에서의 제2 시각 정보와, 상기 과거의 어떤 시점에서의 제2 시각 정보와, 상기 과거의 어떤 시점에서의 제1 시각 정보의 관계로부터, 그 시점에서의 제1 시각 정보를 산출하고,
산출된 상기 그 시점에서의 제1 시각 정보에 기초하여, 상기 콘텐츠의 재생을 제어하는 (2)에 기재된 수신 장치.
(4)
상기 시각 대응 정보는, 상기 과거의 어떤 시점에서의 제1 시각 정보가 나타내는 시각과, 상기 과거의 어떤 시점에서의 제2 시각 정보가 나타내는 시각 그 자체를 나타낸 정보, 또는 상기 과거의 어떤 시점에서의 제1 시각 정보가 나타내는 시각과, 상기 과거의 어떤 시점에서의 제2 시각 정보가 나타내는 시각의 차분의 정보인 (3)에 기재된 수신 장치.
(5)
상기 콘텐츠는, 방송파에 의해 배신되는 방송 콘텐츠이며,
상기 제1 시각 정보는, PTP(Precision Time Protocol)이고,
상기 제2 시각 정보는, 시스템 시각(System Time)인 (1) 내지 (4) 중 어느 하나에 기재된 수신 장치.
(6)
상기 제1 시각 정보는, 임의의 프레임에 포함되고,
상기 제1 시각 정보가 나타내는 시각은, 당해 프레임의 선두의 위치의 시각을 나타내고 있는 (2)에 기재된 수신 장치.
(7)
상기 제어부는,
상기 콘텐츠를 재생하기 위한 어플리케이션과,
상기 시각 대응 정보를 관리하기 위한 미들웨어의 동작을 제어하고,
상기 미들웨어는, 상기 어플리케이션으로부터의 요구에 따라, 상기 시각 대응 정보를 제공하고,
상기 어플리케이션은, 상기 미들웨어로부터 제공되는 상기 시각 대응 정보에 기초하여, 상기 콘텐츠의 재생을 제어하는 (1) 내지 (6) 중 어느 하나에 기재된 수신 장치.
(8)
상기 프레임은, 상기 제1 시각 정보를 보정하기 위한 시각 메타데이터를 포함하는 프리앰블을 갖고,
상기 제어부는, 상기 시각 메타데이터에 기초하여, 상기 제1 시각 정보를 보정하는 (2)에 기재된 수신 장치.
(9)
상기 콘텐츠는, MPEG-DASH(Dynamic Adaptive Streaming over HTTP)에 준거하여 스트리밍 배신되고,
상기 제어부는, MPD(Media Presentation Description) 메타데이터에 기초하여, 상기 콘텐츠의 재생을 제어하는 (1) 내지 (8) 중 어느 하나에 기재된 수신 장치.
(10)
수신 장치의 데이터 처리 방법에 있어서,
상기 수신 장치가,
콘텐츠를 수신하고,
상기 콘텐츠의 송신측으로부터 제공되는 제1 시각 정보와, 상기 콘텐츠의 수신측에서 생성되는 제2 시각 정보를 대응지은 시각 대응 정보에 기초하여, 상기 제2 시각 정보에 대응한 상기 제1 시각 정보에 따른 시간축으로, 상기 콘텐츠의 재생을 제어하는 스텝을 포함하는 데이터 처리 방법.
1 : 전송 시스템
10 : 방송 서버
20 : 클라이언트 장치
30 : 전송로
101 : RF 디모듈레이터
102 : 방송 미들웨어
103 : 기억부
104 : 브라우저
105 : DASH 클라이언트
106 : 디코더
107 : 출력부
121 : 어플리케이션
1000 : 컴퓨터
1001 : CPU

Claims (12)

  1. 콘텐츠, 및 상기 콘텐츠의 송신측으로부터 제공되는 제1 시각 정보와, 상기 콘텐츠의 수신측에서 생성되는 제2 시각 정보를, 상기 제2 시각 정보에 대응한 상기 제1 시각 정보에 따른 시간축으로 대응지은 시각 대응 정보를 수신하도록 구성되는 수신부 - 상기 콘텐츠 및 시각 대응 정보는 인터넷 프로토콜(IP) 전송 방식을 이용한 브로드캐스트를 통해 수신됨 - ;
    상기 시각 대응 정보에 기초하여 상기 콘텐츠의 재생을 제어하도록 구성되는 제어부
    를 구비하는 수신 장치.
  2. 제1항에 있어서,
    상기 콘텐츠는, 상기 콘텐츠의 데이터를 전송하는 단위인 프레임 단위로 전송되고,
    상기 제1 시각 정보는, 상기 프레임에 포함되고,
    상기 제어부는,
    상기 프레임에 포함되는 상기 제1 시각 정보가 수신된 경우, 상기 제1 시각 정보가 수신된 타이밍에 따른 상기 제2 시각 정보를 취득하고,
    취득된 상기 제2 시각 정보를, 수신된 상기 제1 시각 정보와 대응지어, 상기 시각 대응 정보로서 관리하는 수신 장치.
  3. 제2항에 있어서,
    상기 제어부는,
    과거의 어떤 시점에서의 제1 시각 정보와 제2 시각 정보를 대응지은 상기 시각 대응 정보를 취득하고,
    그 시점에서의 제2 시각 정보를 취득하고,
    상기 그 시점에서의 제2 시각 정보와, 상기 과거의 어떤 시점에서의 제2 시각 정보와, 상기 과거의 어떤 시점에서의 제1 시각 정보의 관계로부터, 그 시점에서의 제1 시각 정보를 산출하고,
    산출된 상기 그 시점에서의 제1 시각 정보에 기초하여, 상기 콘텐츠의 재생을 제어하는 수신 장치.
  4. 제3항에 있어서,
    상기 시각 대응 정보는, 상기 과거의 어떤 시점에서의 제1 시각 정보가 나타내는 시각과, 상기 과거의 어떤 시점에서의 제2 시각 정보가 나타내는 시각 그 자체를 나타낸 정보, 또는 상기 과거의 어떤 시점에서의 제1 시각 정보가 나타내는 시각과, 상기 과거의 어떤 시점에서의 제2 시각 정보가 나타내는 시각의 차분의 정보인 수신 장치.
  5. 제4항에 있어서,
    상기 콘텐츠는, 방송파에 의해 배신되는 방송 콘텐츠이며,
    상기 제1 시각 정보는, PTP(Precision Time Protocol)이고,
    상기 제2 시각 정보는, 시스템 시각(System Time)인 수신 장치.
  6. 제2항에 있어서,
    상기 제1 시각 정보는, 임의의 프레임에 포함되고,
    상기 제1 시각 정보가 나타내는 시각은, 당해 프레임의 선두의 위치의 시각을 나타내고 있는 수신 장치.
  7. 제1항에 있어서,
    상기 제어부는,
    상기 콘텐츠를 재생하기 위한 어플리케이션과,
    상기 시각 대응 정보를 관리하기 위한 미들웨어의 동작을 제어하고,
    상기 미들웨어는, 상기 어플리케이션으로부터의 요구에 따라, 상기 시각 대응 정보를 제공하고,
    상기 어플리케이션은, 상기 미들웨어로부터 제공되는 상기 시각 대응 정보에 기초하여, 상기 콘텐츠의 재생을 제어하는 수신 장치.
  8. 제2항에 있어서,
    상기 프레임은, 상기 제1 시각 정보를 보정하기 위한 시각 메타데이터를 포함하는 프리앰블을 갖고,
    상기 제어부는, 상기 시각 메타데이터에 기초하여, 상기 제1 시각 정보를 보정하는 수신 장치.
  9. 제1항에 있어서,
    상기 콘텐츠는, MPEG-DASH(Dynamic Adaptive Streaming over HTTP)에 준거하여 스트리밍 배신되고,
    상기 제어부는, MPD(Media Presentation Description) 메타데이터에 기초하여, 상기 콘텐츠의 재생을 제어하는 수신 장치.
  10. 수신 장치의 데이터 처리 방법에 있어서,
    상기 수신 장치가,
    콘텐츠, 및 상기 콘텐츠의 송신측으로부터 제공되는 제1 시각 정보와, 상기 콘텐츠의 수신측에서 생성되는 제2 시각 정보를, 상기 제2 시각 정보에 대응한 상기 제1 시각 정보에 따른 시간축으로 대응지은 시각 대응 정보를 수신하고 - 상기 콘텐츠 및 시각 대응 정보는 인터넷 프로토콜(IP) 전송 방식을 이용한 브로드캐스트를 통해 수신됨 - ,
    상기 시각 대응 정보에 기초하여 상기 콘텐츠의 재생을 제어하는 스텝을 포함하는 데이터 처리 방법.
  11. 제1항에 있어서,
    상기 시각 대응 정보는 상기 IP 전송 방식의 물리층 위의 층에서 수신되는, 수신 장치.
  12. 제1항에 있어서,
    상기 시각 대응 정보는 상기 IP 전송 방식의 UDP(User Datagram Protocol)층에 인접한 상위층(upper layer)에서 수신되는, 수신 장치.
KR1020187031839A 2016-05-13 2017-04-28 수신 장치 및 데이터 처리 방법 KR102373187B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2016-097312 2016-05-13
JP2016097312 2016-05-13
PCT/JP2017/016989 WO2017195668A1 (ja) 2016-05-13 2017-04-28 受信装置、及び、データ処理方法

Publications (2)

Publication Number Publication Date
KR20190008204A KR20190008204A (ko) 2019-01-23
KR102373187B1 true KR102373187B1 (ko) 2022-03-11

Family

ID=60267215

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187031839A KR102373187B1 (ko) 2016-05-13 2017-04-28 수신 장치 및 데이터 처리 방법

Country Status (6)

Country Link
US (2) US11063678B2 (ko)
JP (1) JPWO2017195668A1 (ko)
KR (1) KR102373187B1 (ko)
CA (1) CA3022805C (ko)
MX (1) MX2018013465A (ko)
WO (1) WO2017195668A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2017195668A1 (ja) * 2016-05-13 2019-03-14 ソニー株式会社 受信装置、及び、データ処理方法
JP2020022118A (ja) * 2018-08-02 2020-02-06 ソニーセミコンダクタソリューションズ株式会社 受信装置、通信システム、および、受信装置の制御方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013085139A (ja) * 2011-10-11 2013-05-09 Toshiba Corp コンテンツ再生装置、サーバおよびコンテンツ再生方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002175129A (ja) 2000-12-07 2002-06-21 Nissin Electric Co Ltd 時刻整合機能を持つコンピュータ及びネットワークシステム
US9094564B2 (en) * 2010-05-07 2015-07-28 Microsoft Technology Licensing, Llc Clock synchronization for shared media playback
US9426196B2 (en) * 2013-01-04 2016-08-23 Qualcomm Incorporated Live timing for dynamic adaptive streaming over HTTP (DASH)
JP2014230154A (ja) 2013-05-23 2014-12-08 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
KR101954040B1 (ko) * 2015-08-14 2019-06-11 샤프 가부시키가이샤 시간 표현들을 통신하기 위한 시스템 및 방법
EP3364662A4 (en) * 2015-10-15 2018-10-31 Sony Corporation Reception apparatus, transmission apparatus, and data processing method
JPWO2017195668A1 (ja) * 2016-05-13 2019-03-14 ソニー株式会社 受信装置、及び、データ処理方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013085139A (ja) * 2011-10-11 2013-05-09 Toshiba Corp コンテンツ再生装置、サーバおよびコンテンツ再生方法

Also Published As

Publication number Publication date
US11063678B2 (en) 2021-07-13
WO2017195668A1 (ja) 2017-11-16
JPWO2017195668A1 (ja) 2019-03-14
CA3022805C (en) 2022-11-01
US11552719B2 (en) 2023-01-10
CA3022805A1 (en) 2017-11-16
US20200153520A1 (en) 2020-05-14
MX2018013465A (es) 2019-02-28
US20220006544A1 (en) 2022-01-06
KR20190008204A (ko) 2019-01-23

Similar Documents

Publication Publication Date Title
US11374993B2 (en) Reception device, reception method, transmission device, and transmission method
JP6359142B2 (ja) マルチメディアサービス受信方法
EP2941892B1 (en) Live timing for dynamic adaptive streaming over http (dash)
JP6425720B2 (ja) コンテンツ配信のための方法及び装置
JP6258856B2 (ja) 放送システムにおける制御メッセージ構成装置及び方法
TW201633759A (zh) 用於多媒體和檔案傳輸的傳輸介面
WO2011054281A1 (zh) 实现基于http的流媒体业务的方法、系统和网络设备
US11343559B2 (en) Method and apparatus for receiving, sending and data processing information related to time such as leap second and daylight saving time (DST)
US11552719B2 (en) Reception apparatus and data processing method
JPWO2017073336A1 (ja) 送信装置、受信装置、及び、データ処理方法
US11622088B2 (en) Reception apparatus, transmission apparatus, and data processing method
US11012761B1 (en) Techniques for replacement content signaling in advanced television systems committee (ATSC) 3.0 television
US10979780B2 (en) Receiving device, receiving method, transmission device, and transmission method
US9219931B2 (en) Method and apparatus for transmitting and receiving service discovery information in multimedia transmission system and file structure for the same
US20160173268A1 (en) Method of synchronization during the processing, by a multimedia player, of an item of multimedia content transmitted by an mbms service
KR101907020B1 (ko) 송수신 측에서의 방송망을 통한 긴급 상황 경보의 시그널링 방법 및 긴급 상황 경보 시그널링을 위한 방송 신호 송수신 장치
WO2018012315A1 (ja) 情報処理装置、及び、情報処理方法

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