Overview
Current 3D support in the Reference Implementation includes the ability for applications to use org.ocap.media.VideoFormatControl to query the S3DConfiguration and register a VideoFormatListener that will be notified of changes in 3D video format.
The Reference Implementation also provides the ability to simulate both supported and unsupported format changes. Unsupported format changes result in transitions to presenting alternative content and the posting of an AlternativeContentErrorEvent to ServiceContextListeners, as well as a notification of the specific format change to registered VideoFormatListeners.
The implementation supports three parameters variables which describe the format of the 3D video stream. This information is normally acquired from an MPEG table in the stream. On set top boxes this information is configured and 3D rendering is done at the platform level.
The initial 3D format settings are specified in $PLATFORMROOT/platform.cfg. Example settings:
RI.Platform.3dtv.format=0
RI.Platform.3dtv.payloadtype=0
RI.Platform.3dtv.payload=01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E
Format:
Value | Format Type |
---|---|
0 | 2D |
3 | 3D (side by side) |
4 | 3d (top and bottom) |
Payload type:
Value | Payload type |
---|---|
7 | MPEG |
45 | AVC |
Simulating format changes
Configuring logging and starting Tune Test
On-screen status messages
At run time you can see the current testings by running the integration test named TuneTest.% cd $PLATFORMROOT
% ./runRI.sh -deletestorage -setup -tunetest
After the emulator starts press the MUTE button on the remote control. In the top left corner of the simulator TV screen you should see the current settings.
Log messages
Change logging settings to display logging messages in the simulator's console area. Edit the file $PLATFORMROOT/log4crc
to include the line <category name="RI.Stack.StdOut" appender="socket" />
and all System.out.println() messages are shown on the emulator.
For more information on RI logging capabilities,see: RI PC Platform Logging - Controlling and Understanding RI Logging Messages.
Simulating format changes
Format changes are simulated using the Platform's telnet interface support. See Telnet Test Interface.
- Initiate a telnet session to port 23000
- Navigate the high level menus to select the type of presentation currently active (MPEOS Media for broadcast-point presentation, MPEOS TSB for buffered playback, MPEOS HN for remote service presentation and MPEOS recording for recorded service presentation)
- Select various options to exercise supported and unsupported format transitions, resulting in AlternativeContentErrorEvent or NormalContentEvent notifications as well as VideoFormatEvent notifications