MPO vs. JPS? - HTC EVO 3D

What's everyone's opinion on what is the better file format to use? I see no appreciable difference in the overall picture quality. Unfortunately my Samsung 3D tv does not recognize either format through DLNA, 3D video works fine though. I have read that JPS tends to be easier to edit and may be more usable by other devices. I notice that an MPO's details show the res at 1920 x 1080 where as JPS shows it as 3840 x 1080 (the 2 stereoscopic images combined).
Thoughts? I'd love for some photog enthusiasts to chime in here.

while im not entirely certain of this i believe that .mpo is an interleaved format while .jps is not, again im not sure but there is a 3d format that is interleaved

mpo stores the left eye and right eye as 2 files in the mpo file
jps is basically a renamed jpeg with both images side by side in 1 file (right eye on the left)
if you ever need to edit them on the PC, JPS is easier as it opens in windows picture viewer and you can just rename to .jpg and open in photoshop
JPS is also classed as the "industry standard"
there is no difference in quality and you can change between the 2 by simply loading either format into StereoPhoto Maker press "x" and save as the opposing format (mpo has left eye on the left, jps has it on the right, pressing "x" switches the side of the images)
Hope this helps

Related

Viewing 3D pics

How does everyone view 3d pics on their PC's? I can't because of the file ext.
Change their extension to JPG, then open the file in irfanview or whatever you favorite photo viewer is. If you need to see the side-by-side images in 3D, horizontal flip them, then just cross your eyes until the two images meet in the middle.
thanks!
10 char
I'm using a free program called Stereo Photo Maker that another user on here turned me on to.
http://stereo.jpn.org/eng/stphmkr/
Works ok, but I haven't played with it much.

Devs get to work

HTC opened up their dev portal which gives access to all the SDK's and perhaps updated kernel sources. Also released the api to the 3d so we can start cooking up some 3d apps too!!!
http://www.htcdev.com
"What is the HTC OpenSense SDK?
OpenSense is a framework encompassing all available HTC SDKs as well as features that will be offered in the future. This framework will allow you as a developer to harness software and hardware innovation on HTC devices to develop more richly integrated mobile applications and experiences.
Today we are making available an early access version of the HTC OpenSense SDK that provides APIs for Common Controls, the Stereoscopic 3D display, and the Tablet Pen. Over time, HTCdev will be supporting new features and additions to the OpenSense SDK to enable deeper integration into the HTC Sense experience.
Initially, these parts of the early access HTC OpenSense SDK will be made available as two Android SDK add-on extensions: the HTC add-on for phones and the HTC add-on for tablets.
Common Controls API
Common controls are UI widgets and components that will provide developers with the ability to provide the Sense UI look and feel to their applications. API documentation and sample code are provided as part of both the phone and the tablet add-on extensions to the Android SDK.
Stereoscopic 3D (S3D) API
API documentation and sample code that illustrates how to programmatically enable the 3D display mode of the parallel barrier based screen for various types of applications. This API is provided as part of the phone add-on extension to the Android SDK.
Tablet Pen API
API documentation and sample code for providing a framework for fully fledged drawing and painting applications as well as full access to the pen events at a low level. This API is provided as part of the tablet add-on extension to the Android SDK.
Download the SDK"
Stereoscopic 3D API Overview
Stereoscopic 3D or "stereoscopy" is implemented on the EVO 3D using a parallax barrier in front of a liquid crystal display. This technology creates the glasses free 3D imagery by blocking each of the stereo pair of images from the opposite eye's field of vision, effectively halving the screen resolution to accommodate both the left and right images within the same display.
There are several image arrangements for images and video that define the left and right pairs of the stereo images. Both images can be arranged by left and right or top and bottom as a single image or frame each compressed horizontally to half the size so as to not to occupy a larger image size or the images can be interleaved.
The stereoscopy display is managed by hardware and can be turned on and off both programmatically or by applications that can detect if an image or video has 3D content, such as the default Gallery application. When recording there is a physical switch to indicate recording in 2D or 3D.
Optimal viewing distance and angles:
The EVO 3D specifications:
Processor: MSM8660 (1.2 GHz Dual Core processor) + SQN1210 (WiMAX)
Operating System: AndroidTM 2.3 with HTC SenseTM Internal Memory: 4GB eMMC / RAM 1GB
Display: 4.3" inch Super LCD 540x960 QHD resolution 3D display
3D Capture and playback for photos and videos, display downloaded content formatted in 3D, stream 3D content wirelessly to 3D TV via DLNA or HDMI via microusb MHL port
supported 3D file formats: .jps, .mpo, .mp4, .3gp
How the Gallery application detects 3D content:
With still images, jps and .mpo are the extensions used to indicate a stereoscopic image. A jps file is simple a jpeg file with the L and R images side by side (SBS) in one jpg file. There is no header info to indicate the format and the format is just based on the extension. A mpo (multi part object) image format holds one or more jpg images sequentially in the file format, for stereoscopic L and R images they are the first 2 sequential images in the container.
The mpo format contains the same header as a jpg, therefore if an mpo file is simple renamed to use the jpg extension, the result will be a standard jpg image that displays only the first image with standard jpg image viewers. This allows to easily share the same file as a 2D or 3D image. Also unlike the jps format where L and R images are compressed horizontally to obtain same size ratio, the mpo format store each of the L an R stereoscopic images in the full horizontal resolution.
Preparing 3D Video with S3D metadata:
For preparing 3D video content, the standard H.264/MPEG-4 AVC Supplemental Enhancement Information (SEI) is used. This is metadata included in the video file itself. Specifically the frame packing arrangement (FPA) field. Using the side by side (also referred to as SBS) LR format would correspond to the frame packing value of 3. This is the recommended format for left-right video frame arrangement as not only is it the default format used when recording a video on a EVO 3D device, but it is also currently a common format found on many of the new 3D capable devices.
SEI FPA (Frame Packing Arrangement) message that contains the 3D arrangement:
0: checkerboard - pixels are alternatively from L and R
1: column alternation - L and R are interlaced by column
2: row alternation - L and R are interlaced by row
3: side by side - L is on the left, R on the right
4: top bottom - L is on top, R on bottom 5: frame alternation - one view per frame
so for SBS LR arrangement use:
3: side by side - L is on the left, R on the right
If you are encoding a 3D video, and your video encoding software does not support setting the SEI FPA field, you can re-encode the video using software that can set that appropriate field. One such example is the open source encoder called x264 which is part of VideoLan organization. Several commercial encoding software solutions are also adding the ability to set this field.
example command line usage: x264 --frame-packing 3 -o output.mp4 input.mp4 (note: this encoder has many additional parameters so default options are applied)
Useful resources:
ITU-T Video Coding Experts Group (VCEG)
ISO/IEC Moving Picture Experts Group (MPEG)
http://www.videolan.org/developers/x264.html
Programmatically enabling and disabling S3D display setting in applications:
As a part of the HTC Open Sense SDK, The DisplaySettings class is provided to allow applications to enable or disable S3D on a particular surface.
It can support several stereoscopic formats:
STEREOSCOPIC_3D_FORMAT_OFF
STEREOSCOPIC_3D_FORMAT_SIDE_BY_SIDE
STEREOSCOPIC_3D_FORMAT_TOP_BOTTOM
STEREOSCOPIC_3D_FORMAT_INTERLEAVED
The following static method is used to set the S3D mode:
DisplaySetting.setStereoscopic3DFormat(Surface surface, int format);
Where format is one of the formats listed above (for SBS, LR ia assumed) and surface is the current SurfaceView's surface, as used when drawing on a Canvas or a GLSurfaceView when programming with OpenGLES.
It is important to note that in either case, what you will be providing to the displayable surface that has S3D enabled is either existing images or video frames recorded in 3D or two LR programmatically generated images taking into account the mathematics involved with providing two camera angles with a certain distance between them.
So when painting on a canvas for example, you will need to paint twice, one for each eye's point of view. With OpenGL games, two view ports will be required with the world drawn twice, once for each view port.
In the provided sample code, a stereoscopic 3D image is provided as a resource. This viewed stereoscopic 3D image which measures 960x540 and could have been created by two LR side by side images, where each image's width is half of its respective original 960x540 size. So when viewed without the S3D display setting enabled, each LR image actually measures 480x540.
Additionally, sample code for S3D OpenGL consisting of a touchable spinning cube (with pinch to zoom) is also provided.
Note: currently DisplaySetting.setStereoscopic3DFormat(Surface surface, int format); does not affect video and camera surfaces as they are overridden by the video content and camera selection. The video surface is driven by the presence of the SEI FPA flag described above. The camera selection affects S3D display as follows:
Camera selection:
Camera 0 = Camera.CameraInfo.CAMERA_FACING_BACK (as of Android 2.3)
Camera 1 = Camera.CameraInfo.CAMERA_FACING_FRONT (as of Android 2.3)
Camera 2 = undefined in Android platform, HTC specific value for stereoscopic camera mode (both rear facing cameras)
so the equivalent to the hardware 3D-2D switch for the camera mode would be to switch between camera selections 0 (also the default) and 2:
Camera.getCamera() and Camera.getCamera(CAMERA_STEREOSCOPIC) where CAMERA_STEREOSCOPIC = 2
Note: for more info on the four S3D examples see the Sample Code section.
3D content recommendations:
For best results with 960x540 or larger with same ratio (e.g. 720dp)
A few 3D content best practices:
keep object in the frame (avoid the edges)
avoid fast motion across screen
avoid eye fatigue (refrain from popping out of screen)
S3D Formats:
Video Formats:
EVO 3D records into a .mp4 file container. Example stream info:
Video Track: 1280x720, ~30.013 fps, 5.18 Mbps (LR side by side in each frame)
Audio Track: MPEG-4 Audio stereo, 44.1 kHz, 64 kbps
Image format:
1920x1080 MPO container (L and R sequential jpeg images) Renaming the ,mpo to .jpg will provide L image readable by any jpeg image viewer.
The way that the EVO 3D (and YouTube) can detect that it is a mp4 with 3D content is by using the standard Supplemental Enhancement Information (SEI) metadata information embedded in the mp4 file.
Great news. Let the cooking commence
Just saw the post on Facebook. Came in to post this myself. Looks exciting!
I wonder if we could integrate the HTC Flyer Sense UI into the EVO 3D?
eXplicit815 said:
I wonder if we could integrate the HTC Flyer Sense UI into the EVO 3D?
Click to expand...
Click to collapse
That would be very interesting to see add the 3d api into and make it 3d
Installed, getting ready.
Doesn't look like it does too much yet...
Hopefully our devs can get a better signal going for this phone as well
Sent from my PC36100 using Tapatalk
Isn't this only to make apps? As far as I know it doesn't give the source of sense, or does it? I remember cyanogen saying something about it a few months ago on his twitter
Sent from my PG86100 using Tapatalk
jgalan14 said:
Isn't this only to make apps? As far as I know it doesn't give the source of sense, or does it? I remember cyanogen saying something about it a few months ago on his twitter
Sent from my PG86100 using Tapatalk
Click to expand...
Click to collapse
I thought we were going to be able to naively customize sense also. That's what it looked like before.
I downloaded and tried to install the sdk on Eclipse (Windows), but the package failed to install. I followed the instructions :
1.download the zip.
2.unzip to folder
3.Start SDK Manager
4.In Availaible packages click on 'add add-on site..'
5.enter 'file://c:\temp\htc\addon_htc_phone.xml
then it says :
Failed to fetch URL file://c:\temp\htc\addon_htc_phone.xml/addon.xml, reason: c
(that's all)
Can anyone has problem ?
I tried different paths, even root of hard disk. with slashes, backslashes, etc...
Thanx.
I had the same problem. You need to add a third forward slash after file: so it reads file:///c:....
eXplicit815 said:
I wonder if we could integrate the HTC Flyer Sense UI into the EVO 3D?
Click to expand...
Click to collapse
This port of flyer should arrive shortly..I seen one of the top gun develops mention they were testing it.
Forgot who it was
s6tpepper said:
I had the same problem. You need to add a third forward slash after file: so it reads file:///c:....
Click to expand...
Click to collapse
It works. It was not clean in doc. I clicked the Thanks meter on your post. You saved me
Ive been playing with it hoping i could get something from the API's ..... still pretty empty on what we can do. I heard they updated the source to but I think its the same file size (89.something)
The 'hardware' keys (in the bottom : the home, return, etc...) are not working. Any suggestion ?
I'd like to look at dev. tools for the HTC 3D and LG 3D before buying ...
Thanx.
"If you are encoding a 3D video, and your video encoding software does not support setting the SEI FPA field, you can re-encode the video using software that can set that appropriate field. One such example is the open source encoder called x264 which is part of VideoLan organization. Several commercial encoding software solutions are also adding the ability to set this field."
Anyone know other than x264, which encoding software supports setting the SEI FPA field for 3D video?
Thanks
Bigjim1488 said:
Hopefully our devs can get a better signal going for this phone as well
Sent from my PC36100 using Tapatalk
Click to expand...
Click to collapse
Your signature is PRICELESS. Mind If I Use as well?

[Q] 3D to 2D conversion

Are there any chance for convert my 3D photos to jpeg etc. file formats?
If you change the extension from *.jps to *.jpg, you'll get each picture side by side. After that, just crop it in paint/photoshop/etc.?
It worked thank's so much.

[HOW TO] 3D photo EDITING!!!!! UPDATED 2-26-12

For quite a while I wondered how to edit my 3D photos, not anything too crazy just things like adjusting the contract, saturation, etc.. By default it seems that our camera captures 3D photos in mpo format, which is not possible to edit as easily as a jpeg in a photo editor. HOWEVER, if you set the format to jps, you can now edit them in any photo editor that can edit jpeg files!! Apparently jps files are just jpeg files with the right and left images side by side. I have attached a sample I did, for upload I had to set the file extension to jpg because jps wouldn't allow a file size over 97kb?! Anyhow I did this one in PicSay Pro but you can of course get more creative and use Photoshop or my favorite, GIMP. It's VERY EASY to do and very fun. For the longest time I didn't know how to do this so I thought I'd post this info for the others like me that didn't know. I was able to open the file for editing without changing the extension from jps to jpg/jpeg, HOWEVER the photo editing applications if they don't recognize or allow you to save it as a "jps" file extension just save it as a normal jpeg/jpg and then manually change the extension to jps and you will be able to view it in 3D like normal on your EVO 3D. ENJOY!!!!!!!
UPDATE:
You can now even edit your MPO 3D images, from your phone, but you have to convert them to SIDE BY SIDE JPEG first, and you can use this great program to do it! Tobidale3D!
Here's how:
1. Install Tobidal3D.
2. View your MPO 3D image from the regular Gallery*.
3. Select SHARE for the photo you want to convert, select Tobidale3D, then select SHARE AS 3D*.
4. Press MENU, then select Parallel Stereo Format (see attached).
*Optional method: You can just open Tobidale3D and view all your pics with it directly then save from there, but I think using the gallery is easier.
Now you can edit the newly saved file as it's converted to a side by side jpeg jps file (it has a jpeg/jpg extension). The rest of the original editing instructions apply.
Awesome editor! I would recommend in addition to PicSay Pro, which costs about 4 bucks, you can use Pixlr-o-matic. It's free and works great and creates high res images, unlike some editors. The default native editor apparently saves in the exact same resolution as the original file. So that's another option if you want to keep full resolution and if you're happy with the editing effects offered by it.
I have attached a zip file with the original MPO file, the file converted to SBS, one edited with the native gallery editor (High Contrast option), then 8 images edited with Pixlr-o-matic. I have optimized the jps files using GIMP on my PC for the sake of file size for this thread, usually however the pics were about a meg in size each.
Hope you guys enjoy editing your 3D pictures!!!!!!!!
Awesome man Thanx....
Nice,I got some work to do now lol
Shot from my sharp shooter in 3d
I updated the OP. Please check it out!
Conversion
Sorry if it's off topic a bit (which it is, or I wouldn't say that right?), but I can't find the result I'm looking for ANYWHERE. I just got an Aiptek 3D Camcorder, and it takes pictures not in .JPS, not in .MPO, but a regular side by side .JPG! I'm trying to find an online tool, or application (I'm on a Mac but I could probably run it in CrossOver if it's a Windows app) to convert FROM .JPG to either .MPO or .JPS. The end result is I want to create a wiggle animated GIF so that I don't need glasses to show people 3D pictures I've taken, so if someone even knows of a process to convert from .JPG to an animated GIF wiggle that would be even better. Thanks in advance!
drumber42 said:
Sorry if it's off topic a bit (which it is, or I wouldn't say that right?), but I can't find the result I'm looking for ANYWHERE. I just got an Aiptek 3D Camcorder, and it takes pictures not in .JPS, not in .MPO, but a regular side by side .JPG! I'm trying to find an online tool, or application (I'm on a Mac but I could probably run it in CrossOver if it's a Windows app) to convert FROM .JPG to either .MPO or .JPS. The end result is I want to create a wiggle animated GIF so that I don't need glasses to show people 3D pictures I've taken, so if someone even knows of a process to convert from .JPG to an animated GIF wiggle that would be even better. Thanks in advance!
Click to expand...
Click to collapse
Rename the jpg files to JPS. Viola! JPS is the same as JPG just has the JPS extension to show it's a STEREO (S) Jpeg. There is an application for windows to convert stereo images here:
http://stereo.jpn.org/eng/stphmkr/
Good luck!

[Q] JPS images parallel or cross-eyed?

Hi! I have written a script to convert mpo files from my Fuji W3 into jps to be able to view them on my HTC Evo 3D. I had to do that to crop the image using the parallax set by the Fuji, that the Evo does not read, but I have issues with some files.
The jps format is by default full-size, side-by-side, and cross-eyed (left view is on the right, and right view on the left). For some reason, the Evo displays some jps files correctly, but some others are swapped and the 3D effect is terrible. Do you know why and how the Evo decides to display the left view to the left eye and the right view to the right eye, and sometimes it swaps?
I attached 3 photos so you can see what I am talking about. For me, the DSCF2419 file is correctly displayed, and the DSCF2579 file is not (it has to be swapped, left view on the left, and right view on the right).
Thanks for your help!
Anyone?

Categories

Resources