- From: Chris Needham via GitHub <sysbot+gh@w3.org>
- Date: Wed, 25 Jan 2017 09:54:19 +0000
- To: public-tvcontrol@w3.org
I received this feedback from Mr Igarashi: > My concern was that the implementations of sources could be independent so that the capabilities of sources may be constrained. > > Looking over the change, I do not prefer that TV Managers handles all channels for all sources. Ideally, an application might want to seamlessly handle channels across sources, e.g. DVB-T, DVB-S, IPTV services, OTT services, HDMI, etc. However, the idea can not be supported with some existing systems where each source is implemented independently or it is not allowed to handle sources seamlessly due to some business issues. Because of those reasons, the most UI on TV systems is that users have to select sources and then select a channel of the source. To support such existing systems, I think that the TV Manager should return list of sources and then a source provides a list of channels. > > In terms of constrains among sources, I need further study. One question is if TV source can represents only constrains among sources or it can present constrains among sources as well. I know a TV system which supports PinP screens which slow only two video from two DVB-T tuners and two DVB-S tuner. Since constrains on sources are very completed and implementation specific, I do not think that the TV Control WG can define the best mechanize to cover all cases of constrains. It would be OK even if the capability and constrains can not be pre-deterministic, i.e. try-and-error would be OK. > > My suggestion is like the following which is very similar to the original model of TV Control API. The Mozilla's model would match the existing TV systems. I wonder that the proposal idea matches subsidized STBs. ```webidl partial interface Navigator { TVControl tv; } interface TVControl { Promise<TVManager> getTVManager(); Promise<TVManager> getRadioManager(); } interface TVManager { TVSourceCapabilities getCapabilities(); Promise<TVSource> getSource(TVSourceConstraints constraints); }; interface TVSource { isSourceAvailable(TVSourceConstraints constraints); TVSourceConstraints getConstraints(); // A single channel list is managed by the UA. Promise<sequence<TVChannel>> getChannelList(); // The scanning API is TBD (see issue #7): Promise<void> startScanning(optional TVStartScanningOptions options); Promise<void> stopScanning(); readonly attribute boolean isScanning; attribute EventHandler onscanningstatechanged; // I've left out the recording, parental control, and CI card APIs // for brevity. Promise<void> tuneToChannel(TVChannel channel); Promise<void> tuneTo(TVTuningParameters parameters); // See issue #29 -- alternatively: getDataComponents(); Promise<TVApplication> getApplications(); readonly attribute TVMediaStream? stream; attribute EventHandler oncurrentchannelchanged; attribute EventHandler oneitbroadcasted; attribute EventHandler onemergencyalerted; }; ``` -- GitHub Notification of comment by chrisn Please view or discuss this issue at https://github.com/w3c/tvcontrol-api/issues/4#issuecomment-275065086 using your GitHub account
Received on Wednesday, 25 January 2017 09:54:25 UTC