News:

2023-03-15 Major improvements to the new Geolocation feature

Main Menu

Extracting embedded images from Samsung phone (S8) "Selective Focus" shots

Started by ubacher, May 07, 2017, 02:07:32 AM

Previous topic - Next topic

ubacher

The Samsung smartphone (S8) produces two extra embedded images in the recorded jpg file.
[Samsung]       Embedded Image Name             : FocusShot_1
[Samsung]       Embedded Image                  : (Binary data 6202056 bytes, use -b option to extract)
[Samsung]       Embedded Image Name             : FocusShot_2
[Samsung]       Embedded Image                  : (Binary data 5782454 bytes, use -b option to extract)
[Samsung]       Time Stamp                      : 2017:05:05 19:14:30+02:00

I assume these are regular jpg files but with a different focus point.
How can I extract these? Command line syntax please!
( I have exiftoolgui, I can handle command lines if need be, I use Imatch - from within Imatch I will eventually perform the extract.)

Stephen Marsh

Can you try the following command to see how the duplicates are listed?

exiftool -a -G1 -s 'mac os/path/to/file or directory/here.jpg'

exiftool -a -G1 -s "ms windows\path\to\file or directory\here.jpg"


EDIT:

Ah, I think that was the duplicate output! So, are your tags named?:

-Samsung:FocusShot_1

and

-Samsung:FocusShot_2

Stephen Marsh

CLI examples here (#11 and #12):

https://exiftool.org/examples.html


For my Olympus camera, a similar command line example from the raw file would be:

exiftool -b -Olympus:PreviewImage -w %d%f.jpg FILE-or-DIR (Raw)

While for my Canon, possible tags would be:

-IFD0:PreviewImage (Raw)

-IFD1:ThumbnailImage (JPEG)


However as you already have a JPG, you don't want to use exactly the same name with only the %d%f arguments... so:

exiftool -b -Samsung:FocusShot_1 -w %d%f_FocusShot_1.jpg FILE-or-DIR

exiftool -b -Samsung:FocusShot_2 -w %d%f_FocusShot_2.jpg FILE-or-DIR

Phil Harvey

You can try this command:

exiftool -embeddedImage -b -W %d%f%c.%s DIR

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Stephen Marsh

%d%f%c.%s = Cool!

http://www.exiftool.org/exiftool_pod.html

%d = directory
%f = filename
%c = copy number
.
%s = suggested extension

Thanks Phil!

ubacher

exiftool -embeddedImage -b -W %d%f%c.%s DIR from Phil
works but extracts only one of the two images.
exiftool -b -Samsung:FocusShot_1 -w %d%f_FocusShot_1.jpg FILE-or-DIR from Stephen
does not work: says 0 output files created.
I am doing this on Windows 10 command line.

When I list with exiftool -a -G1 -s I get the output shown in my initial post.

Looks like the problem is that the tag ID and the tag content are on seperate lines.
Phil: Is there a way around this????




Phil Harvey

Right, I forgot to add -a to allow duplicate tags:

exiftool -embeddedImage -a -b -W %d%f%c.%s DIR

(the "FocusShot_1" name is just what Samsung calls the embedded image.  It has nothing to do with the ExifTool tag names)

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

ubacher

That's it.
Thank you for your guidance thru the exiftool option jungle.
(I will buy you a beer the next time I am in Kingston.)

jumpjack

Thanks for very useful information, I was getting nut figuring out how to analyze a JPEG file to extract multi-images from samsung images.
Fortunately this led to me to discover the amazinh hex editor FlexHex (free for educational and non-profit organizations)... although I was not able to create the right .FSD file to indentify all fields.

All I was able to do is this, for those interested (just copy following code inside xxxx.fsd text file and load it into FlexHex from menu Edit-->Structure-->Load

struct _JPEGHeader
{
  BYTE SOI[2];          /* 00h  Start of Image Marker     */
  BYTE APP0[2];         /* 02h  Application Use Marker    */
  WORD Length;       /* 04h  Length of APP0 Field      */
  char Identifier[5];   /* 06h  "JFIF" (zero terminated) Id String */
  hex WORD Version;      /* 07h  JFIF Format Revision      */
  BYTE Units;           /* 09h  Units used for Resolution */
  unsigned WORD Xdensity;     /* 0Ah  Horizontal Resolution     */
  unsigned WORD Ydensity;     /* 0Ch  Vertical Resolution       */
  unsigned BYTE XThumbnail;      /* 0Eh  Horizontal Pixel Count    */
  unsigned BYTE YThumbnail;      /* 0Fh  Vertical Pixel Count      */
}



That said... above command line works fine in extracting multifocus images (or "Focus Shots" as Samsung calls them), but fails in extracting "Double Shots" and "Interactive Panoramas" (images containing dozens of shots from different angles).

My "exiftool -a -G1 -s" outputs for a Double Shot and an Interactive Panorama:

[ExifTool]      ExifToolVersion                 : 11.06
[System]        FileName                        : 0001-double.jpg
[System]        Directory                       : .
[System]        FileSize                        : 2.9 MB
[System]        FileModifyDate                  : 2018:07:22 16:35:38+02:00
[System]        FileAccessDate                  : 2018:07:25 20:47:50+02:00
[System]        FileCreateDate                  : 2018:07:25 20:47:50+02:00
[System]        FilePermissions                 : rw-rw-rw-
[File]          FileType                        : JPEG
[File]          FileTypeExtension               : jpg
[File]          MIMEType                        : image/jpeg
[File]          ExifByteOrder                   : Little-endian (Intel, II)
[File]          ImageWidth                      : 3024
[File]          ImageHeight                     : 3024
[File]          EncodingProcess                 : Baseline DCT, Huffman coding
[File]          BitsPerSample                   : 8
[File]          ColorComponents                 : 3
[File]          YCbCrSubSampling                : YCbCr4:2:2 (2 1)
[IFD0]          Orientation                     : Rotate 90 CW
[IFD0]          YCbCrPositioning                : Centered
[IFD0]          XResolution                     : 72
[IFD0]          YResolution                     : 72
[IFD0]          ResolutionUnit                  : inches
[IFD0]          Make                            : samsung
[IFD0]          Model                           : SM-G930F
[IFD0]          Software                        : G930FXXU2ERE8
[IFD0]          ModifyDate                      : 2018:07:22 16:35:38
[ExifIFD]       ExposureTime                    : 1/25
[ExifIFD]       FNumber                         : 1.7
[ExifIFD]       ExposureProgram                 : Program AE
[ExifIFD]       ISO                             : 160
[ExifIFD]       ExifVersion                     : 0220
[ExifIFD]       DateTimeOriginal                : 2018:07:22 16:35:38
[ExifIFD]       CreateDate                      : 2018:07:22 16:35:38
[ExifIFD]       ShutterSpeedValue               : 1/25
[ExifIFD]       ApertureValue                   : 1.7
[ExifIFD]       BrightnessValue                 : 0.64
[ExifIFD]       ExposureCompensation            : 0
[ExifIFD]       MaxApertureValue                : 1.7
[ExifIFD]       MeteringMode                    : Center-weighted average
[ExifIFD]       Flash                           : No Flash
[ExifIFD]       FlashpixVersion                 : 0100
[ExifIFD]       ComponentsConfiguration         : Y, Cb, Cr, -
[ExifIFD]       FocalLength                     : 4.2 mm
[ExifIFD]       SubSecTime                      : 0868
[ExifIFD]       SubSecTimeOriginal              : 0868
[ExifIFD]       SubSecTimeDigitized             : 0868
[ExifIFD]       UserComment                     :
[ExifIFD]       ColorSpace                      : sRGB
[ExifIFD]       ExifImageWidth                  : 3024
[ExifIFD]       ExifImageHeight                 : 3024
[ExifIFD]       ExposureMode                    : Auto
[ExifIFD]       WhiteBalance                    : Auto
[ExifIFD]       FocalLengthIn35mmFormat         : 26 mm
[ExifIFD]       SceneCaptureType                : Standard
[ExifIFD]       ImageUniqueID                   : C12LLJB18SM C12LLLC01GM.
[InteropIFD]    InteropIndex                    : R98 - DCF basic file (sRGB)
[InteropIFD]    InteropVersion                  : 0100
[IFD1]          ImageWidth                      : 376
[IFD1]          ImageHeight                     : 376
[IFD1]          Compression                     : JPEG (old-style)
[IFD1]          Orientation                     : Rotate 90 CW
[IFD1]          ThumbnailOffset                 : 844
[IFD1]          ThumbnailLength                 : 15856
[IFD1]          ThumbnailImage                  : (Binary data 15856 bytes, use -b option to extract)
[Samsung]       TimeStamp                       : 2018:07:22 16:35:38+02:00
[Composite]     Aperture                        : 1.7
[Composite]     ImageSize                       : 3024x3024
[Composite]     Megapixels                      : 9.1
[Composite]     ScaleFactor35efl                : 6.2
[Composite]     ShutterSpeed                    : 1/25
[Composite]     SubSecCreateDate                : 2018:07:22 16:35:38.0868
[Composite]     SubSecDateTimeOriginal          : 2018:07:22 16:35:38.0868
[Composite]     SubSecModifyDate                : 2018:07:22 16:35:38.0868
[Composite]     CircleOfConfusion               : 0.005 mm
[Composite]     FOV                             : 69.4 deg
[Composite]     FocalLength35efl                : 4.2 mm (35 mm equivalent: 26.0 mm)
[Composite]     HyperfocalDistance              : 2.14 m
[Composite]     LightValue                      : 5.5






[ExifTool]      ExifToolVersion                 : 11.06
[System]        FileName                        : 0004rotante.jpg
[System]        Directory                       : .
[System]        FileSize                        : 2.7 MB
[System]        FileModifyDate                  : 2018:04:26 09:17:06+02:00
[System]        FileAccessDate                  : 2018:07:25 20:38:07+02:00
[System]        FileCreateDate                  : 2018:07:25 20:38:07+02:00
[System]        FilePermissions                 : rw-rw-rw-
[File]          FileType                        : JPEG
[File]          FileTypeExtension               : jpg
[File]          MIMEType                        : image/jpeg
[File]          ExifByteOrder                   : Little-endian (Intel, II)
[File]          ImageWidth                      : 1138
[File]          ImageHeight                     : 640
[File]          EncodingProcess                 : Baseline DCT, Huffman coding
[File]          BitsPerSample                   : 8
[File]          ColorComponents                 : 3
[File]          YCbCrSubSampling                : YCbCr4:2:0 (2 2)
[IFD0]          ImageWidth                      : 1138
[IFD0]          ImageHeight                     : 640
[IFD0]          Make                            : samsung
[IFD0]          Model                           : SM-G930F
[IFD0]          Orientation                     : Rotate 90 CW
[IFD0]          XResolution                     : 72
[IFD0]          YResolution                     : 72
[IFD0]          ResolutionUnit                  : inches
[IFD0]          Software                        : G930FXXU1DQJ8
[IFD0]          ModifyDate                      : 2018:04:26 09:17:06
[IFD0]          YCbCrPositioning                : Centered
[ExifIFD]       FNumber                         : 1.7
[ExifIFD]       ExposureProgram                 : Program AE
[ExifIFD]       ExifVersion                     : 0220
[ExifIFD]       DateTimeOriginal                : 2018:04:26 09:17:06
[ExifIFD]       CreateDate                      : 2018:04:26 09:17:06
[ExifIFD]       MaxApertureValue                : 1.7
[ExifIFD]       MeteringMode                    : Center-weighted average
[ExifIFD]       Flash                           : Off, Did not fire
[ExifIFD]       FocalLength                     : 4.2 mm
[ExifIFD]       ColorSpace                      : sRGB
[ExifIFD]       ExifImageWidth                  : 1138
[ExifIFD]       ExifImageHeight                 : 640
[ExifIFD]       ExposureMode                    : Auto
[ExifIFD]       WhiteBalance                    : Auto
[ExifIFD]       FocalLengthIn35mmFormat         : 26 mm
[ExifIFD]       SceneCaptureType                : Portrait
[ExifIFD]       ImageUniqueID                   : C
[IFD1]          ImageWidth                      : 496
[IFD1]          ImageHeight                     : 280
[IFD1]          Orientation                     : Rotate 90 CW
[JFIF]          JFIFVersion                     : 1.01
[JFIF]          ResolutionUnit                  : cm
[JFIF]          XResolution                     : 59
[JFIF]          YResolution                     : 59
[Samsung]       TimeStamp                       : 2018:04:26 09:17:06+02:00
[Composite]     Aperture                        : 1.7
[Composite]     ImageSize                       : 1138x640
[Composite]     Megapixels                      : 0.728
[Composite]     ScaleFactor35efl                : 6.2
[Composite]     CircleOfConfusion               : 0.005 mm
[Composite]     FOV                             : 69.4 deg
[Composite]     FocalLength35efl                : 4.2 mm (35 mm equivalent: 26.0 mm)
[Composite]     HyperfocalDistance              : 2.14 m



No [Samsung] tags appear in the output, but I can see them in the hex editor:
FlipPhoto_002
Interactive_Panorama_000


I tried attaching the two images 3MB each, with no success, although form says limit is 10MB each.

Phil Harvey

You can send the files to me directly.   My email is philharvey66 at gmail.com

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).


jumpjack

about the JPEG structure, isn't there any official documenti about it? It looks like it is a secret... while GIF format, which is instead proprietary and pay-per-use, is widely documented!

Phil Harvey

I got the files, thanks.  I'll post back after I've had a chance to analyze them.

The JPEG/JFIF format specification is widely available.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

I eventually found (after 2 days) a suitable document, by adding EXIF, SPIFF and JFIF to the search string:
http://dev.exiv2.org/projects/exiv2/wiki/The_Metadata_in_JPEG_files


I am trying to write my own "Samsung Dual Shot Extractor" so I need to understand very well this format mess!  ;)

Phil Harvey

OK.  Use the exiftool -htmldump option to look in detail at the structure of a JPEG.

Note that the information you are looking for is likely all found in the (completely undocumented) Samsung trailer.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

Quote from: Phil Harvey on July 26, 2018, 12:58:51 PM
OK.  Use the exiftool -htmldump option to look in detail at the structure of a JPEG.

Note that the information you are looking for is likely all found in the (completely undocumented) Samsung trailer.

- Phil
amazing output!
thanks!

jumpjack

Anyway all information I need is just where to start from and end to when copying the two images streams into separate files.

Phil Harvey

Quote from: jumpjack on July 26, 2018, 01:07:23 PM
Anyway all information I need is just where to start from and end to when copying the two images streams into separate files.

Right.  Good question.  I'll let you know what I find out.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

Phil Harvey

Thanks for the samples.

ExifTool already parses this information if you look at the exiftool -v3 output for these files, but doesn't extract some new tags which contain the information you want.

It seems that the FlipPhoto JPEG is stored in SamsungTrailer_0x0a20.  I will add the ability to extract this in the next version of ExifTool... but what to name this tag?  "FlipPhotoImage"?

The interactive panorama is a 3GP video stored in SamsungTrailer_0x0201 -- I'll add the ability to extract this as well.  (Called "InteractivePanoramaVideo"?  Do you have a better suggestion?)

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

Quote from: Phil Harvey on July 27, 2018, 07:58:53 AM
Thanks for the samples.

ExifTool already parses this information if you look at the exiftool -v3 output for these files, but doesn't extract some new tags which contain the information you want.

It seems that the FlipPhoto JPEG is stored in SamsungTrailer_0x0a20.  I will add the ability to extract this in the next version of ExifTool...
Thanks for the analysis.
I am eager to see next version, but in the meantime, could you provide any tip about fields and offsets to look for by myself, to attempt starting to write the procedure which extracts the 2 streams?
I have yet to understand how to find the beginning of various segments in a JPEG file.
I can find the SOI (of course), then the APP1, but then I see multiple SOIs (FFD8)  and EOIs (FFD9) and I get confused.
Have they fixed length? The couple of bytes after the signature looks like not matching with actual length of the data segment...


Quote
but what to name this tag?  "FlipPhotoImage"?

The interactive panorama is a 3GP video stored in the SamsungTrailer_0x0201 tag -- I'll add the ability to extract this as well.  (Called "InteractivePanoramaVideo"?  Do you have a better suggestion?)


I think it's better to stick to Samsung naming: as they label these pictures "FlipPhoto_002" (why "always "2"?!?) and "Interactive_Panorama_000" (Why always "000"?) , I think it's better to name them "Samsung Flip-photo image" and "Samsung Interactive Panorama Image" (it's not properly a video, being stored inside a JPEG; it's more like an animated JPEG).

Once extracted, the video is no more interactive, it's just a video.

Phil Harvey

Ooops.  I was too fast.

I've gone ahead and released ExifTool 11.07 with the tag names that I had suggested.  You can download the new version from the ExifTool home page.

Look at the ExifTool source code for hints on how to decode this information.  The lengths are not fixed, so it is best to parse the Samsung trailer properly.  See Samsung.pm for my Perl code to do this.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

Quote from: jumpjack on July 27, 2018, 08:34:54 AM
I think it's better to stick to Samsung naming: as they label these pictures "FlipPhoto_002" (why "always "2"?!?) and "Interactive_Panorama_000" (Why always "000"?) , I think it's better to name them "Samsung Flip-photo image" and "Samsung Interactive Panorama Image" (it's not properly a video, being stored inside a JPEG; it's more like an animated JPEG).

Once extracted, the video is no more interactive, it's just a video.

It looks like iternal names are different from public names:
FliPhoto = Dual Camera
Interactive Panorama = Surround Shot
https://gadgetguideonline.com/s7/sasmung-galaxy-s7-how-to-guides/how-to-download-and-install-galaxy-s7-camera-modes/

Maybe it's better to use public names for better discoverability from search engines, and use internal names only in exif documentation.

Phil Harvey

...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

Quote from: Phil Harvey on July 27, 2018, 08:42:00 AM
Ooops.  I was too fast.

I've gone ahead and released ExifTool 11.07
Where can I download windows executable from?

Phil Harvey

...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).


jumpjack

This commandline:
>exiftool -a -b -Samsung:FlipPhotoImage  -w aaaa%c.jpg double.jpg

...results in a single image, maybe because of this output from -a -G1 -s (just one image):
FlipPhotoName                   : FlipPhoto_002
FlipPhotoImage                  : (Binary data 297999 bytes, use -b option to extract)

But the original file is opened by image viewers showing the first of two images, so  it's "almost ok" :-)

This commandline:
>exiftool -a -b -Samsung:InteractivePanoramaVideo -w test.3gp rotanting.jpg

...results in a working .3gp video, so it's ok.

----------

So, in this double shot, which one is the stream of the first image and which one is the second? (see attachment)

Phil Harvey

I'd say the main JPEG is the first image, starting at offset 0.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

But why are there three SOIs and three EOIs... but they are not nested?!? it is a nonsense.
How many images are here?
Where does first one start from and end to?
Where does second one start from and end to?

Extended version of previous image is attached, and it is associated to the image I sent you, 0006.jpg.
What's the second FFd9 for?
How can I determine where the first stream ends? I see an "FF FF" sequence after FF D8 FF E1, which should be data length, but actually is not.


Phil Harvey

I suggest that you spend some time looking at the ExifTool -htmldump and -v3 outputs.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

Quote from: Phil Harvey on July 30, 2018, 07:22:51 AM
I suggest that you spend some time looking at the ExifTool -htmldump and -v3 outputs.

- Phil
Actually I am studying several pages, sites and documents about JPEG format, but the more I study it, the more I'm convinced that who invented it was kinda of drunk...

jumpjack

How do I extract just the image from a  "SurroundShotVideo"? if I use this tag, I can extract the video, but how do I get just the image?


Working command line for video:
exiftool -a -b -Samsung:SurroundShotVideo  input-image.jpg >output-video.avi


Not working:
exiftool -a -b -Samsung:SurroundShotVideo -w output-video.avi input-image.jpg

Not working:
exiftool -a -b -Samsung:PanoramaShot  -w pano.jpg pano-cascata.jpg



Samsung trailer (13037681 bytes at offset 0xd86411):
  SurroundShotVideoName = Motion_Panorama_MP4_000
  SurroundShotVideo = .ftyp3gp53gp5isom.*~mdat.HRe.N,....p.N....lusu.bmj..o.'.........T[snip]
  SamsungTrailer_0x08e1Name = Motion_Panorama_Info
  SamsungTrailer_0x08e1 = ..8....Z...6.`...@B.?B.....Pf..@B.@B.@B......<..?B.@B.@B.4$..[snip]
  Samsung_Trailer_0x0a01-name = Image_UTC_Data
  TimeStamp = 1536409526694
  SamsungTrailer_0x0aa1Name = MCC_Data
  SamsungTrailer_0x0aa1 = 222
  SamsungTrailer_0x08e0Name = Panorama_Shot_Info
  SamsungTrailer_0x08e0 = PanoramaShot

Phil Harvey

Sorry for the delay -- I've been away on vacation.

Can you email me a sample with this PanoramaShot metadata?  (philharvey66 at gmail.com)   I'll add the ability to extract this.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

Quote from: Phil Harvey on September 17, 2018, 08:12:11 AM
Sorry for the delay -- I've been away on vacation.

Can you email me a sample with this PanoramaShot metadata?  (philharvey66 at gmail.com)   I'll add the ability to extract this.

- Phil
Thse images are huge (50-100MB), but I will try.
I examined one, and it looks like it contains all the shots used to build the panorama (there are dozens of FFD( signatures) , plus the resulting panorama video and the resulting panorama itself!

Phil Harvey

OK,  If you can't send me the whole file, could you post the output of exiftool -v3 on the file?

Thanks.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

jumpjack

Quote from: Phil Harvey on September 24, 2018, 08:25:06 AM
OK,  If you can't send me the whole file, could you post the output of exiftool -v3 on the file?

Thanks.

- Phil
I succeeded in uploading a couple of images:
http://jumpjack.altervista.org/raduni/xi/pano-gardenie.jpg
http://jumpjack.altervista.org/raduni/xi/pano-crivelli.jpg

In the meantime I wrote a very simple program which just extract first image, but it would be anyway interesting to figure out what is inside a panorama file.
http://jumpjack.altervista.org/SamsungExtractor.zip

Phil Harvey

I wasted quite a bit of time this morning trying to figure out what is going on with the panos you uploaded.  As far as I can tell, the main image is missing the JPEG EOI marker (which should occur just before the trailer).  I wouldn't put it past the Samsung programmers to make a stupid blunder like this.

As far as decoding the trailer goes, the lack of an EOI means that ExifTool doesn't find the trailer in the second image you uploaded, but it does fully parse the trailer in the first image, with the exception that the 48064-byte "Motion_Panorama_Info" is not decoded (but this doesn't look like an image).

So I don't know what you mean by the first image of the panorama, and I don't see it anywhere in the trailer.

- Phil

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).