Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallOutdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchKodi deep links are not one universal URL format. Use the ActivateWindow built-in when you want Kodi to display a library section or listing, and use the JSON-RPC Player.Open method when you want playback to begin. Opening a particular movie or episode from another app usually requires discovering the item through Kodi’s library API and then passing a supported file or database reference to Player.Open.
The first design question is therefore not “What URL should I construct?” but “Should Kodi show a view, or should it play something?” That distinction prevents most broken links, especially when a link is expected to work across different Kodi versions, skins, operating systems, and library layouts.
As an Amazon Associate I earn from qualifying purchases.
Choose between navigation and playback first
The phrase “deep link” covers two different actions in Kodi. A navigation action opens Kodi at a section, category, or listing. A playback action starts one file or library item immediately. They use different interfaces and have different limitations.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →| Goal | Use | Typical environment | What it does |
|---|---|---|---|
| Show a Kodi library section or listing | ActivateWindow() with a library path |
Kodi menus, skin buttons, keymaps | Changes the visible Kodi window; it does not inherently start playback. |
| Start one movie, episode, or file | JSON-RPC Player.Open |
An external app, script, or network client | Asks Kodi to play a supported file or database item. |
| Find the correct library entry first | VideoLibrary.GetMovies, VideoLibrary.GetTVShows, and related methods |
API client or integration | Returns metadata and references that can be used to select the intended item. |
Kodi’s official examples document videodb:// paths for navigating to library areas. They do not establish a single, installation-independent URL that opens every individual movie or episode detail page. For a specific item, treat the library path and the playback request as separate parts of the workflow.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
What “deep link” means in each context
Inside Kodi, a deep link is usually an action attached to a skin control, menu item, or keymap. It can take the user directly to a documented library view without requiring a network service. Outside Kodi, a deep link is better understood as an API operation: the external client resolves a title to a current Kodi reference and asks the player to open it. A copied string can be useful as application data, but it is not automatically a portable web URL.
Open a library section with ActivateWindow
ActivateWindow is Kodi’s built-in navigation command. It can be used in a skin action, a menu button, or a keymap to open a window and jump to a named subsection or path.
Basic syntax
ActivateWindow(Videos,videodb://movies/titles/)
This official example opens the video window at the movie-titles listing. It is a navigation command: Kodi displays the requested area, and the user can choose an item from there.
Documented library paths
The following paths are documented for navigating to common video-library areas:
library://video/videodb://movies/videodb://movies/titles/videodb://tvshows/videodb://recentlyaddedepisodes/
For example, a button that should open the TV-show library can use:
ActivateWindow(Videos,videodb://tvshows/)
And a recently added episodes view can use:
ActivateWindow(Videos,videodb://recentlyaddedepisodes/)
What this approach cannot guarantee
Do not assume that constructing an arbitrary videodb:// string for a movie or episode will work as a universal external link. Kodi versions, skins, library states, and path handling can differ. The documented examples establish navigation to sections and categories; they are not a promise that every hand-built item-detail path will resolve on every installation.
A navigation path also does not carry the same meaning as a file path. It tells Kodi which view to display, while the library supplies the rows and metadata shown in that view. If a title is missing from the library, the view can open successfully but still contain no matching item.
Start playback with Player.Open
For direct playback, use Kodi’s JSON-RPC API. The Player.Open method is defined to start playback of a single file or an item from Kodi’s database. It can also open playlist or slideshow targets, but a deep link to one movie or episode normally uses the single-item form.
Rank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
Illustrative file-based request
The following request shows the shape of a JSON-RPC call using a media-file path:
{"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"file":"/path/to/media/file.mkv"}},"id":1}
This is an illustrative request, not a validated recipe for a particular operating system, Kodi release, network share, or library. Replace the path with a file reference that Kodi can access. The API also accepts a database item, but the exact representation should come from the JSON-RPC schema exposed by the Kodi version you are controlling rather than from an assumed universal deep-link string.
Sending the request over HTTP
When HTTP control is enabled, an external client sends the JSON body as a POST request to Kodi’s JSON-RPC endpoint. The endpoint has the form http://<your-ip>:<your-port>/jsonrpc. A generic request looks like this:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
POST /jsonrpc HTTP/1.1
Host: <your-ip>:<your-port>
Content-Type: application/json
{"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"file":"/path/to/media/file.mkv"}},"id":1}
Use the address, port, and authentication details configured on the Kodi host. Do not copy a port from another installation and assume it is listening locally. A successful HTTP exchange only shows that Kodi accepted the request; verify player state if the user needs confirmation that playback actually began.
Permission requirement
Player.Open requires the JSON-RPC ControlPlayback permission. A client that can read library metadata but lacks playback control will not be able to start the item. Configure the client’s access accordingly and handle a permission error instead of treating it as a missing movie.
Enable Kodi for external JSON-RPC control
An external app cannot call Player.Open until Kodi is listening on a transport. Kodi’s JSON-RPC interface supports HTTP, TCP, WebSocket, and Kodi’s Python transport. The exact settings and endpoint depend on the installation and release.
HTTP access
- Open Kodi’s settings and locate the services or remote-control section that configures web-server access.
- Enable HTTP control and note the configured port, address, and any authentication settings shown by your installation.
- Send JSON-RPC requests as HTTP POST requests to
http://<your-ip>:<your-port>/jsonrpc.
The address is a template: use the Kodi host’s reachable IP address and the port configured on that host. Do not assume that a port used by one installation is available on another.
TCP and WebSocket access
TCP and WebSocket control use Kodi’s configured TCP port. Kodi’s documentation identifies 9090 as the default, but a user or package can change it. Enable the corresponding access setting, record the actual port, and use that value in the client. A connection failure can therefore mean that the transport is disabled or that the client is using the wrong configured port, not that the JSON-RPC method is invalid.
Rank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
Protect the endpoint
A JSON-RPC endpoint that can control playback should not be exposed to an untrusted network. Restrict access with Kodi’s available authentication and network controls, keep the service on a trusted LAN where practical, and avoid forwarding the control port directly to the public internet. The client needs only the permissions required for its job: read permissions for library discovery and ControlPlayback for starting media.
Requirements, equipment, and practical cost
This workflow does not require a dedicated Kodi device, special remote control, printed guide, or separate media appliance. It uses the Kodi installation that already hosts the library, a client that can reach Kodi over an enabled transport, and the permissions needed for the requested operation. The practical work is configuration: enabling a service, finding the reachable host and port, and adapting the request to the installed API schema.
There is no single hardware or subscription cost implied by a deep link. Network access, authentication setup, firewall changes, and any existing storage or media-source requirements belong to the local installation rather than to the link format. If the client and Kodi run on different machines, the media reference still has to be valid from Kodi’s point of view; the controlling device does not need to be able to open the file itself.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Find a movie or episode before opening it
A reliable deep-linking client normally performs discovery instead of guessing a database identifier or path. Kodi’s video-library methods can return the entries and metadata needed to identify the intended title.
Query movies
Call VideoLibrary.GetMovies and request the fields your interface needs, such as titles and file locations. Present the returned entries to the user or match them against a stable piece of metadata supplied by your own app.
{"jsonrpc":"2.0","method":"VideoLibrary.GetMovies","params":{},"id":1}
The exact optional filters and returned fields are defined by the API version running on the target Kodi host. Read the installed schema if you need sorting, filtering, artwork, identifiers, or additional properties.
Query TV shows and episodes
Use VideoLibrary.GetTVShows to discover TV-show entries. To reach an episode, continue with the video-library methods supported by the installed schema and select the season or episode using the metadata returned by Kodi. Avoid assuming that a show title alone identifies one episode: different seasons can contain the same episode title, and libraries can contain duplicate or alternate files.
Recommended Free Tools
For episode selection, retain enough context to distinguish a result: show title, season number, episode number, episode title, and file information where available. If the user chooses among duplicates, preserve the selected entry rather than rerunning a loose title search immediately before playback. A refresh or library change can otherwise make a title-based match point at a different file.
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
Choose a target reference
After discovery, select the reference that Player.Open accepts on that Kodi release. A file reference is straightforward when the client has received a usable Kodi path. A database-backed reference can preserve library semantics, but its accepted shape must be confirmed against the target API schema. Do not turn an identifier returned by one method into a URL unless Kodi’s documentation for that release explicitly defines that format.
A practical external-client workflow
The following sequence keeps discovery, selection, playback, and verification separate. That makes failures easier to diagnose.
- Define the user action. Decide whether the client should show a Kodi listing or begin playback. Use
ActivateWindowfor the former and JSON-RPC for the latter. - Reach the configured transport. Test the Kodi HTTP, TCP, or WebSocket endpoint from the client’s network location. Use the actual host address and configured port.
- Check permissions. Confirm that the API account can read the library and, for playback, has
ControlPlayback. - Discover the item. Query the relevant video-library method, such as
VideoLibrary.GetMoviesorVideoLibrary.GetTVShows, and retrieve enough metadata to distinguish the intended entry. - Select the reference. Use a file path or database-item representation supported by the installed Kodi schema. Do not hard-code a reference format copied from a different release without checking compatibility.
- Call
Player.Open. Send the JSON-RPC request with the selected item. - Verify state when necessary. Use
Player.GetActivePlayersto see whether a player is active. When a player is running,Player.GetItemcan retrieve information about the item currently playing. - Report the result accurately. Distinguish a transport error, permission failure, unknown item, and playback rejection. A successful HTTP response alone is not a guarantee that the intended media began playing.
Verify playback and diagnose failures
Kodi is reachable, but nothing plays
- Confirm that the request uses method name
Player.Openand places the target underparams.item. - Check that the file path is valid from Kodi’s perspective. A path visible to the controlling computer may not exist, or may use a different protocol, on the Kodi host.
- For a database item, compare the reference with the schema returned by the target Kodi version instead of assuming that a numeric identifier or
videodb://path is sufficient. - Check the Kodi log and the player state after the request for a rejected or unavailable source.
The client receives an authorization error
Library read access and playback control are separate concerns. Ensure the account or connection profile has the read permission needed for discovery and ControlPlayback for Player.Open. Grant no broader access than the integration requires.
The endpoint cannot be reached
- Verify that the selected transport is enabled in Kodi.
- Use the configured IP address and port, not a copied default.
- Check local firewall rules and whether the client and Kodi host are on a network that can route to each other.
- For HTTP, use the documented
/jsonrpcpath and send a POST request. - For TCP or WebSocket, confirm that the client is using the configured TCP port; 9090 is only the documented default.
The wrong movie or episode opens
Do not match on title alone. Include year, season, episode number, and file or show metadata where available. If duplicates or alternate editions exist, display the returned choices and let the user select one, then pass the selected entry’s supported reference to Player.Open.
Playback controls report no active player
Commands that operate on a player require a player to be in use. Call Player.GetActivePlayers first, and call Player.GetItem only after Kodi reports an active player. If the list is empty, the open request may have failed, the source may be unavailable, or playback may already have ended.
Inside-Kodi buttons versus external app links
| Integration type | Recommended technique | Advantages | Limitations |
|---|---|---|---|
| Skin button or menu entry | ActivateWindow(Videos,...) |
Simple and local; no network service is required. | Best suited to documented sections and listings, not arbitrary item playback. |
| Keyboard or remote shortcut | An ActivateWindow action in a keymap |
Works within Kodi’s UI and follows the same navigation model. | It changes the view rather than providing a general external URL. |
| Phone, desktop, or home-automation client | JSON-RPC discovery followed by Player.Open |
Can select a specific file or database item and start playback remotely. | Requires a configured transport, network reachability, permissions, and version-aware item handling. |
| Bookmark or copied web URL | Not a guaranteed Kodi deep-link mechanism | Easy to share as text. | Kodi’s documented navigation paths and API calls do not define one universal URL for every individual library item. |
Version and installation considerations
JSON-RPC schemas, permissions, settings labels, and accepted item representations can vary by Kodi release and local configuration. A production integration should inspect the schema exposed by the target installation and test the exact reference it intends to send. The same library may also expose different paths depending on whether media is local, on a network share, or supplied through another Kodi-supported file protocol.
Keep the integration’s assumptions explicit: record the Kodi version, transport, configured endpoint, authentication requirements, and the item-reference form returned by discovery. If a user upgrades Kodi or moves the library, rerun discovery rather than preserving an old hand-built link.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsDo not promise that a link copied from one Kodi machine will open the same title on another. The second installation may have different database identifiers, paths, permissions, skins, or even a different library population. Resolve the item against the destination Kodi instance whenever portability matters.
Best Value
Recommended design pattern
For a dependable “Play this Kodi item” feature, store your own application’s selection information, not a guessed Kodi URL. At runtime, connect to the user’s configured Kodi host, query the library, resolve the selection to a current file or database reference, call Player.Open, and verify the resulting player state. For a “Show me the movie library” feature, use a documented ActivateWindow path and let Kodi handle the listing.
This separation avoids the most common design error: treating a navigation path as if it were a playback command. Kodi provides both capabilities, but they are exposed through different mechanisms and should be implemented accordingly.
Frequently Asked Questions
Can I make one videodb:// URL that opens any movie?
No universal item-page URL is established by Kodi’s documented examples. The documented videodb:// paths are useful for sections and listings. For a particular movie, discover the entry and use a supported Player.Open reference for playback.
What should I use to open a movie from a phone or desktop app?
Enable an external JSON-RPC transport, query the library to identify the movie, then call Player.Open with the supported file or database-item form. The client needs network reachability and ControlPlayback permission.
Can ActivateWindow start the movie automatically?
ActivateWindow is a navigation command. It opens a Kodi window or listing; it does not inherently start the selected movie. Use Player.Open when immediate playback is the requirement.
How do I target a specific TV episode?
Use the video-library methods supported by the target Kodi version to identify the show, season, episode number, title, and file. Then pass the selected file or supported database reference to Player.Open. Do not match on show or episode title alone.
Is port 9090 required for JSON-RPC?
No. Kodi documents 9090 as the default TCP port, but the configured port can differ. HTTP uses the configured web-server port and the /jsonrpc path; WebSocket and TCP use the configured TCP settings.
Free tools Windows power users keep installed
One-click scans. No signup required.
Why can I query the library but not play anything?
Reading library metadata and controlling playback are separate permissions. Player.Open requires ControlPlayback. Check the connection profile’s permissions before diagnosing the item reference.
Why does a file path work on my computer but fail in Kodi?
Player.Open resolves the path on the Kodi host. A path visible to the controlling computer may not exist there or may require a different network-share or file-protocol form.
Do I need special hardware or a paid service?
No dedicated Kodi device, remote, storage product, or printed guide is required for this API workflow. You need a reachable Kodi installation, an enabled transport, suitable permissions, and media that Kodi can access.
The Bottom Line
Use ActivateWindow with documented library paths when the goal is to show a Kodi section. Use JSON-RPC Player.Open when the goal is to play one movie, episode, or file. For reliable external links, discover the item through Kodi’s library API, send a reference supported by the target version, protect the configured endpoint, and verify playback instead of relying on a guessed videodb:// URL.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

