ikatube config reference

the following lists the keys and descriptions for ikatube.json

scale

[permalink]

type: number

description: the scale factor, with 1 being 100%. if unset, the scale factor automatically determined by the system scaling setting.

font_size

[permalink]

type: number

default value: 12

description: the font height.

thumb_size

[permalink]

type: number

default value: 72

description: the thumbnail height.

player_path

[permalink]

type: string

default value: "mpv"

description: the path to run the mpv or vlc player. the path must end with "vlc" or "vlc.exe" to be considered vlc.

note: if "ios_hls" is used for the extractor:

video_format

[permalink]

type: string

default value: "1080p60"

description: the video format for playing. if the specified resolution is not available, a lower resolution format from the same codec will be selected.

opus is used for audio for android extractor, otherwise aac is used.

av1 formats are only available for android extractor, and are still unavailable for some videos.

vp9 formats are only available for android and ios_hls extractors.

single file formats other than 360 are only available for mediaconnect_hls extractor. the extractor only supports single file formats.

sub_language

[permalink]

type: string

default value: "en"

description: subtitle language for playing.

font

[permalink]

type: string

description: the path to the truetype/opentype font for ui elements.

theme_path

[permalink]

type: string

description: the path to the custom theme. a sample theme is included with ikachan.

theme

[permalink]

type: string

default value: "yuuka"

description: the built-in theme to use: can be one of light, dark, yuuka

mascot

[permalink]

type: string

description: the path to the mascot image file to use for the video info viewer.

key_bindings

[permalink]

type: array

description: set custom key bindings. the array contains objects with the following keys to values of string type:

' , - . / ; = [ ] \ ` ESCAPE ENTER TAB BACKSPACE INSERT DELETE LEFT RIGHT UP DOWN PAGEUP PAGEDOWN HOME END

the following is a sample config that binds f2 to set light theme, and ctrl + alt + c to clear thumbnail cache:

"key_bindings": [
  {"action": "set_light_theme", "mod": "", "key": "F2"},
  {"action": "clear_thumbnail_cache", "mod": "CTRL-ALT", "key": "C"}
]

extractor

[permalink]

type: string

default value: "ios_hls"

description: the extractor to use for video url: can be one of android, ios, ios_hls, mediaconnect, mediaconnect_hls

live streams are currently only supported for ios_hls, mediaconnect_hls extractors.

single_click_select

[permalink]

type: bool

default value: false

description: single click to activate an item in the list instead of double click.

show_extra_metadata

[permalink]

type: bool

default value: false

description: show extra metadata (upload date and views) in the list.

save_window_position

[permalink]

type: bool

default value: false

description: save window position on exit to be used on next startup.

smooth_scroll

[permalink]

type: bool

default value: false

description: enable smooth scrolling.

use_edl

[permalink]

type: bool

default value: false

description: use edl for playback, which generates media titles. currently mpv only.

generate_chapters

[permalink]

type: bool

default value: false

description: automatically generate chapters from the video description. currently mpv only.

save_state

[permalink]

type: bool

default value: false

description: save current playlist and video on exit to be loaded on next startup.

infinite_scroll

[permalink]

type: bool

default value: false

description: autoload the next page when scrolled to the bottom.

playlist_width

[permalink]

type: number

default value: 360

description: the playlist width.