Initializing... drag & drop files here
Supports: PSD
This page takes a .psd and produces a .swf — a Shockwave Flash movie holding your flattened artwork as a held frame, or several documents played back to back as a slideshow. It exists for one situation: a Flash-dependent toolchain that has to be fed and cannot be replaced. Legacy courseware, an older Adobe Animate or Flash Professional project, a kiosk or signage system whose ingest accepts .swf and nothing else.
Everywhere else, the honest answer is that Flash is finished. Adobe stopped supporting Flash Player on 31 December 2020 and began blocking Flash content from running on 12 January 2021; every mainstream browser removed the plugin in early 2021 and no setting brings it back. If what you actually need is the artwork as a picture, PSD to PNG is the end of the job. If you need motion that will still play in five years, PSD to MP4 is the same slideshow in a container that works.
.swf for each..swf. Files upload over an encrypted connection, are flattened and encoded on our servers, and are deleted automatically after a few hours — no sign-up, no watermark.Design documents almost always have cleared areas — a logo on nothing, a cut-out product shot, a lower-third bar sitting over emptiness. No video codec on this page, or anywhere else, can store an alpha channel, so those areas have to become something.
They become the Background Color, which opens on White. The compositing happens before any scaling, so it is a clean flatten rather than a fringe artefact, but it is also permanent: once the movie is encoded there is no transparency left to recover. Two consequences follow.
.swf from here is opaque. Build the composite in Photoshop so the intended background is part of the artwork, or bring the layered PSD into Animate and composite there.The same colour fills letterbox bars when your canvas shape does not match the frame, so picking a Fixed Resolution close to your document's aspect ratio removes half the problem before it starts.
| Feature of the PSD | Result in the SWF |
|---|---|
| Layer stack, masks, blend modes, adjustment layers | Flattened into the composite exactly as last saved. Hidden layers do not appear |
| Live type and smart objects | Rasterised. Type edges become pixels, which is what makes quantiser choice matter |
| Transparency | Composited onto Background Color before encoding — white unless you change it |
| CMYK or Lab colour mode | Converted to RGB, then to the yuv420p pixel format the encoder is pinned to |
| 16-bit or 32-bit depth | Reduced to 8 bits per channel |
| Canvas larger than 4096 pixels on a side | Scaled down to fit that ceiling before encoding, even on "Keep original" |
| Audio | There is none. Image-to-video output carries no audio stream at all, and the Audio Codec control does not render |
| Motion | None. The composite is held for the Image Duration; nothing animates |
That last row is the one people most often hope is untrue. A build, a moving lower-third, a ticker — none of that can come from a flat document, because the converter only ever sees the merged picture. Animate the graphic in Animate or After Effects and export from there.
| FLV — Sorenson Spark (opens here) | MJPEG | |
|---|---|---|
| Frame storage | Predicted from neighbouring frames | Every frame a complete JPEG |
| Five seconds of a 1080p still | 58,337 bytes in our test encode | 204,687 bytes for the same frame |
| Ten seconds of the same still | 63,582 bytes — about 5 KB for five more seconds | Grows in proportion to the duration |
| Constant Quality scale | 1-31 quantiser, lower is better | 2-31 quantiser, lower is better |
| Constraint Quality | Available, with a Max bitrate field | Not offered |
| Pick it when | Almost always | A tool downstream will pull individual JPEG frames back out |
The gap is wider on artwork than on ordinary video, and the reason is structural: after the opening keyframe, every subsequent frame of a held image is a "nothing changed" delta costing almost nothing. MJPEG cannot take advantage of that — it writes a complete JPEG every second whether the picture moved or not. It also loses the Constraint Quality mode, which on a qscale codec is the most direct size control the page offers.
One label to ignore: the numeric field under Constant Quality is called CRF, because that input is shared with H.264-class encoders where the name is right. Neither codec here uses CRF. Both take a quantiser where lower is better, which is the reverse of what the label implies.
None of them individually — it reads the flattened composite that Photoshop writes into the file alongside the layer data, so what you get is the merged picture as it looked when you last saved. That composite only exists if the document was saved with Photoshop's Maximize PSD and PSB File Compatibility preference set to Always. With it set to Never, only layered data is written, and non-Adobe readers have much less to work with. If the output does not match your canvas, re-save with the preference on and convert again.
Because browsers no longer run Flash at all. Adobe ended Flash Player support on 31 December 2020 and started blocking Flash content on 12 January 2021, and the plugin was removed from Chrome, Firefox, Edge and Safari in early 2021. A valid .swf from this page still opens in the Ruffle emulator, in Adobe's standalone Flash Player Projector, and in the Flash-era authoring tool you are targeting.
Image Duration multiplied by the number of documents, at one frame per second. One PSD at the default is a five-second movie containing five frames; four PSDs at "Merge images" with the same setting is twenty seconds. Encoding at one frame per second is deliberate — a held picture gains nothing from twenty-five identical copies a second — and B-frames are disabled for the same reason, since at one frame per second they push the stream's start time forward visibly.
Resolution first, quantiser second. Type edges are the hardest content for a lossy video codec: high-contrast boundaries produce exactly the ringing artefacts these encoders are worst at. Set a Fixed Resolution at or above the size the movie will actually be displayed at rather than letting it be scaled, and switch File Compression to Constant Quality with a low single-digit value. If type sharpness is the whole point of the asset, a Flash timeline will do better with the text as text — place a PNG or live type in Animate rather than baking it into a video frame.
No. No codec available on this page — nor on any video route — stores an alpha channel, so a cleared area is always composited onto the Background Color before encoding. For a Flash project that needs a keyed element, keep the artwork as a PNG with its transparency intact and place it in the timeline, or composite in Animate where layer transparency is a first-class concept.
Whatever you select under Video resolution. "Keep original" uses your canvas dimensions, subject to the 4096-pixel ceiling applied before encoding. Fixed Resolutions offers explicit width-by-height pairs from 256 x 144 up to 8K, and Preset Resolutions sets height with width following your canvas aspect. Older Flash authoring tools are particular about frame size, so if an import is rejected, try a modest explicit size such as 800 x 600 before assuming the file is at fault.
Because the byte-size and bitrate modes are hidden on image sources rather than offered and ignored. What remains is Quality Preset, Constant Quality and — on FLV only — Constraint Quality. Of those, Quality Preset has little to work with here: on codecs without a CRF mode it scales the source bitrate, and a still image has none. Constant Quality is the control that moves the picture, and Constraint Quality's Max bitrate is the closest thing to a size lever on this route.
The files play in the order they were uploaded, so queue them in the sequence you want. There is no reordering control and no per-file duration — every segment is held for the same Image Duration. If a specific document needs longer on screen, convert it separately with Video per image and assemble the movies in your Flash timeline, where you have real control over timing.
It is uploaded over an encrypted connection, flattened and encoded on our servers, and both the upload and the resulting .swf are deleted automatically after a few hours. Nothing is shared or made public, there is no watermark and no account is required. Layered Photoshop documents can be very large, so upload time is usually the slow part — flattening a copy in Photoshop first makes the whole job noticeably quicker.