What it can read, and what has actually been through it

Star Trail Stacker reads JPEG, PNG, TIFF and WebP everywhere, Bayer RAW through LibRaw compiled to WebAssembly, FITS in deep sky and SER in planetary — and the table below says, for each one, whether a real file from a real instrument has been through it or only a fixture this repository built.

Why there is a column for that at all

A support list is easy to write and easy to be wrong about. Code that accepts a file extension is not the same thing as a file of that kind having been read, and the gap between the two is where people lose an evening. So every row below says which of three things is true:

Every file type, and what has been through it

Read from the code that accepts these files and the corpora and fixtures that have been through it, on 2026-08-19.
You give itWhat happensVerified on
JPEG Decoded by the browser, then treated as 8-bit samples. A real file. Ten all-sky frames from Yebes Observatory (2021, credited), and single frames from a Nikon D300, a Canon EOS 5D Mark II and a Samsung NX1000, all under Creative Commons licences. Fixtures as well, on every test run.
PNG Decoded by this site's own reader, 8 and 16 bit. A real file. The 925 tiles of an independently published streak corpus. Fixtures as well, on every test run.
TIFF Decoded by this site's own reader. A fixture, on every test run, in a real browser.
WebP Decoded by the browser. A fixture, on every test run, in a real browser. Measured to cost 8.6% of registration accuracy against a lossless source, which is the reason to prefer one.
DNG LibRaw compiled to WebAssembly, 803 kB, fetched only when a RAW file is actually dropped. The mosaic is kept rather than demosaiced. A fixture, on every test run — but fixtures built to carry real bodies' quirks: the exact black level a Canon EOS R6 Mark III reports, the Fujifilm case where black is zero and so is every per-channel value, a 6×6 X-Trans array, and an already-demosaiced linear DNG of the class Samsung and Apple write. No DNG written by a real camera has been through it here.
CR2, CR3, NEF, ARW, RAF Recognised as RAW containers before TIFF — the order matters, because all of them are valid TIFF at the byte level and a TIFF decoder would happily stack a night of 160×120 thumbnails without an error. Then handed to the same LibRaw build. Never run. Not one file of any of these five has been read by this project. LibRaw supports them and they are accepted here on that basis alone.
FITS (deep sky) Read by this site's own reader, including 16 and 32 bit and the HIERARCH keyword convention. A real file. Twelve exposures of NGC 2392 taken with EFOSC2 on the ESO 3.6 m at La Silla, from the public science archive.
SER (planetary) Uncompressed MONO, RGB or declared-BGR only, with an explicit region and reference frame. A real file. A lunar capture from the PlanetarySystemStacker sample set.

Which cameras the aircraft search has actually been measured on

Reading a file and finding a trail in it are different claims. The trail search has been measured against labels drawn by other people on frames from a Nikon D300, a Canon EOS 5D Mark II, a Samsung NX1000, the Yebes all-sky camera, and the Sony and Nikon bodies behind an independently published corpus of 4,649 frames.

That is five or six bodies, and it is not many. The trained second opinion in particular was fitted on a corpus that is essentially two bodies under one photographer's skies, and nothing measured so far says whether it learned trails or learned those sensors. It is stated on its own receipt for the same reason it is stated here.

Lenses

Distortion figures come from the Lensfun database, matched on the maker and model your files record. Rokinon, Bower and Samyang are the same lenses under three names and are matched as one. If your lens is not in the database the tool says so rather than guessing a correction — a wrong correction is worse than none, because it moves every star by a measured-looking amount.

What it refuses, and why a refusal is the good outcome

A tool that guesses when it does not know produces a picture that looks right and is wrong, and nothing downstream can tell. These are refusals rather than failures, and each one names itself:

What comes out the other end, and which of the two files belongs in which program: taking the result into Lightroom, Photoshop or PixInsight.

Every refusal it can put on your screen, and what each one means: what it refuses to do, and the words it uses.

Try it on your own night

Open the stacker Nothing is uploaded and nothing is installed; the frames are read in your browser.