-
Notifications
You must be signed in to change notification settings - Fork 258
How to build
- Install CMake
- Install Git for Windows
- Install Visual Studio
- Make a new folder (e.g. C:\PROJECTS)
- On the new folder, open the context menu and select
Git Bash Here(or use CMD terminal, PowerShell) - In the terminal window:
Clone the Kodi master branchgit clone --branch master https://github.com/xbmc/xbmc.git
Clone the ISA master branchgit clone --branch master https://github.com/xbmc/inputstream.adaptive.git
(Change the branch names with the preferred branch) - Create the build folder
mkdir inputstream.adaptive/build/ - Open the build folder
cd inputstream.adaptive/build/ - Configure the build:
CMAKE_BUILD_TYPE can be "Debug" or "Release"
MAKE_INSTALL_PREFIX is the target folder where place the compiled files
If needed modify the parameters in the command line and then run:
cmake -T host=x64 -DADDONS_TO_BUILD=inputstream.adaptive -DCMAKE_BUILD_TYPE=Debug -DADDON_SRC_PREFIX=../.. -DCMAKE_INSTALL_PREFIX=../../xbmc/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons
- Run the build:
cmake --build . --config Debug --target inputstream.adaptive
How to resolve the `expat` build `syntax error` errors [click to expand]
If you find many errors in the building of expat dependency, you are most likely using VisualStudio in a language other than English, or with more languages installed.
Unfortunately, the use of several languages leads to the localisation of CMake output, this cause the failing of check_c_compiler_flag in expat/ConfigureChecks.cmake, that is the main cause of broken build.
One way to solve the problem is uninstall all language packs of Visual Studio and install/keep only the English language pack. After this you can build with success.
These instructions are to compile inputstream.adaptive for Leia (kodi 18). By selecting the Matrix branch this should work also for kodi 19.
- install tools: sudo apt install autoconf bison build-essential curl default-jdk gawk git gperf libcurl4-openssl-dev zlib1g-dev cmake zip
- Make a new (e.g. inputstream.adaptive):
mkdir <folder> cd <folder>git clone https://github.com/raspberrypi/tools --depth=1git clone https://github.com/raspberrypi/firmware --depth=1git clone -b Leia https://github.com/xbmc/xbmc.gitgit clone -b Leia https://github.com/xbmc/inputstream.adaptivecd inputstream.adaptivemkdir build && cd buildcmake -DADDONS_TO_BUILD=inputstream.adaptive -DADDON_SRC_PREFIX=../.. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../xbmc/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addonsmakecd ../../xbmc/addons/zip -r /tmp/inputstream.adaptive.zip inputstream.adaptive
There is now a zip inputstream.adaptive.zip in the /tmp folder which can be installed as addon on a raspberry pi (at least on LibreElec). The pi3 and pi4 can use this one zip.
*** TODO update this guide ***
- Install Visual Studio Code
- Install the C++ extension for VS Code:
- launch VS Code Quick Open (Ctrl+P)
- paste
ext install ms-vscode.cpptools - press Enter
- Ensure GCC is installed
git clone -b Leia https://github.com/xbmc/xbmc.git
cd && git clone -b Leia https://github.com/peak3d/inputstream.adaptive
cd ~/inputstream.adaptive && mkdir build && cd build
cmake -DADDONS_TO_BUILD=inputstream.adaptive -DADDON_SRC_PREFIX=../.. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=~/.kodi/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons
make -j$(getconf _NPROCESSORS_ONLN)
User Documentation
Developer Documentation
- Integration
- Integration DRM
- Integration DRM (old)
- Stream selection types properties
- How to test a stream
- Test samples python addon
- How to provide custom manifest and license
- Supported containers and codecs
- Verified Media Path (VMP)
- HDCP resolution limit
- Custom DASH manifest tags
- Audio Subtitles track properties
- Dev. FAQ
- Widevine ARM64 support
- Add‐on WIP status
Development