• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
3D Video Programming for Android
 

3D Video Programming for Android

on

  • 2,741 views

Review of 3D Video compression and delivery methods in H.264 and HDMI 1.4a.

Review of 3D Video compression and delivery methods in H.264 and HDMI 1.4a.
Code sample of H.264 3D encoding for Nvidia, TI

Statistics

Views

Total Views
2,741
Views on SlideShare
2,661
Embed Views
80

Actions

Likes
3
Downloads
42
Comments
0

3 Embeds 80

http://www.linkedin.com 77
http://www.verious.com 2
https://www.linkedin.com 1

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution-NoDerivs LicenseCC Attribution-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    3D Video Programming for Android 3D Video Programming for Android Presentation Transcript

    • 3D VideoforAndroid Yossi Cohen 1
    • Content Intro to 3D Video 3D Video in H.264 3D Video in HDMI 1.4a Android 3D Video encoding  TI OMAP4 Configuration  Qualcomm Configuration 2
    • 3
    • What is 3D Video 3d content is made by showing a separate image (video) to each eye. 3D Glasses based technologies:  ANAGLYPH  POLARIZATION  ECLIPSE METHOD 3D Glass-free technologies:  GUIDED LIGHT  LENTICULAR SCREEN  PARALLAX BARRIER This presentation does not discuss the presentation technologies, ,instead we focus on how to compress and deliver the video to the screen. 4
    • 5
    • Legacy 3D Video Delivery Different devices delivered 3D Video as one video stream with the two R/L screens merged into one rectangle: 1. DirectTV uses Side-by-Side layout 2. PlayStation uses Top-Bottom layout 3. Blue-Ray Player FULL-HD Side-by-Side User should manually set the TV to 3D and Configure the right packing mode 6
    • Side-by-Side 3D Example BlueRay video with Full HD SBS Resolution is 3840X1280 7
    • 3D Video in HDMI 1.3 Delivery of 3D Video in packing of 1 and 2 was possible in HDMI: Side-by-Side 3D in HDMI Top-Bottom 3D in HDMI Problems User should manually configure TV to the correct mode 3D is not viewed as Full-HD. Each eye receives “Half-HD” Quality. Duo to Bandwidth constraints no support for 3D-Full-HD 8
    • 3D in HDMI 1.4a and HDMI 2+ In Advance HDMI standards, HDMI include Header fields which signals the frame packing mode Example: 3D SBS transmission in HDMI 1.4 9
    • 10
    • H.264 3D Profiles Encoding of one stream video slices halved into R/L screens can be done in ANY H.264 Profile. Alternative encoding are:  MVC  Stereo-High 11
    • H.264 AVC 3D encoding mode There are two options for 3D H.264 AVC encoding: Regular encoding of a single video stream with two L/R frames packed into one Frame  Codec is unaware that the video is 3D  No signaling information is sent Informing the Encoder the video is 3D  Encoder will insert Frame-Packing information  TV / Sink should switch automatically to 3D correct frame packing according to signaled information 12
    • H.264 3D Signaling H264 Signals 3D Video and the type of Frame Packing (Side-by-Side, Top-Bottom, Interlaced…) by Frame Packing Arrangement structure FPA is an optional message inside the SEI NAL Frame Packing Agreement structure was added to the standard in 2010. A device receiving H.264 stream with SEI-FPA could automatically change its mode to the correct 3D Mode (if it understands those headers and has 3D capabilities). 13
    • Example of 3D Configuration There are two types of FPA extensions 2004 & 2010 2004 states the frame arrangement SBS, Top-Bottom etc 2010 is more detailed as described below 14
    • MVC – Multi View Coding MVC is a standard for compression of multiple video streams into one encoded streams All streams are encoded as differences (deltas) from the first stream (like SVC) MVC with 2 video streams is 3D stereo 15
    • H.264 Stereo Mode H.264 Stereo Mode is like MVC with only two cameras. 16
    • Wireless 3D Video transmission Automatic 3D Video H.264 3D Video Encoder over HDMI 1.4a Wireless Dongle H.264 HDMI Decoder Converter H.264 with SEI FPA over Wireless 17
    • 3D VIDEO COMPRESSION ONANDROID 18
    • TI 3D Configuration For all platforms (Nvidia, TI, QCOM), in the Encoder OMX input pin configuration add the appropriate code according to the processor 19
    • TI 3D ConfigurationOMX_TI_VIDEO_PARAM_AVCENC_FRAMEPACKINGINFO2010 FramePacking2010;FILL_OMX_VERSION(FramePacking2010 ,OMX_TI_VIDEO_PARAM_AVCENC_FRAMEPACKINGINFO2010);FramePacking2010.nPortIndex = OMX_PORT_INDEX_INPUT;FramePacking2010.eFramePackingType = OMX_TI_Video_FRAMEPACK_SIDE_BY_SIDE;FramePacking2010.nFrame0PositionX = 0;FramePacking2010.nFrame0PositionY = 0;FramePacking2010.nFrame1PositionX = 0;FramePacking2010.nFrame1PositionY = 0OMX_CALL( SetParameter, (OMX_INDEXTYPE) OMX_TI_IndexParamStereoFramePacking2010Settings,&FramePacking2010 );OMX_TI_VIDEO_PARAM_FRAMEDATACONTENTTYPE FrameData;FILL_OMX_VERSION(FrameData ,OMX_TI_VIDEO_PARAM_FRAMEDATACONTENTTYPE);FrameData.nPortIndex = OMX_PORT_INDEX_INPUT;eContentType = OMX_TI_Video_AVC_2010_StereoFramePackingType;OMX_CALL( SetParameter,(OMX_INDEXTYPE)OMX_TI_IndexParamVideoFrameDataContentSettings,&FrameData ); 20
    • Qualcomm ConfigurationUnfortunately couldn’t find a method for this onQualcomm processors. If you know please email meor comment and I’ll update this presentation 21
    • Thank you!More About me: Video Expert Yossi Cohen Lectures on Video / Android / VoIP yossicohen19@gmail.com Android Native Developer http://www.mobilevideotech.com +972-545-313092 22
    • Resources Overview of the Stereo and Multiview Video Coding Extensions of the H.264/MPEG-4 AVC Standard http://www.practical-home-theater-guide.com/3d-tv-formats.html High-Definition Multimedia Interface Specification Version 1.4a Extraction of 3D Signaling Portion 23