Skip to content

Videos

For maximum browser compatibility, PhotoPrism can transcode video codecs and containers supported by FFmpeg to MPEG-4 AVC, as well as extract still images for thumbnail creation:

  • if FFmpeg is disabled or not installed, indexing and importing videos is not possible because still images cannot be created
  • if Exiftool is disabled or not installed, indexing and importing videos is only partially possible because the video metadata cannot be extracted and thus the duration, resolution, and codec are unknown
  • MPEG-4 AVC videos can be played natively by most modern browsers and are not re-encoded, even if they exceed the configured bitrate limit; to reduce the size of AVC videos, you can manually replace the original files with a smaller version or wait for a future release that offers this functionality
  • OGV, VP8, VP9, AV1, WebM, and HEVC videos will be streamed directly if they are supported by your browser and do not exceed the configured bitrate limit
  • other formats must always be transcoded

You can view a list of codecs that FFmpeg supports by executing this command in a terminal:

ffmpeg -decoders

Our setup guide for advanced users explains how to configure hardware video transcoding.

Please note:

  1. Not all video and audio formats can be played with every browser. For example, AAC - the default audio codec for MPEG-4 AVC / H.264 - is supported natively in Chrome, Safari, and Edge, while it is only optionally supported by the OS in Firefox and Opera.
  2. HEVC/H.265 video files can have a .mp4 file extension too, which is often associated with AVC only. This is because MP4 is a container format, meaning that the actual video content may be compressed with H.264, H.265, or something else. The file extension doesn't really tell you anything other than that it's probably a video file.

Although the QuickTime .mov container format served as the basis for MPEG-4, there are differences and the two are not strictly interchangeable. Nevertheless, they can be played in most browsers and are not automatically transcoded for this reason.

In case FFmpeg is disabled or not installed, videos cannot be indexed because still images cannot be created. You should also have Exiftool enabled to extract metadata such as duration, resolution, and codec.

Containers

Codecs