mgcp: Move Annex A counting out of patch/count method

mgcp_patch_and_count has grown due supporting linearizing timestamps,
ssrc and other things for equipment like the ip.access nanoBTS. Fight
back and move the Annex A code into a dedicated method.

The result is updated as we now count after all the patching and for
the Annex A code no change in SSRC can be detected.
diff --git a/openbsc/tests/mgcp/mgcp_test.c b/openbsc/tests/mgcp/mgcp_test.c
index a057503..e145c6a 100644
--- a/openbsc/tests/mgcp/mgcp_test.c
+++ b/openbsc/tests/mgcp/mgcp_test.c
@@ -699,10 +699,10 @@
 		memset(&state, 0, sizeof(state));
 		memset(&rtp, 0, sizeof(rtp));
 
-		state.initialized = 1;
-		state.base_seq = pl_test_dat[i].base_seq;
-		state.out_stream.last_seq = pl_test_dat[i].max_seq;
-		state.cycles = pl_test_dat[i].cycles;
+		state.stats_initialized = 1;
+		state.stats_base_seq = pl_test_dat[i].base_seq;
+		state.stats_max_seq = pl_test_dat[i].max_seq;
+		state.stats_cycles = pl_test_dat[i].cycles;
 
 		rtp.packets = pl_test_dat[i].packets;
 		mgcp_state_calc_loss(&state, &rtp, &expected, &loss);
@@ -921,7 +921,7 @@
 		       state.out_stream.err_ts_counter - last_out_ts_err_cnt);
 
 		printf("Stats: Jitter = %u, Transit = %d\n",
-		       mgcp_state_calc_jitter(&state), state.transit);
+		       mgcp_state_calc_jitter(&state), state.stats_transit);
 
 		last_in_ts_err_cnt = state.in_stream.err_ts_counter;
 		last_out_ts_err_cnt = state.out_stream.err_ts_counter;
diff --git a/openbsc/tests/mgcp/mgcp_test.ok b/openbsc/tests/mgcp/mgcp_test.ok
index a56a3fd..a25bed4 100644
--- a/openbsc/tests/mgcp/mgcp_test.ok
+++ b/openbsc/tests/mgcp/mgcp_test.ok
@@ -142,58 +142,58 @@
 Stats: Jitter = 15, Transit = 40
 In TS: 34688, dTS: 0, Seq: 12
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -32768
+Stats: Jitter = 2065, Transit = -32768
 In TS: 34848, dTS: 160, Seq: 13
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -32768
+Stats: Jitter = 1935, Transit = -32768
 In TS: 35008, dTS: 160, Seq: 14
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -32768
+Stats: Jitter = 1814, Transit = -32768
 In TS: 35128, dTS: 120, Seq: 15
 Out TS change: 120, dTS: 120, Seq change: 1, TS Err change: in +1, out +1
-Stats: Jitter = 2, Transit = -32728
+Stats: Jitter = 1704, Transit = -32728
 In TS: 35288, dTS: 160, Seq: 16
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 2, Transit = -32728
+Stats: Jitter = 1597, Transit = -32728
 In TS: 35448, dTS: 160, Seq: 17
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 2, Transit = -32728
+Stats: Jitter = 1497, Transit = -32728
 In TS: 35768, dTS: 160, Seq: 19
 Out TS change: 320, dTS: 160, Seq change: 2, TS Err change: in +0, out +0
-Stats: Jitter = 12, Transit = -32888
+Stats: Jitter = 1414, Transit = -32888
 In TS: 35928, dTS: 160, Seq: 20
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 11, Transit = -32888
+Stats: Jitter = 1325, Transit = -32888
 In TS: 36088, dTS: 160, Seq: 21
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 20, Transit = -33048
+Stats: Jitter = 1252, Transit = -33048
 In TS: 36088, dTS: 160, Seq: 21
 Out TS change: 0, dTS: 160, Seq change: 0, TS Err change: in +0, out +0
-Stats: Jitter = 29, Transit = -32888
+Stats: Jitter = 1184, Transit = -32888
 In TS: 36248, dTS: 160, Seq: 22
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 27, Transit = -32888
+Stats: Jitter = 1110, Transit = -32888
 In TS: 36408, dTS: 160, Seq: 23
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 25, Transit = -32888
+Stats: Jitter = 1041, Transit = -32888
 In TS: 36568, dTS: 160, Seq: 23
 Out TS change: 160, dTS: 160, Seq change: 0, TS Err change: in +1, out +1
-Stats: Jitter = 24, Transit = -32888
+Stats: Jitter = 976, Transit = -32888
 In TS: 36728, dTS: 160, Seq: 24
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 22, Transit = -32888
+Stats: Jitter = 915, Transit = -32888
 In TS: 36888, dTS: 160, Seq: 25
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 21, Transit = -32888
+Stats: Jitter = 857, Transit = -32888
 In TS: 160000, dTS: 0, Seq: 1000
 Out TS change: 12000, dTS: 12000, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -144000
+Stats: Jitter = 7748, Transit = -144000
 In TS: 160160, dTS: 160, Seq: 1001
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -144000
+Stats: Jitter = 7264, Transit = -144000
 In TS: 160320, dTS: 160, Seq: 1002
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -144000
+Stats: Jitter = 6810, Transit = -144000
 Testing packet error detection.
 Output SSRC changed to 11223344
 In TS: 0, dTS: 0, Seq: 0
@@ -422,57 +422,57 @@
 Stats: Jitter = 15, Transit = 40
 In TS: 34688, dTS: 0, Seq: 12
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -32768
+Stats: Jitter = 2065, Transit = -32768
 In TS: 34848, dTS: 160, Seq: 13
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -32768
+Stats: Jitter = 1935, Transit = -32768
 In TS: 35008, dTS: 160, Seq: 14
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -32768
+Stats: Jitter = 1814, Transit = -32768
 In TS: 35128, dTS: 120, Seq: 15
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +1, out +0
-Stats: Jitter = 2, Transit = -32728
+Stats: Jitter = 1704, Transit = -32728
 In TS: 35288, dTS: 160, Seq: 16
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 2, Transit = -32728
+Stats: Jitter = 1597, Transit = -32728
 In TS: 35448, dTS: 160, Seq: 17
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 2, Transit = -32728
+Stats: Jitter = 1497, Transit = -32728
 In TS: 35768, dTS: 160, Seq: 19
 Out TS change: 320, dTS: 160, Seq change: 2, TS Err change: in +0, out +0
-Stats: Jitter = 12, Transit = -32888
+Stats: Jitter = 1414, Transit = -32888
 In TS: 35928, dTS: 160, Seq: 20
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 11, Transit = -32888
+Stats: Jitter = 1325, Transit = -32888
 In TS: 36088, dTS: 160, Seq: 21
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 20, Transit = -33048
+Stats: Jitter = 1252, Transit = -33048
 In TS: 36088, dTS: 160, Seq: 21
 Out TS change: 0, dTS: 160, Seq change: 0, TS Err change: in +0, out +0
-Stats: Jitter = 29, Transit = -32888
+Stats: Jitter = 1184, Transit = -32888
 In TS: 36248, dTS: 160, Seq: 22
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 27, Transit = -32888
+Stats: Jitter = 1110, Transit = -32888
 In TS: 36408, dTS: 160, Seq: 23
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 25, Transit = -32888
+Stats: Jitter = 1041, Transit = -32888
 In TS: 36568, dTS: 160, Seq: 23
 Out TS change: 160, dTS: 160, Seq change: 0, TS Err change: in +1, out +1
-Stats: Jitter = 24, Transit = -32888
+Stats: Jitter = 976, Transit = -32888
 In TS: 36728, dTS: 160, Seq: 24
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 22, Transit = -32888
+Stats: Jitter = 915, Transit = -32888
 In TS: 36888, dTS: 160, Seq: 25
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 21, Transit = -32888
+Stats: Jitter = 857, Transit = -32888
 In TS: 160000, dTS: 0, Seq: 1000
 Out TS change: 12000, dTS: 12000, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -144000
+Stats: Jitter = 7748, Transit = -144000
 In TS: 160160, dTS: 160, Seq: 1001
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -144000
+Stats: Jitter = 7264, Transit = -144000
 In TS: 160320, dTS: 160, Seq: 1002
 Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
-Stats: Jitter = 0, Transit = -144000
+Stats: Jitter = 6810, Transit = -144000
 Testing multiple payload types
 Done