Releases: prominenceai/deepstream-services-library
v0.20.alpha
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
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
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
v0.18a.alpha
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
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
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
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
- 1file_ptis_ktl_osd_window.py
- 1file_ptis_ktl_3stis_osd_window.py
- 1file_ptis_dcf_osd_window.py
- industrial_segmentation.py
- semantic_segmentation.py
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
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
andmode
. 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
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 inputdsl_ode_action_print_new
- requires a new booleanforce_flush
parameterdsl_recording_info
- structure includes a new fieldrecording_event
to identify the callback event -DSL_RECORDING_EVENT_START
orDSL_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
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