Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ endif

export PATH := ${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/bin:${PROJECT_DIRECTORY}/build/intel64/${BUILD_TYPE}/bin:${HOME}/.local/bin:${HOME}/python3venv/bin:${PATH}
export GST_PLUGIN_PATH := ${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/gstreamer-bin/lib/gstreamer-1.0:${PROJECT_DIRECTORY}/build/intel64/${BUILD_TYPE}/lib:/usr/lib/x86_64-linux-gnu/gstreamer-1.0
export LIBRARY_PATH := ${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/lib:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/gstreamer-bin/lib:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/opencv-bin/lib:${PROJECT_DIRECTORY}/build/intel64/${BUILD_TYPE}/lib:/usr/lib
export PKG_CONFIG_PATH := ${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/lib/pkgconfig:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/gstreamer-bin/lib/pkgconfig:${PROJECT_DIRECTORY}/build/intel64/${BUILD_TYPE}/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig
export LIBRARY_PATH := ${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/lib:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/gstreamer-bin/lib:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/opencv-bin/lib:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/rdkafka-bin/lib:${PROJECT_DIRECTORY}/build/intel64/${BUILD_TYPE}/lib:/usr/lib
export PKG_CONFIG_PATH := ${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/lib/pkgconfig:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/gstreamer-bin/lib/pkgconfig:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/rdkafka-bin/lib/pkgconfig:${PROJECT_DIRECTORY}/build/intel64/${BUILD_TYPE}/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig
export LIBVA_DRIVER_NAME := iHD
export LIBVA_DRIVERS_PATH := /usr/lib/x86_64-linux-gnu/dri
export GST_VA_ALL_DRIVERS := 1
Expand All @@ -48,9 +48,10 @@ dependencies:
build: dependencies ## Compile Deep Learning Streamer
cmake \
-B build \
-DCMAKE_PREFIX_PATH:PATH="${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install;${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/opencv-bin" \
-DCMAKE_INCLUDE_PATH:PATH=${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/include \
-DCMAKE_PREFIX_PATH:PATH="${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install;${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/opencv-bin;${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/rdkafka-bin" \
-DCMAKE_INCLUDE_PATH:PATH=${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/include:${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/rdkafka-bin/include \
-DCMAKE_LIBRARY_PATH:PATH=${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/install/lib \
-DCMAKE_CXX_FLAGS="-I${PROJECT_DIRECTORY}/${DEPENDENCY_DIR}/rdkafka-bin/include" \
-DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
-DENABLE_PAHO_INSTALLATION=ON \
-DENABLE_RDKAFKA_INSTALLATION=ON \
Expand Down
1 change: 1 addition & 0 deletions dependencies/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,4 @@ project(dependencies C CXX)
include("ffmpeg.cmake")
include("opencv.cmake")
include("gstreamer.cmake")
include("rdkafka.cmake")
28 changes: 28 additions & 0 deletions dependencies/rdkafka.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# ==============================================================================
# Copyright (C) 2025 Intel Corporation
#
# SPDX-License-Identifier: MIT
# ==============================================================================

include(ExternalProject)

# When changing version, you will also need to change the download hash
set(DESIRED_VERSION 2.12.1)

ExternalProject_Add(
rdkafka
PREFIX ${CMAKE_BINARY_DIR}/rdkafka
URL https://github.com/edenhill/librdkafka/archive/v${DESIRED_VERSION}.tar.gz
URL_MD5 86ed3acd2f9d9046250dea654cee59a8
BUILD_IN_SOURCE 1
BUILD_COMMAND make
INSTALL_COMMAND make install
TEST_COMMAND ""
CONFIGURE_COMMAND ./configure
--prefix=${CMAKE_BINARY_DIR}/rdkafka-bin
)

if (INSTALL_DLSTREAMER)
execute_process(COMMAND mkdir -p ${DLSTREAMER_INSTALL_PREFIX}/rdkafka
COMMAND cp -r ${CMAKE_BINARY_DIR}/rdkafka-bin/. ${DLSTREAMER_INSTALL_PREFIX}/rdkafka)
endif()
4 changes: 2 additions & 2 deletions docker/fedora41/fedora41.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -398,8 +398,8 @@ ENV LD_LIBRARY_PATH=${GSTREAMER_DIR}/lib:${LIBDIR}:/usr/lib:/usr/local/lib:/usr/
ENV LIB_PATH=$LIBDIR
ENV GST_PLUGIN_PATH=${LIBDIR}:${GSTREAMER_DIR}/lib/gstreamer-1.0:/usr/lib64/gstreamer-1.0:${GST_PLUGIN_PATH}
ENV LC_NUMERIC=C
ENV C_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
ENV CPLUS_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
ENV C_INCLUDE_PATH=/usr/local/include:${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
ENV CPLUS_INCLUDE_PATH=/usr/local/include:${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
ENV GST_PLUGIN_SCANNER=${GSTREAMER_DIR}/bin/gstreamer-1.0/gst-plugin-scanner
ENV GI_TYPELIB_PATH=${GSTREAMER_DIR}/lib/girepository-1.0
ENV PYTHONPATH=${GSTREAMER_DIR}/lib/python3/dist-packages:${DLSTREAMER_DIR}/python:${PYTHONPATH}
Expand Down
2 changes: 1 addition & 1 deletion docker/ubuntu/debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ Replaces: intel-dlstreamer
Multi-Arch: same
Homepage: https://github.com/open-edge-platform/edge-ai-libraries/tree/main/libraries/dl-streamer
Description: Intel(R) Deep Learning Streamer
Depends: ${misc:Depends}, ${shlibs:Depends}, libglib2.0-0t64, libjpeg-turbo8, libdrm2, libwayland-bin, libwayland-client0, libx11-6, libpng16-16t64, libva-drm2, libcurl4t64, libde265-0, libxext6, libva-x11-2, libgl1, libglx-mesa0, libva-wayland2, openexr, libgudev-1.0-0, vainfo, libpython3.12t64, python3, python3-gi, python3-gi-cairo, libcairo2, libvpx9, libopus0, libsrtp2-1, libxv1, libtbb12, libpaho-mqtt1.3, librdkafka1, ffmpeg, libgirepository-1.0-1, libsoup-3.0-0, openvino-2025.3.0
Depends: ${misc:Depends}, ${shlibs:Depends}, libglib2.0-0t64, libjpeg-turbo8, libdrm2, libwayland-bin, libwayland-client0, libx11-6, libpng16-16t64, libva-drm2, libcurl4t64, libde265-0, libxext6, libva-x11-2, libgl1, libglx-mesa0, libva-wayland2, openexr, libgudev-1.0-0, vainfo, libpython3.12t64, python3, python3-gi, python3-gi-cairo, libcairo2, libvpx9, libopus0, libsrtp2-1, libxv1, libtbb12, libpaho-mqtt1.3, ffmpeg, libgirepository-1.0-1, libsoup-3.0-0, openvino-2025.3.0
1 change: 1 addition & 0 deletions docker/ubuntu/debian/intel-dlstreamer.install
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
opt/intel/dlstreamer/ /opt/intel/
opt/opencv/ /opt/
opt/rdkafka/ /opt/
usr/lib/ /usr
opt/librealsense/ /opt/
5 changes: 0 additions & 5 deletions docker/ubuntu/debian/intel-dlstreamer.install-ubuntu22

This file was deleted.

15 changes: 6 additions & 9 deletions docker/ubuntu/ubuntu22.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -307,8 +307,8 @@ FROM builder AS kafka-builder
SHELL ["/bin/bash", "-xo", "pipefail", "-c"]

# Build librdkafka
RUN curl -sSL https://github.com/edenhill/librdkafka/archive/v2.3.0.tar.gz | tar -xz
WORKDIR /librdkafka-2.3.0
RUN curl -sSL https://github.com/edenhill/librdkafka/archive/v2.12.1.tar.gz | tar -xz
WORKDIR /librdkafka-2.12.1
RUN ./configure &&\
make && make install

Expand Down Expand Up @@ -398,8 +398,8 @@ ENV LD_LIBRARY_PATH=${GSTREAMER_DIR}/lib:${LIBDIR}:/usr/lib:/usr/local/lib:${LD_
ENV LIB_PATH=$LIBDIR
ENV GST_PLUGIN_PATH=${LIBDIR}:${GSTREAMER_DIR}/lib/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:${GST_PLUGIN_PATH}
ENV LC_NUMERIC=C
ENV C_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
ENV CPLUS_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
ENV C_INCLUDE_PATH=/usr/local/include:${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
ENV CPLUS_INCLUDE_PATH=/usr/local/include:${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
ENV GST_PLUGIN_SCANNER=${GSTREAMER_DIR}/bin/gstreamer-1.0/gst-plugin-scanner
ENV GI_TYPELIB_PATH=${GSTREAMER_DIR}/lib/girepository-1.0
ENV PYTHONPATH=${GSTREAMER_DIR}/lib/python3/dist-packages:${DLSTREAMER_DIR}/python:${PYTHONPATH}
Expand Down Expand Up @@ -452,8 +452,7 @@ RUN \
cp -rT "${GSTREAMER_DIR}" /deb-pkg/opt/intel/dlstreamer/gstreamer && \
cp -a /usr/local/lib/libopencv*.so* /deb-pkg/opt/opencv/ && \
cp -r /usr/local/include/opencv4/* /deb-pkg/opt/opencv/include && \
cp /usr/local/lib/librdkafka++.so /deb-pkg/opt/rdkafka/librdkafka++.so.1 && \
cp /usr/local/lib/librdkafka.so /deb-pkg/opt/rdkafka/librdkafka.so.1 && \
cp -a /usr/local/lib/librdkafka*.so* /deb-pkg/opt/rdkafka/ && \
cp -a /usr/local/lib/librealsense* /deb-pkg/opt/librealsense/ && \
rm -rf /deb-pkg/opt/intel/dlstreamer/archived && \
rm -rf /deb-pkg/opt/intel/dlstreamer/docker && \
Expand All @@ -475,9 +474,7 @@ WORKDIR /deb-pkg

RUN \
rm ./debian/control &&\
rm ./debian/intel-dlstreamer.install && \
mv ./debian/control-ubuntu22 ./debian/control && \
mv ./debian/intel-dlstreamer.install-ubuntu22 ./debian/intel-dlstreamer.install
mv ./debian/control-ubuntu22 ./debian/control

RUN \
debuild -z1 -us -uc && \
Expand Down
50 changes: 34 additions & 16 deletions docker/ubuntu/ubuntu24.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,17 @@
# |
# |
# V
# builder --------------------------
# / \ |
# / \ |
# V | V
# gstreamer-builder opencv-builder realsense-builder
# | | |
# | | |
# (copy libs) \ | (copy libs) |
# \ | |
# V V (copy libs) |
# dlstreamer-dev <-------------------|
# builder -----------------------------------------------
# / \ | |
# / \ | |
# V V | |
# gstreamer-builder opencv-builder V V
# | | kafka-builder realsense-builder
# | | | |
# (copy libs) \ / (copy libs) | |
# \ / | |
# V V (copy libs) | |
# dlstreamer-dev <-------------------|--------------------|
# |
# |
# V
Expand Down Expand Up @@ -96,7 +96,7 @@ RUN \
libcairo2-dev=\* libxt-dev=\* libgirepository1.0-dev=\* libgles2-mesa-dev=\* wayland-protocols=\* \
libssh2-1-dev=\* cmake=\* git=\* valgrind=\* numactl=\* libvpx-dev=\* libopus-dev=\* libsrtp2-dev=\* libxv-dev=\* \
linux-libc-dev=\* libpmix2t64=\* libhwloc15=\* libhwloc-plugins=\* libxcb1-dev=\* libx11-xcb-dev=\* \
ffmpeg=\* librdkafka-dev=\* libpaho-mqtt-dev=\* libpostproc-dev=\* libavfilter-dev=\* libavdevice-dev=\* \
ffmpeg=\* libpaho-mqtt-dev=\* libpostproc-dev=\* libavfilter-dev=\* libavdevice-dev=\* \
libswscale-dev=\* libswresample-dev=\* libavutil-dev=\* libavformat-dev=\* libavcodec-dev=\* libxml2-dev=\* libsoup-3.0-0=\* && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
Expand Down Expand Up @@ -305,6 +305,20 @@ RUN \
rm -rf ./* && \
strip -g "${GSTREAMER_DIR}"/lib/gstreamer-1.0/libgstrs*.so

# ==============================================================================
FROM builder AS kafka-builder

SHELL ["/bin/bash", "-xo", "pipefail", "-c"]

# Build librdkafka
RUN curl -sSL https://github.com/edenhill/librdkafka/archive/v2.12.1.tar.gz | tar -xz
WORKDIR /librdkafka-2.12.1
RUN ./configure &&\
make && make install

WORKDIR /copy_libs
RUN cp -a /usr/local/lib/librdkafka* ./

# ==============================================================================

FROM builder AS realsense-builder
Expand Down Expand Up @@ -342,10 +356,12 @@ FROM builder AS dlstreamer-dev

SHELL ["/bin/bash", "-xo", "pipefail", "-c"]

COPY --from=gstreamer-builder ${GSTREAMER_DIR} ${GSTREAMER_DIR}
COPY --from=opencv-builder /usr/local/include/opencv4 /usr/local/include/opencv4
COPY --from=opencv-builder /copy_libs/ /usr/local/lib/
COPY --from=opencv-builder /usr/local/lib/cmake/opencv4 /usr/local/lib/cmake/opencv4
COPY --from=gstreamer-builder ${GSTREAMER_DIR} ${GSTREAMER_DIR}
COPY --from=kafka-builder /usr/local/include/librdkafka /usr/local/include/librdkafka
COPY --from=kafka-builder /copy_libs/ /usr/local/lib/
COPY --from=realsense-builder /copy_libs/ /usr/local/lib/
COPY --from=realsense-builder /usr/local/include/librealsense2 /usr/local/include/librealsense2

Expand Down Expand Up @@ -389,8 +405,8 @@ ENV LD_LIBRARY_PATH=${GSTREAMER_DIR}/lib:${LIBDIR}:/usr/lib:/usr/local/lib:${LD_
ENV LIB_PATH=$LIBDIR
ENV GST_PLUGIN_PATH=${LIBDIR}:${GSTREAMER_DIR}/lib/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:${GST_PLUGIN_PATH}
ENV LC_NUMERIC=C
ENV C_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
ENV CPLUS_INCLUDE_PATH=${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
ENV C_INCLUDE_PATH=/usr/local/include:${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${C_INCLUDE_PATH}
ENV CPLUS_INCLUDE_PATH=/usr/local/include:${DLSTREAMER_DIR}/include:${DLSTREAMER_DIR}/include/dlstreamer/gst/metadata:${CPLUS_INCLUDE_PATH}
ENV GST_PLUGIN_SCANNER=${GSTREAMER_DIR}/bin/gstreamer-1.0/gst-plugin-scanner
ENV GI_TYPELIB_PATH=${GSTREAMER_DIR}/lib/girepository-1.0
ENV PYTHONPATH=${GSTREAMER_DIR}/lib/python3/dist-packages:${DLSTREAMER_DIR}/python:${PYTHONPATH}
Expand Down Expand Up @@ -435,6 +451,7 @@ RUN \
mkdir -p /deb-pkg/usr/lib/ && \
mkdir -p /deb-pkg/opt/intel/ && \
mkdir -p /deb-pkg/opt/opencv/include && \
mkdir -p /deb-pkg/opt/rdkafka && \
mkdir -p /deb-pkg/opt/librealsense/ && \
find /opt/intel/openvino_genai -regex '.*\/lib.*\(genai\|token\).*$' -exec cp -a {} /deb-pkg/usr/lib/ \; && \
cp -r "${DLSTREAMER_DIR}/build/intel64/${BUILD_ARG}" /deb-pkg/opt/intel/dlstreamer && \
Expand All @@ -446,6 +463,7 @@ RUN \
cp -rT "${GSTREAMER_DIR}" /deb-pkg/opt/intel/dlstreamer/gstreamer && \
cp -a /usr/local/lib/libopencv*.so* /deb-pkg/opt/opencv/ && \
cp -r /usr/local/include/opencv4/* /deb-pkg/opt/opencv/include && \
cp -a /usr/local/lib/librdkafka*.so* /deb-pkg/opt/rdkafka/ && \
cp -a /usr/local/lib/librealsense* /deb-pkg/opt/librealsense/ && \
rm -rf /deb-pkg/opt/intel/dlstreamer/archived && \
rm -rf /deb-pkg/opt/intel/dlstreamer/docker && \
Expand Down Expand Up @@ -537,7 +555,7 @@ RUN \
# DL Streamer environment variables
ENV LIBVA_DRIVER_NAME=iHD
ENV GST_PLUGIN_PATH=/opt/intel/dlstreamer/lib:/opt/intel/dlstreamer/gstreamer/lib/gstreamer-1.0:/opt/intel/dlstreamer/gstreamer/lib/
ENV LD_LIBRARY_PATH=/opt/intel/dlstreamer/gstreamer/lib:/opt/intel/dlstreamer/lib:/opt/intel/dlstreamer/lib/gstreamer-1.0:/opt/opencv:/opt/librealsense:/usr/lib:/usr/local/lib/gstreamer-1.0:/usr/local/lib
ENV LD_LIBRARY_PATH=/opt/intel/dlstreamer/gstreamer/lib:/opt/intel/dlstreamer/lib:/opt/intel/dlstreamer/lib/gstreamer-1.0:/opt/opencv:/opt/rdkafka:/opt/librealsense:/usr/local/lib/gstreamer-1.0:/usr/local/lib
ENV LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri
ENV GST_VA_ALL_DRIVERS=1
ENV MODEL_PROC_PATH=/opt/intel/dlstreamer/samples/gstreamer/model_proc
Expand Down
Loading
Loading