How-to: Download, Compile & Run C++ Samples
Prerequisites
Have Conan (1 or 2) installed with the Vivoka customer repository configured. If you’re unsure, please follow our guide How-to: Install & Configure Conan.
Have CMake >= 3.16, please refer to the official documentation to install it.
List of available samples
Conan 2 has been supported only since November 2025. Because both Conan 1 and Conan 2 packages are hosted on the same Artifactory instance, Conan 1–only packages will always appear in search results.
Unfortunately, there is no reliable way to know in advance whether a package supports Conan 2, and the error reported by Conan is not always explicit.
The table below indicates the minimum version of each sample that includes Conan 2 support.
Package name | Description | Conan 2 min. ver. |
|---|---|---|
simple-application | Demonstrate the use of Speech Synthesis right after Voice Recognition. | 6.2.0 |
dynamic-grammar | Demonstrate the use of dynamic models (i.e. using slots inside grammars and filling them at runtime). | 6.2.0 |
chained-grammars | Demonstrate how to do a gap-less Voice Recognition between a Wake-up Word and another model. | 6.2.0 |
tts | Demonstrate how to use Speech Synthesis (Text-To-Speech). | 6.2.0 |
voice-biometrics | Demonstrate how to use Voice Biometrics. | 6.2.0 |
voice-commands-language-understanding | Demonstrate how to use the Natural Language Understanding technology alongside voice recognition. | 3.2.0 |
speech-enhancement | Demonstrate how to use the Speech Enhancement technology coupled with two speech recognition, one with the speech enhancement and the other without so they can be compared. | 2.2.0 |
Download a sample
Browse samples
Sample availability depends on your contract. To determine if you have access to it, do this:
conan search -r vivoka-customer <sample-name>
A list of package reference will appear if you have access, always select the latest version.
Check recipe options
First, you need to check the required options.
With Conan 2, locate the recipe that corresponds to your version, but note that the options are identical across all recipes of a given sample.
# Conan 1
conan inspect -r vivoka-customer -a options <sample-name>/<version>@vivoka/customer
# Conan 2
conan list <sample-name>/<version>@vivoka/customer:* --remote=vivoka-customer
You should find options similar to the following: asr_engine, tts_engine, and others. These options specify the underlying technology to use.
Installing the sample
Run one of the following commands:
# Conan 1
conan install -if <sample-name> <sample-name>/<version>@vivoka/customer [-o <option>=<value>]
# Conan 2
conan install --requires=<sample-name>/<version>@vivoka/customer [-o <option>=<value>] --deployer=direct_deploy --envs-generation=false
If the download fails with an error saying a package cannot be found, it means you don’t have access to the related engine(s). If you are sure your contract includes this technology SDK nonetheless, please open a support ticket and we will correct that as soon as possible.
For example, if you want to use the simple-application 6.2.0 through Conan 2 and Cerence as the underlying technology for Voice Recognition and Speech Synthesis :
conan install --requires=simple-application/6.2.0@vivoka/customer -o tts_engine=csdk-tts -o asr_engine=csdk-asr --deployer=direct_deploy --envs-generation=false
Compilation
Travel to the project, each sample features a README.md file that explains how to build it along with its options. But generally speaking, there are two big steps:
# Generate the project
conan install . [-if <buildFolder>]
# Build the program
conan build . [-if <buildFolder>]
If you want to build your project in Debug, when installing, you need to set the build_type only for your project to debug:
conan install -if build/Debug . -s<YOUR_CONAN_PROJECT_NAME>:build_type=Debug
Running the sample
There is one final step before running the sample: generating the VDK configuration from the project.vdk file.
Since this topic deserves its own explanation, we have created a dedicated page for it: How-to: Use a VDK sample
Once this is done you should be able to run the sample.
On Linux
./build/<executable>
On Windows
build\generators\conanrun.bat # setting up the env
build\<Release|Debug>\<executable>.exe
If you prefer not to use conanrun.bat and want to launch the executable directly, make sure the required DLLs are either available through your environment variables or located next to the executable.If you don’t want to use conanrun.bat and directly launch your executable, you need to have dlls accessible from one of the environments variables or next to the executable.
Troubleshooting
Conan can’t build the SDK but my profile is correct, why?
Dependencies whose name ends with @vivoka/customer cannot be built on your machine as we only give you the resulting libraries or executables. If Conan tries to build one of our packages, it means there is a configuration mismatch that needs to be corrected. Please check that:
Your profile is in Release mode (e.g.
conan profile get settings.build_type <profile_name>returnsRelease)You have run the command to enable the revision mode (see the Conan setup guide)
Conan can’t install asound library
You need to add the following content to the file ~/.conan/global.conf:
tools.system.package_manager:mode=install
tools.system.package_manager:sudo=True