Choose the output before the encoder
Begin with how the result will be used. A social thumbnail, an AI input, an editing intermediate, and a transparent picture frame have different requirements. Decide whether you need photographic detail, alpha transparency, exact dimensions, scalable shapes, or a sequence of timed images. Then choose the representation that preserves those requirements.
A file conversion does not automatically improve the underlying image. Putting a photograph inside an SVG document does not turn its details into vector paths. Saving a compressed source as a PNG preserves the decoded pixels; it does not reconstruct detail already lost earlier in the pipeline.
Keep context with every result
Store source identifiers, selected timestamps, dimensions, orientation, color assumptions, and transformation settings alongside exported assets. An image filename can describe the content, but a manifest is a better place for the exact processing history. Use the same record to connect later edits or AI observations to the original source.
Look inside video files
Video work starts with inspection. Read the streams, time bases, dimensions, duration, and encoding details. Decide whether you need an exact frame, a representative thumbnail, a periodic sample, or a scene-oriented selection. These are separate requests even if they produce the same output image format.
The MDN image-format guide provides format background; the FFmpeg documentation explains media processing and stream relationships.