SVPlayer for Nerds

From SmoothVideo Project
Jump to navigation Jump to search

The list of all 'advanced' options

The list is valid as of SVPlayer ver. 1.6.0.

Option Default Description Is accessible from UI
browser.cast true Search for SVPcast (i.e. SVP for PC running with SVPcast extension) available on the local network or not. no
browser.cast.bitrate 30 Maximum video bitrate, in Mbps, for SVPcast translation. This value is for 4K translation, smaller videos will use proportionally less bandwidth. menu -> Settings -> SVPcast streaming: Maximum bitrate (4K)
browser.cast.hevc false SVPcast should encode in H.265 (HEVC) rather than H.264 (AVC). menu -> Settings -> SVPcast streaming: Encode with H.265
browser.cast.name Name of the SVPcast server to use, in case you have several PCs running SVP. On the PC's side, this must be set in cast.server.ddns.name (more info). no
browser.dlna true Search for DLNA servers available on the local network or not. no
browser.history true Keep tracking of the watch history or not. menu -> Settings -> File browser: Save watch history
browser.history.days 30 Save watch history for this amount of days. no
browser.history.records 50 Save up to this number of recent videos in watch history. no
browser.history.show true Open watch history on SVPlayer start. menu -> Settings -> Jump to watch history on startup
browser.history.urls 10 Save up to this number of opened URLs in a "Play URL" dialog. no
browser.merge_external false Android only: show all device storage as a single folder (false) or different folders (true) (i.e. "Internal storage", "SD card", ...) no
browser.show_hidden false Show hidden files on a local storage. no
browser.sorting 1 Sort parameter and order. ±1 - by title (asc/desc), ±2 - by date, ±3 - by size, ±4 - by video length, 5 - shuffle. browser -> Sorting dialog
browser.startup true Open browser on startup (if not started from other app). no
browser.thumbnails true Show thumbnails if available (on a local storage, DLNA, Plex, Emby). Doesn't affect FTP, SMB, WebDAV servers. menu -> Settings -> File browser: Show thumbnails if available
browser.thumbnails.maximize true Fill 16:9 image shown in browser with thumbnail image, so if thumbnail image is not 16:9 it will be cropped. menu -> Settings -> File browser: Maximize thumbnails
browser.thumbnails.size 64 The size of thumbnails, in pixels. menu -> Settings -> File browser: Thumbnails size
frc.color.allow_10bit false Allow 10-bit output from 10-bit sources, or force conversion to YUV 4:2:0 8-bit format. This may hurt performance significantly. no
frc.disable_in_window true Android only: automatically disable FRC in a multi-window (pop-up, split-screen) mode. Doesn't affect DEX mode. no
frc.disable_in_window.focus false Android only: in a multi-window mode, enable FRC when the SVPlayer gets focus. no
frc.disable_vs true Disable Vapoursynth script completely when both FRC and black bars lighting are off. This saves performance a lot, but some functions won't work, e.g. black bars detection. no
frc.frame.align 4 Align (crop) video frame width to the multiple of this value. no
frc.frame.autocrop 1 Attempt to cut off black bars from the video. 0 - disabled, 1 - one time only, 2 - continuously monitor the black bars width (cause it changes in some releases, e.g. IMAX). menu -> Size & light -> Black bars detection
frc.frame.crop 0 Frame cropping.
  • 0 - turned off
  • from 10.0 to 100.0 - crop to the screen aspect ratio (AR) by XX%, e.g.: 100.0 - to the screen AR, 50.0 - to the screen AR by 50%
  • from 0.0 to 10.0 - crop to this AR value, e.g. 2.4 - crop to 2.40:1
menu -> Size & light -> Crop
frc.frame.resize 0 Change frame size (after cropping).
  • 0 - turned off
  • -1 - decrease to screen size (if larger)
  • -WWWWHHHH - decrease to fit into WWWWxHHHH rectangle (if larger), e.g. -12800720 means "fit into 1280x720 rect"
  • 1 - resize to screen size (even if frame is smaller)
  • WWWWHHHH - resize to either WWWW width or HHHH height (even if frame is smaller)
menu -> Size & light -> Pre-FRC downscaling
frc.frame.resize.algo bilinear Filter used for the frame resizing. Valid values: bilinear, bicubic, lanczos, spline16, spline36, spline64. menu -> Size & light -> Downscaling filter
frc.frame.valign 2 Same as frc.frame.align but for the frame height. no
frc.gpu.multiple_queues 1 Number of computation queues on GPU (1 or 2). Probably does nothing useful. no
frc.lights.disabled_in_3d false TV only: when 'false', fix 3D stereo in over-under and side-by-side formats aspect ratio with additional black bars. no
frc.lights.light_type 0
  • 0 - black bars lighting off
  • 1 - fill only black bars, either horizontal or vertical
  • 2 - "glow light" from all four sides of the frame
  • menu -> Size & light ->Black bars lighting
  • "Lights" button
frc.lights.max_ratio 2.0 Maximum resulting frame AR value. no
frc.lights.min_ar_diff 0.015 Don't turn on lighting if difference between frame AR and screen AR is less than this value no
frc.lights.params Black bars lighting params. menu -> Size & light -> Light intensity, count, width.
frc.prefetch.mpv_add 0 How many pre-decoded frames request in mpv buffers = <number of threads>*4 + mpv_add. no
frc.target.max 47.0 Maximal source frame rate that (probably) will be interpolated to higher rates no
frc.target.tolerance 0.020 Acceptable relative difference between screen refresh rate and target rate for the FRC engine. High values may hurt performance. no
frc.threads 0 Number of computation threads. Higher numbers will give better CPU utilization in exchange for increased memory consumption. Zero means "auto". no
main.dev.api 0 Graphics API used for computation. 0 - auto (if OpenCL is not available them use Vulkan), 1 - OpenCL, 2 - Vulkan. no
main.dev.sustained_perf true Android only: turns on Android's sustained performance mode. Probably does nothing. no
main.performance.cpu

main.performance.gpu

Measured multithreaded CPU/GPU performance, these values are used for the automatic FRC options selection algorithm. menu -> For nerds -> Performance estimation -> Test now
main.player.afr true Use AFR (adaptive frame rate switching) or not. Device must support several refresh rates for this to work. menu -> Playback -> Adaptive screen refresh rate
main.player.at_end 1 What to do when the video ends: 0 - nothing, 1 - play next one if available, 2 - rewind to start, 3 - open file browser. When SVPlayer was started from another app, (1) means "close SVPlayer and return to calling app". menu -> Settings -> General: After playback
main.player.audio.delay_XXXXX 0 Audio delay saved for specific BT headset. "audio" button -> "delay" button
main.player.audio.eq false If audio equalizer enabled or not. "EQ" button -> Equalizer
main.player.audio.eq.bX 0 Audio equalizer gains for various bands in dB. "EQ" button -> bands
main.player.audio.eq.max 12 Maximum allowed gain value in dB. no
main.player.audio.eq.p 1 Selected audio EQ preset. 0 - custom, 1 - flat, 2 - classical, 3 - pop, 4 - rock, 5 - dance. "EQ" button -> Preset
main.player.audio.lang Preferred audio languages. If not set, then the default audio track in a video file will be played. menu -> Playback -> Audio: Preferred languages
main.player.audio.norm false Enable audio normalization filter or not. "EQ" button -> Audio normalization
main.player.audio.norm.params f=75:g=25:p=0.55 Audio normalization filter params, see the dynaudnorm filter reference. no
main.player.audio.stereo Mobiles: true

TV: false

Downmix any audio to 2-channels or not. menu -> Playback -> Force stereo downmix
main.player.colors.brighness

main.player.colors.contrast
main.player.colors.gamma
main.player.colors.saturation
main.player.colors.sharpen

0 Video colors adjustment filter. Note that "sharpen" is not available in some cases: with gpu-next renderer; on old Mali GPUs (G52/G72/G76). "Colors" button
main.player.deband false Enable deband filter. Different filters will be used depending on main.payer.deband.gpu value. This may hurt performance significantly. menu -> Playback -> Video: Debanding
main.player.deband.gpu true Choose the deband filter, when enabled.
  • true - mpv's GPU deband filter (doesn't work for old Mali GPUs listed above), faster;
  • false - software gradfun filter from ffmpeg, slower.
no
main.player.deband.range 24 Range/radius for the deband filter. This value is for GPU filter, value/2 is used for gradfun one. no
main.player.deinterlace true Enable deinterlace filter when needed. no
main.player.deinterlace.filter bwdif Which deinterlace filter to use. Allowed values: bwdif, yadif, w3fdif, estdif. no
main.player.deinterlace.x2 true If deinterlace filter will double the frame rate or not. In the latter case (e.g. 60i->30p) the result will be interpolated by SVP, otherwise (60i->60p) not. menu -> Playback -> Video - Deinterlace: double frame rate
main.player.dither true Enable random dithering when converting video to 8-bit color depth. no
main.player.gpu_next false Enable next-gen video renderer in mpv, supporting some cool features like Dolby Vision. More info... menu -> Playback -> Experimental video renderer
main.player.gpu_next.vk true gpu-next will work through Vulkan API (default). However some devices doesn't support Vulkan 1.2, thus gpu-next will work in EGL mode. no
main.player.hw true Turn on hardware video decoding. menu -> Playback -> Hardware decoding

"HW" button

main.player.hw_decoder Android: mediacodec-copy

iOS: auto-copy

Specific hardware decoder to use, from the list of mpv's decoders. no
main.player.max_volume 150 Maximum software volume boost (when you increasing volume above 100%) allowed, in %. no
main.player.pause true Pause the player while changing the Vapoursynth script, this may remove jerking at these moments. no
main.player.pause_on_notification false Pause on notifications (SMS, messages, etc.) no
main.player.resolution 0 Choose a screen resolution, if device supports several resolutions. menu -> Playback -> Video: Screen resolution
main.player.save_position true Save playback positions (and some more info like audio/subs tracks selected) for each video. This is different from watch history. menu -> Settings -> Save position on quit
main.player.scale.up

main.player.scale.down
main.player.scale.chroma

bilinear Upscaling / downscaling / chroma upscaling filters to use. See the allowed values in mpv's manual. menu -> Playback -> Upscaling / downscaling filter
main.player.seek_keyframes true Position at a keyframe when seeking. This's faster than precise seeking. no
main.player.speed_reset false Reset playback speed to x1.0 on a new video. no
main.player.stretch 0 Allows stretching video frame to the window size by this amount of %. 0 - disabled, 100 - no limits. menu -> Size & light -> Stretch to screen
main.player.subs.align 0 Subtitles alignment. 0 - center, 1 - left, 2 - right. menu -> Playback -> Subtitles: Alignment
main.player.subs.autoload 1 Subtitles files autoloading:
  • 0 - disabled
  • 1 - subtitles file name must start with a video base name (i.e. file name w/o extension)
  • 2 - subtitles file name must contain video base name
no
main.player.subs.paths sub,subs,subtitles When playing from a local storage, try to autoload subtitles from these sub-folders. Doesn't affect network playback. no
main.player.background 00000000 Subtitles background color with alpha channel. Default: fully transparent black, meaning "no background". menu -> Playback -> Subtitles: Style
main.player.subs.bold false Use bold font for subtitles. menu -> Playback -> Subtitles: Style
main.player.subs.border true Draw border around subtitles letters. menu -> Playback -> Subtitles: Style
main.player.subs.border.color 000000 Subtitles border color. Default: black. menu -> Playback -> Subtitles: Style
main.player.subs.border.width 2 Subtitles border width, in pixels. no
main.player.subs.color FFFFFF Subtitles color. Default: white. menu -> Playback -> Subtitles: Style
main.player.subs.italic false Use italic font for subtitles. menu -> Playback -> Subtitles: Style
main.player.subs.size Mobiles: 25; TV: 32 Subtitles font size. menu -> Playback -> Subtitles: Font size
main.player.subs.vpos 1 Distance from the bottom (or top) of the screen, in % of screen size. menu -> Playback -> Subtitles: Bottom margin
main.player.subs.lang Preferred subtitles languages. If not set, then the default subs track in a video file will be used. menu -> Playback -> Subtitles: Preferred languages
main.player.tls_check false Check SSL certificates validity when connecting over HTTPS. This affects browsing DLNA, Emby, Plex and WebDAV servers and playing anything over HTTPS. no
main.server main Which SVP server will be used for licensing, registration and updates checking. "main" - www.svp-team.com, "cn" - www.svp-team.cn.com. Only needed for Chinese users. no
ui.accent #f75f05 iOS or TV: accent color (default: orange) no
ui.accent.dark #ca4b00 Android mobiles: "accent" color in dark mode. no
ui.accent.light #f75f05 Android mobiles: "accent" color in light mode. no
ui.brightness.restore true Android only: save last screen brightness value, restore it at app start no
ui.buttons.animation

ui.buttons.crop
ui.buttons.lights

true Show or hide various control buttons: "animation" mode on/off, crop mode, black bars lighting on/off. Restart SVPlayer after changing this. no
ui.controls.autohide true Auto hide playback controls after ui.controls.autohide_timeout delay after screen touch, or not. If not then touch the screen again to hide them. menu -> Settings -> Auto hide controls
ui.controls.autohide_timeout 4000 Delay in ms for auto hiding playback controls. no
ui.controls.skip_chapters false When pressing next/previous buttons, go to the next/previous video in folder (false), or skip to the next/previous chapter in the current video (true). If video has no chapters then behavior is the same.

TV only: when (true), next/previous buttons have an alternate action with "down" key.

menu -> Settings -> Skip to chapter, if any
ui.extend_notch true In a fullscreen mode, also extend over cutout screen areas to fill all the space available. menu -> Settings -> Extend video into the notch/cutout area
ui.font 16 Android only: sets the application font size. Restart the app after changing it. no
ui.fullscreen true Android only: start in full screen mode or not. If not then top and bottom system bars will remain visible. no
ui.language <system-language> User interface language. If there's no known translation for some text string it'll remain in English.
  • Android: menu -> Settings -> Language
  • iOS: set via system's menu
ui.opacity 0.9 Settings panels opacity. no
ui.orientation 0 Mobiles only: preferred display orientation.
  • 0 - automatic. Horizontal videos playing in landscape mode, vertical video playing in portrait mode, settings rotating by device orientation;
  • 1 - landscape orientation;
  • 2 - portrait orientation;
  • 3 - device orientation always, regarding of the video type.
  • menu -> Settings -> Screen orientation
  • "Rotate" button switches between 0 and 3
ui.pinch.crop true Crop frame after zooming in with pinch gesture after ui.pinch.timeout delay. This only works with Vapoursynth script active and is needed for saving some performance. This won't work if you already panned (moved) the frame with two fingers (see below). menu -> Size & light -> Crop after pinch gesture
ui.pinch.pan false Allow panning (moving) the frame with two fingers when zoomed-in. Otherwise always zoom to the frame center. This won't work if the frame was already cropped. menu -> Settings -> Touch gestures: Pan with 2-fingers swipe
ui.stats 0 Show info & stats overlay text. 0 - none, 1 - detailed, 2 - compact.
  • menu -> Playback -> Display stats
  • long press "HW" button
ui.stats.fluency_test 1 In which ui.stats mode also draw a fluency test line. Default - in detailed mode. If you want to turn it off in all modes, set this to 0. no
ui.theme 0 Android only: system (0), force light (1) or force dark (2) theme. menu -> Settings -> Theme
ui.touch.advance 30 Amount of seconds to skip when double-tap screen sides. menu -> Settings -> Touch gestures: Double tap (side)
ui.touch.hold 2 When touch-and-hold, change the playback speed by this ratio. Default - x2. Values <1.0 are also allowed. (1) means disabled. menu -> Settings -> Touch gestures: Press and hold
ui.touch.left

ui.touch.right

2

1

What to do with vertical swipe on screen sides. 0 - nothing, 1 - adjust volume, 2 - adjust brightness. menu -> Settings -> Touch gestures: Vertical swipe
ui.touch.pause false Pause with a single tap/click, rather than with double tap. When (true), only works with tapping in the middle; tapping top and bottom lines will still show the controls. menu -> Settings -> Pause with single click
ui.touch.seek true Allows seeking with horizontal swipe gesture. menu -> Settings -> Seek with horizontal swipe
ui.touch.seek.speed 1 Multiply seek amount with horizontal swipe by this value. no
ui.web TV: true, mobiles: false Start the WebUI server. Not available on Android mobiles (not needed).
  • iOS: browser -> Upload files via WebUI
  • TV: menu -> Settings -> WebUI
  • TV: browser -> Add location
ui.web.port Android: 8080, iOS/tvOS: 80 HTTP port for the WebUI. If the port is already in use, random one will be selected. no