Hi sylvain.
I have to declare i as a variable but where ?.
I told You I was a newbie !!.
Forgive Me.
Graham.



From: "tetra-request@lists.osmocom.org" <tetra-request@lists.osmocom.org>
To: tetra@lists.osmocom.org
Sent: Sunday, 25 September 2011, 11:00
Subject: tetra Digest, Vol 9, Issue 5



Send tetra mailing list submissions to
    tetra@lists.osmocom.org

To subscribe or unsubscribe via the World Wide Web, visit
    https://lists.osmocom.org/mailman/listinfo/tetra
or, via email, send a message with subject or body 'help' to
    tetra-request@lists.osmocom.org

You can reach the person managing the list at
    tetra-owner@lists.osmocom.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of tetra digest..."

Today's Topics:

  1. Re: tetra Digest, Vol 9, Issue 3 (Sylvain Munaut)
On Sat, Sep 24, 2011 at 8:56 PM, Graham Palmer
<graham.palmer69@yahoo.co.uk> wrote:
> Hi again.
> We have the etsi cdecoder and speech decoder which works fine with sample
> code
> what we need is to link it with real time bitstream from osmo tetra decode.
> I understood this had already been achieved with Dieter's proof of concept
> code. Any chance of  viewing this code even if incomplete ?.

It doesn't apply anymore because of a lot of change in the code since then.

This should save the data in the bursts :
1) It's completely untested but that's where Dieters POC got the bits
previously
2) It saves the data as '0' and '1' in a text file, you may need to
change the etsi codec to read that
3) It will only give out garbage is there is multiple voice channel
at once since it doesn't do any meta data interpretation to isolate
channels and just save anything that's traffic (that was a limitation
of dieter's POC as well)
4) I'm pretty sure it saves 'packet data' as well which obviously
gives garbage.

diff --git a/src/lower_mac/tetra_lower_mac.c b/src/lower_mac/tetra_lower_mac.c
index 7b62bb4..8a41ccb 100644
--- a/src/lower_mac/tetra_lower_mac.c
+++ b/src/lower_mac/tetra_lower_mac.c
@@ -184,6 +184,15 @@ void tp_sap_udata_ind(enum tp_sap_data_type type,
const uint8_t *bits, unsigned
        DEBUGP("%s %s type4: %s\n", tbp->name, time_str,
                osmo_ubit_dump(type4, tbp->type345_bits));

+      if (tms->cur_burst.is_traffic) {
+              FILE *f = fopen("traffic.out", "ab");
+
+              for(i = 0; i < 216*2; i++)
+                      fprintf(f, "%d", bits[i]);
+
+              fclose(f);
+      }
+
        if (tbp->interleave_a) {
                /* Run block deinterleaving: type-3 bits */
                block_deinterleave(tbp->type345_bits,
tbp->interleave_a, type4, type3);



_______________________________________________
tetra mailing list
tetra@lists.osmocom.org
https://lists.osmocom.org/mailman/listinfo/tetra