To get an ultrasound video frame as a PNG, open a local copy of the clip in a browser-based frame extractor, type a time in seconds that points to the moment you want, and download the still the browser decodes at that position. The whole job runs in your current tab: the file is not uploaded, the video is not re-encoded, and the PNG you save is drawn directly from the decoded frame at its native pixel size. Ultrasound clips are usually short phone or monitor recordings in MP4 or MOV, which makes them a natural fit for this approach because the same video element that previews the clip is what the extractor seeks into. With the Video Frame Extractor you enter a single requested time, the browser decodes that frame into a canvas, and a PNG drops into your downloads folder named after the time you asked for. The catch is that a requested time is a media-timeline position, not a guaranteed source-frame number, so the browser may land on a nearby decoded frame because of keyframes, variable frame rates, and timestamp rounding, which is why you should verify the still before you share it.

how to get ultrasound video frame
how to get ultrasound video frame

Why extracting an ultrasound frame calls for a private, local workflow

Ultrasound clips tend to be personal. Most are recordings taken off a clinic monitor with a phone, saved as MP4 or MOV by the phone's camera roll, or exported from the imaging system as a short DICOM-derived video. Whatever the source, the contents belong to the patient or the parent-to-be, and uploading that file to a random website just to grab one still image is a hard sell. The Video Frame Extractor addresses that concern directly: the file you choose is decoded inside the browser tab, the frame is drawn into a canvas, and the PNG is produced locally and offered as a standard download link in the current tab. Nothing is sent to a server.

This matters beyond privacy. The tool does not re-encode the clip, so the PNG captures the decoded video frame at its native pixel dimensions, and you do not lose resolution to a transcoding pass. The output filename even carries the time you requested, which keeps a tidy record of which moment you pulled. For obstetric keepsakes, second-opinion references, or teaching files, that local-only workflow tends to be the default expectation rather than a nice extra.

Pulling a frame from your ultrasound video

The whole extraction takes a few seconds once the file loads, and the order below mirrors the verified operating flow.

  1. Open the tool and pick a supported local video. The browser's file picker lets you select a single MP4, WebM, MOV, M4V, or Ogg file. Wait until the duration field populates and the preview shows the first frame, which confirms the codec inside the container is something the browser can actually decode, not just that the extension is recognized.
  2. Type the time of the moment you want. The field accepts a number of seconds from zero up to the displayed duration, and decimals are welcome. Enter 0 for the first frame, 12.5 for a moment twelve and a half seconds in, or 0.033 for a millisecond-scale position near the start.
  3. Choose Extract PNG frame. The browser seeks the video element to the time you entered, waits for the seek to complete, draws the current decoded frame onto a same-size canvas, and encodes it as PNG.
  4. Check the still. A preview of the extracted PNG appears in the tool. Confirm it really is the moment you wanted before you save it, since this is the step that catches keyframe-rounding surprises.
  5. Download the PNG. Click the download link to save the still to your device. The filename includes the time you typed, which is a useful trail for the moment you captured.

If the picker accepts your file but the preview never loads, the issue is codec compatibility inside the container. The extension is right but the audio or video track inside it is not.

Choosing the right moment in an ultrasound clip

Ultrasound videos are usually short, often a few seconds to a couple of minutes, but the meaningful moment is typically a single heartbeat, a single profile shot, or a single mid-measurement frame. Picking the right time is a matter of skimming the clip first and noting the approximate second where the shot you want stabilizes.

A simple approach:

  • Open the video in any local player and scrub to the second that looks closest to the still you remember.
  • Round to the nearest tenth of a second and enter that value into the frame-extractor time field.
  • Extract the frame and check it. If you are off by a beat, nudge the time by a tenth in either direction and extract again, since each run is independent and you can iterate cheaply.

For first-trimester keepsakes, the heartbeat silhouette is often a small portion of the frame and benefits from the native pixel size the tool preserves. For later scans where the anatomy fills more of the screen, the same still can double as a clinical reference image for sharing with a specialist, since the decoded frame carries the original color and resolution rather than a downsized thumbnail.

Time-entry formats the field accepts

The time field is a single number in moments, but the precision you can dial in depends on how you write it. The product contract lists eight fixture values covering the boundaries and the common cases in between. Treat the table below as a quick reference for the form of the input, not a guide to specific source-frame numbers, since the actual decoded frame depends on keyframes and timestamps.

Use caseExample entryNotes
Very first frame0Integer zero lands at the start of the timeline.
Millisecond near start0.033Three decimal places resolve a single millisecond.
Fractional mid-clip12.5One decimal for half-second precision.
Ordinary whole second30Plain integer when a one-second snap is fine.
Frame-rate style decimal7.04Two decimals align with 25 fps cadence.
One-minute mark60Integer for the one-minute boundary.
Close to the endduration − 0.1Stay just inside the reported duration.
Maximum alloweddurationThe exact duration is the upper bound the field accepts.

Entering anything above the displayed duration is rejected by the time parser, and the lower bound is zero, since negative values are not a thing the field recognizes.

Limits, codecs, and frame-accuracy caveats

Three limits interact with whether the extraction can finish at all. The shared video safety policy caps a single source file at 500 MiB, five minutes of duration, no more than 4096 pixels per side, and no greater than 3840 × 2160 pixels in area. If your ultrasound clip exceeds any of those, the picker will still let you select it, but the decoder will fail and the tool will surface the failure rather than hand you an empty PNG.

Browser codec support is the second gatekeeper. MP4 is a container, not a codec, so the file may wrap H.264 video and AAC audio, but it might also carry HEVC, ProRes, or a less common profile that the browser does not decode. The same applies to MOV and M4V, which are closely related containers. The WebM and Ogg formats are more predictable on the web, but only when their codecs are VP9, VP8, or AV1 video and Opus or Vorbis audio. When a clip refuses to open, the fix is almost always to re-export the ultrasound recording from the device or the imaging system with a widely supported codec, not to keep retrying the same file.

The third caveat is the one most people miss. A requested time is a media-timeline position, not a guarantee of source-frame precision. Browsers seek to a nearby decoded frame because of keyframes, variable frame rates, edit lists, timestamp rounding, and codec behavior. The displayed time records the position you asked for, and the tool does not inspect packet timestamps or identify an exact numbered source frame. That is why the verification step in the procedure above exists: extract, look, adjust, repeat.

When to use a dedicated desktop tool instead

The local browser workflow covers most single-still needs, including obstetric keepsakes, quick reference images, and slides. It is not the right pick for frame-accurate editorial work where you need a specific numbered source frame, HDR or color-managed output that matches the original signal, alpha-channel workflows, batch extraction across a long piece of footage, or container and codec combinations the browser cannot decode. For those cases, a desktop NLE or a dedicated frame-grabber gives you control over decoded frame indices, color spaces, and export formats that a canvas-based pipeline cannot match.

If your goal is specifically a full-resolution PNG at a precise time and the clip lives inside the policy limits, the Video Frame Extractor stays the simplest path. For more detail on how the canvas drawing and PNG encoding actually work under the hood, the capture a video frame as a PNG guide walks through the same flow with extra notes on native dimensions. And if you ever need to confirm what HTMLMediaElement.currentTime really controls during the seek, the MDN reference on currentTime is the canonical description of how the browser interprets the timeline position you pass in.