[{"data":1,"prerenderedAt":1775},["ShallowReactive",2],{"guide-en":3},[4,638,1124],{"id":5,"title":6,"author":7,"body":8,"date":7,"description":630,"extension":631,"meta":632,"navigation":633,"path":634,"robots":7,"seo":635,"stem":636,"tags":7,"__hash__":637},"content_en\u002Fguide\u002Fconfigure-cms.md","Configure CMS",null,{"type":9,"value":10,"toc":608},"minimark",[11,16,20,25,55,59,64,67,87,91,94,133,140,144,147,151,158,162,165,170,173,205,258,262,296,326,368,372,375,404,415,419,441,462,466,472,492,495,499,523,527,530,547,550,554,558,565,571,575,578,604],[12,13,15],"h1",{"id":14},"configure-cms-connection","Configure CMS Connection",[17,18,19],"p",{},"After installing a player, you need to connect it to your Xibo CMS.",[21,22,24],"h2",{"id":23},"what-you-need","What You Need",[26,27,28,37,44],"ul",{},[29,30,31,32,36],"li",{},"A running ",[33,34,35],"strong",{},"Xibo CMS"," instance (v3 or v4)",[29,38,39,40,43],{},"The ",[33,41,42],{},"CMS server key"," (found in CMS → Administration → Settings → Display Settings → CMS Secret Key)",[29,45,39,46,49,50,54],{},[33,47,48],{},"CMS URL"," (e.g. ",[51,52,53],"code",{},"https:\u002F\u002Fyour-cms.example.com",")",[21,56,58],{"id":57},"step-1-enter-cms-credentials","Step 1: Enter CMS Credentials",[60,61,63],"h3",{"id":62},"kiosk-images-first-boot-wizard","Kiosk images (first-boot wizard)",[17,65,66],{},"The setup wizard appears automatically on first boot. Enter:",[68,69,70,75,81],"ol",{},[29,71,72,74],{},[33,73,48],{}," — your Xibo CMS address",[29,76,77,80],{},[33,78,79],{},"CMS Key"," — the server key from CMS settings",[29,82,83,86],{},[33,84,85],{},"Display Name"," — a name to identify this display (e.g. \"Lobby Screen 1\")",[60,88,90],{"id":89},"electron-player","Electron Player",[17,92,93],{},"On first launch, the player shows a setup page. Enter the same three fields. You can also configure via command line:",[95,96,101],"pre",{"className":97,"code":98,"language":99,"meta":100,"style":100},"language-bash shiki shiki-themes material-theme-lighter github-light github-dark","xiboplayer-electron --cms-url=https:\u002F\u002Fyour-cms.example.com --cms-key=YOUR_KEY --display-name=\"Lobby\"\n","bash","",[51,102,103],{"__ignoreMap":100},[104,105,108,112,116,119,122,126,130],"span",{"class":106,"line":107},"line",1,[104,109,111],{"class":110},"sbgvK","xiboplayer-electron",[104,113,115],{"class":114},"stzsN"," --cms-url=https:\u002F\u002Fyour-cms.example.com",[104,117,118],{"class":114}," --cms-key=YOUR_KEY",[104,120,121],{"class":114}," --display-name=",[104,123,125],{"class":124},"sjJ54","\"",[104,127,129],{"class":128},"s_sjI","Lobby",[104,131,132],{"class":124},"\"\n",[17,134,135,136,139],{},"Or edit the config file at ",[51,137,138],{},"~\u002F.config\u002Fxiboplayer\u002Felectron\u002Fconfig.json",".",[60,141,143],{"id":142},"chromium-player","Chromium Player",[17,145,146],{},"The Chromium player opens the PWA setup page in the browser. Enter CMS URL, key, and display name directly in the form.",[60,148,150],{"id":149},"pwa-browser","PWA (browser)",[17,152,153,154,157],{},"Navigate to ",[51,155,156],{},"https:\u002F\u002Fyour-cms.example.com\u002Fplayer\u002Fpwa\u002F"," and enter the CMS key and display name on the setup page.",[60,159,161],{"id":160},"config-templates-rpmdeb-installs","Config Templates (RPM\u002FDEB installs)",[17,163,164],{},"For automated deployments or managing multiple displays, use config templates instead of the setup wizard. Templates separate secrets (CMS credentials) from configuration profiles (kiosk, dev, sync).",[166,167,169],"h4",{"id":168},"secrets","Secrets",[17,171,172],{},"Create your secrets file once per CMS. The templates read from it automatically.",[95,174,176],{"className":97,"code":175,"language":99,"meta":100,"style":100},"cp \u002Fusr\u002Fshare\u002Fxiboplayer-electron\u002Fconfigs\u002Fsecrets.env.example \\\n   ~\u002F.config\u002Fxiboplayer\u002Fsecrets.env\nnano ~\u002F.config\u002Fxiboplayer\u002Fsecrets.env\n",[51,177,178,190,196],{"__ignoreMap":100},[104,179,180,183,186],{"class":106,"line":107},[104,181,182],{"class":110},"cp",[104,184,185],{"class":128}," \u002Fusr\u002Fshare\u002Fxiboplayer-electron\u002Fconfigs\u002Fsecrets.env.example",[104,187,189],{"class":188},"s_hVV"," \\\n",[104,191,193],{"class":106,"line":192},2,[104,194,195],{"class":128},"   ~\u002F.config\u002Fxiboplayer\u002Fsecrets.env\n",[104,197,199,202],{"class":106,"line":198},3,[104,200,201],{"class":110},"nano",[104,203,204],{"class":128}," ~\u002F.config\u002Fxiboplayer\u002Fsecrets.env\n",[95,206,211],{"className":207,"code":208,"filename":209,"language":210,"meta":100,"style":100},"language-ini shiki shiki-themes material-theme-lighter github-light github-dark","CMS_URL=https:\u002F\u002Fyour-cms.example.com\nCMS_KEY=your-server-key\nAPI_CLIENT_ID=your-oauth-client-id\nAPI_CLIENT_SECRET=your-oauth-client-secret\n","secrets.env","ini",[51,212,213,227,237,247],{"__ignoreMap":100},[104,214,215,219,223],{"class":106,"line":107},[104,216,218],{"class":217},"sFlF4","CMS_URL",[104,220,222],{"class":221},"sP7_E","=",[104,224,226],{"class":225},"su5hD","https:\u002F\u002Fyour-cms.example.com\n",[104,228,229,232,234],{"class":106,"line":192},[104,230,231],{"class":217},"CMS_KEY",[104,233,222],{"class":221},[104,235,236],{"class":225},"your-server-key\n",[104,238,239,242,244],{"class":106,"line":198},[104,240,241],{"class":217},"API_CLIENT_ID",[104,243,222],{"class":221},[104,245,246],{"class":225},"your-oauth-client-id\n",[104,248,250,253,255],{"class":106,"line":249},4,[104,251,252],{"class":217},"API_CLIENT_SECRET",[104,254,222],{"class":221},[104,256,257],{"class":225},"your-oauth-client-secret\n",[166,259,261],{"id":260},"profiles","Profiles",[263,264,267,270],"card",{"icon":265,"title":266},"i-lucide-monitor","Kiosk",[17,268,269],{},"Production mode. Fullscreen, mouse hidden, no debug UI, error-only logging. Use for deployed signage displays.",[95,271,273],{"className":97,"code":272,"language":99,"meta":100,"style":100},"apply.sh electron-kiosk electron\napply.sh chromium-kiosk chromium\n",[51,274,275,286],{"__ignoreMap":100},[104,276,277,280,283],{"class":106,"line":107},[104,278,279],{"class":110},"apply.sh",[104,281,282],{"class":128}," electron-kiosk",[104,284,285],{"class":128}," electron\n",[104,287,288,290,293],{"class":106,"line":192},[104,289,279],{"class":110},[104,291,292],{"class":128}," chromium-kiosk",[104,294,295],{"class":128}," chromium\n",[263,297,300,303],{"icon":298,"title":299},"i-lucide-code","Development",[17,301,302],{},"Windowed mode with debug overlays, keyboard controls (T=timeline, D=downloads, S=setup), verbose logging. Use for testing and troubleshooting.",[95,304,306],{"className":97,"code":305,"language":99,"meta":100,"style":100},"apply.sh electron-dev electron\napply.sh chromium-dev chromium\n",[51,307,308,317],{"__ignoreMap":100},[104,309,310,312,315],{"class":106,"line":107},[104,311,279],{"class":110},[104,313,314],{"class":128}," electron-dev",[104,316,285],{"class":128},[104,318,319,321,324],{"class":106,"line":192},[104,320,279],{"class":110},[104,322,323],{"class":128}," chromium-dev",[104,325,295],{"class":128},[263,327,330,333],{"icon":328,"title":329},"i-lucide-layout-grid","Multi-Display Sync",[17,331,332],{},"Synchronized playback across multiple screens. One lead coordinates timing, followers stagger layout transitions.",[95,334,336],{"className":97,"code":335,"language":99,"meta":100,"style":100},"apply.sh electron-sync-lead electron-sync-lead\napply.sh electron-sync-follower electron-sync-follower-1 PORT=8771 DISPLAY_NAME=follower-1\n",[51,337,338,348],{"__ignoreMap":100},[104,339,340,342,345],{"class":106,"line":107},[104,341,279],{"class":110},[104,343,344],{"class":128}," electron-sync-lead",[104,346,347],{"class":128}," electron-sync-lead\n",[104,349,350,352,355,358,361,365],{"class":106,"line":192},[104,351,279],{"class":110},[104,353,354],{"class":128}," electron-sync-follower",[104,356,357],{"class":128}," electron-sync-follower-1",[104,359,360],{"class":128}," PORT=",[104,362,364],{"class":363},"srdBf","8771",[104,366,367],{"class":128}," DISPLAY_NAME=follower-1\n",[166,369,371],{"id":370},"custom-overrides","Custom overrides",[17,373,374],{},"Pass variables on the command line to override template defaults:",[95,376,378],{"className":97,"code":377,"language":99,"meta":100,"style":100},"apply.sh electron-kiosk electron DISPLAY_NAME=\"Lobby Screen 1\" PORT=8770\n",[51,379,380],{"__ignoreMap":100},[104,381,382,384,386,389,392,394,397,399,401],{"class":106,"line":107},[104,383,279],{"class":110},[104,385,282],{"class":128},[104,387,388],{"class":128}," electron",[104,390,391],{"class":128}," DISPLAY_NAME=",[104,393,125],{"class":124},[104,395,396],{"class":128},"Lobby Screen 1",[104,398,125],{"class":124},[104,400,360],{"class":128},[104,402,403],{"class":363},"8770\n",[17,405,406,407,410,411,414],{},"Template syntax: ",[51,408,409],{},"{{VAR}}"," is required, ",[51,412,413],{},"{{VAR:default}}"," has a fallback. Empty OAuth fields are removed automatically so the display uses manual CMS authorization instead.",[166,416,418],{"id":417},"reset-a-player","Reset a player",[263,420,423,426],{"icon":421,"title":422},"i-lucide-trash-2","Cache clear",[17,424,425],{},"Clears browser cache (GPU cache, compiled code, blob storage) but keeps CMS auth, media files, and service worker data.",[95,427,429],{"className":97,"code":428,"language":99,"meta":100,"style":100},"clean.sh electron cache\n",[51,430,431],{"__ignoreMap":100},[104,432,433,436,438],{"class":106,"line":107},[104,434,435],{"class":110},"clean.sh",[104,437,388],{"class":128},[104,439,440],{"class":128}," cache\n",[263,442,445,448],{"icon":443,"title":444},"i-lucide-rotate-ccw","Full wipe",[17,446,447],{},"Removes all player data. The display re-registers with the CMS as a new device.",[95,449,451],{"className":97,"code":450,"language":99,"meta":100,"style":100},"clean.sh electron full\n",[51,452,453],{"__ignoreMap":100},[104,454,455,457,459],{"class":106,"line":107},[104,456,435],{"class":110},[104,458,388],{"class":128},[104,460,461],{"class":128}," full\n",[21,463,465],{"id":464},"step-2-authorize-in-cms","Step 2: Authorize in CMS",[17,467,468,469,139],{},"After the player registers, it appears in your CMS with status ",[33,470,471],{},"Waiting for Authorization",[68,473,474,477,483,486],{},[29,475,476],{},"Open your CMS admin UI",[29,478,479,480],{},"Go to ",[33,481,482],{},"Displays",[29,484,485],{},"Find your new display (status: Waiting)",[29,487,488,489],{},"Click ",[33,490,491],{},"Authorize",[17,493,494],{},"The player will pick up the authorization on its next collection cycle (typically within 30 seconds).",[21,496,498],{"id":497},"step-3-assign-content","Step 3: Assign Content",[68,500,501,507,517,520],{},[29,502,503,504],{},"In CMS, go to ",[33,505,506],{},"Schedule",[29,508,509,510,513,514],{},"Create or select a ",[33,511,512],{},"Campaign"," or ",[33,515,516],{},"Layout",[29,518,519],{},"Schedule it to your display or display group",[29,521,522],{},"The player downloads media and starts playback automatically",[21,524,526],{"id":525},"display-settings","Display Settings",[17,528,529],{},"Once authorized, the CMS pushes display settings to the player including:",[26,531,532,535,538,541,544],{},[29,533,534],{},"Collection interval (how often the player checks for updates)",[29,536,537],{},"Download window (restrict large downloads to off-hours)",[29,539,540],{},"Screenshot interval",[29,542,543],{},"Log level",[29,545,546],{},"XMR channel (for real-time push commands)",[17,548,549],{},"These are configured per-display or per-display-group in CMS → Displays → Edit Display → Display Settings.",[21,551,553],{"id":552},"verifying-connection","Verifying Connection",[60,555,557],{"id":556},"from-the-player","From the player",[17,559,560,561,564],{},"Press ",[51,562,563],{},"T"," to toggle the timeline overlay. If the schedule is loaded and layouts are listed, the connection is working.",[17,566,560,567,570],{},[51,568,569],{},"D"," to see download progress for media files.",[60,572,574],{"id":573},"from-the-cms","From the CMS",[17,576,577],{},"In CMS → Displays, check:",[26,579,580,586,592,598],{},[29,581,582,585],{},[33,583,584],{},"Status",": should show a green tick (authorized and communicating)",[29,587,588,591],{},[33,589,590],{},"Last Access",": should show a recent timestamp",[29,593,594,597],{},[33,595,596],{},"Storage",": shows remaining disk space on the player",[29,599,600,603],{},[33,601,602],{},"Screenshot",": if configured, shows the latest screenshot from the player",[605,606,607],"style",{},"html pre.shiki code .sbgvK, html code.shiki .sbgvK{--shiki-light:#E2931D;--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .stzsN, html code.shiki .stzsN{--shiki-light:#91B859;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sjJ54, html code.shiki .sjJ54{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s_sjI, html code.shiki .s_sjI{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s_hVV, html code.shiki .s_hVV{--shiki-light:#90A4AE;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .srdBf, html code.shiki .srdBf{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sFlF4, html code.shiki .sFlF4{--shiki-light:#E53935;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sP7_E, html code.shiki .sP7_E{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .su5hD, html code.shiki .su5hD{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":100,"searchDepth":198,"depth":198,"links":609},[610,611,623,624,625,626],{"id":23,"depth":192,"text":24},{"id":57,"depth":192,"text":58,"children":612},[613,614,615,616,617],{"id":62,"depth":198,"text":63},{"id":89,"depth":198,"text":90},{"id":142,"depth":198,"text":143},{"id":149,"depth":198,"text":150},{"id":160,"depth":198,"text":161,"children":618},[619,620,621,622],{"id":168,"depth":249,"text":169},{"id":260,"depth":249,"text":261},{"id":370,"depth":249,"text":371},{"id":417,"depth":249,"text":418},{"id":464,"depth":192,"text":465},{"id":497,"depth":192,"text":498},{"id":525,"depth":192,"text":526},{"id":552,"depth":192,"text":553,"children":627},[628,629],{"id":556,"depth":198,"text":557},{"id":573,"depth":198,"text":574},"Register your display with a Xibo CMS and authorize it.","md",{},true,"\u002Fguide\u002Fconfigure-cms",{"title":6,"description":630},"guide\u002Fconfigure-cms","pCvZc7eqDpZUJVf5TEXhYMEtGiL4Vy-MsPUHmvngz5M",{"id":639,"title":640,"author":7,"body":641,"date":7,"description":1118,"extension":631,"meta":1119,"navigation":633,"path":1120,"robots":7,"seo":1121,"stem":1122,"tags":7,"__hash__":1123},"content_en\u002Fguide\u002Ffirst-boot.md","First Boot Guide",{"type":9,"value":642,"toc":1095},[643,646,649,653,656,674,677,681,684,693,699,703,706,710,719,726,730,767,776,780,783,806,809,813,816,832,836,839,843,846,865,868,888,891,903,907,910,935,938,951,954,958,962,980,984,997,1000,1004,1008,1030,1039,1043,1061,1065,1068,1072,1092],[12,644,640],{"id":645},"first-boot-guide",[17,647,648],{},"This guide walks you through the essential steps after booting your Xibo Kiosk image for the first time.",[21,650,652],{"id":651},"_1-log-in","1. Log In",[17,654,655],{},"The kiosk image ships with a default user account:",[26,657,658,667],{},[29,659,660,663,664],{},[33,661,662],{},"Username:"," ",[51,665,666],{},"xibo",[29,668,669,663,672],{},[33,670,671],{},"Password:",[51,673,666],{},[17,675,676],{},"Log in at the console or via SSH.",[21,678,680],{"id":679},"_2-change-your-password","2. Change Your Password",[17,682,683],{},"For security, change the default password immediately:",[95,685,687],{"className":97,"code":686,"language":99,"meta":100,"style":100},"passwd\n",[51,688,689],{"__ignoreMap":100},[104,690,691],{"class":106,"line":107},[104,692,686],{"class":110},[17,694,695,696,698],{},"You will be prompted to enter the current password (",[51,697,666],{},") and then your new password twice.",[21,700,702],{"id":701},"_3-connect-to-wi-fi","3. Connect to Wi-Fi",[17,704,705],{},"If your device is not connected via Ethernet, configure Wi-Fi.",[60,707,709],{"id":708},"interactive-recommended","Interactive (recommended)",[95,711,713],{"className":97,"code":712,"language":99,"meta":100,"style":100},"nmtui\n",[51,714,715],{"__ignoreMap":100},[104,716,717],{"class":106,"line":107},[104,718,712],{"class":110},[17,720,721,722,725],{},"Select ",[33,723,724],{},"Activate a connection",", choose your network and enter the password.",[60,727,729],{"id":728},"command-line","Command line",[95,731,733],{"className":97,"code":732,"language":99,"meta":100,"style":100},"nmcli device wifi connect \"SSID\" password \"pass\"\n",[51,734,735],{"__ignoreMap":100},[104,736,737,740,743,746,749,752,755,757,760,762,765],{"class":106,"line":107},[104,738,739],{"class":110},"nmcli",[104,741,742],{"class":128}," device",[104,744,745],{"class":128}," wifi",[104,747,748],{"class":128}," connect",[104,750,751],{"class":124}," \"",[104,753,754],{"class":128},"SSID",[104,756,125],{"class":124},[104,758,759],{"class":128}," password",[104,761,751],{"class":124},[104,763,764],{"class":128},"pass",[104,766,132],{"class":124},[17,768,769,770,772,773,775],{},"Replace ",[51,771,754],{}," and ",[51,774,764],{}," with your actual network name and password.",[21,777,779],{"id":778},"_4-configure-cms-connection","4. Configure CMS Connection",[17,781,782],{},"The setup wizard appears automatically on first boot. You will need:",[26,784,785,792,798],{},[29,786,787,789,790,54],{},[33,788,48],{}," -- the address of your Xibo CMS (e.g. ",[51,791,53],{},[29,793,794,797],{},[33,795,796],{},"Server Key"," -- found in CMS > Administration > Settings > Display Settings > CMS Secret Key",[29,799,800,802,803,54],{},[33,801,85],{}," -- a friendly name for this display (e.g. ",[51,804,805],{},"lobby-screen-01",[17,807,808],{},"Once submitted, the player registers itself with the CMS.",[21,810,812],{"id":811},"_5-authorize-in-cms","5. Authorize in CMS",[17,814,815],{},"The new display must be authorized before it can receive content:",[68,817,818,821,825,828],{},[29,819,820],{},"Open your CMS web interface",[29,822,479,823],{},[33,824,482],{},[29,826,827],{},"Find the new display in the list (it will show as unauthorized)",[29,829,488,830],{},[33,831,491],{},[21,833,835],{"id":834},"_6-content-plays-automatically","6. Content Plays Automatically",[17,837,838],{},"Once authorized, the display downloads its assigned layouts and starts playing content. The initial download may take a few minutes depending on the size of your layouts and your network speed.",[21,840,842],{"id":841},"_7-choose-your-player","7. Choose Your Player",[17,844,845],{},"The kiosk image includes multiple player implementations. Switch between them:",[95,847,849],{"className":97,"code":848,"language":99,"meta":100,"style":100},"doas alternatives --config xiboplayer\n",[51,850,851],{"__ignoreMap":100},[104,852,853,856,859,862],{"class":106,"line":107},[104,854,855],{"class":110},"doas",[104,857,858],{"class":128}," alternatives",[104,860,861],{"class":114}," --config",[104,863,864],{"class":128}," xiboplayer\n",[17,866,867],{},"Available options:",[26,869,870,876,882],{},[29,871,872,875],{},[33,873,874],{},"Electron"," -- full-featured player with hardware acceleration",[29,877,878,881],{},[33,879,880],{},"Chromium"," -- lightweight kiosk-mode browser player",[29,883,884,887],{},[33,885,886],{},"arexibo"," -- minimal native player",[17,889,890],{},"After selecting a player, reboot for the change to take effect:",[95,892,894],{"className":97,"code":893,"language":99,"meta":100,"style":100},"doas reboot\n",[51,895,896],{"__ignoreMap":100},[104,897,898,900],{"class":106,"line":107},[104,899,855],{"class":110},[104,901,902],{"class":128}," reboot\n",[21,904,906],{"id":905},"_8-remote-access","8. Remote Access",[17,908,909],{},"SSH is enabled by default. Connect from another machine on the same network:",[95,911,913],{"className":97,"code":912,"language":99,"meta":100,"style":100},"ssh xibo@\u003Cip>\n",[51,914,915],{"__ignoreMap":100},[104,916,917,920,923,927,930,932],{"class":106,"line":107},[104,918,919],{"class":110},"ssh",[104,921,922],{"class":128}," xibo@",[104,924,926],{"class":925},"smGrS","\u003C",[104,928,929],{"class":128},"i",[104,931,17],{"class":225},[104,933,934],{"class":925},">\n",[17,936,937],{},"To find the device's IP address, run on the kiosk:",[95,939,941],{"className":97,"code":940,"language":99,"meta":100,"style":100},"ip addr\n",[51,942,943],{"__ignoreMap":100},[104,944,945,948],{"class":106,"line":107},[104,946,947],{"class":110},"ip",[104,949,950],{"class":128}," addr\n",[17,952,953],{},"Alternatively, check your router's DHCP lease table.",[21,955,957],{"id":956},"_9-updating","9. Updating",[60,959,961],{"id":960},"standard-image","Standard image",[95,963,965],{"className":97,"code":964,"language":99,"meta":100,"style":100},"doas dnf upgrade --refresh\n",[51,966,967],{"__ignoreMap":100},[104,968,969,971,974,977],{"class":106,"line":107},[104,970,855],{"class":110},[104,972,973],{"class":128}," dnf",[104,975,976],{"class":128}," upgrade",[104,978,979],{"class":114}," --refresh\n",[60,981,983],{"id":982},"atomic-image","Atomic image",[95,985,987],{"className":97,"code":986,"language":99,"meta":100,"style":100},"bootc upgrade\n",[51,988,989],{"__ignoreMap":100},[104,990,991,994],{"class":106,"line":107},[104,992,993],{"class":110},"bootc",[104,995,996],{"class":128}," upgrade\n",[17,998,999],{},"Then reboot to apply the update.",[21,1001,1003],{"id":1002},"_10-troubleshooting","10. Troubleshooting",[60,1005,1007],{"id":1006},"view-player-logs","View player logs",[95,1009,1011],{"className":97,"code":1010,"language":99,"meta":100,"style":100},"journalctl --user -u xiboplayer-electron -f\n",[51,1012,1013],{"__ignoreMap":100},[104,1014,1015,1018,1021,1024,1027],{"class":106,"line":107},[104,1016,1017],{"class":110},"journalctl",[104,1019,1020],{"class":114}," --user",[104,1022,1023],{"class":114}," -u",[104,1025,1026],{"class":128}," xiboplayer-electron",[104,1028,1029],{"class":114}," -f\n",[17,1031,769,1032,1034,1035,1038],{},[51,1033,111],{}," with ",[51,1036,1037],{},"xiboplayer-chromium"," if using the Chromium player.",[60,1040,1042],{"id":1041},"restart-the-player","Restart the player",[95,1044,1046],{"className":97,"code":1045,"language":99,"meta":100,"style":100},"systemctl --user restart xiboplayer-electron\n",[51,1047,1048],{"__ignoreMap":100},[104,1049,1050,1053,1055,1058],{"class":106,"line":107},[104,1051,1052],{"class":110},"systemctl",[104,1054,1020],{"class":114},[104,1056,1057],{"class":128}," restart",[104,1059,1060],{"class":128}," xiboplayer-electron\n",[60,1062,1064],{"id":1063},"check-cms-connection","Check CMS connection",[17,1066,1067],{},"Look at the overlay bar on the display. It shows the current CMS connection status, display name and IP address.",[60,1069,1071],{"id":1070},"common-issues","Common issues",[26,1073,1074,1080,1086],{},[29,1075,1076,1079],{},[33,1077,1078],{},"Display not appearing in CMS"," -- verify the CMS URL and Server Key are correct. Check network connectivity.",[29,1081,1082,1085],{},[33,1083,1084],{},"Content not downloading"," -- ensure the display is authorized in the CMS. Check available disk space.",[29,1087,1088,1091],{},[33,1089,1090],{},"Black screen after boot"," -- check player logs for errors. Try restarting the player service.",[605,1093,1094],{},"html pre.shiki code .sbgvK, html code.shiki .sbgvK{--shiki-light:#E2931D;--shiki-default:#6F42C1;--shiki-dark:#B392F0}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s_sjI, html code.shiki .s_sjI{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sjJ54, html code.shiki .sjJ54{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .stzsN, html code.shiki .stzsN{--shiki-light:#91B859;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .smGrS, html code.shiki .smGrS{--shiki-light:#39ADB5;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .su5hD, html code.shiki .su5hD{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":100,"searchDepth":198,"depth":198,"links":1096},[1097,1098,1099,1103,1104,1105,1106,1107,1108,1112],{"id":651,"depth":192,"text":652},{"id":679,"depth":192,"text":680},{"id":701,"depth":192,"text":702,"children":1100},[1101,1102],{"id":708,"depth":198,"text":709},{"id":728,"depth":198,"text":729},{"id":778,"depth":192,"text":779},{"id":811,"depth":192,"text":812},{"id":834,"depth":192,"text":835},{"id":841,"depth":192,"text":842},{"id":905,"depth":192,"text":906},{"id":956,"depth":192,"text":957,"children":1109},[1110,1111],{"id":960,"depth":198,"text":961},{"id":982,"depth":198,"text":983},{"id":1002,"depth":192,"text":1003,"children":1113},[1114,1115,1116,1117],{"id":1006,"depth":198,"text":1007},{"id":1041,"depth":198,"text":1042},{"id":1063,"depth":198,"text":1064},{"id":1070,"depth":198,"text":1071},"What to do after booting your Xibo Kiosk image for the first time.",{},"\u002Fguide\u002Ffirst-boot",{"title":640,"description":1118},"guide\u002Ffirst-boot","aN6mRhtmytOtZ5nMLhJ-lwdKEvoEy2jV6z40BSDGBpk",{"id":1125,"title":1126,"author":7,"body":1127,"date":7,"description":1769,"extension":631,"meta":1770,"navigation":633,"path":1771,"robots":7,"seo":1772,"stem":1773,"tags":7,"__hash__":1774},"content_en\u002Fguide\u002Ftroubleshooting.md","Troubleshooting",{"type":9,"value":1128,"toc":1743},[1129,1132,1136,1140,1158,1162,1179,1183,1186,1197,1201,1205,1210,1255,1260,1278,1282,1304,1308,1344,1348,1352,1424,1428,1493,1497,1531,1535,1539,1550,1554,1570,1574,1578,1581,1613,1619,1623,1626,1710,1714,1740],[12,1130,1126],{"id":1131},"troubleshooting",[21,1133,1135],{"id":1134},"connection-issues","Connection Issues",[60,1137,1139],{"id":1138},"connection-failed-networkerror","\"Connection failed: NetworkError\"",[26,1141,1142,1148],{},[29,1143,1144,1147],{},[33,1145,1146],{},"PWA",": Verify the CMS address matches the domain the player is served from (same-origin requirement). Use Electron or Chromium for cross-origin setups.",[29,1149,1150,1153,1154,1157],{},[33,1151,1152],{},"Electron\u002FChromium",": Check that the CMS is reachable from the player. Try ",[51,1155,1156],{},"curl https:\u002F\u002Fyour-cms.example.com\u002Fxmds.php"," from the player machine.",[60,1159,1161],{"id":1160},"display-not-authorized","\"Display not authorized\"",[68,1163,1164,1167,1170,1173],{},[29,1165,1166],{},"Go to CMS → Displays",[29,1168,1169],{},"Find your display (status: Waiting)",[29,1171,1172],{},"Click Authorize",[29,1174,1175,1176,1178],{},"Wait up to 30 seconds or press ",[51,1177,569],{}," in the player to force a collection",[60,1180,1182],{"id":1181},"player-shows-offline-badge","Player shows \"OFFLINE\" badge",[17,1184,1185],{},"The player has lost CMS connectivity but is still showing cached content. Check:",[26,1187,1188,1191,1194],{},[29,1189,1190],{},"Network connection on the player machine",[29,1192,1193],{},"CMS availability",[29,1195,1196],{},"Firewall rules (port 443 for HTTPS, port 9505 for XMR WebSocket)",[21,1198,1200],{"id":1199},"display-issues","Display Issues",[60,1202,1204],{"id":1203},"black-screen","Black screen",[17,1206,1207],{},[33,1208,1209],{},"Electron:",[95,1211,1213],{"className":97,"code":1212,"language":99,"meta":100,"style":100},"# Check PWA files exist\nls -la ~\u002F.local\u002Fshare\u002Fxiboplayer\u002Felectron\u002Fpwa\u002F\n\n# Reinstall if missing\nsudo dnf reinstall xiboplayer-electron\n",[51,1214,1215,1221,1232,1237,1242],{"__ignoreMap":100},[104,1216,1217],{"class":106,"line":107},[104,1218,1220],{"class":1219},"sutJx","# Check PWA files exist\n",[104,1222,1223,1226,1229],{"class":106,"line":192},[104,1224,1225],{"class":110},"ls",[104,1227,1228],{"class":114}," -la",[104,1230,1231],{"class":128}," ~\u002F.local\u002Fshare\u002Fxiboplayer\u002Felectron\u002Fpwa\u002F\n",[104,1233,1234],{"class":106,"line":198},[104,1235,1236],{"emptyLinePlaceholder":633},"\n",[104,1238,1239],{"class":106,"line":249},[104,1240,1241],{"class":1219},"# Reinstall if missing\n",[104,1243,1245,1248,1250,1253],{"class":106,"line":1244},5,[104,1246,1247],{"class":110},"sudo",[104,1249,973],{"class":128},[104,1251,1252],{"class":128}," reinstall",[104,1254,1060],{"class":128},[17,1256,1257],{},[33,1258,1259],{},"Chromium:",[95,1261,1263],{"className":97,"code":1262,"language":99,"meta":100,"style":100},"# Check if the server is running\ncurl http:\u002F\u002Flocalhost:8765\u002Fplayer\u002Fpwa\u002F\n",[51,1264,1265,1270],{"__ignoreMap":100},[104,1266,1267],{"class":106,"line":107},[104,1268,1269],{"class":1219},"# Check if the server is running\n",[104,1271,1272,1275],{"class":106,"line":192},[104,1273,1274],{"class":110},"curl",[104,1276,1277],{"class":128}," http:\u002F\u002Flocalhost:8765\u002Fplayer\u002Fpwa\u002F\n",[60,1279,1281],{"id":1280},"layouts-dont-show","Layouts don't show",[26,1283,1284,1291,1294,1299],{},[29,1285,1286,1287,1290],{},"Check browser console (Electron: ",[51,1288,1289],{},"Ctrl+Shift+I"," in dev mode) for download errors",[29,1292,1293],{},"Verify schedule has active layouts assigned to this display in CMS",[29,1295,560,1296,1298],{},[51,1297,563],{}," to check the timeline — if empty, the schedule hasn't been received yet",[29,1300,560,1301,1303],{},[51,1302,569],{}," to check if media is still downloading",[60,1305,1307],{"id":1306},"video-wont-play","Video won't play",[26,1309,1310,1334,1341],{},[29,1311,1312,1313],{},"Install VAAPI drivers for hardware video decode:\n",[26,1314,1315,1321,1327],{},[29,1316,1317,1318],{},"Intel: ",[51,1319,1320],{},"sudo dnf install libva-intel-media-driver",[29,1322,1323,1324],{},"AMD: ",[51,1325,1326],{},"sudo dnf install mesa-va-drivers",[29,1328,1329,1330,1333],{},"NVIDIA: ",[51,1331,1332],{},"sudo dnf install libva-nvidia-driver"," (from RPM Fusion)",[29,1335,1336,1337,1340],{},"Check ",[51,1338,1339],{},"vainfo"," to verify hardware decode is working",[29,1342,1343],{},"HLS streams require network access — they cannot be cached offline",[21,1345,1347],{"id":1346},"service-issues","Service Issues",[60,1349,1351],{"id":1350},"player-wont-start","Player won't start",[95,1353,1355],{"className":97,"code":1354,"language":99,"meta":100,"style":100},"# Check if port 8765 is in use\nss -tlnp | grep 8765\n\n# Try a different port\nxiboplayer-electron --port=8080\n\n# Check service logs\njournalctl --user -u xiboplayer-electron.service -n 50\n",[51,1356,1357,1362,1379,1383,1388,1395,1400,1406],{"__ignoreMap":100},[104,1358,1359],{"class":106,"line":107},[104,1360,1361],{"class":1219},"# Check if port 8765 is in use\n",[104,1363,1364,1367,1370,1373,1376],{"class":106,"line":192},[104,1365,1366],{"class":110},"ss",[104,1368,1369],{"class":114}," -tlnp",[104,1371,1372],{"class":925}," |",[104,1374,1375],{"class":110}," grep",[104,1377,1378],{"class":363}," 8765\n",[104,1380,1381],{"class":106,"line":198},[104,1382,1236],{"emptyLinePlaceholder":633},[104,1384,1385],{"class":106,"line":249},[104,1386,1387],{"class":1219},"# Try a different port\n",[104,1389,1390,1392],{"class":106,"line":1244},[104,1391,111],{"class":110},[104,1393,1394],{"class":114}," --port=8080\n",[104,1396,1398],{"class":106,"line":1397},6,[104,1399,1236],{"emptyLinePlaceholder":633},[104,1401,1403],{"class":106,"line":1402},7,[104,1404,1405],{"class":1219},"# Check service logs\n",[104,1407,1409,1411,1413,1415,1418,1421],{"class":106,"line":1408},8,[104,1410,1017],{"class":110},[104,1412,1020],{"class":114},[104,1414,1023],{"class":114},[104,1416,1417],{"class":128}," xiboplayer-electron.service",[104,1419,1420],{"class":114}," -n",[104,1422,1423],{"class":363}," 50\n",[60,1425,1427],{"id":1426},"service-wont-auto-start","Service won't auto-start",[95,1429,1431],{"className":97,"code":1430,"language":99,"meta":100,"style":100},"# Enable lingering (allows user service without login)\nloginctl enable-linger $USER\n\n# Re-enable the service\nsystemctl --user enable --now xiboplayer-electron.service\n\n# Check status\nsystemctl --user status xiboplayer-electron.service\n",[51,1432,1433,1438,1449,1453,1458,1473,1477,1482],{"__ignoreMap":100},[104,1434,1435],{"class":106,"line":107},[104,1436,1437],{"class":1219},"# Enable lingering (allows user service without login)\n",[104,1439,1440,1443,1446],{"class":106,"line":192},[104,1441,1442],{"class":110},"loginctl",[104,1444,1445],{"class":128}," enable-linger",[104,1447,1448],{"class":225}," $USER\n",[104,1450,1451],{"class":106,"line":198},[104,1452,1236],{"emptyLinePlaceholder":633},[104,1454,1455],{"class":106,"line":249},[104,1456,1457],{"class":1219},"# Re-enable the service\n",[104,1459,1460,1462,1464,1467,1470],{"class":106,"line":1244},[104,1461,1052],{"class":110},[104,1463,1020],{"class":114},[104,1465,1466],{"class":128}," enable",[104,1468,1469],{"class":114}," --now",[104,1471,1472],{"class":128}," xiboplayer-electron.service\n",[104,1474,1475],{"class":106,"line":1397},[104,1476,1236],{"emptyLinePlaceholder":633},[104,1478,1479],{"class":106,"line":1402},[104,1480,1481],{"class":1219},"# Check status\n",[104,1483,1484,1486,1488,1491],{"class":106,"line":1408},[104,1485,1052],{"class":110},[104,1487,1020],{"class":114},[104,1489,1490],{"class":128}," status",[104,1492,1472],{"class":128},[60,1494,1496],{"id":1495},"cant-exit-kiosk-mode","Can't exit kiosk mode",[26,1498,1499,1508,1519],{},[29,1500,1501,1503,1504,1507],{},[33,1502,874],{},": Press ",[51,1505,1506],{},"Ctrl+Shift+F12"," for the system tray menu → Exit Player",[29,1509,1510,1503,1512,1515,1516],{},[33,1511,266],{},[51,1513,1514],{},"Ctrl+R"," (keyd shortcut) to reconfigure, or SSH in and run ",[51,1517,1518],{},"pkill xiboplayer",[29,1520,1521,1524,1525,513,1528],{},[33,1522,1523],{},"From terminal",": ",[51,1526,1527],{},"pkill -f xiboplayer-electron",[51,1529,1530],{},"pkill -f chromium",[21,1532,1534],{"id":1533},"performance-issues","Performance Issues",[60,1536,1538],{"id":1537},"high-memory-usage","High memory usage",[26,1540,1541,1544,1547],{},[29,1542,1543],{},"Check if the content includes very large images or videos",[29,1545,1546],{},"The player caps downloads based on device RAM — low-memory devices (\u003C 4GB) use smaller chunks",[29,1548,1549],{},"If memory keeps growing, check for layouts with many concurrent video elements",[60,1551,1553],{"id":1552},"slow-media-downloads","Slow media downloads",[26,1555,1556,1561,1564,1567],{},[29,1557,560,1558,1560],{},[51,1559,569],{}," to see download progress and speed",[29,1562,1563],{},"Check network bandwidth to the CMS",[29,1565,1566],{},"The player uses 4 parallel download chunks — ensure the CMS\u002Freverse proxy allows concurrent connections",[29,1568,1569],{},"Check if a download window is configured in CMS display settings that might be blocking downloads",[21,1571,1573],{"id":1572},"kiosk-specific-issues","Kiosk-Specific Issues",[60,1575,1577],{"id":1576},"setup-wizard-doesnt-appear","Setup wizard doesn't appear",[17,1579,1580],{},"The wizard runs only on first boot when no CMS config exists. To re-trigger:",[95,1582,1584],{"className":97,"code":1583,"language":99,"meta":100,"style":100},"# Remove existing config and restart\nrm -f ~\u002F.config\u002Fxiboplayer\u002Fconfig.json\nsystemctl --user restart xibo-player.service\n",[51,1585,1586,1591,1602],{"__ignoreMap":100},[104,1587,1588],{"class":106,"line":107},[104,1589,1590],{"class":1219},"# Remove existing config and restart\n",[104,1592,1593,1596,1599],{"class":106,"line":192},[104,1594,1595],{"class":110},"rm",[104,1597,1598],{"class":114}," -f",[104,1600,1601],{"class":128}," ~\u002F.config\u002Fxiboplayer\u002Fconfig.json\n",[104,1603,1604,1606,1608,1610],{"class":106,"line":198},[104,1605,1052],{"class":110},[104,1607,1020],{"class":114},[104,1609,1057],{"class":128},[104,1611,1612],{"class":128}," xibo-player.service\n",[17,1614,1615,1616,1618],{},"Or press ",[51,1617,1514],{}," (keyd shortcut) to reconfigure.",[60,1620,1622],{"id":1621},"screen-blanks-goes-to-sleep","Screen blanks \u002F goes to sleep",[17,1624,1625],{},"The kiosk disables screen blanking via gsettings and logind, but if it still happens:",[95,1627,1629],{"className":97,"code":1628,"language":99,"meta":100,"style":100},"# Verify settings\ngsettings get org.gnome.desktop.session idle-delay\n# Should be 0\n\n# Check logind\nloginctl show-session $(loginctl | grep xibo | awk '{print $1}') -p IdleAction\n# Should be ignore\n",[51,1630,1631,1636,1650,1655,1659,1664,1705],{"__ignoreMap":100},[104,1632,1633],{"class":106,"line":107},[104,1634,1635],{"class":1219},"# Verify settings\n",[104,1637,1638,1641,1644,1647],{"class":106,"line":192},[104,1639,1640],{"class":110},"gsettings",[104,1642,1643],{"class":128}," get",[104,1645,1646],{"class":128}," org.gnome.desktop.session",[104,1648,1649],{"class":128}," idle-delay\n",[104,1651,1652],{"class":106,"line":198},[104,1653,1654],{"class":1219},"# Should be 0\n",[104,1656,1657],{"class":106,"line":249},[104,1658,1236],{"emptyLinePlaceholder":633},[104,1660,1661],{"class":106,"line":1244},[104,1662,1663],{"class":1219},"# Check logind\n",[104,1665,1666,1668,1671,1674,1676,1678,1680,1683,1685,1688,1691,1694,1697,1699,1702],{"class":106,"line":1397},[104,1667,1442],{"class":110},[104,1669,1670],{"class":128}," show-session",[104,1672,1673],{"class":221}," $(",[104,1675,1442],{"class":110},[104,1677,1372],{"class":925},[104,1679,1375],{"class":110},[104,1681,1682],{"class":128}," xibo",[104,1684,1372],{"class":925},[104,1686,1687],{"class":110}," awk",[104,1689,1690],{"class":124}," '",[104,1692,1693],{"class":128},"{print $1}",[104,1695,1696],{"class":124},"'",[104,1698,54],{"class":221},[104,1700,1701],{"class":114}," -p",[104,1703,1704],{"class":128}," IdleAction\n",[104,1706,1707],{"class":106,"line":1402},[104,1708,1709],{"class":1219},"# Should be ignore\n",[21,1711,1713],{"id":1712},"getting-help","Getting Help",[26,1715,1716,1727,1733],{},[29,1717,1718,1719,1726],{},"Check the ",[1720,1721,1725],"a",{"href":1722,"rel":1723},"https:\u002F\u002Fgithub.com\u002Fxibo-players",[1724],"nofollow","GitHub issues"," for your specific player",[29,1728,1729,1730],{},"Include logs when reporting issues: ",[51,1731,1732],{},"journalctl --user -u xiboplayer-electron.service --no-pager -n 100",[29,1734,1735,1736,1739],{},"For Electron, include the browser console output (enable with ",[51,1737,1738],{},"--dev"," flag)",[605,1741,1742],{},"html pre.shiki code .sutJx, html code.shiki .sutJx{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#6A737D;--shiki-dark-font-style:inherit}html pre.shiki code .sbgvK, html code.shiki .sbgvK{--shiki-light:#E2931D;--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .stzsN, html code.shiki .stzsN{--shiki-light:#91B859;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s_sjI, html code.shiki .s_sjI{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .smGrS, html code.shiki .smGrS{--shiki-light:#39ADB5;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .srdBf, html code.shiki .srdBf{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .su5hD, html code.shiki .su5hD{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sP7_E, html code.shiki .sP7_E{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sjJ54, html code.shiki .sjJ54{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF}",{"title":100,"searchDepth":198,"depth":198,"links":1744},[1745,1750,1755,1760,1764,1768],{"id":1134,"depth":192,"text":1135,"children":1746},[1747,1748,1749],{"id":1138,"depth":198,"text":1139},{"id":1160,"depth":198,"text":1161},{"id":1181,"depth":198,"text":1182},{"id":1199,"depth":192,"text":1200,"children":1751},[1752,1753,1754],{"id":1203,"depth":198,"text":1204},{"id":1280,"depth":198,"text":1281},{"id":1306,"depth":198,"text":1307},{"id":1346,"depth":192,"text":1347,"children":1756},[1757,1758,1759],{"id":1350,"depth":198,"text":1351},{"id":1426,"depth":198,"text":1427},{"id":1495,"depth":198,"text":1496},{"id":1533,"depth":192,"text":1534,"children":1761},[1762,1763],{"id":1537,"depth":198,"text":1538},{"id":1552,"depth":198,"text":1553},{"id":1572,"depth":192,"text":1573,"children":1765},[1766,1767],{"id":1576,"depth":198,"text":1577},{"id":1621,"depth":198,"text":1622},{"id":1712,"depth":192,"text":1713},"Common issues and solutions for XiboPlayer.",{},"\u002Fguide\u002Ftroubleshooting",{"title":1126,"description":1769},"guide\u002Ftroubleshooting","hMJu289cX4KO1YNH3wq2rvOW3iA5A-hUev93U0kXZZk",1777158201774]