Proposed change to the return value of getTransportStreamId() method
The OCAP spec states the following regarding getTransportStreamId().
When the LVCT is available, this method returns the channel_TSID for the corresponding channel number from the LVCT. If the LVCT is not available and the SVCT is available, this method returns the channel_TSID from the channel_properties descriptor for the corresponding virtual_channel. If TSID is not available from either the LVCT or SVCT, then this method SHALL use the PAT to obtain the TSID. If the TSID is not available from any source, then this method SHALL return 0xFFFF. This method SHALL return 0xFFFF for an analog source.
When tsId value is not available from any of the sources mentioned above the RI implementation of this method currently returns a value of -1 (not 0xFFFF). RI behavior will be corrected to match the requirement in OCAP section T.188.8.131.52 in an upcoming release. We are posting this information on the forum before such a change is made, so any dependencies on the previous (incorrect) return value can be corrected or any concerns can be addressed. Please post your responses here.
This change applies to both javax.tv.service.transport.getTransportStreamID() and org.davic.mpeg.TransportStream.getTransportStreamId() methods.
In this context we would like to also point out that a new EC (OCAP1.2.3-O-11.1692-4: Blocking behavior clarification for getTransportStreamID methods) clarifying the behavior of getTransportStreamID() method will also be introduced in the next RI bundle release.