Skip to content

Releases: prominenceai/deepstream-services-library

v0.20.alpha

16 Sep 03:01
c8814e3
Compare
Choose a tag to compare
v0.20.alpha Pre-release
Pre-release

v0.20.alpha is the first release built/tested for x86_64/dGPU. The release includes fixes for several high priority bugs as well.

There is minimal new functionality in this release

  • Minor changes were made to the DSL source code to support the x86_64/dGPU build.
  • First set of C/C++ examples have been added.
  • Smart record examples scripts have been fixed and brought up to date.
  • A number of bugs have been resolved.

Issues closed in this release

  • Support x86_64 build and test variants #588
  • Create first set of CPP examples and verify with x86_64 build #594
  • ODE Triggers should display their ODE Areas regardless of process interval #596
  • ODE Areas will fail to display if the frame number is reset to 0 #597
  • Fix two issues with new dsl_ode_action_customize_label_new constructor #598
  • Implement dsl_ode_action_customize_label_get/set services #599
  • Implement workaround for NVIDIA bug "Releasing nvstreammux request pad results in a deadlock" #606
  • Fix/update the Tap Smart Record and Sink Smart Record examples #605

New services in this release

  • dsl_ode_action_customize_label_get
  • dsl_ode_action_customize_label_set

v0.19.alpha

13 Aug 16:07
c192cd2
Compare
Choose a tag to compare
v0.19.alpha Pre-release
Pre-release

v0.19.alpha provides new/improved services for creating and displaying object and frame level metrics

Includes:

  • New ODE Triggers to trigger on the Earliest (most persistent) and Latest (least persistent) object in view.
  • New ODE Actions to format and customize object labels, bounding boxes, and trigger event metrics.

Issues closed in this release

  • Implement new Triggers - "dsl_ode_trigger_latest_new" and "dsl_ode_trigger_earliest_new" #576
  • Add Persistence Data to all Actions that output metrics
  • Refactor ODE Display Action to support a client-defined "format_string" with tokens for inserting Metrics #584
  • Implement new "dsl_ode_action_format_label_new" service #566
  • Implement new "dsl_ode_action_format_bbox_new" service #567
  • Implement new "dsl_ode_action_customize_label_new" service #568
  • Remove the "dsl_ode_action_hide_new" service #569
  • Remove dsl_ode_action_fill_object_new - superseded by dsl_ode_action_format_bbox_new #579
  • Polygon Area is using wrong predicate when testing for DSL_BBOX_POINT_ANY #583

New examples in this release

Services removed in this release

The following Actions were replaced by the new format and customize Actions below

  • dsl_ode_action_hide_new
  • dsl_ode_action_fill_object_new

Services refactored in this release

  • dsl_ode_action_display_new

New Services in this release

  • dsl_ode_trigger_earliest_new
  • dsl_ode_trigger_latest_new
  • dsl_ode_action_customize_label_new
  • dsl_ode_action_format_label_new
  • dsl_ode_action_format_bbox_new

v0.18.alpha

30 Jul 21:27
6f1ac83
Compare
Choose a tag to compare
v0.18.alpha Pre-release
Pre-release

v0.18.alpha is a preventative maintenance release with a focus on sustainability/scalability.

There is no new functionality in the release.

Issue(s) closed in this release

  • Upgrade DSL to std:c++17 #557
  • Split DslServices.cpp into individual DslServices.cpp files #558
  • All DSL Services should provide confirmation of success via INFO level logs #560

v0.18a.alpha

01 Aug 15:21
6f1ac83
Compare
Choose a tag to compare
v0.18a.alpha Pre-release
Pre-release

v0.18a.alpha is a patch release to address a single, critical bug

Issue(s) closed in this release
Python binding function for "dsl_tap_record_session_start" has invalid "argtypes" definition #564

v0.17a.alpha

26 Jul 22:28
b46028e
Compare
Choose a tag to compare
v0.17a.alpha Pre-release
Pre-release

v0.17a.alpha is a patch release to address a single, critical bug

Issue(s) closed in this release

  • RTSP Source fails to connect to a camera source with audio #555

New examples in this release

v0.17.alpha

22 Jul 06:56
b1cad39
Compare
Choose a tag to compare
v0.17.alpha Pre-release
Pre-release

v0.17.alpha is a Documentation update release. There is no new functionality from the previous release, v0.16.alpha.

Issues closed in this release

  • Audit all API Documentation for correctness and completeness and fix all #476

v0.16.alpha

15 Jul 23:32
ddd7113
Compare
Choose a tag to compare
v0.16.alpha Pre-release
Pre-release

v0.16.alpha adds services for several new Pipeline Components:

  • Primary and Secondary Triton Inference Servers (TIS) - see reference
  • Segmentation Visualizer - see reference
  • Discriminative Correlation Filter (DCF) based Multi Object Tracker - see reference

Issues closed in this release

  • Refactor GIE API into new Infer API with Gst Infer Engine (GIE) and Triton Infer Server (TIS) services #532
  • Implement new "Segmentation Visualizer" for visualizing Primary GIE segmentation results #526
  • Implement new NvDCF Tracker component - constructor to be "dsl_tracker_dcf_new" #544
  • Complete the pipeline component remove Services for Primary GIE/TIS & Tracker Bintrs #541

New examples in this release

Services removed in this release

The following functions were replaced by the new Infer services below

  • dsl_gie_primary_new
  • dsl_gie_secondary_new
  • dsl_gie_infer_config_file_get
  • dsl_gie_infer_config_file_set
  • dsl_gie_model_engine_file_get
  • dsl_gie_model_engine_file_set
  • dsl_gie_interval_get
  • dsl_gie_interval_set
  • dsl_gie_primary_pph_add
  • dsl_gie_primary_pph_remove
  • dsl_gie_secondary_infer_on_get
  • dsl_gie_secondary_infer_on_set

New Services in this release

  • dsl_infer_gie_primary_new
  • dsl_infer_gie_secondary_new
  • dsl_infer_tis_primary_new
  • dsl_infer_tis_secondary_new
  • dsl_infer_gie_model_engine_file_get
  • dsl_infer_gie_model_engine_file_set
  • dsl_infer_config_file_get
  • dsl_infer_config_file_set
  • dsl_infer_interval_get
  • dsl_infer_interval_set
  • dsl_infer_primary_pph_add
  • dsl_infer_primary_pph_remove
  • dsl_segvisual_new
  • dsl_segvisual_dimensions_get
  • dsl_segvisual_dimensions_set
  • dsl_segvisual_pph_add
  • dsl_segvisual_pph_remove
  • dsl_tracker_dcf_new
  • dsl_tracker_dcf_batch_processing_enabled_get
  • dsl_tracker_dcf_batch_processing_enabled_set
  • dsl_tracker_dcf_past_frame_reporting_enabled_get
  • dsl_tracker_dcf_past_frame_reporting_enabled_set

v0.15.alpha

01 Jul 23:16
57cc19a
Compare
Choose a tag to compare
v0.15.alpha Pre-release
Pre-release

v0.15.alpha is a Patch Release with some minor new functionality

Bugs

  • Summation ODE Trigger does not check if limit is reached #506
  • Persistence and Instance Triggers are not clearing their instance map on Reset. #511
  • Setting the "Reset Timer" value after the Trigger has reached its limit should start the timer #516
  • Tiler does not allow the client to modify the show cycle timer value when set #520
  • Tiler should not disable "cycle-source" when unlinked on Pipeline Stop #521

Enhancements

  • Add "text/csv" format option to "dsl_ode_action_file_new" #504
  • Add "append/truncate" mode option to "dsl_ode_action_file_new" #518
  • Implement new "dsl_ode_trigger_interval_set/get" services #507
  • Implement new "dsl_ode_trigger_accumulation_new" constructor #510
  • Improve the Image Capture Action's method of queuing Images with its Image Player #513

Updated Services in this release

  • dsl_ode_action_file_new - two new required parameters have been added; format and mode. See #504 & #518

New Services in this release

  • dsl_ode_trigger_accumulation_new
  • dsl_ode_trigger_interval_get
  • dsl_ode_trigger_interval_set

v0.14.alpha

09 Jun 19:20
eab2e78
Compare
Choose a tag to compare
v0.14.alpha Pre-release
Pre-release

v0.14.alpha includes a refactored Mailer API, extended Player Services, and new ODE Trigger and Action Services

The following Issues were closed in this Release

Bugs

  • Update RecordSinkStart(Stop)OdeAction and RecordTapStart(Stop)OdeAction to use internal object API #474
  • ODE Action base class class requires mutex for property access #491
  • Distance Trigger is not checking the correct BBOX Test Point #496

New Player Related Services

  • Allow File and Image Render Players to be created with NULL file_path #464
  • Implement "dsl_ode_action_capture_image_player_add/remove" services #465
  • Implement "dsl_tap_record_video_player_add/remove" services #466
  • Implement "dsl_sink_record_video_player_add/remove" services #467

New/Updated Mailer Services

  • Refactor SMTP Services to be more object based #471
  • Update the ODE Email Action to use the new Mailer Object #478
  • Implement "dsl_ode_action_capture_mailer_add/remove" services #479
  • Implement "dsl_sink_record_mailer_add/remove" services #480
  • Implement "dsl_tap_record_mailer_add/remove" services #481

New Trigger Services

  • Implement "dsl_ode_trigger_reset_timer_set/get" services for setting a delayed/auto reset. #482
  • Implement additional ODE Distance Trigger get/set services for type specific parameters #494
  • Implement new "dsl_ode_trigger_count_range_get/set" services #498
  • Implement "dsl_ode_trigger_persistence_range_get/set" services #499

New/Updated Action Services

  • Add "force_flush" parameter to "dsl_ode_action_print_new" constructor #490
  • Implement new "dsl_ode_action_file_new" constructor #488

Other

  • Extend the Async recording complete logic to notify clients on both "start" and "stop" #475
  • Implement new "dsl_sink_render_reset" and "dsl_player_render_reset" services #473
  • Implement new "dsl_stdout_redirect" and "dsl_stdout_restore" services #486

The following Services and single Type have changed!

  • dsl_ode_action_email_new - requires the name of an existing Mailer object as input
  • dsl_ode_action_print_new - requires a new boolean force_flush parameter
  • dsl_recording_info - structure includes a new field recording_event to identify the callback event - DSL_RECORDING_EVENT_START or DSL_RECORDING_EVENT_END, see #475

The following Services have been removed and replaced with the new Mailer API

  • dsl_smtp_mail_enabled_get
  • dsl_smtp_mail_enabled_get
  • dsl_smtp_credentials_set
  • dsl_smtp_server_url_get
  • dsl_smtp_server_url_set
  • dsl_smtp_address_from_get
  • dsl_smtp_address_from_set
  • dsl_smtp_ssl_enabled_get
  • dsl_smtp_ssl_enabled_set
  • dsl_smtp_address_to_add
  • dsl_smtp_address_to_remove_all
  • dsl_smtp_address_cc_add
  • dsl_smtp_address_cc_remove_all
  • dsl_smtp_test_message_send

The following Services are New in this release

  • dsl_mailer_new
  • dsl_mailer_delete
  • dsl_mailer_delete_all
  • dsl_mailer_enabled_get
  • dsl_mailer_enabled_set
  • dsl_mailer_credentials_set
  • dsl_mailer_server_url_get
  • dsl_mailer_server_url_set
  • dsl_mailer_address_from_get
  • dsl_mailer_address_from_set
  • dsl_mailer_ssl_enabled_get
  • dsl_mailer_ssl_enabled_set
  • dsl_mailer_address_to_add
  • dsl_mailer_address_to_remove_all
  • dsl_mailer_address_cc_add
  • dsl_mailer_address_cc_remove_all
  • dsl_mailer_test_message_send
  • dsl_mailer_exists
  • dsl_mailer_list_size
  • dsl_sink_record_video_player_add
  • dsl_sink_record_video_player_remove
  • dsl_sink_record_mailer_add
  • dsl_sink_record_mailer_remove
  • dsl_tap_record_video_player_add
  • dsl_tap_record_video_player_remove
  • dsl_tap_record_mailer_add
  • dsl_tap_record_mailer_remove
  • dsl_ode_action_capture_image_player_add
  • dsl_ode_action_capture_image_player_remove
  • dsl_ode_action_capture_mailer_add
  • dsl_ode_action_capture_mailer_remove
  • dsl_ode_action_file_new
  • dsl_ode_trigger_reset_timer_get
  • dsl_ode_trigger_reset_timer_set
  • dsl_ode_trigger_count_range_get
  • dsl_ode_trigger_count_range_set
  • dsl_ode_trigger_distance_range_get
  • dsl_ode_trigger_distance_range_set
  • dsl_ode_trigger_distance_test_params_get
  • dsl_ode_trigger_distance_test_params_set
  • dsl_ode_trigger_persistence_range_get
  • dsl_sink_render_reset
  • dsl_player_render_reset
  • dsl_stdout_redirect
  • dsl_stdout_restore

v0.13.alpha

01 May 21:49
c99961a
Compare
Choose a tag to compare
v0.13.alpha Pre-release
Pre-release

This Release implements a new Player API

Players are specialized Pipelines that simplify the processes of:

  • testing/confirming camera connections and URIs
  • rendering captured images and video recordings.

This is a "first release" and the API may require some iteration as more use cases are defined.

The following Issues were closed in this Release

Issues for new Client Services

  • Implement new Image Source component #438
  • Implement new File Source Component #436
  • Implement new Player component #433
  • Implement two new derived Player components - Video-Render-Player & Image-Render-Player #445
  • Extend the Capture Frame/Image Actions to support Client Listeners #443
  • [Feature Request] Customization of filename generated by capture frame/object action #351

Issues in support of the above

  • Implement two new Pipeline base classes: PipelineStateMgr and PipelineXWinMgr #434
  • Refactor PipelineBintr to use new PipelineStateMgr and PipelineXWinMgr base classes #435
  • Refactor Pipeline Pause & Stop to use timer callback to change pipeline state. #430
  • Implement RenderSinkBintr class as base class for Overlay and Window Sink #447
  • Derive Decode and Image Sources from a new ResourceSourceBintr virtual class #450
  • Remove the "overlay_id" parameter from dsl_sink_overlay_new() #452

New Example Scripts in this Release

Services Modified in this Release

The overlay_id parameter was removed from Overlay Sink Constructor API. DSL now manages the unique id's internally

  • dsl_sink_overlay_new

New Services Implemented in this Release

New Client callback function type

  • dsl_capture_complete_listener_cb

New services to register the listener callback with the Capture Frame and Object services. See ODE Actions API

  • dsl_ode_action_capture_complete_listener_add
  • dsl_ode_action_capture_complete_listener_remove

The following new Render Sink services support both Overlay and Window Sinks, and replace the individual Overlay and Window Sink services (see below).

  • dsl_sink_render_offsets_get
  • dsl_sink_render_offsets_set
  • dsl_sink_render_dimensions_get
  • dsl_sink_render_dimensions_set

New Player API

  • dsl_player_new
  • dsl_player_render_image_new
  • dsl_player_render_video_new
  • dsl_player_delete
  • dsl_player_delete_all
  • dsl_player_render_file_path_get
  • dsl_player_render_file_path_set
  • dsl_player_render_file_path_queue
  • dsl_player_render_offsets_get
  • dsl_player_render_offsets_set
  • dsl_player_render_zoom_get
  • dsl_player_render_zoom_set
  • dsl_player_render_image_timeout_get
  • dsl_player_render_image_timeout_set
  • dsl_player_render_video_repeat_enabled_get
  • dsl_player_render_video_repeat_enabled_set
  • dsl_player_termination_event_listener_add
  • dsl_player_termination_event_listener_remove
  • dsl_player_xwindow_handle_get
  • dsl_player_xwindow_handle_set
  • dsl_player_xwindow_key_event_handler_add
  • dsl_player_xwindow_key_event_handler_remove
  • dsl_player_play
  • dsl_player_pause
  • dsl_player_stop
  • dsl_player_render_next
  • dsl_player_state_get
  • dsl_player_exists
  • dsl_player_list_size

Services Removed in this Release

The following Sink services have been replaced with the Render Sink services above

  • dsl_sink_overlay_offsets_get
  • dsl_sink_overlay_offsets_set
  • dsl_sink_overlay_dimensions_get
  • dsl_sink_overlay_dimensions_set
  • dsl_sink_window_offsets_get
  • dsl_sink_window_offsets_set
  • dsl_sink_window_dimensions_get
  • dsl_sink_window_dimensions_set