Table of Contents

Interface IMediaInfo

Namespace
RenderHeads.Media.AVProVideo
Assembly
AVProVideo.Runtime.dll
public interface IMediaInfo

Methods

Name Description
GetDecoderPerformance(ref int, ref int, ref int)
GetDuration()

Returns media duration in seconds

GetDurationFrames(float)

Returns media duration in frames NOTE: For best results the video should be encoded as keyframes only and have no audio track, or an audio track with the same length as the video track

GetEstimatedTotalBandwidthUsed()

Gets the estimated bandwidth used by all video players (in bits per second) Currently only supported on Android when using ExoPlayer API

GetMaxFrameNumber(float)

Returns highest frame number that can be seeked to NOTE: For best results the video should be encoded as keyframes only and have no audio track, or an audio track with the same length as the video track

GetPlaybackQualityStats()
GetPlayerDescription()

Returns the a description of which playback path is used internally. This can for example expose whether CPU or GPU decoding is being performed For Windows the available player descriptions are: "DirectShow" - legacy Microsoft API but still very useful especially with modern filters such as LAV "MF-MediaEngine-Software" - uses the Windows 8.1 features of the Microsoft Media Foundation API, but software decoding "MF-MediaEngine-Hardware" - uses the Windows 8.1 features of the Microsoft Media Foundation API, but GPU decoding Android has "MediaPlayer" and "ExoPlayer" macOS / tvOS / iOS just has "AVFoundation"

GetTextureTransform()

The affine transform of the texture as an array of six floats: a, b, c, d, tx, ty.

GetVideoDisplayRate()

Returns the current achieved display rate in frames per second

GetVideoFrameRate()

Returns the frame rate of the media.

GetVideoHeight()

Returns video height in pixels

GetVideoWidth()

Returns video width in pixels

HasAudio()

Returns true if the media has a audio track

HasVideo()

Returns true if the media has a visual track

IsExternalPlaybackSupported()

Checks if the media is compatible with external playback, for instance via AirPlay.

IsPlaybackStalled()

Checks if the playback is in a stalled state

PlayerSupportsLinearColorSpace()

Whether this MediaPlayer instance supports linear color space If it doesn't then a correction may have to be made in the shader