Upload
others
View
8
Download
0
Embed Size (px)
Citation preview
Recent Update on
W3C TPAC2020
Media & Entertainment Interest Group
12020/10/21
Tohru TAKIGUCHI and Masaya IKEO (NHK)
Kazuhiro HOYA (The Japan Commercial Broadcasters Association)
Outline
Recent Update on Hybridcast
The latest revision of Hybridcast technical spec
Hybridcast and Web of Things
×
HybridcastA new integrated broadcast-broadband platform
Past Presentation on;
W3C 2012 4th Web and TV Workshop: https://www.w3.org/2013/10/tv-workshop/agenda.html
W3C TPAC2014 : https://www.w3.org/2014/10/tv-ig-meeting/20141027_W3C_Hybridcast20.pdf
W3C TPAC2015 : https://www.w3.org/2011/webtv/wiki/images/f/f2/Tpac2015_hybridcast_update.pptx.pdf
W3C TPAC2017 : https://lists.w3.org/Archives/Public/www-archive/2017Nov/att-0004/RecentAchievementHybridcast_TPAC20171106.pdf
W3C TPAC2018 : https://www.w3.org/2011/webtv/wiki/images/4/45/RecentAchievementHybridcast_TPAC20181022.pdf
W3C TPAC2019 : https://www.w3.org/2011/webtv/wiki/images/d/d3/RecentAchievementHybridcast_TPAC20190916.pdf
2
October 2020, The Latest Revision of Hybridcast Technical Specification
is approved in IPTV Forum Japan
* Published only in Japanese at the moment
Broadcast-Independent Managed Application
CMAF support for Hybridcast Video
Media Timed Events
3D Audio
Others
Overview of The Latest Revision of Hybridcast
3
New Features
Business Use Cases
Case1:Broadcast Independent Hybridcast VOD (catch-up) apps
Provided by Broadcasters whether inside/outside broadcasting service area.
Can move to provider’s broadcasting on suggestions/recommendations inside area.
Case2: Cross-network, cross-broadcasters VOD platform apps
Official VOD platform app aggregating multiple broadcasters.
Can move to corresponding TV channels following the VOD content played on specific
triggers.
Broadcast-Independent Managed Application
tuneTo() API
or
New application execution
model is required
Broadcast-oriented managed application
(existing application type)4
Added a new application type with a different life-cycle from the
(currently operating) broadcast-oriented managed application.
Broadcast-Independent Managed Application
Application
Type
Broadcast-Oriented Managed
Application
Broadcast-Independent Managed
Application
Condition of
execution
• Only while the channel that the application launched
is kept tuned• Only while no broadcast channel is being tuned
Launch of
application
• When the [data] button on a remote controller is
pressed
• When the ‘launch’ command from Hybridcast
Connect application is received *1
*1 Automatically tuning to specific channel
followed by application execution
• When the ‘launch’ command from Hybridcast
Connect application is received *2
*2 Automatically stop tuning to broadcast
followed by application execution
Termination
of application
• When an other channel is selected by a remote
controller
• When the [data] button is pressed
• When a broadcast channel is selected by a remote
controller
• When the application calls a tuneTo() API by itself
5
New features of Hybridcast Video
Hybridcast Video is a DASH profile for Hybridcast TV
Uses MSE and EME for playback
Reference player “dashNX.js” is developed and provided
Update in the latest revision
Added CMAF as a media container
Features for low-latency playback
Allow for a CMAF chunk without an intra-frame
ECMAScript 6th Edition – Promise object
Fetch and AbortController API
Still have some issues managing video buffers needed for dynamic content insertion.
(e.g. addressable content)6
Media Timed Events
MTE delivery mechanism is supported
Out-of-band delivery: MPD Events
In-band delivery: ‘emsg’ box
Both MPD events and emsg box are supposed to be handled by JavaScript
The receiver implementation is not affected
7
Support of new codec -- Enhanced AC-3
Enables 5.1.4ch audio on Hybridcast video
API to check supported codec by a receiver
MediaSource.isTypeSupported() should be used in Hybridcast for MSE playback
3D Audio
8
cf.
✓ MediaElement.canPlayType() can be usable only after creating media element.
✓ receiverDevice.hasCapability()*1 should be used only for broadcasting-dependent features.
*1: Custom method defined in Hybridcast specification
Others
Browser API
Added JavaScript API to ‘receiverDevice’ custom object
for obtaining available channel list
-- getAvailableMedia(), getChannelInformation()
Hybridcast Connect
Makes companion devices support new UHDTV services
9
Hybridcast Connect
&
Web of Things
10
Hybridcast Connect
Enables communication between a TV app and a smartphone app
Standardized in Sep. 2018 as a part Hybridcast technical spec.
Provides mechanism for device discovery and inter-app command and communication
APIs are experimentally implemented in some TV sets
Hybridcast Connect APIs
TV set Companion device
Hybridcast app Companion Screen app
HTML5 Browser HTML5 Browser
Websocket
Server
Restful(HTTP)
API ServerHTTP Client
Websocket
client
11
Hybridcast
Connect
Television
Hybridcast Connect as a WoT Component
Haptic device (developed by NHK)
Content Providers
Broadcast
1) Alternative Media
2) Enhanced Viewing Experience
Content
Mirror
Watch
Speaker
Synchronized with TV programs
Smartphone
Speaker
Internet
Presented according to user environment
Light
Cleaning Robot
Smartphone
• Using Hybridcast Connect, a TV set works as a hub for
connecting broadcasters’ service with various IoT devices and
Internet services.
• It is not only delivering broadcaster’s content to the device
that does not have a broadcast tuner, but also creating new
use case for integrated broadcast and broadband service.
12
WoT Use Case for Broadcasting (4 min)
13
Prototype of WoT Use case
14
Node-RED
Screen
Hybridcast TV“Cube”
Haptic Device Smartphone
Development Tools for Hybridcast Connect
antwapp4hc : TV emulator that runs on AndroidTVOS
hyconet4j : Reference client Library for Java
hyconet.js : Reference client Library for Node.js
node-red-contrib-hyconet : Extra nodes plugin for Hybridcast Connect
hyconet-android-sample : hybridcast-connect sample android app
Available as Open Source Software (MIT license)
GitHub NHK R&D: https://github.com/nhkrd
Your participation and contribution is highly welcomed!
Application Development Tools
15
16
Purposes of OSS for Hybridcast Connect
All of the OSSs are reference implementation of standardization(or its draft)
Core Software utilizing Interoperability Test Tools for IPTV Forum Japan
Certification Program and W3C WoT Plugfest
OSS
For
Hybridcast
Test Tools & Packages for Certification
Test Suite
Description
TestCode
Other
Cert Description
Service
Logic
ServiceProduct
Business
Logic
Cert.
Approval
For TV Set/Apps
Run
TestTools
Thank you very much for your
kind attention!
17
Reference
18
Typical Sequence by additional APIs
Companion DeviceTV Set
1. MediaAvailabilityAPI
Search and Auth APIs
3. StartAITAPI(tuneAPI)
InterApplicationCom. API
5. ReceiverStatusAPI
Hybridcast Connect
Device Control APIs
2. ChannelsInfoAPI
4. TaskStatusAPI
1. MediaAvailabilityAPICheck availability of
Terrestrial/Satellite tuner
on a TV set
2. ChannelsInfoAPIGet list of
channel information
and tuning parameters
3. StartAITAPI(tuneAPI)Changes channel of a TV set
and
launches Hybridcast app(HTML)
or BIA(HTML) on the TV set
4. TaskStatusAPIGet status of
startAITAPI request
5. ReceiverStatusAPIGet status of HTML5 browser,
the number of communicating apps
on companion devices, and current
channel
19
Reference implementation as OSS
Hybridcast Connect APIs
TV set Companion device
Hybridcast app Companion Screen app
HTML5 Browser HTML5 Browser
Websocket
Server
Restful(HTTP)
API ServerHTTP Client
Websocket
client
20
hyconet.js
Android
sample
hyconet4j
Web(W3C/WoT)
node.jsnode-red-
contrib-hyconet
Node-RED
Apps(flow)