Skip to content

Commit 8a061f9

Browse files
logist322rainliu
authored andcommitted
WIP
1 parent f158925 commit 8a061f9

File tree

2 files changed

+55
-28
lines changed

2 files changed

+55
-28
lines changed

srtp/benches/srtp_bench.rs

Lines changed: 32 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,47 @@ use webrtc_srtp::{context::Context, protection_profile::ProtectionProfile};
55

66
fn benchmark_buffer(c: &mut Criterion) {
77
let mut ctx = Context::new(
8-
&vec![0; 16],
9-
&vec![0; 14],
8+
&vec![
9+
96, 180, 31, 4, 119, 137, 128, 252, 75, 194, 252, 44, 63, 56, 61, 55,
10+
],
11+
&vec![247, 26, 49, 94, 99, 29, 79, 94, 5, 111, 252, 216, 62, 195],
1012
ProtectionProfile::Aes128CmHmacSha1_80,
1113
None,
1214
None,
13-
).unwrap();
15+
)
16+
.unwrap();
17+
1418
let mut pld = BytesMut::new();
1519
for i in 0..1000 {
1620
pld.extend_from_slice(&[i as u8]);
1721
}
18-
let pkt = rtp::packet::Packet {
19-
header: rtp::header::Header {
20-
sequence_number: 322,
21-
..Default::default()
22-
},
23-
payload: pld.into(),
24-
};
25-
let pkt_raw = pkt.marshal().unwrap();
22+
23+
let mut count = 1;
2624

2725
c.bench_function("Benchmark context ", |b| {
28-
b.iter(|| {
29-
ctx.encrypt_rtp(&pkt_raw).unwrap();
30-
});
26+
b.iter_batched(
27+
|| {
28+
let pkt = rtp::packet::Packet {
29+
header: rtp::header::Header {
30+
sequence_number: count,
31+
timestamp: count.into(),
32+
extension_profile: 48862,
33+
marker: true,
34+
padding: false,
35+
extension: true,
36+
payload_type: 96,
37+
..Default::default()
38+
},
39+
payload: pld.clone().into(),
40+
};
41+
count += 1;
42+
pkt.marshal().unwrap()
43+
},
44+
|pkt_raw| {
45+
ctx.encrypt_rtp(&pkt_raw).unwrap();
46+
},
47+
criterion::BatchSize::LargeInput,
48+
);
3149
});
3250
}
3351

srtp/src/main.rs

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,26 +4,35 @@ use webrtc_srtp::{context::Context, protection_profile::ProtectionProfile};
44

55
fn main() {
66
let mut ctx = Context::new(
7-
&vec![0; 16],
8-
&vec![0; 14],
7+
&vec![
8+
96, 180, 31, 4, 119, 137, 128, 252, 75, 194, 252, 44, 63, 56, 61, 55,
9+
],
10+
&vec![247, 26, 49, 94, 99, 29, 79, 94, 5, 111, 252, 216, 62, 195],
911
ProtectionProfile::Aes128CmHmacSha1_80,
1012
None,
1113
None,
12-
).unwrap();
14+
)
15+
.unwrap();
1316
let mut pld = BytesMut::new();
1417
for i in 0..1000 {
1518
pld.extend_from_slice(&[i as u8]);
1619
}
17-
let pkt = rtp::packet::Packet {
18-
header: rtp::header::Header {
19-
sequence_number: 322,
20-
..Default::default()
21-
},
22-
payload: pld.into(),
23-
};
24-
let pkt_raw = pkt.marshal().unwrap();
2520

26-
for _ in 0..10000 {
27-
ctx.encrypt_rtp(&pkt_raw).unwrap();
21+
for i in 1..=100000u32 {
22+
let pkt = rtp::packet::Packet {
23+
header: rtp::header::Header {
24+
sequence_number: i as u16,
25+
timestamp: i,
26+
extension_profile: 48862,
27+
marker: true,
28+
padding: false,
29+
extension: true,
30+
payload_type: 96,
31+
..Default::default()
32+
},
33+
payload: pld.clone().into(),
34+
};
35+
36+
ctx.encrypt_rtp(&pkt.marshal().unwrap()).unwrap();
2837
}
29-
}
38+
}

0 commit comments

Comments
 (0)