AVS Device SDK Asset Manager

This feature lets you store and manage files from an external location and use them with the SDK. For example, you can store an audio file and play it when required.

To use asset manager, you need the following dependencies:

  • libarchive – install this using your package manager.
  • FileSystemUtils – Installed and configured automatically by the SDK.

For more details about the dependencies, see Dependencies.

To build the SDK with asset manager

  1. Install the libarchive package by following the instructions made available on libarchive.
  2. Enable asset manager with the ASSET_MANAGER CMake command.

    The following example shows a full CMake build command on macOS, with the Asset Manager included.

    cmake ~/sdk-folder/sdk-source/avs-device-sdk \
    -DASSET_MANAGER=ON \ 
    -DGSTREAMER_MEDIA_PLAYER=ON \
    -DPORTAUDIO=ON \
    -DPORTAUDIO_LIB_PATH=$(brew --prefix)/opt/portaudio/lib/libportaudio.dylib \
    -DPORTAUDIO_INCLUDE_DIR=$(brew --prefix)/opt/portaudio/include \
    -DCURL_LIBRARY=$(brew --prefix)/opt/curl/lib/libcurl.dylib \
    -DCURL_INCLUDE_DIR=$(brew --prefix)/opt/curl/include \
    -DCMAKE_BUILD_TYPE=DEBUG 
    

    If you get an error that states the libarchive library is missing, provide the libarchive header and library path with your ASSET_MANAGER CMake command.

    If you get an error that states FileSystemUtils is not supported on this platform, you must provide a custom implementation of the FileSystemUtils APIs.