mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-19 19:52:48 +00:00
Merge "test_res_rtp: Enable FIR and REMB nominal tests."
This commit is contained in:
@@ -327,6 +327,7 @@ AST_TEST_DEFINE(remb_nominal)
|
|||||||
.data.ptr = &feedback,
|
.data.ptr = &feedback,
|
||||||
.datalen = sizeof(feedback),
|
.datalen = sizeof(feedback),
|
||||||
};
|
};
|
||||||
|
struct ast_rtp_rtcp_feedback *received_feedback;
|
||||||
|
|
||||||
switch (cmd) {
|
switch (cmd) {
|
||||||
case TEST_INIT:
|
case TEST_INIT:
|
||||||
@@ -337,8 +338,7 @@ AST_TEST_DEFINE(remb_nominal)
|
|||||||
"Tests sending and receiving a REMB packet";
|
"Tests sending and receiving a REMB packet";
|
||||||
return AST_TEST_NOT_RUN;
|
return AST_TEST_NOT_RUN;
|
||||||
case TEST_EXECUTE:
|
case TEST_EXECUTE:
|
||||||
/* Disable for now - there's a bug! */
|
break;
|
||||||
return AST_TEST_NOT_RUN;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
test_sched = ast_sched_context_create();
|
test_sched = ast_sched_context_create();
|
||||||
@@ -353,12 +353,7 @@ AST_TEST_DEFINE(remb_nominal)
|
|||||||
|
|
||||||
ast_rtp_instance_write(instance1, &frame_out);
|
ast_rtp_instance_write(instance1, &frame_out);
|
||||||
|
|
||||||
/*
|
/* Verify the high level aspects of the frame */
|
||||||
* There may be some additional work that needs to be done here, depending on how
|
|
||||||
* Asterisk handles the reading in of compound packets. We might get an ast_null_frame
|
|
||||||
* here instead of the REMB frame. We'll need to check the frametype to distinguish
|
|
||||||
* between them (AST_FRAME_NULL for ast_null_frame, AST_FRAME_RTCP for REMB).
|
|
||||||
*/
|
|
||||||
frame_in = ast_rtp_instance_read(instance2, 0);
|
frame_in = ast_rtp_instance_read(instance2, 0);
|
||||||
ast_test_validate(test, frame_in != NULL, "Did not receive a REMB frame");
|
ast_test_validate(test, frame_in != NULL, "Did not receive a REMB frame");
|
||||||
ast_test_validate(test, frame_in->frametype == AST_FRAME_RTCP,
|
ast_test_validate(test, frame_in->frametype == AST_FRAME_RTCP,
|
||||||
@@ -366,6 +361,15 @@ AST_TEST_DEFINE(remb_nominal)
|
|||||||
ast_test_validate(test, frame_in->subclass.integer == AST_RTP_RTCP_PSFB,
|
ast_test_validate(test, frame_in->subclass.integer == AST_RTP_RTCP_PSFB,
|
||||||
"REMB frame did not have the expected subclass integer");
|
"REMB frame did not have the expected subclass integer");
|
||||||
|
|
||||||
|
/* Verify the actual REMB information itself */
|
||||||
|
received_feedback = frame_in->data.ptr;
|
||||||
|
ast_test_validate(test, received_feedback->fmt == AST_RTP_RTCP_FMT_REMB,
|
||||||
|
"REMB frame did not have the expected feedback format");
|
||||||
|
ast_test_validate(test, received_feedback->remb.br_exp == feedback.remb.br_exp,
|
||||||
|
"REMB received exponent did not match sent exponent");
|
||||||
|
ast_test_validate(test, received_feedback->remb.br_mantissa == feedback.remb.br_mantissa,
|
||||||
|
"REMB received mantissa did not match sent mantissa");
|
||||||
|
|
||||||
return AST_TEST_PASS;
|
return AST_TEST_PASS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -447,8 +451,7 @@ AST_TEST_DEFINE(fir_nominal)
|
|||||||
"Tests sending and receiving a FIR packet";
|
"Tests sending and receiving a FIR packet";
|
||||||
return AST_TEST_NOT_RUN;
|
return AST_TEST_NOT_RUN;
|
||||||
case TEST_EXECUTE:
|
case TEST_EXECUTE:
|
||||||
/* Disable for now - there's a bug! */
|
break;
|
||||||
return AST_TEST_NOT_RUN;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
test_sched = ast_sched_context_create();
|
test_sched = ast_sched_context_create();
|
||||||
@@ -475,9 +478,6 @@ AST_TEST_DEFINE(fir_nominal)
|
|||||||
* We only receive one frame, the FIR request. It won't have a subclass integer of
|
* We only receive one frame, the FIR request. It won't have a subclass integer of
|
||||||
* 206 (PSFB) because ast_rtcp_interpret sets it to 18 (AST_CONTROL_VIDUPDATE), so
|
* 206 (PSFB) because ast_rtcp_interpret sets it to 18 (AST_CONTROL_VIDUPDATE), so
|
||||||
* check for that.
|
* check for that.
|
||||||
*
|
|
||||||
* NOTE - similar to REMB, there may be more that needs to be done here when the
|
|
||||||
* packet is sent as a compound packet!
|
|
||||||
*/
|
*/
|
||||||
frame_in = ast_rtp_instance_read(instance2, 0);
|
frame_in = ast_rtp_instance_read(instance2, 0);
|
||||||
ast_test_validate(test, frame_in != NULL, "Did not receive a FIR frame");
|
ast_test_validate(test, frame_in != NULL, "Did not receive a FIR frame");
|
||||||
|
Reference in New Issue
Block a user