RE: TV control API multiple module use case clarification

Hi Aginesh,

We discussed this issue on our last conference call [1], and I have also added it to the GitHub issue tracker [2].

One question raised during the call was whether there is a need to define a lower level API for implementers, such that the existing API [3] is implemented in terms of this lower level API, and whether this would help define the expected behaviour.

I think the TV Control API itself should define the expected behaviour, so I'm not sure whether such a lower level API would need to be standardised, but would be interested to hear your views on this.

(A similar approach is being taken in Vehicle API from the Automotive WG, where there's a JavaScript API that accesses a WebSocket or RESTful Web Service API [4], which was that group's response to the JavaScript vs resource-oriented API question we recently discussed; see the thread starting from [5].)

The group would be very interested in your suggestions for API changes to support these use cases.

Best regards,

Chris (WG Chair)

[1] https://www.w3.org/2016/06/28-tvapi-minutes.html
[2] https://github.com/w3c/tvcontrol-api/issues/3
[3] http://w3c.github.io/tvcontrol-api/
[4] https://www.w3.org/auto/wg/wiki/Vehicle_Information_Service_Specification
[5] https://lists.w3.org/Archives/Public/public-tvcontrol/2016May/0002.html
________________________________________
From: Aginesh Srinivasan [aginesh.srinivasan@broadcom.com]
Sent: 17 June 2016 01:24
To: Futasz, Alexander
Cc: public-tvapi@w3.org; selin@mozilla.com; shkim@etri.re.kr; David Liu; Alan Lam
Subject: Re: TV control API multiple module use case clarification

Hi Chris and Alex,
  Thanks for replying.

In our scenario
module A plays live content locally.
module B streams out live content over home network to other IP client devices.
module C does recording.
There could be a second instance of module A that does PIP.
There could be multiple instances of module B depending on the number of IP client devices that wants to play live content.

When a module requests for a tuner, TVManager should be able to grant or deny depending on availability of tuners.

As Chris mentioned we would come up with possible API that can handle these scenarios and update it in https://www.w3..org/2016/tvcontrol/<https://www..w3.org/2016/tvcontrol/>

Thanks and regards,
Aginesh

On Wed, Jun 15, 2016 at 8:31 AM, Futasz, Alexander <alexander.futasz@fokus.fraunhofer.de<mailto:alexander.futasz@fokus.fraunhofer.de>> wrote:
Hi Aginesh,

Interesting scenario you got. Do you think it would be possible to elaborate what these Modules A and B are? If you could maybe provide a more real-world example that could be very helpful. I think the specification currently assumes that there is always a single entity that consumes the API, thus no conflict is possible in this scenario.

Best regards
Alex

From: Aginesh Srinivasan [mailto:aginesh.srinivasan@broadcom.com<mailto:aginesh.srinivasan@broadcom.com>]
Sent: Dienstag, 14. Juni 2016 20:52
To: public-tvapi@w3.org<mailto:public-tvapi@w3.org>; selin@mozilla.com<mailto:selin@mozilla.com>; Futasz, Alexander <alexander.futasz@fokus.fraunhofer...de<mailto:alexander.futasz@fokus.fraunhofer.de>>; shkim@etri.re.kr<mailto:shkim@etri.re.kr>
Cc: David Liu <david.liu@broadcom.com<mailto:david.liu@broadcom.com>>; Alan Lam <alan.lam@broadcom.com<mailto:alan.lam@broadcom.com>>
Subject: TV control API multiple module use case clarification

Hi,
    We at Broadcom have implemented TV stack following TV control API Specification
(https://www.w3.org/2015/tvapi/Overview.html).

    We have usecases involving multiple modules that requires TVTuner. We need some clarification on how to use the apis to handle the following scenario.

Scenario: There are two modules A and B. There is one tuner, tuner1.
Module A uses tuner1 and performs its functionality.
Module A is finished with its function and release tuner1.
Module B now wants to be able to use same tuner1 to acheive a different functionality.

Module A could find tuner1 using TVManager::getTuners()
But, once it is done using tuner1, how can moduleA inform TVManager that tuner1 is free so that moduleB can find tuner1 using TVManager::getTuners().

We see there is ontunerchanged event. But how can TVManager be aware when module A has finished using tuner1 in order to fire ontunerchanged event.
Is there any api ModuleA can call to inform TVManager that tuner1 is free?

Could you please clarify if these scenarios can be handled using TVManager apis?
If yes how do we have to use the apis.

Thanks,
Aginesh


-----------------------------
http://www.bbc.co.uk
This e-mail (and any attachments) is confidential and
may contain personal views which are not the views of the BBC unless specifically stated.
If you have received it in
error, please delete it from your system.
Do not use, copy or disclose the
information in any way nor act in reliance on it and notify the sender
immediately.
Please note that the BBC monitors e-mails
sent or received.
Further communication will signify your consent to
this.
-----------------------------

Received on Friday, 15 July 2016 07:10:06 UTC