@@ -385,17 +385,20 @@ static int send_packet(struct ftl_stream *stream,
385385static void set_peak_bitrate (struct ftl_stream * stream ) {
386386 int speedtest_kbps = 10000 ;
387387 int speedtest_duration = 2000 ;
388+ speed_test_t results ;
389+ ftl_status_t status_code ;
388390
389- warn ("Running speed test: sending %d kbps for %d ms" , speedtest_kbps , speedtest_duration );
390- int peak_kbps ;
391- peak_kbps = ftl_ingest_speed_test (& stream -> ftl_handle , speedtest_kbps , speedtest_duration );
392-
393- stream -> params .peak_kbps = peak_kbps ;
394- stream -> peak_kbps = peak_kbps ;
391+ if ((status_code = ftl_ingest_speed_test_ex (& stream -> ftl_handle , speedtest_kbps , speedtest_duration , & results )) == FTL_SUCCESS ) {
392+ info ("Speed test completed: Peak kbps %d, initial rtt %d, final rtt %d, %3.2f lost packets\n" ,
393+ results .peak_kbps , results .starting_rtt , results .ending_rtt , (float )results .lost_pkts * 100.f / (float )results .pkts_sent );
395394
396- warn ( "Running speed test complete: setting peak bitrate to %d\n" , stream -> params .peak_kbps ) ;
395+ stream -> peak_kbps = stream -> params .peak_kbps = results . peak_kbps ;
397396
398- ftl_ingest_update_params (& stream -> ftl_handle , & stream -> params );
397+ ftl_ingest_update_params (& stream -> ftl_handle , & stream -> params );
398+ }
399+ else {
400+ warn ("Speed test failed with: %s\n" , ftl_status_code_to_string (status_code ));
401+ }
399402}
400403
401404static inline bool send_headers (struct ftl_stream * stream , int64_t dts_usec );
0 commit comments