Emby.MpvPlayer
Aspect Ratio Controller for MPV Player.
Initializes a new instance of the class.
The service root.
The options provider.
Gets the current aspect ratio.
The current aspect ratio.
Gets the supported aspect ratios.
A list of items.
Sets the aspect ratio.
The aspect ratio id.
Unknown aspect ratio id.
Called when connected to the player.
The player.
Called when disconnected from the player.
The player.
Dynamic Cropping for MPV Player.
Initializes a new instance of the class.
The CoreMpvPlayer instance to control.
The options to configure the MpvAutoCrop behavior.
The service root.
Gets a value indicating whether this instance is disposed.
true if this instance is disposed; otherwise, false.
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.
Checks if a filter with the specified label is present.
True if the filter is present, otherwise false.
Removes a filter with the specified label.
Checks if the given ratio is valid based on the provided data and conditions.
The width and height of the video frame.
Indicates if the softmode is enabled for lenient validation.
True if the aspect ratio is valid, otherwise false.
Returns a string that represents the current object.
A string that represents the current object.
Options for configuring the MpvAutoCrop behavior.
Gets or sets the seconds after which a ratio is considered stable.
Gets or sets the seconds after which a ratio is considered stable if it is already known and the difference is small.
Gets or sets the seconds after which a ratio is considered super stable and uses fast known ratio timer.
Gets or sets the allowed aspect ratios for cropping detection, separated by space.
Gets or sets the pixel margin added to check against the allowed ratios.
Gets or sets the maximum black level for full range content (0-255).
Gets or sets the maximum black level for limited range content (16-235).
Gets or sets a value indicating whether to allow arbitrary crop areas.
Initializes a new instance of the class.
The service root.
Initializes a new instance of the class.
The service root.
The player geometry adapter.
Sets the bounds of the player by fractions of the viewport size.
The x position as a fraction of the viewport width.
The y position as a fraction of the viewport height.
The width position as a fraction of the viewport width.
The height position as a fraction of the viewport height.
Resets the bounds of the player.
Initializes a new instance of the class.
The service root.
Initializes a new instance of the class.
The service root.
The options provider.
The player.
if set to true [de interlace].
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
Initializes a new instance of the class.
The MPV player.
The display mode controller.
The options provider.
The service root.
Initializes a new instance of the class.
The service root.
The options provider.
The display mode controller.
Initializes a new instance of the class.
The service root.
Occurs when the playback rate changes.
Gets the playback rate as ratio.
The playback rate.
This value is expressed as a ratio of the desired rate to the normal playback rate.
For example, a value of 1.5 sets the playback rate to 150% of the original.
Sets the playback rate as ratio.
The playback rate ratio.
The value is expressed as a ratio of the desired rate to the normal playback rate.
For example, a value of 1.5 sets the playback rate to 150% of the original.
Initializes a new instance of the class.
The service root.
Occurs when the item has started playing.
Occurs when the item has stopped playing.
Occurs when the item has stopped playing.
Occurs when a playlist item has been moved.
Occurs when one or more playlist items have been removed.
Occurs when the playlist has changed.
Occurs when the repeat mode has changed.
Occurs when the shuffle mode has changed.
Occurs on shutdown.
Gets the current playlist item.
The current playlist item.
Gets the current mediasource.
The current mediasource.
Gets the index of the current playlist item.
The index of the current playlist item.
Gets the id of the current playlist item.
The id of the current playlist item.
Gets the length of the current playlist.
The length of the current playlist.
Gets the playlist.
The options.
The playlist.
Gets the repeat mode.
The repeat mode as string.
Determines whether the playlist is playing.
Type of the media.
true if the playlist is playing; otherwise, false.
Moves the playlist item with the specified id to the specified index.
The playlist item identifier.
The new index.
Plays the next track.
Plays the playlist item at the specified index.
The item index.
Gets the play method.
The play method as string.
Gets the PlaySessionId.
The PlaySessionId as string.
Plays the previous track.
Queues the specified items.
The items to queue.
A Task.
Queues the specified items for immediate playback.
The items to queue.
A Task.
Gets the repeat mode.
The repeat mode.
Removes the items with the specified ids from the playlist.
The playlist item ids to remove.
A Task.
Sets the current playlist item.
The playlist item id.
Sets the repeat mode.
The repeat mode.
Gets the shuffle mode.
A boolean.
Sets shuffle mode.
if set to true shuffle is enabled.
Toggles between playing and paused.
The player.
Gets the current mediasource.
The current mediasource.
Initializes a new instance of the class.
The service root.
The display mode controller.
Gets stats info.
The stats info.
Initializes a new instance of the class.
The service root.
Determines whether the audio stream index can be set.
true if the audio stream index can be set; otherwise, false.
Gets the index of the audio stream.
The index of the audio stream.
Gets the index of the subtitle stream.
The index of the subtitle stream.
Sets the index of the audio stream.
Index of the stream.
Sets the index of the subtitle stream.
Index of the stream.
Subtiotle Offset Controller for MPV Player.
Initializes a new instance of the class.
The service root.
Increments or decrements the subtitle offset.
The delta offset in ms.
Sets the subtitle offset.
The offset in ms.
Gets the subtitle offset.
The subtitle offset in ms.
Initializes a new instance of the class.
The service root.
The base player.
Starts playback.
The playback options.
A Task.
Initializes a new instance of the class.
The service root.
The player base.
Occurs when playback has changed to paused state.
Occurs when playback has ended.
Occurs when playback has started.
Occurs when the playback time position has changed.
Occurs when playback has resumed after being paused.
Gets the current playback time in milliseconds.
The new curent time to set in milliseconds.
The current time in milliseconds.
Gets the media duration in milliseconds.
The media duration in milliseconds.
Gets a list of buffered ranges.
A list of items.
Gets a list of seekable ranges.
A list of items.
Pauses playback.
Gets a value indicating whether playback is paused.
true if playback is paused; otherwise, false.
Starts playback.
The playback options.
A Task.
Seeks to the specified position in ms.
The position in ms.
Gets a value indicating whether playback is seekable.
true if playback is seekable; otherwise, false.
Seeks relative by the specified amount in ms.
The delta ms.
Ends playback.
if set to true destroy the player.
A Task.
Resumes playback.
Toggles between playing and paused.
The player.
Initializes a new instance of the class.
The service root.
The base player.
The display mode controller.
Starts playback.
The playback options.
A Task.
Initializes a new instance of the class.
The service root.
Occurs when the volume or the mute state changes.
Gets the volume.
The volume in the range [0 - 100].
Get the audio muted state.
true if the audio is muted; otherwise, false.
Sets audio muted.
Set to true to mute, false to unmute.
Sets the playback volume.
The volume in the range [0 - 100].
Reduces the volume by 5%.
Increases the volume by 5%.
Properties for CoreMpvPlayer.
MPV property accessors.
Properties for extended MPV player statistics and configuration.
MPV property accessors.
Initializes a new instance of the class.
The form handle.
The service root.
if set to true disable logging.
error mpv_create.
mpv_initialize.
Initializes a new instance of the class.
The service root.
error mpv_create.
mpv_initialize.
Gets the initialize task.
A Task.
The returned Task can be used to await initialization.
Loads a file.
The URL or file path.
The time out.
A Task.
Loads a file.
The URL or file path.
The token.
A Task.
Plays from the specified start position.
The start position.
Stops playback.
Executes the specified command.
The command text.
Executes the specified command.
The command text.
An error code.
Executes a multi-part command.
The arguments.
Seeks to an absolute position.
The position ms.
Seeks relative by a specified amount.
The position ms.
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources
asynchronously.
A task that represents the asynchronous dispose operation.
Writes a log line.
if set to true with debug log level.
The text to log.
Called on shutdown.
Sets the log level.
Occurs when the paused state has changed.
Occurs when the paused-for-cache state has changed.
Occurs when the paused-for-cache state has changed.
Occurs when the cache-buffering-state state has changed.
Occurs when the current playlist position has changed.
Occurs when the video size has changed.
Occurs when the window size has changed.
Occurs on shutdown of the player instance.
Corrresponds to shutdown and MPV_EVENT_SHUTDOWN
Occurs on video reconfigutation.
Corrresponds to video-reconfig and MPV_EVENT_VIDEO_RECONFIG
Occurs when the end of file has been reached.
Corrresponds to end-file and MPV_EVENT_END_FILE
Occurs when a file has started.
Corrresponds to start-file and MPV_EVENT_START_FILE
Occurs when a file has been loaded.
Corrresponds to file-loaded and MPV_EVENT_FILE_LOADED
Occurs when playback has started.
Fired when the property transitions to false.
Occurs when playback has stopped.
Fired when the property transitions to true.
Occurs when the playback position changes.
Fired when the property has changed.
Occurs when the playback duration changes.
Fired when the property has changed.
Occurs when the volume changes.
Fired when the property has changed.
Occurs when the mute state changes.
Fired when the property has changed.
Occurs when the subtitle delay changes.
Fired when the property has changed.
Occurs when the playback rate changes.
Fired when the property has changed.
Occurs when the video target parameters change.
Fired when the property has changed.
Occurs when an error is encountered.
Fired when the ?????? has changed.
Occurs on client message.
Corrresponds to client-message and MPV_EVENT_CLIENT_MESSAGE
Occurs when a message is logged.
Corrresponds to log-message and MPV_EVENT_LOG_MESSAGE
Occurs when a reply from get-property is available.
Corrresponds to get-property-reply and MPV_EVENT_GET_PROPERTY_REPLY
Occurs when a reply from set-property is available.
Corrresponds to set-property-reply and MPV_EVENT_SET_PROPERTY_REPLY
Occurs when a replace to a command is available.
Corrresponds to command-reply and MPV_EVENT_COMMAND_REPLY
Occurs on audio reconfigutation.
Corrresponds to audio-reconfig and MPV_EVENT_AUDIO_RECONFIG
Occurs on seek.
Corrresponds to seek and MPV_EVENT_SEEK
Occurs on playback restart.
Corrresponds to playback-restart and MPV_EVENT_PLAYBACK_RESTART
Occurs when filter metadata has been updated.
Gets or sets the audio channels.
Gets or sets the audio spdif formats.
Gets or sets a value indicating whether to use exclusive audio playback.
true to use exclusive audio; otherwise, false.
Gets or sets the name of the audio client.
The name of the audio client.
Gets or sets the audio filters.
The audio filters.
Specify a list of audio filters to apply to the audio stream.
Gets or sets the video filters.
The video filters.
Specify a list of video filters to apply to the video stream.
Gets the video color levels.
The video color levels.
YUV color levels used with YUV to RGB conversion. This option is only necessary when playing broken files which do not follow standard color levels or which are flagged wrong. If the video does not specify its color range, it is assumed to be limited range.
The same limitations as with <colormatrix> apply.
Available color ranges are:
auto: automatic selection (normally limited range) (default)
limited: limited range (16-235 for luma, 16-240 for chroma)
full: full range (0-255 for both luma and chroma).
Gets or sets the audio delay.
Audio delay in seconds (positive or negative float value). Positive values delay the audio, and negative
values delay the video.
Gets or sets the Dynamic Range Compression level for AC-3 audio streams.
Select the Dynamic Range Compression level for AC-3 audio streams. 'level' is a float value ranging from 0 to
1, where 0 means no compression (which is the default) and 1 means full compression (make loud passages more
silent and vice versa). Values up to 6 are also accepted, but are purely experimental. This option only shows
an effect if the AC-3 stream contains the required range compression information.
The standard mandates that DRC is enabled by default, but mpv (and some other players) ignore this for the
sake of better audio quality.
Gets or sets a value indicating whether deinterlacing is enabled.
Enable or disable interlacing (default: no). Interlaced video shows ugly comb-like artifacts, which are visible
on fast movement. Enabling this typically inserts the yadif video filter in order to deinterlace the video, or
lets the video output apply deinterlacing if supported.
This behaves exactly like the 'deinterlace' input property (usually mapped to 'd'). Keep in mind that this will
conflict with manually inserted deinterlacing filters, unless you take care. Note that this will make video
look worse if it's not actually interlaced.
Gets or sets a value indicating whether to create a closed captions track.
For every video stream, create a closed captions track (default: no). The only purpose is to make the track
available for selection at the start of playback, instead of creating it lazily. This applies only to 'ATSC A53
Part 4 Closed Captions' (displayed by mpv as subtitle tracks using the codec 'eia_608'). The CC track is marked
'default' and selected according to the normal subtitle track selection rules. You can then use 'sid' to
explicitly select the correct track too.
If the video stream contains no closed captions, or if no video is being decoded, the CC track will remain
empty and will not show any text.
Gets or sets a value indicating whether default input bindings are used.
This property is not directly documented in the provided options.rst content.
Gets or sets a value indicating whether built-in input bindings are used.
This property is not directly documented in the provided options.rst content.
Gets or sets a value indicating whether to use configuration files.
This property is not directly documented in the provided options.rst content.
Gets or sets a value indicating whether to force window creation.
Create a video output window even if there is no video. This can be useful when pretending that mpv is a GUI
application. Currently, the window always has the size 640x480, and is subject to 'geometry', 'autofit', and
similar options.
The window is created only after initialization (to make sure default window placement still works if the video
size is different from the 'force-window' default window size). This can be a problem if initialization doesn't
work perfectly, such as when opening URLs with bad network connection, or opening broken video files. The
'immediate' mode can be used to create the window always on program start, but this may cause other issues.
Gets or sets a value indicating whether the on-screen controller is displayed.
Whether to load the on-screen-controller (default: yes).
Gets or sets a value indicating whether to automatically load/select external files (default: yes).
true to Automatically load/select external files; otherwise, false.
If set to no, then do not automatically load external files as specified by --sub-auto, --audio-file-auto and --cover-art-auto. If external files are forcibly added (like with --sub-files), they will not be auto-selected.
This does not affect playlist expansion, redirection, or other loading of referenced files like with ordered chapters.
Gets or sets a value indicating whether to enable the built-in script that shows a console on a key binding and lets you enter commands (default: yes).
true to enable the built-in script that shows a console on a key binding and lets you enter commands; otherwise, false.
The ` key is used to show the console by default, and ESC to hide it again.
Gets or sets a value indicating whether to eable the builtin script that shows useful playback information on a key binding (default: yes).
true to eable the builtin script that shows useful playback information on a key binding; otherwise, false.
By default, the i key is used (I to make the overlay permanent).
Gets or sets a value indicating whether to auto-load scripts from the scripts configuration subdirectory (usually ~/.config/mpv/scripts/) (Default: yes).
true to auto-load scripts from the scripts configuration subdirectory; otherwise, false.
Gets or sets the path of a Lua script to load.
A path to a script file.
Gets a value indicating whether playback is paused because of waiting for the cache.
true if paused because of waiting for the cach; otherwise, false.
Gets the percentage (0-100) of the cache fill status until the player will unpause.
The percentage (0-100) of the cache fill status.
Related to paused-for-cache.
Gets a value indicating whether the player is currently seeking, or otherwise trying to restart playback.
true if the player is currently seeking; otherwise, false.
It's possible that it returns yes/true while a file is loaded. This is because the same underlying code is used for seeking and resyncing.
Gets or sets whether to load _external_ cover art automatically.
The cover art automatic mode.
Similar to --sub-auto and --audio-file-auto. If a video already has tracks (which are not marked as cover art), external cover art will not be loaded.
- no: Don't automatically load cover art
- exact: Load the media filename with an image file extension (default)
- fuzzy: Load all cover art containing the media filename
- all: Load all images in the current directory
See --cover-art-files for details about what constitutes cover art.
See --audio-display how to control display of cover art (this can be used to disable cover art that is part of the file).
Gets or sets a value indicating whether OSD rendering on the video window is enabled (default: yes).
Enabled OSD rendering on the video window (default: yes).
Gets or sets a value indicating which mode the OSD should start in.
The mode the OSD should start in (default: yes).
- 0: OSD completely disabled (subtitles only)
- 1: enabled (shows up only on user interaction)
- 2: enabled + current time visible by default
- 3: enabled + --osd-status-msg (current time and status by default)
Gets or sets the user agent for HTTP streaming.
The user agent.
Gets or sets a value indicating whether to enable the youtube-dl hook-script.
true to enable the youtube-dl hook-script; otherwise, false.
Gets or sets a value indicating whether the player should enter idle mode.
Makes mpv wait idly instead of quitting when there is no file to play. Mostly useful in input mode, where mpv
can be controlled through input commands. (Default: 'no').
Gets or sets the window ID (WID) for video output.
This tells mpv to attach to an existing window. If a VO is selected that supports this option, it will use that
window for video output. mpv will scale the video to the size of this window, and will add black bars to
compensate if the aspect ratio of the video is different.
On X11, the ID is interpreted as a 'Window' on X11. Unlike MPlayer/mplayer2, mpv always creates its own window,
and sets the wid window as parent. The window will always be resized to cover the parent window fully. The
value '0' is interpreted specially, and mpv will draw directly on the root window.
On win32, the ID is interpreted as 'HWND'. Pass it as value cast to 'uint32_t' (all Windows handles are
32-bit), this is important as mpv will not accept negative values. mpv will create its own window and set the
wid window as parent, like with X11.
Gets or sets the audio display mode.
Determines whether to display cover art when playing audio files and with what priority. It will display the
first image found, and additional images are available as video tracks.
'no' disables display of video entirely when playing audio files. 'embedded-first' displays embedded images and
external cover art, giving priority to embedded images (default). 'external-first' displays embedded images and
external cover art, giving priority to external files.
This option has no influence on files with normal video tracks.
Gets or sets the audio device list.
The audio device list.
The list of discovered audio devices. This is mostly for use with the client API, and reflects what --audio-device=help with the command line player returns.
When querying the property with the client API using MPV_FORMAT_NODE, or with Lua mp.get_property_native, this will return a mpv_node with the following contents:
- MPV_FORMAT_NODE_ARRAY
- MPV_FORMAT_NODE_MAP (for each device entry)
- "name" MPV_FORMAT_STRING
- "description" MPV_FORMAT_STRING
The name is what is to be passed to the --audio-device option (and often a rather cryptic audio API-specific ID), while description is human readable free form text. The description is set to the device name (minus mpv-specific <driver>/ prefix) if no description is available or the description would have been an empty string.
The special entry with the name set to auto selects the default audio output driver and the default device.
The property can be watched with the property observation mechanism in the client API and in Lua scripts. (Technically, change notification is enabled the first time this property is read.)
Gets or sets the keep-open option.
Do not terminate when playing or seeking beyond the end of the file, and there is no next file to be played
(and 'loop' is not used). Instead, pause the player. When trying to seek beyond end of the file, the player
will attempt to seek to the last frame.
Normally, this will act like 'set pause yes' on EOF, unless the 'keep-open-pause=no' option is set. 'no' means
if the current file ends, go to the next file or terminate. 'yes' means don't terminate if the current file is
the last playlist entry. 'always' is like 'yes', but also applies to files before the last playlist entry,
meaning playback will never automatically advance to the next file.
Gets or sets a value indicating whether to keep aspect.
true to keep aspect; otherwise, false.
"no" will always stretch the video to window size, and will disable the window manager hints that force the window aspect ratio.
Gets or sets the playback speed.
Slow down or speed up playback by the factor given as parameter.
If 'audio-pitch-correction' (on by default) is used, playing with a speed higher than normal automatically
inserts the 'scaletempo2' audio filter.
Gets or sets the subtitle delay.
Delays primary subtitles by 'sec' seconds. Can be negative.
Gets or sets the hardware video decoding mode.
Specify the hardware video decoding API that should be used if possible.
Whether hardware decoding is actually done depends on the video codec. If hardware decoding is not possible,
mpv will fall back on software decoding.
Gets or sets the hwdec codecs.
The hwdec codecs.
Allow hardware decoding for a given list of codecs only. The special value all always allows all codecs.
You can get the list of allowed codecs with mpv --vd=help. Remove the prefix, e.g. instead of lavc:h264 use h264.
By default, this is set to h264,vc1,hevc,vp8,vp9,av1,prores. Note that the hardware acceleration special codecs like h264_vdpau are not relevant anymore, and in fact have been removed from FFmpeg in this form.
This is usually only needed with broken GPUs, where a codec is reported as supported, but decoding causes more problems than it solves.
Gets or sets the video output driver.
Specify the video output backend to be used. See 'VIDEO OUTPUT DRIVERS' for details and descriptions of
available drivers.
Gets or sets the audio output driver.
Gets or sets the video output levels.
RGB color levels used with YUV to RGB conversion. Normally, output devices such as PC monitors use full range
color levels. However, some TVs and video monitors expect studio RGB levels. Providing full range output to a
device expecting studio level input results in crushed blacks and whites, the reverse in dim gray blacks and
dim whites.
Not all VOs support this option. Some will silently ignore it. Available color ranges are: 'auto' for automatic
selection (equals to full range), 'limited' for limited range (16-235 per component), and 'full' for full range
(0-255 per component). It is advisable to use your graphics driver's color range option instead, if available.
Gets or sets the profile used for the player.
Use the given profile(s). 'profile=help' displays a list of the defined profiles.
Gets or sets the configuration directory.
Force a different configuration directory. If this is set, the given directory is used to load configuration
files, and all other configuration directories are ignored. This means the global mpv configuration directory
as well as per-user directories are ignored, and overrides through environment variables ('MPV_HOME') are also
ignored. Note that the 'no-config' option takes precedence over this option.
Gets or sets the video synchronization method.
How the player synchronizes audio and video. If you use this option, you usually want to set it to
'display-resample' to enable a timing mode that tries to not skip or repeat frames when for example playing
24fps video on a 24Hz screen. The modes starting with 'display-' try to output video frames completely
synchronously to the display, using the detected display vertical refresh rate as a hint how fast frames will
be displayed on average. These modes change video speed slightly to match the display. See 'video-sync-...'
options for fine tuning.
The robustness of this mode is further reduced by making some idealized assumptions, which may not always apply
in reality. Behavior can depend on the VO and the system's video and audio drivers. Media files must use
constant framerate. Section-wise VFR might work as well with some container formats (but not e.g. mkv).
Under some circumstances, the player automatically reverts to 'audio' mode for some time or permanently. This
can happen on very low framerate video, or if the framerate cannot be detected. Also in display-sync modes it
can happen that interruptions to video playback (such as toggling fullscreen mode, or simply resizing the
window) will skip the video frames that should have been displayed, while 'audio' mode will display them after
the renderer has resumed (typically resulting in a short A/V desync and the video "catching up").
The modes with 'desync' in their names do not attempt to keep audio/video in sync. They will slowly (or
quickly) desync, until e.g. the next seek happens. These modes are meant for testing, not serious use.
Gets or sets a value indicating whether interpolation is used for video playback.
Reduce stuttering caused by mismatches in the video fps and display refresh rate (also known as judder).
This requires setting the 'video-sync' option to one of the 'display-' modes, or it will be silently
disabled. This was not required before mpv 0.14.0.
This essentially attempts to interpolate the missing frames by convoluting the video along the temporal axis.
The filter used can be controlled using the 'tscale' setting.
Gets or sets a value indicating whether fullscreen mode is enabled.
Fullscreen playback.
Gets or sets the demuxer readahead seconds.
If 'demuxer-thread' is enabled, this controls how much the demuxer should buffer ahead in seconds (default: 1).
As long as no packet has a timestamp difference higher than the readahead amount relative to the last packet
returned to the decoder, the demuxer keeps reading.
Note that enabling the cache (such as 'cache=yes', or if the input is considered a network stream, and
'cache=auto' is used), this option is mostly ignored. ('cache-secs' will override this. Technically, the
maximum of both options is used.) The main purpose of this option is to limit the readahead for local playback,
since a large readahead value is not overly useful in this case.
This value tends to be fuzzy, because many file formats don't store linear timestamps.
Gets or sets the demuxer lavf options.
The demuxer lavf options.
Pass AVOptions to libavformat demuxer. Options are in the form 'key=value', multiple options separated by ','.
Gets or sets the subtitle font name.
Gets or sets the subtitle fonts directory.
Gets or sets the subtitle font size.
Specify the sub font size. The unit is the size in scaled pixels at a window height of 720. The actual pixel
size is scaled with the window height: if the window height is larger or smaller than 720, the actual size of
the text increases or decreases as well.
Default: 55.
Gets or sets the subtitle background color.
Color used for sub text background. You can use 'sub-shadow-offset' to change its size relative to the text.
See 'sub-color'. The color is specified in the form 'r/g/b', where each color component is specified as number
in the range 0.0 to 1.0. It's also possible to specify the transparency by using 'r/g/b/a', where the alpha
value 0 means fully transparent, and 1.0 means opaque. If the alpha component is not given, the color is 100%
opaque.
Alternatively, the color can be specified as a RGB hex triplet in the form '#RRGGBB', where each 2-digit group
expresses a color value in the range 0 ('00') to 255 ('FF'). For example, '#FF0000' is red. This is similar to
web colors. Alpha is given with '#AARRGGBB'.
Examples:
- 'sub-color=1.0/0.0/0.0' set sub to opaque red
- 'sub-color=1.0/0.0/0.0/0.75' set sub to opaque red with 75% alpha
- 'sub-color=0.5/0.75' set sub to 50% gray with 75% alpha
- 'sub-color='#FF0000'' set sub to opaque red
- 'sub-color='#C0808080'' set sub to 50% gray with 75% alpha
Gets or sets the subtitle color.
Specify the color used for unstyled text subtitles.
The color is specified in the form 'r/g/b', where each color component is specified as number in the range 0.0
to 1.0. It's also possible to specify the transparency by using 'r/g/b/a', where the alpha value 0 means fully
transparent, and 1.0 means opaque. If the alpha component is not given, the color is 100% opaque.
Passing a single number to the option sets the sub to gray, and the form 'gray/a' lets you specify alpha
additionally.
Alternatively, the color can be specified as a RGB hex triplet in the form '#RRGGBB', where each 2-digit group
expresses a color value in the range 0 ('00') to 255 ('FF'). For example, '#FF0000' is red. This is similar to
web colors. Alpha is given with '#AARRGGBB'.
Examples:
- 'sub-color=1.0/0.0/0.0' set sub to opaque red
- 'sub-color=1.0/0.0/0.0/0.75' set sub to opaque red with 75% alpha
- 'sub-color=0.5/0.75' set sub to 50% gray with 75% alpha
- 'sub-color='#FF0000'' set sub to opaque red
- 'sub-color='#C0808080'' set sub to 50% gray with 75% alpha
Gets or sets the path of the current file.
Gets or sets the video scaling method.
Disable scaling of the video. If the window is larger than the video, black bars are added. Otherwise, the
video is cropped, unless the option is set to 'downscale-big', in which case the video is fit to window. The
video still can be influenced by the other 'video-...' options. This option disables the effect of 'panscan'.
Note that the scaler algorithm may still be used, even if the video isn't scaled. For example, this can
influence chroma conversion. The video will also still be scaled in one dimension if the source uses non-square
pixels (e.g. anamorphic widescreen DVDs). This option is disabled if the 'no-keepaspect' option is used.
Gets or sets the video aspect ratio override.
Override video aspect ratio, in case aspect information is incorrect or missing in the file being played.
These values have special meaning:
-
0: disable aspect ratio handling, pretend the video has square pixels
-
no: same as '0'
-
-1: use the video stream or container aspect (default)
But note that handling of these special values might change in the future.
Examples:
-
'video-aspect-override=4:3' or 'video-aspect-override=1.3333'
-
'video-aspect-override=16:9' or 'video-aspect-override=1.7777'
-
'no-video-aspect-override' or 'video-aspect-override=no'
Gets or sets the panscan factor.
Enables pan-and-scan functionality (cropping the sides of e.g. a 16:9 video to make it fit a 4:3 display
without black bands). The range controls how much of the image is cropped. May not work with all video output
drivers.
This option has no effect if 'video-unscaled' option is used.
Gets or sets the teletext page.
This works for 'dvb_teletext' subtitle streams, and if FFmpeg has been compiled with support for it.
Gets or sets the video track ID.
Select video channel. 'auto' selects the default, 'no' disables video.
Gets or sets the subtitle track ID.
Display the subtitle stream specified by 'ID'. 'auto' selects the default, 'no' disables subtitles.
Gets or sets the audio track ID.
Select audio track. 'auto' selects the default, 'no' disables audio.
See also 'alang'. mpv normally prints available audio tracks on the terminal when starting playback of a
file.
Gets or sets a value indicating whether playback is paused.
Start the player in paused state.
Gets the duration of the current file.
This property is read-only.
Gets or sets the volume level.
Set the startup volume. 0 means silence, 100 means no volume reduction or amplification. Negative values can
be passed for compatibility, but are treated as 0.
Since mpv 0.18.1, this always controls the internal mixer (aka "softvol").
Gets or sets the maximum amplification level in percent.
The volume maximum.
(default: 130). A value of 130 will allow you to adjust the volume up to about double the normal level..
Gets or sets a value indicating whether audio is muted.
Set startup audio mute status (default: no).
'auto' is a deprecated possible value that is equivalent to 'no'.
See also: 'volume'.
Gets a value indicating whether the end of file has been reached.
This property is read-only.
Gets the demuxer cache time.
This property is read-only.
Gets or sets the estimated video filter framerate.
This property is not directly documented in the provided options.rst content.
Gets a value indicating whether the core is idle.
This property is read-only.
Gets or sets the playback start position.
Gets the start time of the media.
Gets the current playback time position.
This property is read-only.
Gets the title of the currently playing media.
Corresponds to the "media-title" property in MPV. This property returns the title metadata from the currently
loaded file. If the title is not explicitly available, MPV may generate it based on the filename.
Gets the current chapter index of the media.
Corresponds to the "chapter" property in MPV. This property provides the current chapter number of the
playing media, starting from 0. If the media has no chapters, it returns -1.
Gets the name of the audio codec being used for the current audio stream.
Corresponds to the "audio-codec-name" property in MPV. This property provides the codec name, such as "aac",
"mp3", or "opus", used for the currently playing audio stream.
Gets the full audio codec information for the current audio stream.
Corresponds to the "audio-codec" property in MPV. This property returns detailed information about the codec
used for the audio stream, which may include codec settings and configurations.
Gets the audio output parameters for the current playback.
Corresponds to the "audio-out-params" property in MPV. This property is the same as "audio-params", but it represents
the format of the data written to the audio API.
Gets the audio bitrate of the current stream.
Corresponds to the "audio-bitrate" property in MPV. Bitrate values are calculated on the packet level, by dividing
the bit size of all packets between two keyframes by their presentation timestamp distance. The unit is bits per second.
Note that playback speed does not influence the returned values, and the bitrate will update only per keyframe.
Gets the current audio output driver name.
Corresponds to the "current-ao" property in MPV. This property returns the name of the audio output driver currently in use,
as specified by the "--ao" option.
Gets the video output parameters of the currently playing media.
Corresponds to the "video-out-params" property in MPV. This property is the same as "video-params", but after
video filters have been applied. If there are no video filters in use, this will contain the same values as
"video-params". Note that this is still not necessarily what the video window uses, since the user can change
the window size, and all real VOs do their own scaling independently from the filter chain.
This property has the same sub-properties as "video-params".
Gets the name of the video codec being used.
This property returns the name of the video codec for the currently playing media, such as "h264" or "vp9".
Gets the video bitrate.
Gets the current video output backend name.
This property returns the name of the video output driver currently in use, such as "opengl" or "vulkan".
Gets the current GPU context of video output driver.
The current gpu context.
Gets the current hardware decoder in use.
Corresponds to the "hwdec-current" property in MPV. This property returns the current hardware decoding being used.
If decoding is active, it returns one of the values used by the "hwdec" option/property. "no"/false indicates
software decoding. If no decoder is loaded, the property is unavailable.
Gets the names of the displays that the mpv window covers.
Corresponds to the "display-names" property in MPV. On X11, these are the xrandr names (e.g., LVDS1, HDMI1, DP1).
On Windows, these are the GDI names (e.g., \.\DISPLAY1, \.\DISPLAY2), with the first display being the one
Windows considers associated with the window. On macOS, the Display Product Names are used, and only one name
is returned. On Wayland, these are wl_output names depending on the protocol version used.
Gets the refresh rate of the current display.
Corresponds to the "display-fps" property in MPV. This property returns the lowest FPS of any display covered by
the video, as retrieved by underlying system APIs (e.g., xrandr on X11). Note that this is not the measured FPS and
may not be available on all platforms.
Gets the estimated display FPS (frames per second).
Corresponds to the "estimated-display-fps" property in MPV. This property provides the actual rate at which display refreshes
seem to occur, measured by system time. Only available if display-sync mode (as selected by "--video-sync") is active.
Gets a value indicating whether display-sync mode is active.
Corresponds to the "display-sync-active" property in MPV. This property indicates whether "--video-sync=display" is actually active.
Gets the count of frames dropped by the VO (video output).
Corresponds to the "frame-drop-count" property in MPV. This property provides the number of frames dropped by the video output (VO),
typically when using "--framedrop=vo".
Gets the count of frames dropped by the decoder.
Corresponds to the "decoder-frame-drop-count" property in MPV. This property provides the number of frames dropped by the decoder
because the video was too far behind audio, typically when using "--framedrop=decoder". This may also be incremented in other
situations, such as damaged video packets or if the decoder does not follow expected rules.
Gets the count of frames delayed by the VO (video output).
Corresponds to the "vo-delayed-frame-count" property in MPV. This property provides the estimated number of frames delayed due to external
circumstances in display-sync mode. Note that in general, mpv has to guess that this is happening, and the guess can be inaccurate.
Gets the count of mistimed dropped frames.
Corresponds to the "mistimed-drop-count" property in MPV. This property provides the number of video frames dropped because they were too late for display.
Gets the width.
Video size. This uses the size of the video as decoded, or if no video frame has been decoded yet, the (possibly incorrect) container indicated size.
Gets the height.
Video size. This uses the size of the video as decoded, or if no video frame has been decoded yet, the (possibly incorrect) container indicated size.
Nothing happened. Happens on timeouts or sporadic wakeups.
Happens when the player quits. The player enters a state where it tries
to disconnect all clients. Most requests to the player will fail, and
the client should react to this and quit with mpv_destroy() as soon as
possible.
Returns a value indicating whether a specified substring occurs within a string. Strings are compared using .
The string to be sought.
The string to seek.
true if the parameter occurs within , or if is the empty string (""); otherwise, false.
Returns false in case is null. Does not throw.
Initializes a new instance of the class.
The service root.
MPV Byte Array.
Pointer to byte[].
Array size.
Returns the fully qualified type name of this instance.
The fully qualified type name.
Returns the fully qualified type name of this instance.
The fully qualified type name.
Initializes a new instance of the struct. Construct MpvNode containing string.
String.
Node format (String or OSDString).
Initializes a new instance of the struct. Construct MpvNode containing flag.
Flag (0 or 1).
Initializes a new instance of the struct. Construct MpvNode containing Int64.
Long int.
Initializes a new instance of the struct. Construct MpvNode containing Double.
Double.
Initializes a new instance of the struct. Construct MpvNode containing NodeList.
NodeList.
Node format (NodeMap or NodeArray).
Initializes a new instance of the struct. Construct MpvNode containing ByteArray.
MpvByteArray.
Get MpvNode from pointer.
Pointer to node.
Node from pointer.
Frees any data referenced by the node. It doesn't free the node itself.
The node.
Get string representation of the node content. Not to be confused with string? cast.
A string.
Array/Dictionary-like MPV structure.
Number of entries.
Pointer to values.
Pointer to keys for NodeMap or IntPtr.Zero for NodeArray.
Initializes a new instance of the class.
The object.
Initializes a new instance of the class.
The source identifier.
Gets or sets the index in the mpv tracks collection .
The source identifier.
Initializes a new instance of the class with a specified error message.
Name of the function.
The MPV error.
Initializes a new instance of the class with a specified error message.
The command.
The arguments.
The MPV error.
The audio display.
{"no", 0}, {"attachment", 1}.
The keep open.
{"no", 0},
{"yes", 1},
{"always", 2})}.
The speed.
M_RANGE(0.01, 100.0)}.
The video output levels.
{"auto", MP_CSP_LEVELS_AUTO},
{"limited", MP_CSP_LEVELS_TV},
{"full", MP_CSP_LEVELS_PC}.
The video synchronize.
{"audio", VS_DEFAULT},
{"display-resample", VS_DISP_RESAMPLE},
{"display-resample-vdrop", VS_DISP_RESAMPLE_VDROP},
{"display-resample-desync", VS_DISP_RESAMPLE_NONE},
{"display-adrop", VS_DISP_ADROP},
{"display-vdrop", VS_DISP_VDROP},
{"display-desync", VS_DISP_NONE},
{"desync", VS_NONE})}.
The subtitle font size.
M_RANGE(1, 9000).
The video unscaled.
{"no", 0}, {"yes", 1}, {"downscale-big", 2})}.
The mute.
{"no", 0},
{"auto", 0},
{"yes", 1}).
Initializes a new instance of the class.
The service root.
Initializes a new instance of the class.
The expiration timeout.
The service root.
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
Initializes a new instance of the class that is empty and has the default initial capacity.
Initializes a new instance of the class that contains elements copied from the specified collection and has sufficient capacity to accommodate the number of elements copied.
The collection whose elements are copied to the new list.
is .
Returns a value that indicates whether the values of two objects are equal.
The first value to compare.
The second value to compare.
true if the and parameters have the same value; otherwise, false.
Returns a value that indicates whether two objects have different values.
The first value to compare.
The second value to compare.
true if and are not equal; otherwise, false.
Indicates whether the current object is equal to another object of the same type.
An object to compare with this object.
if the current object is equal to the parameter; otherwise, .
Determines whether the specified object is equal to the current object.
The object to compare with the current object.
if the specified object is equal to the current object; otherwise, .
Serves as the default hash function.
A hash code for the current object.
JS interop object which is exposed at the JavaScript side.
Initializes a new instance of the class.
The service root.
Gets the name of the interop object at the JavaScript side.
The name of the object at the JavaScript side.
Initializes a new instance of the class.
The service root.
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
Initializes a new instance of the class.
The service root.
Initializes a new instance of the class.
The service root.
Initializes a new instance of the class.
The service root.
A strongly-typed resource class, for looking up localized strings, etc.
Returns the cached ResourceManager instance used by this class.
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
Looks up a localized resource of type System.Byte[].
Looks up a localized resource of type System.Byte[].
Looks up a localized resource of type System.Byte[].
Looks up a localized resource of type System.Byte[].
Looks up a localized string similar to yayayayaa .
Gets the editor title.
The editor title.
Gets the editor title.
The editor title.
Gets the editor title.
The editor title.
Gets the editor title.
The editor title.
Gets the editor title.
The editor title.
Gets the editor title.
The editor title.
Initializes a new instance of the class.
The service root.
Gets the id of the plugin.
The id of the plugin.
Gets the type of the media.
The type of the media.
Gets the name of the plugin.
The name of the plugin.
Gets the current source URL of the audio or video.
An URL as string.
Gets the device profile.
The item.
A device profile object of type Emby.ApiClient.Model.DeviceProfile.
Registers the features.
The feature provider.
A Task.
Initializes a new instance of the class.
The service root.
Gets the path of the plugin folder.
The path of the plugin folder.
Destroys the player.
This is called to cleanup a player after playback has stopped.
It's not the final disposal of the host object (this).
Initializes the plugin.
The host objects.
A Task.
MPV Player.
Initializes a new instance of the class.
The service root.
The player element.
The display mode controller.
Gets the id of the plugin.
The id of the plugin.
Gets the type of the media.
The type of the media.
Gets the name of the plugin.
The name of the plugin.
Gets the priority of the plugin.
The priority of the plugin.
Gets the player adapter.
The player adapter.
Gets a collection of plugin files to be mapped.
A read-only collection of items.
Returns null for core plugins ().
Gets additional routes provided by the plugin.
A list of items.
Gets the current source URL of the audio or video.
An URL as string.
Destroys the player.
This is called to cleanup a player after playback has stopped. It's not the final disposal of the host object
(this).
Gets the device profile.
The item.
A device profile object of type Emby.ApiClient.Model.DeviceProfile.
Sets the media player.
The player.
Initializes the plugin.
The host objects.
A Task.
Registers the features.
The feature provider.
A Task.