Please provide complete information as applicable to your setup.
• Hardware Platform (Jetson / GPU) dGPU
• DeepStream Version 6.1.1
• JetPack Version (valid for Jetson only)
• TensorRT Version
• NVIDIA GPU Driver Version (valid for GPU only)
• Issue Type( questions, new requirements, bugs) question
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)
I am testing ntp timestamp (from RTSP sender report) in audio pieline.
I got NvDsAudioFrameMeta::npt_timestamp=0 in my custom pipeline.
1) I ran deepstream-audio with “attach-sys-ts-as-ntp=0” and could get correct ntp timestamp from RTSP sender report.
GST_DEBUG=nvstreammux_ntp:5
../deepstream-audio -c ds_audio_sonyc_rtsp_test_config.txt 2>&1 | grep -i ntp
0:00:26.782460284 1448 0x7f38d40265e0 DEBUG nvstreammux_ntp gstnvstreammux_ntp.cpp:187:apply_correction_if_needed_rtcp:<src_bin_muxer> Frame rate based NTP timestamp correction applied.
0:00:26.782470088 1448 0x7f38d4003120 DEBUG nvstreammux_ntp gstnvstreammux_ntp.cpp:187:apply_correction_if_needed_rtcp:<src_bin_muxer> Frame rate based NTP timestamp correction applied.
0:00:26.782507663 1448 0x7f38d4003120 INFO nvstreammux_ntp gstnvstreammux_ntp.cpp:269:gst_nvds_ntp_calculator_get_buffer_ntp:<src_bin_muxer> Frame NTP calculated. Correction required.mode: RTCP SR. source 0: PTS:0:00:23.526679105(23526679105) NTP: 2023-03-24T11:16:21.644Z(1679656581644254392). NTP diff:-40264523975. Corrected ntp: 2023-03-24T11:17:01.977Z(1679656621977045033). ntp_time_epoch_ns = 2023-03-24T11:16:02.454Z(1679656562454999999) ntp_frame_timestamp = 0:00:04.337424712(4337424712) System Time: 2003-03-29T11:16:21.628Z Avg Frame Time: 0:00:00.068266666 Avg. Frame Rate: 14.65
0:00:26.782517693 1448 0x7f38d40265e0 INFO nvstreammux_ntp gstnvstreammux_ntp.cpp:269:gst_nvds_ntp_calculator_get_buffer_ntp:<src_bin_muxer> Frame NTP calculated. Correction required.mode: RTCP SR. source 1: PTS:0:00:23.526687491(23526687491) NTP: 2023-03-24T11:16:21.644Z(1679656581644254392). NTP diff:-40264523975. Corrected ntp: 2023-03-24T11:17:01.977Z(1679656621977045033). ntp_time_epoch_ns = 2023-03-24T11:16:02.454Z(1679656562454999999) ntp_frame_timestamp = 0:00:04.337433098(4337433098) System Time: 2003-03-29T11:16:21.628Z Avg Frame Time: 0:00:00.068266666 Avg. Frame Rate: 14.65
### label:[ 2_machinery-impact ] source_id:[1] ntp 1679656621977045033 buf-pts 147579740436532640
### source_id:[1] ntp 1679656621977045033 buf-pts 147579740436532640
### label:[ 2_machinery-impact ] source_id:[0] ntp 1679656621977045033 buf-pts 147579740436532640
### source_id:[0] ntp 1679656621977045033 buf-pts 147579740436532640
“label: …” is a debug print which prints NvDsAudioFrameMeta::ntp_timestamp, which matches to nvstreammux_ntp debug print info.
2) In my pipeline, ntp_timestamp is always 0 and buf_pts seems to be “PTS”. Is there any hidden condition so that ntp_timestamp is properly written? I could not debug since streammux-new is closed source. I would appreciate any hints or suggestion. Thanks.
0:00:19.967665857 267 0x56013eff11e0 DEBUG nvstreammux_ntp gstnvstreammux_ntp.cpp:187:apply_correction_if_needed_rtcp:<src_bin_muxer_audio> Frame rate based NTP timestamp correction applied.
0:00:19.967714101 267 0x56013eff11e0 INFO nvstreammux_ntp gstnvstreammux_ntp.cpp:269:gst_nvds_ntp_calculator_get_buffer_ntp:<src_bin_muxer_audio> Frame NTP calculated. Correction required.mode: RTCP SR. source 0: PTS:0:00:09.216094839(9216094839) NTP: 2023-03-24T11:06:31.521Z(1679655991521093749). NTP diff:-11212810408. Corrected ntp: 2023-03-24T11:06:42.800Z(1679656002800037490). ntp_time_epoch_ns = 2023-03-24T11:06:25.958Z(1679655985958999999) ntp_frame_timestamp = 0:00:03.654001089(3654001089) System Time: 2023-03-24T11:06:31.505Z Avg Frame Time: 0:00:00.066133333 Avg. Frame Rate: 15.12
### source_id:[0] ntp 0 buf-pts 9216094839
“### source_id:[0] ntp 0 buf-pts 9216094839” is from printf() in the probe function attached to src of streammux(new) element.
My pipeline is like (rtspsrc → decodebin … ->streammux-new → nvinferserver → … → sink )
input was dynamically added after streammux-new is played.
Thanks.