Skip to content

Commit c22b45b

Browse files
committed
Release v2025.0.0
1 parent dd5f920 commit c22b45b

File tree

25 files changed

+758
-214
lines changed

25 files changed

+758
-214
lines changed

CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# ==============================================================================
2-
# Copyright (C) 2018-2024 Intel Corporation
2+
# Copyright (C) 2018-2025 Intel Corporation
33
#
44
# SPDX-License-Identifier: MIT
55
# ==============================================================================
@@ -19,7 +19,7 @@ if (NOT CMAKE_BUILD_TYPE)
1919
endif()
2020

2121
# Define version
22-
set(VERSION_MAJOR 3)
22+
set(VERSION_MAJOR 2025)
2323
set(VERSION_MINOR 0)
2424
set(VERSION_PATCH 0)
2525

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
/*******************************************************************************
2+
* Copyright (C) 2025 Intel Corporation
3+
*
4+
* SPDX-License-Identifier: MIT
5+
******************************************************************************/
6+
7+
#ifndef __GST_ANALYTICS_OD_EXT_MTD__
8+
#define __GST_ANALYTICS_OD_EXT_MTD__
9+
10+
#include <gst/analytics/analytics-meta-prelude.h>
11+
#include <gst/analytics/gstanalyticsmeta.h>
12+
#include <gst/gst.h>
13+
14+
const int NEW_METADATA = 0;
15+
16+
G_BEGIN_DECLS
17+
18+
typedef struct _GstAnalyticsMtd GstAnalyticsODExtMtd;
19+
20+
GST_ANALYTICS_META_API
21+
GstAnalyticsMtdType gst_analytics_od_ext_mtd_get_mtd_type(void);
22+
23+
GST_ANALYTICS_META_API
24+
gboolean gst_analytics_od_ext_mtd_get_rotation(const GstAnalyticsODExtMtd *handle, gdouble *rotation);
25+
26+
GST_ANALYTICS_META_API
27+
gboolean gst_analytics_od_ext_mtd_get_class_id(const GstAnalyticsODExtMtd *handle, gint *class_id);
28+
29+
GST_ANALYTICS_META_API
30+
GList *gst_analytics_od_ext_mtd_get_params(const GstAnalyticsODExtMtd *handle);
31+
32+
GST_ANALYTICS_META_API
33+
gboolean gst_analytics_od_ext_mtd_add_param(const GstAnalyticsODExtMtd *handle, GstStructure *s);
34+
35+
GST_ANALYTICS_META_API
36+
GstStructure *gst_analytics_od_ext_mtd_get_param(const GstAnalyticsODExtMtd *handle, const gchar *name);
37+
38+
GST_ANALYTICS_META_API
39+
gboolean gst_analytics_relation_meta_add_od_ext_mtd(GstAnalyticsRelationMeta *instance, gdouble rotation, gint class_id,
40+
GstAnalyticsODExtMtd *od_ext_mtd);
41+
42+
GST_ANALYTICS_META_API
43+
gboolean gst_analytics_relation_meta_get_od_ext_mtd(GstAnalyticsRelationMeta *meta, gint an_meta_id,
44+
GstAnalyticsODExtMtd *rlt);
45+
46+
G_END_DECLS
47+
#endif // __gst_analytics_od_ext_MTD__

include/dlstreamer/gst/videoanalytics/region_of_interest.h

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (C) 2018-2024 Intel Corporation
2+
* Copyright (C) 2018-2025 Intel Corporation
33
*
44
* SPDX-License-Identifier: MIT
55
******************************************************************************/
@@ -13,7 +13,7 @@
1313
#pragma once
1414

1515
#include "../metadata/gstanalyticskeypointsmtd.h"
16-
#include "objectdetectionmtdext.h"
16+
#include "../metadata/objectdetectionmtdext.h"
1717
#include "tensor.h"
1818

1919
#include <cstdint>
@@ -193,11 +193,24 @@ class RegionOfInterest {
193193
if (_gst_meta) {
194194
return _detection ? _detection->label_id() : 0;
195195
}
196-
gint label_id;
197-
if (!gst_analytics_od_ext_mtd_get_class_id(&_od_ext_meta, &label_id)) {
198-
throw std::runtime_error("Error when trying to read the label id of the RegionOfInterest");
196+
197+
GQuark label = gst_analytics_od_mtd_get_obj_type(const_cast<GstAnalyticsODMtd *>(&_od_meta));
198+
if (label) {
199+
GstAnalyticsClsMtd cls_descriptor_mtd;
200+
if (!gst_analytics_relation_meta_get_direct_related(
201+
_od_meta.meta, _od_meta.id, GST_ANALYTICS_REL_TYPE_RELATE_TO, gst_analytics_cls_mtd_get_mtd_type(),
202+
nullptr, &cls_descriptor_mtd)) {
203+
return 0;
204+
}
205+
206+
gint label_id = gst_analytics_cls_mtd_get_index_by_quark(&cls_descriptor_mtd, label);
207+
if (label_id < 0) {
208+
throw std::runtime_error("Error when trying to read the label id of the RegionOfInterest");
209+
}
210+
return label_id;
211+
} else {
212+
return 0;
199213
}
200-
return label_id;
201214
}
202215

203216
/**

include/dlstreamer/gst/videoanalytics/video_frame.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (C) 2018-2024 Intel Corporation
2+
* Copyright (C) 2018-2025 Intel Corporation
33
*
44
* SPDX-License-Identifier: MIT
55
******************************************************************************/
@@ -12,7 +12,7 @@
1212

1313
#pragma once
1414

15-
#include "objectdetectionmtdext.h"
15+
#include "../metadata/objectdetectionmtdext.h"
1616
#include "region_of_interest.h"
1717

1818
#include "../metadata/gva_json_meta.h"

samples/download_public_models.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ else
109109
echo "OpenVINO is not installed."
110110
fi
111111

112-
if [[ "$version" < "2024.5.0" ]]; then
112+
if [[ "$version" < "2024.6.0" ]]; then
113113
if pip list | grep openvino-dev; then
114114
pip install openvino-dev --upgrade
115115
fi

samples/gstreamer/cpp/draw_face_attributes/main.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (C) 2018-2024 Intel Corporation
2+
* Copyright (C) 2018-2025 Intel Corporation
33
*
44
* SPDX-License-Identifier: MIT
55
******************************************************************************/
@@ -350,9 +350,10 @@ int main(int argc, char *argv[]) {
350350
sink = "gvametaconvert ! gvametapublish file-format=json-lines file-path=output.json ! fakesink async=false";
351351
else if (output_type_str == "file") {
352352
std::string encoder = FindEncoder();
353-
sink = g_strdup_printf("gvawatermark ! videoconvertscale ! gvafpscounter ! %s ! h264parse ! mp4mux ! filesink "
354-
"location=output.mp4",
355-
encoder.c_str());
353+
std::string output_location = "cpp_draw_attributes_output_" + std::string(device) + "_" + encoder + ".mp4";
354+
sink = g_strdup_printf(
355+
"gvawatermark ! videoconvertscale ! gvafpscounter ! %s ! h264parse ! mp4mux ! filesink location=%s",
356+
encoder.c_str(), output_location.c_str());
356357
} else {
357358
std::cerr << "Unsupported output type: " << output_type_str << std::endl;
358359
return -1;

samples/gstreamer/gst_launch/action_recognition/action_recognition.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22
# ==============================================================================
3-
# Copyright (C) 2021-2024 Intel Corporation
3+
# Copyright (C) 2021-2025 Intel Corporation
44
#
55
# SPDX-License-Identifier: MIT
66
# ==============================================================================
@@ -38,7 +38,7 @@ elif [[ $OUTPUT == "display-and-json" ]]; then
3838
SINK_ELEMENT="gvawatermark ! gvametaconvert ! gvametapublish file-format=json-lines file-path=output.json ! videoconvert ! gvafpscounter ! autovideosink sync=false"
3939
elif [[ $OUTPUT == "file" ]]; then
4040
FILE="$(basename ${INPUT%.*})"
41-
rm -f "${FILE}_${DEVICE}.mp4"
41+
rm -f "action_recognition_${FILE}_${DEVICE}.mp4"
4242
if [[ $(gst-inspect-1.0 va | grep vah264enc) ]]; then
4343
ENCODER="vah264enc"
4444
elif [[ $(gst-inspect-1.0 va | grep vah264lpenc) ]]; then
@@ -47,7 +47,7 @@ elif [[ $OUTPUT == "file" ]]; then
4747
echo "Error - VA-API H.264 encoder not found."
4848
exit
4949
fi
50-
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! ${ENCODER} ! avimux name=mux ! filesink location=${FILE}_${DEVICE}.mp4"
50+
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! ${ENCODER} ! avimux name=mux ! filesink location=action_recognition_${FILE}_${DEVICE}.mp4"
5151
else
5252
echo Error wrong value for OUTPUT parameter
5353
echo Valid values: "display" - render to screen, "file" - render to file, "fps" - print FPS, "json" - write to output.json, "display-and-json" - render to screen and write to output.json

samples/gstreamer/gst_launch/detection_with_yolo/yolo_detect.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22
# ==============================================================================
3-
# Copyright (C) 2021-2024 Intel Corporation
3+
# Copyright (C) 2021-2025 Intel Corporation
44
#
55
# SPDX-License-Identifier: MIT
66
# ==============================================================================
@@ -101,7 +101,7 @@ fi
101101

102102
if [[ "$OUTPUT" == "file" ]]; then
103103
FILE=$(basename "${INPUT%.*}")
104-
rm -f "${FILE}_${DEVICE}.mp4"
104+
rm -f "yolo_${FILE}_${MODEL}_${DEVICE}.mp4"
105105
if [[ $(gst-inspect-1.0 va | grep vah264enc) ]]; then
106106
ENCODER="vah264enc"
107107
elif [[ $(gst-inspect-1.0 va | grep vah264lpenc) ]]; then
@@ -110,7 +110,7 @@ if [[ "$OUTPUT" == "file" ]]; then
110110
echo "Error - VA-API H.264 encoder not found."
111111
exit
112112
fi
113-
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! ${ENCODER} ! h264parse ! mp4mux ! filesink location=${FILE}_${DEVICE}.mp4"
113+
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! ${ENCODER} ! h264parse ! mp4mux ! filesink location=yolo_${FILE}_${MODEL}_${DEVICE}.mp4"
114114
elif [[ "$OUTPUT" == "display" ]] || [[ -z $OUTPUT ]]; then
115115
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! autovideosink sync=false"
116116
elif [[ "$OUTPUT" == "fps" ]]; then

samples/gstreamer/gst_launch/geti_deployment/geti_sample.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22
# ==============================================================================
3-
# Copyright (C) 2021-2024 Intel Corporation
3+
# Copyright (C) 2021-2025 Intel Corporation
44
#
55
# SPDX-License-Identifier: MIT
66
# ==============================================================================
@@ -57,7 +57,7 @@ fi
5757

5858
if [[ $OUTPUT == "file" ]]; then
5959
FILE="$(basename ${INPUT%.*})"
60-
rm -f "${FILE}_${MODEL}_${DEVICE}.mp4"
60+
rm -f "geti_${FILE}_${MODEL}_${DEVICE}.mp4"
6161
if [[ $(gst-inspect-1.0 va | grep vah264enc) ]]; then
6262
ENCODER="vah264enc"
6363
elif [[ $(gst-inspect-1.0 va | grep vah264lpenc) ]]; then
@@ -66,7 +66,7 @@ if [[ $OUTPUT == "file" ]]; then
6666
echo "Error - VA-API H.264 encoder not found."
6767
exit
6868
fi
69-
SINK_ELEMENT="gvawatermark${WT_OBB_ELEMENT}! videoconvertscale ! gvafpscounter ! ${ENCODER} ! h264parse ! mp4mux ! filesink location=${FILE}_${MODEL}_${DEVICE}.mp4"
69+
SINK_ELEMENT="gvawatermark${WT_OBB_ELEMENT}! videoconvertscale ! gvafpscounter ! ${ENCODER} ! h264parse ! mp4mux ! filesink location=geti_${FILE}_${MODEL}_${DEVICE}.mp4"
7070
elif [[ $OUTPUT == "display" ]] || [[ -z $OUTPUT ]]; then
7171
SINK_ELEMENT="gvawatermark${WT_OBB_ELEMENT}! videoconvertscale ! gvafpscounter ! autovideosink sync=false"
7272
elif [[ $OUTPUT == "fps" ]]; then

samples/gstreamer/gst_launch/gvaattachroi/gvaattachroi_sample.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22
# ==============================================================================
3-
# Copyright (C) 2021-2024 Intel Corporation
3+
# Copyright (C) 2021-2025 Intel Corporation
44
#
55
# SPDX-License-Identifier: MIT
66
# ==============================================================================
@@ -40,7 +40,7 @@ fi
4040

4141
if [[ "$OUTPUT" == "file" ]]; then
4242
FILE=$(basename "${INPUT%.*}")
43-
rm -f "${FILE}_${DEVICE}.mp4"
43+
rm -f "gvaattachroi_${FILE}_${DEVICE}.mp4"
4444
if gst-inspect-1.0 va | grep -q vah264enc; then
4545
ENCODER="vah264enc"
4646
elif gst-inspect-1.0 va | grep -q vah264lpenc; then
@@ -49,7 +49,7 @@ if [[ "$OUTPUT" == "file" ]]; then
4949
echo "Error - VA-API H.264 encoder not found."
5050
exit
5151
fi
52-
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! ${ENCODER} ! h264parse ! mp4mux ! filesink location=${FILE}_${DEVICE}.mp4"
52+
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! ${ENCODER} ! h264parse ! mp4mux ! filesink location=gvaattachroi_${FILE}_${DEVICE}.mp4"
5353
elif [[ "$OUTPUT" == "display" ]] || [[ -z $OUTPUT ]]; then
5454
SINK_ELEMENT="gvawatermark ! videoconvertscale ! gvafpscounter ! autovideosink sync=false"
5555
elif [[ "$OUTPUT" == "fps" ]]; then

0 commit comments

Comments
 (0)