The web implementation of video_player.


This package is the endorsed implementation of video_player for the web platform since version 0.10.5, so it gets automatically added to your application by depending on video_player: ^0.10.5.

No further modifications to your pubspec.yaml should be required in a recent enough version of Flutter (>=1.12.13+hotfix.4):

  video_player: ^0.10.5

Once you have the correct video_player dependency in your pubspec, you should be able to use package:video_player as normal, even from your web code.


The Web platform does not suppport dart:io, so attempts to create a VideoPlayerController.file will throw an UnimplementedError.


Playing videos without prior interaction with the site might be prohibited by the browser and lead to runtime errors. See also:

Mixing audio with other audio sources

The VideoPlayerOptions.mixWithOthers option can't be implemented in web, at least at the moment. If you use this option it will be silently ignored.

Supported Formats

Different web browsers support different sets of video codecs.

Video codecs?

Check MDN's Web video codec guide to learn more about the pros and cons of each video codec.

What codecs are supported?

Visit 'video format' for a breakdown of which browsers support what codecs. You can customize charts there for the users of your particular website(s).

Here's an abridged version of the data from caniuse, for a Global audience:


Data on Global support for the MPEG-4/H.264 video format


Data on Global support for the WebM video format


Data on Global support for the Ogg/Theora video format


Data on Global support for the AV1 video format


Data on Global support for the HEVC/H.265 video format