This repository has been archived by the owner on May 7, 2020. It is now read-only.
Steroscopic 3D video and images (Specifically, Side by Side) usually … #207
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Steroscopic 3D video and images (Specifically, Side by Side) usually need to be edited in some software before they can be presented on a 3D TV as the left and right halves of the image must be "squshed" horisontally in place (so a large black column appears in the middle and two smaller columns on the left and right edge).
Additionally, fine adjustments to the seperation and the left/right eye elevation need to be made to correct for lens calibration issues with the source recording.
Currently there is no playback software which allows the user to make these adjustments to the source video in real time.
This feature provides all this functionality allowing raw 3D SBS content to be viewed on a TV without the need of recompression and time consuing video/image editing
The keys for controlling all this are within the hot key screen at the bottom and are currently mapped in a similar form to the WASD movement but
using the IJKL keys to avoid conflicing with more critical keys.
I and K shift the left eye up/down and the right eye down/up
J and L shift the eyes apart and closer together.
The top left and right of these keys are the U and O keys which shrink and enlarge the left and right images.
Over to the left, the 'S' key enables and disables the horisontal Squish of each eye. This is default to enabled.
The purpose is in case someone has pre-squished left and right eyes but wants to adjust the seperation/elevation.
To enable/disable all this 3D functionality, simply press the '3' key.
A sample 3D SBS image is included for testing.
Note: It works best with video because images only draw once so changes made to the 3D settings only update on screen if the window is resized.
Note: There was an error when I was trying to compile the latest source before doing this work in MainFrm.cpp so I did a hacky fix (type casting CComQIPtr pBF = (CComQIPtr)(bIsSplitter ? (CComQIPtr) pSS : (CComQIPtr)pObject); )