## Overview

spconv is a batch converter for Apple spatial photos (shot with iPhone 15 Pro or later). It extracts the left-eye and right-eye images from a `.heic` file and saves them as a single side-by-side (SBS) JPEG. EXIF metadata and a thumbnail are copied to the output file. Regular single-image HEIC files are also supported and are converted to JPEG as-is.

## How to Use

Control | Description
--- | ---
Input > Folder | Select a folder. All `.heic` files in that folder will be converted (non-recursive).
Input > Files | Select one or more `.heic` files individually using a file dialog (multi-select supported).
Browse… (Input) | Opens folder browser or file picker depending on the selected mode.
Output Folder | Destination folder for converted JPEG files. Created automatically if it does not exist.
JPEG Quality | Compression quality 1–100 (default 92). Adjustable via the text box, spinner, or slider.
Start | Begin batch conversion.
Abort | Stop after the current file finishes.

### Output file naming

Output files are saved in the selected output folder with the same base name as the input, extension changed to `.jpg`.

    Input:   C:\Photos\IMG_0001.heic
    Output:  C:\Output\IMG_0001.jpg

### Spatial photo detection

A HEIC file with two top-level images is treated as a spatial photo (left + right eyes placed side by side). A HEIC with only one image is converted as a regular photo.

Note: HEIC files must be Apple spatial photos taken with iPhone 15 Pro / iPhone 16 series or shot in the Apple Vision Pro spatial format. Standard HEIC photos are also converted correctly.

## Library Licenses

spconv uses the following open-source libraries. Their licenses are reproduced below as required.

### libheif

Copyright © 2017–2024 Struktur AG, Dirk Farin
https://github.com/strukturag/libheif

Licensed under the GNU Lesser General Public License v2.1 or later (LGPL-2.1+).

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

Full license text: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html

### libde265

Copyright © 2013–2014 struktur AG, Dirk Farin
https://github.com/strukturag/libde265

Licensed under the GNU Lesser General Public License v2.1 or later (LGPL-2.1+).

libde265 is an open source implementation of the H.265 video codec. It is used by libheif for HEVC-compressed HEIC decoding. The same LGPL-2.1+ license terms apply as listed above for libheif.

Full license text: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html

### libjpeg-turbo

Copyright © 1991–2024 The libjpeg-turbo Project and many others
https://libjpeg-turbo.org/

libjpeg-turbo is licensed under a combination of licenses:

- The Independent JPEG Group (IJG) License (applies to the original libjpeg code)
- The Modified (3-clause) BSD License (applies to libjpeg-turbo extensions)
- The zlib License (applies to certain wrapper code)

    Independent JPEG Group License (excerpt):
    -----------------------------------------
    Permission is hereby granted to use, copy, modify, and distribute this
    software (or portions thereof) for any purpose, without fee, subject to
    these conditions:
    (1) If any part of the source code for this software is distributed, then
        this README file must be included, with this copyright and no-warranty
        notice unaltered; and any additions, deletions, or changes to the
        original files must be clearly indicated in accompanying documentation.
    (2) If only executable code is distributed, then the accompanying
        documentation must state that "this software is based in part on the
        work of the Independent JPEG Group".
    (3) Permission for use of this software is granted only if the user accepts
        full responsibility for any undesirable consequences; the authors accept
        NO LIABILITY for damages of any kind.

    BSD 3-Clause License (libjpeg-turbo portions):
    -----------------------------------------------
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions are met:
    1. Redistributions of source code must retain the above copyright notice,
       this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright notice,
       this list of conditions and the following disclaimer in the documentation
       and/or other materials provided with the distribution.
    3. Neither the name of the copyright holder nor the names of its contributors
       may be used to endorse or promote products derived from this software
       without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    ARE DISCLAIMED.

## About spconv

spconv is provided free of charge for personal and commercial use.
The application itself carries no warranty. Use at your own risk.