APNG Player

Decodes an uploaded APNG's frames and delays, then plays them back on a live timer that respects each frame's exact duration and the file's declared loop count, with play/pause controls, entirely in your browser. A free online tool from Staaarter, right in your browser.

Runs locallyUpdated 2026-07-26

Overview

Introduction

This tool plays back an uploaded Animated PNG frame-by-frame, so you can verify its timing and looping behavior before publishing or sharing it.

It decodes the file's real frame data once, then drives a live playback clock in your browser to display it.

What Is APNG Player?

An APNG playback viewer that decodes an uploaded file's frames, per-frame delays, and loop count, then advances through them on a requestAnimationFrame-driven timer.

Unlike a static <img> preview, it exposes the current frame number, total frames, and cycle duration as visible, readable information.

How APNG Player Works

On upload, the file's frames and metadata are decoded once via this category's shared APNG decoder.

A timer loop then tracks how long the current frame has been shown; once that exceeds the frame's declared delay, it advances to the next frame, wrapping back to the start and counting completed loops against the file's declared loop count (or looping forever if it's 0).

When To Use APNG Player

Use it to double-check that an APNG you built or received actually times and loops the way you expect before using it elsewhere.

It's also a convenient way to review the individual frames a client-side APNG tool (this category's Creator, Reverser, or Speed Changer) just produced.

Features

Advantages

  • Shows exact frame-by-frame timing rather than relying on a browser's own (opaque) native APNG playback.
  • Play/pause control lets you freeze on any moment of the animation for close inspection.
  • Runs entirely client-side, decoding and playing the file without any server round-trip.

Limitations

  • Very short per-frame delays (a few milliseconds) may not render at their exact rate, since browser timers can't guarantee sub-frame precision.
  • Only plays back the frame pixels this category's decoder can reconstruct; the color-type and dispose/blend caveats documented for the APNG Frames Extractor apply here too.

Examples

Infinite-loop spinner

Input

An 8-frame APNG with acTL loop count 0

Output

The player cycles through all 8 frames repeatedly until paused

A loop count of 0 means the animation never stops on its own.

One-shot reveal animation

Input

A 20-frame APNG with acTL loop count 1

Output

The player runs through all 20 frames once, then stops on the last frame

A loop count of 1 plays the full sequence exactly one time.

Best Practices & Notes

Best Practices

  • Pause on a specific frame to compare it directly against the source frame you expect, useful when debugging a Creator/Reverser/Speed Changer result.
  • Check the reported total duration per cycle against your intended animation length.

Developer Notes

Frame decoding and total-duration calculation are handled by a small async lib function built on top of this category's shared APNG decoder; the actual play/pause timing loop is a requestAnimationFrame effect in the client component (a genuine timer side effect, not derived state), since real-time playback isn't something a pure function can express.

APNG Player Use Cases

  • Verifying a newly created or edited APNG's timing before publishing it
  • Reviewing exactly which frame of an animation corresponds to a given moment
  • Confirming an APNG's loop count behaves as intended (infinite vs. a fixed number of plays)

Common Mistakes

  • Assuming all APNGs use a single fixed frame rate — per-frame delays can (and often do) vary within one animation.
  • Forgetting that pausing freezes on the currently displayed frame, not necessarily frame 1.

Tips

  • Use this player right after using the APNG Speed Changer or Reverser tools to confirm the new timing/order looks right.
  • If you only need static frame previews rather than live playback, the APNG Frames Extractor is a faster way to inspect them.

References

Frequently Asked Questions