annotate libtest/robewrite.c @ 514:67b13a6a63c9

libgsmhr1: implement validation for *.dec frames
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 25 Aug 2024 19:14:40 +0000
parents 14b627682458
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
153
14b627682458 gsmfr-decode-r utility put together
Mychaela Falconia <falcon@freecalypso.org>
parents: 11
diff changeset
2 * Here we implement our PCM write helper function for "robe" format.
11
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 */
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4
153
14b627682458 gsmfr-decode-r utility put together
Mychaela Falconia <falcon@freecalypso.org>
parents: 11
diff changeset
5 #include <stdio.h>
11
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 #include <stdint.h>
153
14b627682458 gsmfr-decode-r utility put together
Mychaela Falconia <falcon@freecalypso.org>
parents: 11
diff changeset
7 #include "robewrite.h"
11
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8
153
14b627682458 gsmfr-decode-r utility put together
Mychaela Falconia <falcon@freecalypso.org>
parents: 11
diff changeset
9 void write_pcm_to_robe(FILE *outf, const int16_t *pcm)
11
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 {
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 uint8_t bytes[320], *dp;
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 int16_t samp;
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 unsigned n;
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 dp = bytes;
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 for (n = 0; n < 160; n++) {
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 samp = pcm[n];
153
14b627682458 gsmfr-decode-r utility put together
Mychaela Falconia <falcon@freecalypso.org>
parents: 11
diff changeset
18 *dp++ = (samp >> 8) & 0xFF;
11
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 *dp++ = samp & 0xFF;
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 }
153
14b627682458 gsmfr-decode-r utility put together
Mychaela Falconia <falcon@freecalypso.org>
parents: 11
diff changeset
21 fwrite(bytes, 2, 160, outf);
11
a3aa152c4653 libtest: pcmwrite helper function and module
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 }