SlideShare a Scribd company logo
3D Video
for
Android
          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 ON
ANDROID




                          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 Configuration

OMX_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 = 0
OMX_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 Configuration


Unfortunately couldn’t find a method for this on
Qualcomm processors. If you know please email me
or 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

More Related Content

What's hot

H.263 Video Codec
H.263 Video CodecH.263 Video Codec
H.263 Video Codec
Kavisha Miyan
 
The H.265/MPEG-HEVC Standard
The H.265/MPEG-HEVC StandardThe H.265/MPEG-HEVC Standard
The H.265/MPEG-HEVC Standard
IMTC
 
An Overview of High Efficiency Video Codec HEVC (H.265)
An Overview of High Efficiency Video Codec HEVC (H.265)An Overview of High Efficiency Video Codec HEVC (H.265)
An Overview of High Efficiency Video Codec HEVC (H.265)
Varun Ravi
 
HEVC overview main
HEVC overview mainHEVC overview main
HEVC overview main
Nirma University
 
HEVC VIDEO CODEC By Vinayagam Mariappan
HEVC VIDEO CODEC By Vinayagam MariappanHEVC VIDEO CODEC By Vinayagam Mariappan
HEVC VIDEO CODEC By Vinayagam Mariappan
Vinayagam Mariappan
 
H.264 video standard
H.264 video standardH.264 video standard
H.264 video standard
Sajan Sahu
 
HEVC intra coding
HEVC intra codingHEVC intra coding
HEVC intra coding
Manohar Kuse
 
HEVC / H265 Hands-On course
HEVC / H265 Hands-On courseHEVC / H265 Hands-On course
HEVC / H265 Hands-On course
Yoss Cohen
 
Development of a 4K H.265/ HEVC HW Encoder
Development of a 4K H.265/ HEVC HW EncoderDevelopment of a 4K H.265/ HEVC HW Encoder
Development of a 4K H.265/ HEVC HW Encoder
IMTC
 
Applied technology
Applied technologyApplied technology
Applied technology
Erica Fressa
 
High Efficiency Video Codec
High Efficiency Video CodecHigh Efficiency Video Codec
High Efficiency Video Codec
Tejus Adiga M
 
H.264 nal and RTP
H.264 nal and RTPH.264 nal and RTP
H.264 nal and RTP
Yoss Cohen
 
Video coding standards ppt
Video coding standards pptVideo coding standards ppt
Video coding standards ppt
Lokesh Reddy Avula
 
H.265ImprovedCE_over_H.264-HarmonicMay2014Final
H.265ImprovedCE_over_H.264-HarmonicMay2014FinalH.265ImprovedCE_over_H.264-HarmonicMay2014Final
H.265ImprovedCE_over_H.264-HarmonicMay2014FinalDonald Pian
 
h.264 video compression standard.
h.264 video compression standard.h.264 video compression standard.
h.264 video compression standard.Videoguy
 
LDI 2012 System Integration
LDI 2012 System IntegrationLDI 2012 System Integration
LDI 2012 System Integration
LauraFrank
 
Next generation video compression
Next generation video compressionNext generation video compression
Next generation video compression
Ericsson Slides
 

What's hot (20)

Feature hevc
Feature hevcFeature hevc
Feature hevc
 
H.263 Video Codec
H.263 Video CodecH.263 Video Codec
H.263 Video Codec
 
The H.265/MPEG-HEVC Standard
The H.265/MPEG-HEVC StandardThe H.265/MPEG-HEVC Standard
The H.265/MPEG-HEVC Standard
 
An Overview of High Efficiency Video Codec HEVC (H.265)
An Overview of High Efficiency Video Codec HEVC (H.265)An Overview of High Efficiency Video Codec HEVC (H.265)
An Overview of High Efficiency Video Codec HEVC (H.265)
 
HEVC overview main
HEVC overview mainHEVC overview main
HEVC overview main
 
HEVC VIDEO CODEC By Vinayagam Mariappan
HEVC VIDEO CODEC By Vinayagam MariappanHEVC VIDEO CODEC By Vinayagam Mariappan
HEVC VIDEO CODEC By Vinayagam Mariappan
 
H.264 video standard
H.264 video standardH.264 video standard
H.264 video standard
 
H264 final
H264 finalH264 final
H264 final
 
HEVC intra coding
HEVC intra codingHEVC intra coding
HEVC intra coding
 
HEVC / H265 Hands-On course
HEVC / H265 Hands-On courseHEVC / H265 Hands-On course
HEVC / H265 Hands-On course
 
H263.ppt
H263.pptH263.ppt
H263.ppt
 
Development of a 4K H.265/ HEVC HW Encoder
Development of a 4K H.265/ HEVC HW EncoderDevelopment of a 4K H.265/ HEVC HW Encoder
Development of a 4K H.265/ HEVC HW Encoder
 
Applied technology
Applied technologyApplied technology
Applied technology
 
High Efficiency Video Codec
High Efficiency Video CodecHigh Efficiency Video Codec
High Efficiency Video Codec
 
H.264 nal and RTP
H.264 nal and RTPH.264 nal and RTP
H.264 nal and RTP
 
Video coding standards ppt
Video coding standards pptVideo coding standards ppt
Video coding standards ppt
 
H.265ImprovedCE_over_H.264-HarmonicMay2014Final
H.265ImprovedCE_over_H.264-HarmonicMay2014FinalH.265ImprovedCE_over_H.264-HarmonicMay2014Final
H.265ImprovedCE_over_H.264-HarmonicMay2014Final
 
h.264 video compression standard.
h.264 video compression standard.h.264 video compression standard.
h.264 video compression standard.
 
LDI 2012 System Integration
LDI 2012 System IntegrationLDI 2012 System Integration
LDI 2012 System Integration
 
Next generation video compression
Next generation video compressionNext generation video compression
Next generation video compression
 

Viewers also liked

Delta++ Reducing The Size Of Android Application Updates
Delta++ Reducing The Size Of Android Application UpdatesDelta++ Reducing The Size Of Android Application Updates
Delta++ Reducing The Size Of Android Application Updates
Papitha Velumani
 
Step by Step Mobile Optimization
Step by Step Mobile OptimizationStep by Step Mobile Optimization
Step by Step Mobile Optimization
Guy Podjarny
 
Android Media Player Development
Android Media Player DevelopmentAndroid Media Player Development
Android Media Player DevelopmentTalentica Software
 
Types Of Sentences Ppt
Types Of Sentences PptTypes Of Sentences Ppt
Types Of Sentences PptMarie Semrow
 
Sentence Structure Ppt
Sentence Structure PptSentence Structure Ppt
Sentence Structure Pptandycinek
 
Sentence structure powerpoint
Sentence structure powerpointSentence structure powerpoint
Sentence structure powerpoint
Raja Mohan Krisnan
 
Types Of Sentences
Types Of SentencesTypes Of Sentences
Types Of Sentencesmelissagkh
 

Viewers also liked (7)

Delta++ Reducing The Size Of Android Application Updates
Delta++ Reducing The Size Of Android Application UpdatesDelta++ Reducing The Size Of Android Application Updates
Delta++ Reducing The Size Of Android Application Updates
 
Step by Step Mobile Optimization
Step by Step Mobile OptimizationStep by Step Mobile Optimization
Step by Step Mobile Optimization
 
Android Media Player Development
Android Media Player DevelopmentAndroid Media Player Development
Android Media Player Development
 
Types Of Sentences Ppt
Types Of Sentences PptTypes Of Sentences Ppt
Types Of Sentences Ppt
 
Sentence Structure Ppt
Sentence Structure PptSentence Structure Ppt
Sentence Structure Ppt
 
Sentence structure powerpoint
Sentence structure powerpointSentence structure powerpoint
Sentence structure powerpoint
 
Types Of Sentences
Types Of SentencesTypes Of Sentences
Types Of Sentences
 

Similar to 3D Video Programming for Android

GPU - HD Video White Paper
GPU - HD Video White PaperGPU - HD Video White Paper
GPU - HD Video White Paper
Benson Tao
 
Video Transcoding Terms Explained
Video Transcoding Terms Explained Video Transcoding Terms Explained
Video Transcoding Terms Explained
nerodude
 
/Home/nvlogic/desktop/spraaf3
/Home/nvlogic/desktop/spraaf3/Home/nvlogic/desktop/spraaf3
/Home/nvlogic/desktop/spraaf3
kesava ram
 
Информационный материал. Краткое описание устройства Matrox Monarch HDX_ENG
Информационный материал. Краткое описание устройства Matrox Monarch HDX_ENGИнформационный материал. Краткое описание устройства Matrox Monarch HDX_ENG
Информационный материал. Краткое описание устройства Matrox Monarch HDX_ENG
lansgo
 
Spatial Scalable Video Compression Using H.264
Spatial Scalable Video Compression Using H.264Spatial Scalable Video Compression Using H.264
Spatial Scalable Video Compression Using H.264
IOSR Journals
 
E010132529
E010132529E010132529
E010132529
IOSR Journals
 
GPU - HDMI White Paper
GPU - HDMI White PaperGPU - HDMI White Paper
GPU - HDMI White Paper
Benson Tao
 
White_Paper-Simulation_VIP-HDMI-ST-pdf.pdf
White_Paper-Simulation_VIP-HDMI-ST-pdf.pdfWhite_Paper-Simulation_VIP-HDMI-ST-pdf.pdf
White_Paper-Simulation_VIP-HDMI-ST-pdf.pdf
jaanyareddy
 
Videoconference products VCON vPoint HD
Videoconference products VCON vPoint HDVideoconference products VCON vPoint HD
Videoconference products VCON vPoint HDVideoguy
 
Interactive 3D Online Video Requirements
Interactive 3D Online Video RequirementsInteractive 3D Online Video Requirements
Interactive 3D Online Video RequirementsSwisscom
 
Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Videoguy
 
Ch07_-_Multimedia_Element-Video_1_.ppt
Ch07_-_Multimedia_Element-Video_1_.pptCh07_-_Multimedia_Element-Video_1_.ppt
Ch07_-_Multimedia_Element-Video_1_.ppt
djempol
 
Polycom Video Communications
Polycom Video CommunicationsPolycom Video Communications
Polycom Video CommunicationsVideoguy
 
Decimator training
Decimator trainingDecimator training
Decimator training
Omar Colom
 
Introduction to Video Compression Techniques - Anurag Jain
Introduction to Video Compression Techniques - Anurag JainIntroduction to Video Compression Techniques - Anurag Jain
Introduction to Video Compression Techniques - Anurag JainVideoguy
 
Video Conferencing : Fundamentals and Application
Video Conferencing : Fundamentals and ApplicationVideo Conferencing : Fundamentals and Application
Video Conferencing : Fundamentals and ApplicationVideoguy
 
Windows7: Video Improvements
Windows7: Video ImprovementsWindows7: Video Improvements
Windows7: Video Improvementswonderu
 

Similar to 3D Video Programming for Android (20)

GPU - HD Video White Paper
GPU - HD Video White PaperGPU - HD Video White Paper
GPU - HD Video White Paper
 
Video Transcoding Terms Explained
Video Transcoding Terms Explained Video Transcoding Terms Explained
Video Transcoding Terms Explained
 
/Home/nvlogic/desktop/spraaf3
/Home/nvlogic/desktop/spraaf3/Home/nvlogic/desktop/spraaf3
/Home/nvlogic/desktop/spraaf3
 
Информационный материал. Краткое описание устройства Matrox Monarch HDX_ENG
Информационный материал. Краткое описание устройства Matrox Monarch HDX_ENGИнформационный материал. Краткое описание устройства Matrox Monarch HDX_ENG
Информационный материал. Краткое описание устройства Matrox Monarch HDX_ENG
 
Mips track a
Mips   track aMips   track a
Mips track a
 
Spatial Scalable Video Compression Using H.264
Spatial Scalable Video Compression Using H.264Spatial Scalable Video Compression Using H.264
Spatial Scalable Video Compression Using H.264
 
E010132529
E010132529E010132529
E010132529
 
GPU - HDMI White Paper
GPU - HDMI White PaperGPU - HDMI White Paper
GPU - HDMI White Paper
 
White_Paper-Simulation_VIP-HDMI-ST-pdf.pdf
White_Paper-Simulation_VIP-HDMI-ST-pdf.pdfWhite_Paper-Simulation_VIP-HDMI-ST-pdf.pdf
White_Paper-Simulation_VIP-HDMI-ST-pdf.pdf
 
Videoconference products VCON vPoint HD
Videoconference products VCON vPoint HDVideoconference products VCON vPoint HD
Videoconference products VCON vPoint HD
 
Interactive 3D Online Video Requirements
Interactive 3D Online Video RequirementsInteractive 3D Online Video Requirements
Interactive 3D Online Video Requirements
 
HDMI
HDMIHDMI
HDMI
 
Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...
 
Ch07_-_Multimedia_Element-Video_1_.ppt
Ch07_-_Multimedia_Element-Video_1_.pptCh07_-_Multimedia_Element-Video_1_.ppt
Ch07_-_Multimedia_Element-Video_1_.ppt
 
Polycom Video Communications
Polycom Video CommunicationsPolycom Video Communications
Polycom Video Communications
 
Decimator training
Decimator trainingDecimator training
Decimator training
 
Introduction to Video Compression Techniques - Anurag Jain
Introduction to Video Compression Techniques - Anurag JainIntroduction to Video Compression Techniques - Anurag Jain
Introduction to Video Compression Techniques - Anurag Jain
 
Video Conferencing : Fundamentals and Application
Video Conferencing : Fundamentals and ApplicationVideo Conferencing : Fundamentals and Application
Video Conferencing : Fundamentals and Application
 
Slide
SlideSlide
Slide
 
Windows7: Video Improvements
Windows7: Video ImprovementsWindows7: Video Improvements
Windows7: Video Improvements
 

More from Yoss Cohen

Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
Yoss Cohen
 
open platform for swarm training
open platform for swarm training open platform for swarm training
open platform for swarm training
Yoss Cohen
 
Deep Learning - system view
Deep Learning - system viewDeep Learning - system view
Deep Learning - system view
Yoss Cohen
 
Dspip deep learning syllabus
Dspip deep learning syllabusDspip deep learning syllabus
Dspip deep learning syllabus
Yoss Cohen
 
IoT consideration selection
IoT consideration selectionIoT consideration selection
IoT consideration selection
Yoss Cohen
 
IoT evolution
IoT evolutionIoT evolution
IoT evolution
Yoss Cohen
 
Nvidia jetson nano bringup
Nvidia jetson nano bringupNvidia jetson nano bringup
Nvidia jetson nano bringup
Yoss Cohen
 
Autonomous car teleportation architecture
Autonomous car teleportation architectureAutonomous car teleportation architecture
Autonomous car teleportation architecture
Yoss Cohen
 
Motion estimation overview
Motion estimation overviewMotion estimation overview
Motion estimation overview
Yoss Cohen
 
Computer Vision - Image Filters
Computer Vision - Image FiltersComputer Vision - Image Filters
Computer Vision - Image Filters
Yoss Cohen
 
Intro to machine learning with scikit learn
Intro to machine learning with scikit learnIntro to machine learning with scikit learn
Intro to machine learning with scikit learn
Yoss Cohen
 
DASH and HTTP2.0
DASH and HTTP2.0DASH and HTTP2.0
DASH and HTTP2.0
Yoss Cohen
 
FFMPEG on android
FFMPEG on androidFFMPEG on android
FFMPEG on android
Yoss Cohen
 
Hands-on Video Course - "RAW Video"
Hands-on Video Course - "RAW Video" Hands-on Video Course - "RAW Video"
Hands-on Video Course - "RAW Video"
Yoss Cohen
 
Video quality testing
Video quality testingVideo quality testing
Video quality testing
Yoss Cohen
 
Product wise computer vision development
Product wise computer vision developmentProduct wise computer vision development
Product wise computer vision developmentYoss Cohen
 
Analog Video
Analog Video Analog Video
Analog Video
Yoss Cohen
 
WiFi Display
WiFi DisplayWiFi Display
WiFi Display
Yoss Cohen
 
Video optimization for android - Part I
Video optimization for android - Part IVideo optimization for android - Part I
Video optimization for android - Part I
Yoss Cohen
 
Cross platform computer vision optimization
Cross platform computer vision optimizationCross platform computer vision optimization
Cross platform computer vision optimization
Yoss Cohen
 

More from Yoss Cohen (20)

Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
open platform for swarm training
open platform for swarm training open platform for swarm training
open platform for swarm training
 
Deep Learning - system view
Deep Learning - system viewDeep Learning - system view
Deep Learning - system view
 
Dspip deep learning syllabus
Dspip deep learning syllabusDspip deep learning syllabus
Dspip deep learning syllabus
 
IoT consideration selection
IoT consideration selectionIoT consideration selection
IoT consideration selection
 
IoT evolution
IoT evolutionIoT evolution
IoT evolution
 
Nvidia jetson nano bringup
Nvidia jetson nano bringupNvidia jetson nano bringup
Nvidia jetson nano bringup
 
Autonomous car teleportation architecture
Autonomous car teleportation architectureAutonomous car teleportation architecture
Autonomous car teleportation architecture
 
Motion estimation overview
Motion estimation overviewMotion estimation overview
Motion estimation overview
 
Computer Vision - Image Filters
Computer Vision - Image FiltersComputer Vision - Image Filters
Computer Vision - Image Filters
 
Intro to machine learning with scikit learn
Intro to machine learning with scikit learnIntro to machine learning with scikit learn
Intro to machine learning with scikit learn
 
DASH and HTTP2.0
DASH and HTTP2.0DASH and HTTP2.0
DASH and HTTP2.0
 
FFMPEG on android
FFMPEG on androidFFMPEG on android
FFMPEG on android
 
Hands-on Video Course - "RAW Video"
Hands-on Video Course - "RAW Video" Hands-on Video Course - "RAW Video"
Hands-on Video Course - "RAW Video"
 
Video quality testing
Video quality testingVideo quality testing
Video quality testing
 
Product wise computer vision development
Product wise computer vision developmentProduct wise computer vision development
Product wise computer vision development
 
Analog Video
Analog Video Analog Video
Analog Video
 
WiFi Display
WiFi DisplayWiFi Display
WiFi Display
 
Video optimization for android - Part I
Video optimization for android - Part IVideo optimization for android - Part I
Video optimization for android - Part I
 
Cross platform computer vision optimization
Cross platform computer vision optimizationCross platform computer vision optimization
Cross platform computer vision optimization
 

Recently uploaded

Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
Jen Stirrup
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 

Recently uploaded (20)

Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 

3D Video Programming for Android

  • 1. 3D Video for Android Yossi Cohen 1
  • 2. 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. 3
  • 4. 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. 5
  • 6. 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
  • 7. Side-by-Side 3D Example  BlueRay video with Full HD SBS  Resolution is 3840X1280 7
  • 8. 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
  • 9. 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. 10
  • 11. 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
  • 12. 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
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. H.264 Stereo Mode  H.264 Stereo Mode is like MVC with only two cameras. 16
  • 17. 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
  • 18. 3D VIDEO COMPRESSION ON ANDROID 18
  • 19. 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
  • 20. TI 3D Configuration OMX_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 = 0 OMX_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
  • 21. Qualcomm Configuration Unfortunately couldn’t find a method for this on Qualcomm processors. If you know please email me or comment and I’ll update this presentation 21
  • 22. 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
  • 23. 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