Media Framework Technical Reference

Choose your OS:

This page outlines the currently supported file extensions and URLs as well as outlines some troubleshooting tips on how to enable Media Framework with different platforms. There are some known platform specific issues and limitations which we are currently investigating and trying to resolve, each of which have been identified in the Troubleshooting Platform sections.

If you are upgrading Media Framework content from a pre-4.13 project, see the tips in Upgrading Media Framework Content to 4.13 .

Supported Files & URLs

The table below indicates the supported extensions based on each media player platform.

Click the image below to download a .xlsx version of the Supported Files & URLs spreadsheets.

MediaFrameworkExtentions.png

The list of supported file formats above is ongoing and support for additional file extensions will come online in future engine updates. For the best compatibility and performance, it is recommended that the .mp4 file extension in H.264 be used. Also denoted in the table above are extensions that are expected to be supported as of the 4.15 engine release.

The MfMedia player plug-in for XboxOne is currently in development is partially supported if UE4 is built against Windows 7 or later. The AvfMedia player plug-in for macOS and iOS is in an experimental state and not all features may work as expected. We are working to resolve both issues and hope to have them addressed in a future engine release.

This table shows the supported URLs based on media player platform.

URLSheet.png

WMF Media Configuration Settings

Windows Media Foundation (WMF) handles standard audio/video playback and recording on the Windows Platform, however, WMF is also extensible. By default, WMF supports a number of different formats, encoding, and file containers, but it can also be extended with the use of optional codec packs that can be downloaded and installed from the Internet. What this means, however, is that certain users may not have a particular codec needed to decode and playback a media file.

In the past, Unreal Engine only supported default codecs that are supplied with WMF to ensure that everyone can handle and process media the same way. There may be times when you want to use a different method of encoding your media or your own proprietary media encoder that you want to ship your game with (for example, you ship your game with an installer that provides the needed encoder).

You can now enable and allow non-standard codecs for WMF Media from the Plugins section of Project Settings.

ProjectSettings.png

By default, the player plugin will attempt to detect audio and video codecs that are not supported by the operating system, requiring the user to install additional codec packs. If the player plugin detects an unsupported format when accessing the media, a warning message is provided in the Output Log.

UnsupportedLog.png

Additionally, you can see media asset information inside a Media Player asset in the Info panel.

MediaInfo.png

When enabling Allow non-supported codecs, the plugin player will skip the check and allow the usage of non-standard codecs.

Troubleshooting

Most player plug-ins will provide detailed logging of potential problems. To enable this, add the following to your projects Engine.ini file:

[Core.Log]
LogMedia=Verbose
LogMediaAssets=Verbose
LogAndroidMedia=Verbose
LogAvfMedia=Verbose
LogMfMedia=Verbose
LogPS4Media=Verbose
LogWmfMedia=Verbose

If a media source fails to open or play, check the Output Log under the Developer Tools for additional details.

LogMessage.png

You can also check information about a Media Source inside the Media Player asset and Info tab. This will show what options are available for the media source (Forward/Reverse Rates nad Scrubbing/Seeking), as well as the different Audio and Video streams and information about each stream.

InfoWindow.png

If Verbose Logging is enabled for the Media Assets log category, this information is also added to the Output Log.

Windows

The Windows Media Foundation (WMF) based player plug-in WmfMedia has a number of limitations for MP4 containers.

See Microsoft's MPEG-4 File Source page for more information.

Known Issues & Limitations

Media Framework is still considered experimental and there are some known issues and limitations which are outlined below.

  • Android

    • Audio currently plays via the OS and cannot be piped through UE4's Sound System.

  • Audio

    • There is currently no synchronization of audio samples, so playback may get out of sync.

      • Workaround: Use shorter clips where possible.

    • Audio is currently always mixed down to 16-bit stereo 44.1 kHz, regardless of the input format.

      • Multi-channel audio support is being investigated and may arrive in future releases.

  • Editor

    • The Playlist UI inside the Media Player only shows the currently opened Media Playlist asset.

      • Workaround: Edit the Playlist contents by Double-clicking on the MediaPlaylist asset to open its own editor.

  • Sequencer

    • Media Playback will not render out properly when recording cinematics from Sequencer.

      • We have this scheduled to release in the near future as we know this is important.

  • Windows

    • The Media Player state machine is still in progress and may break if multiple control commands are issued simultaneously.

      • Workaround: Insert short delays between commands, so that the player has time to process them.

    • Some videos with multiple audio tracks fail to open.

    • QuickTime movie (.mov) support on Windows 7 and later is currently unreliable.

      • Workaround: This format is currently not recommended for use.