Merge branch 'zecke/fixes/mgcp-transociding-tests'
Various clean-ups and extensions to the tests. Share one test set-up routine, capture more of the API inside the output files.
This commit is contained in:
commit
7bcbe2a9cc
|
@ -19,6 +19,59 @@
|
|||
#ifndef OPENBSC_MGCP_TRANSCODE_H
|
||||
#define OPENBSC_MGCP_TRANSCODE_H
|
||||
|
||||
#include "bscconfig.h"
|
||||
|
||||
#include <gsm.h>
|
||||
#ifdef HAVE_BCG729
|
||||
#include <bcg729/decoder.h>
|
||||
#include <bcg729/encoder.h>
|
||||
#endif
|
||||
|
||||
enum audio_format {
|
||||
AF_INVALID,
|
||||
AF_S16,
|
||||
AF_L16,
|
||||
AF_GSM,
|
||||
AF_G729,
|
||||
AF_PCMA
|
||||
};
|
||||
|
||||
|
||||
struct mgcp_process_rtp_state {
|
||||
/* decoding */
|
||||
enum audio_format src_fmt;
|
||||
union {
|
||||
gsm gsm_handle;
|
||||
#ifdef HAVE_BCG729
|
||||
bcg729DecoderChannelContextStruct *g729_dec;
|
||||
#endif
|
||||
} src;
|
||||
size_t src_frame_size;
|
||||
size_t src_samples_per_frame;
|
||||
|
||||
/* processing */
|
||||
|
||||
/* encoding */
|
||||
enum audio_format dst_fmt;
|
||||
union {
|
||||
gsm gsm_handle;
|
||||
#ifdef HAVE_BCG729
|
||||
bcg729EncoderChannelContextStruct *g729_enc;
|
||||
#endif
|
||||
} dst;
|
||||
size_t dst_frame_size;
|
||||
size_t dst_samples_per_frame;
|
||||
int dst_packet_duration;
|
||||
|
||||
int is_running;
|
||||
uint16_t next_seq;
|
||||
uint32_t next_time;
|
||||
int16_t samples[10*160];
|
||||
size_t sample_cnt;
|
||||
size_t sample_offs;
|
||||
};
|
||||
|
||||
|
||||
int mgcp_transcoding_setup(struct mgcp_endpoint *endp,
|
||||
struct mgcp_rtp_end *dst_end,
|
||||
struct mgcp_rtp_end *src_end);
|
||||
|
|
|
@ -22,64 +22,15 @@
|
|||
#include <errno.h>
|
||||
|
||||
|
||||
#include "../../bscconfig.h"
|
||||
|
||||
#include "g711common.h"
|
||||
#include <gsm.h>
|
||||
#ifdef HAVE_BCG729
|
||||
#include <bcg729/decoder.h>
|
||||
#include <bcg729/encoder.h>
|
||||
#endif
|
||||
|
||||
#include <openbsc/debug.h>
|
||||
#include <openbsc/mgcp.h>
|
||||
#include <openbsc/mgcp_internal.h>
|
||||
#include <openbsc/mgcp_transcode.h>
|
||||
|
||||
#include <osmocom/core/talloc.h>
|
||||
|
||||
enum audio_format {
|
||||
AF_INVALID,
|
||||
AF_S16,
|
||||
AF_L16,
|
||||
AF_GSM,
|
||||
AF_G729,
|
||||
AF_PCMA
|
||||
};
|
||||
|
||||
struct mgcp_process_rtp_state {
|
||||
/* decoding */
|
||||
enum audio_format src_fmt;
|
||||
union {
|
||||
gsm gsm_handle;
|
||||
#ifdef HAVE_BCG729
|
||||
bcg729DecoderChannelContextStruct *g729_dec;
|
||||
#endif
|
||||
} src;
|
||||
size_t src_frame_size;
|
||||
size_t src_samples_per_frame;
|
||||
|
||||
/* processing */
|
||||
|
||||
/* encoding */
|
||||
enum audio_format dst_fmt;
|
||||
union {
|
||||
gsm gsm_handle;
|
||||
#ifdef HAVE_BCG729
|
||||
bcg729EncoderChannelContextStruct *g729_enc;
|
||||
#endif
|
||||
} dst;
|
||||
size_t dst_frame_size;
|
||||
size_t dst_samples_per_frame;
|
||||
int dst_packet_duration;
|
||||
|
||||
int is_running;
|
||||
uint16_t next_seq;
|
||||
uint32_t next_time;
|
||||
int16_t samples[10*160];
|
||||
size_t sample_cnt;
|
||||
size_t sample_offs;
|
||||
};
|
||||
|
||||
int mgcp_transcoding_get_frame_size(void *state_, int nsamples, int dst)
|
||||
{
|
||||
struct mgcp_process_rtp_state *state = state_;
|
||||
|
|
|
@ -140,38 +140,73 @@ static int audio_name_to_type(const char *name)
|
|||
|
||||
int mgcp_get_trans_frame_size(void *state_, int nsamples, int dst);
|
||||
|
||||
static int given_configured_endpoint(int in_samples, int out_samples,
|
||||
const char *srcfmt, const char *dstfmt,
|
||||
void **out_ctx, struct mgcp_endpoint **out_endp)
|
||||
{
|
||||
int rc;
|
||||
struct mgcp_rtp_end *dst_end;
|
||||
struct mgcp_rtp_end *src_end;
|
||||
struct mgcp_config *cfg;
|
||||
struct mgcp_trunk_config *tcfg;
|
||||
struct mgcp_endpoint *endp;
|
||||
|
||||
cfg = mgcp_config_alloc();
|
||||
tcfg = talloc_zero(cfg, struct mgcp_trunk_config);
|
||||
endp = talloc_zero(tcfg, struct mgcp_endpoint);
|
||||
|
||||
|
||||
tcfg->endpoints = endp;
|
||||
tcfg->number_endpoints = 1;
|
||||
tcfg->cfg = cfg;
|
||||
endp->tcfg = tcfg;
|
||||
endp->cfg = cfg;
|
||||
mgcp_free_endp(endp);
|
||||
|
||||
dst_end = &endp->bts_end;
|
||||
dst_end->payload_type = audio_name_to_type(dstfmt);
|
||||
|
||||
src_end = &endp->net_end;
|
||||
src_end->payload_type = audio_name_to_type(srcfmt);
|
||||
|
||||
if (out_samples) {
|
||||
dst_end->frame_duration_den = dst_end->rate;
|
||||
dst_end->frame_duration_num = out_samples;
|
||||
dst_end->frames_per_packet = 1;
|
||||
dst_end->force_output_ptime = 1;
|
||||
}
|
||||
|
||||
rc = mgcp_transcoding_setup(endp, dst_end, src_end);
|
||||
if (rc < 0) {
|
||||
printf("setup failed: %s", strerror(-rc));
|
||||
abort();
|
||||
}
|
||||
|
||||
*out_ctx = cfg;
|
||||
*out_endp = endp;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int transcode_test(const char *srcfmt, const char *dstfmt,
|
||||
uint8_t *src_pkts, size_t src_pkt_size)
|
||||
{
|
||||
char buf[4096] = {0x80, 0};
|
||||
int rc;
|
||||
void *ctx;
|
||||
|
||||
struct mgcp_rtp_end *dst_end;
|
||||
struct mgcp_rtp_end *src_end;
|
||||
struct mgcp_trunk_config tcfg = {{0}};
|
||||
struct mgcp_endpoint endp = {0};
|
||||
struct mgcp_process_rtp_state *state;
|
||||
struct mgcp_endpoint *endp;
|
||||
int in_size;
|
||||
int in_samples = 160;
|
||||
const int in_samples = 160;
|
||||
int len, cont;
|
||||
|
||||
printf("== Transcoding test ==\n");
|
||||
printf("converting %s -> %s\n", srcfmt, dstfmt);
|
||||
|
||||
tcfg.endpoints = &endp;
|
||||
tcfg.number_endpoints = 1;
|
||||
endp.tcfg = &tcfg;
|
||||
mgcp_free_endp(&endp);
|
||||
|
||||
dst_end = &endp.bts_end;
|
||||
src_end = &endp.net_end;
|
||||
|
||||
src_end->payload_type = audio_name_to_type(srcfmt);
|
||||
dst_end->payload_type = audio_name_to_type(dstfmt);
|
||||
|
||||
rc = mgcp_transcoding_setup(&endp, dst_end, src_end);
|
||||
if (rc < 0)
|
||||
errx(1, "setup failed: %s", strerror(-rc));
|
||||
given_configured_endpoint(in_samples, 0, srcfmt, dstfmt, &ctx, &endp);
|
||||
|
||||
dst_end = &endp->bts_end;
|
||||
state = dst_end->rtp_process_data;
|
||||
OSMO_ASSERT(state != NULL);
|
||||
|
||||
|
@ -182,10 +217,12 @@ static int transcode_test(const char *srcfmt, const char *dstfmt,
|
|||
|
||||
len = src_pkt_size;
|
||||
|
||||
cont = mgcp_transcoding_process_rtp(&endp, dst_end,
|
||||
cont = mgcp_transcoding_process_rtp(endp, dst_end,
|
||||
buf, &len, sizeof(buf));
|
||||
if (cont < 0)
|
||||
errx(1, "processing failed: %s", strerror(-cont));
|
||||
if (cont < 0) {
|
||||
printf("processing failed: %s", strerror(-cont));
|
||||
abort();
|
||||
}
|
||||
|
||||
if (len < 24) {
|
||||
printf("encoded: %s\n", osmo_hexdump((unsigned char *)buf, len));
|
||||
|
@ -203,18 +240,18 @@ static int transcode_test(const char *srcfmt, const char *dstfmt,
|
|||
printf("\n");
|
||||
} while (nchars - prefix >= cutlen);
|
||||
}
|
||||
printf("counted: %d\n", cont);
|
||||
talloc_free(ctx);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int test_repacking(int in_samples, int out_samples, int no_transcode)
|
||||
{
|
||||
char buf[4096] = {0x80, 0};
|
||||
int cc, rc;
|
||||
struct mgcp_rtp_end *dst_end;
|
||||
struct mgcp_rtp_end *src_end;
|
||||
struct mgcp_config *cfg;
|
||||
struct mgcp_trunk_config tcfg = {{0}};
|
||||
struct mgcp_endpoint endp = {0};
|
||||
int cc;
|
||||
struct mgcp_endpoint *endp;
|
||||
void *ctx;
|
||||
|
||||
struct mgcp_process_rtp_state *state;
|
||||
int in_cnt;
|
||||
int out_size;
|
||||
|
@ -224,36 +261,12 @@ static int test_repacking(int in_samples, int out_samples, int no_transcode)
|
|||
const char *srcfmt = "pcma";
|
||||
const char *dstfmt = no_transcode ? "pcma" : "l16";
|
||||
|
||||
cfg = mgcp_config_alloc();
|
||||
|
||||
tcfg.endpoints = &endp;
|
||||
tcfg.number_endpoints = 1;
|
||||
tcfg.cfg = cfg;
|
||||
endp.tcfg = &tcfg;
|
||||
endp.cfg = cfg;
|
||||
mgcp_free_endp(&endp);
|
||||
|
||||
dst_end = &endp.bts_end;
|
||||
src_end = &endp.net_end;
|
||||
|
||||
printf("== Transcoding test ==\n");
|
||||
printf("converting %s -> %s\n", srcfmt, dstfmt);
|
||||
|
||||
src_end->payload_type = audio_name_to_type(srcfmt);
|
||||
dst_end->payload_type = audio_name_to_type(dstfmt);
|
||||
given_configured_endpoint(in_samples, out_samples, srcfmt, dstfmt, &ctx, &endp);
|
||||
|
||||
if (out_samples) {
|
||||
dst_end->frame_duration_den = dst_end->rate;
|
||||
dst_end->frame_duration_num = out_samples;
|
||||
dst_end->frames_per_packet = 1;
|
||||
dst_end->force_output_ptime = 1;
|
||||
}
|
||||
|
||||
rc = mgcp_transcoding_setup(&endp, dst_end, src_end);
|
||||
if (rc < 0)
|
||||
errx(1, "setup failed: %s", strerror(-rc));
|
||||
|
||||
state = dst_end->rtp_process_data;
|
||||
state = endp->bts_end.rtp_process_data;
|
||||
OSMO_ASSERT(state != NULL);
|
||||
|
||||
in_size = mgcp_transcoding_get_frame_size(state, in_samples, 0);
|
||||
|
@ -262,7 +275,7 @@ static int test_repacking(int in_samples, int out_samples, int no_transcode)
|
|||
out_size = mgcp_transcoding_get_frame_size(state, -1, 1);
|
||||
OSMO_ASSERT(sizeof(buf) >= out_size + 12);
|
||||
|
||||
buf[1] = src_end->payload_type;
|
||||
buf[1] = endp->net_end.payload_type;
|
||||
*(uint16_t*)(buf+2) = htons(1);
|
||||
*(uint32_t*)(buf+4) = htonl(0);
|
||||
*(uint32_t*)(buf+8) = htonl(0xaabbccdd);
|
||||
|
@ -287,24 +300,28 @@ static int test_repacking(int in_samples, int out_samples, int no_transcode)
|
|||
len = cc;
|
||||
|
||||
do {
|
||||
cont = mgcp_transcoding_process_rtp(&endp, dst_end,
|
||||
cont = mgcp_transcoding_process_rtp(endp, &endp->bts_end,
|
||||
buf, &len, sizeof(buf));
|
||||
if (cont == -EAGAIN) {
|
||||
fprintf(stderr, "Got EAGAIN\n");
|
||||
break;
|
||||
}
|
||||
|
||||
if (cont < 0)
|
||||
errx(1, "processing failed: %s", strerror(-cont));
|
||||
if (cont < 0) {
|
||||
printf("processing failed: %s", strerror(-cont));
|
||||
abort();
|
||||
}
|
||||
|
||||
len -= 12; /* ignore RTP header */
|
||||
|
||||
printf("got %d %s output frames (%d octets)\n",
|
||||
len / out_size, dstfmt, len);
|
||||
printf("got %d %s output frames (%d octets) count=%d\n",
|
||||
len / out_size, dstfmt, len, cont);
|
||||
|
||||
len = cont;
|
||||
} while (len > 0);
|
||||
}
|
||||
|
||||
talloc_free(ctx);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -23,12 +23,14 @@ encoded:
|
|||
5a 9e 40 13 00 00 bf ed a5 62 bf ed 00 00 40 13
|
||||
5a 9e 40 13 00 00 bf ed a5 62 bf ed 00 00 40 13
|
||||
5a 9e 40 13 00 00 bf ed a5 62 bf ed
|
||||
counted: 0
|
||||
== Transcoding test ==
|
||||
converting l16 -> gsm
|
||||
encoded:
|
||||
80 0b 00 00 00 00 00 a0 11 22 33 44 d4 7c e3 e9
|
||||
62 50 39 f0 f8 b4 68 ea 6c 0e 81 1b 56 2a d5 bc
|
||||
69 9c d1 f0 66 7a ec 49 7a 33 3d 0a de
|
||||
counted: 12
|
||||
== Transcoding test ==
|
||||
converting l16 -> pcma
|
||||
encoded:
|
||||
|
@ -43,6 +45,7 @@ encoded:
|
|||
d5 25 23 25 d5 a5 a3 a5 d5 25 23 25 d5 a5 a3 a5
|
||||
d5 25 23 25 d5 a5 a3 a5 d5 25 23 25 d5 a5 a3 a5
|
||||
d5 25 23 25 d5 a5 a3 a5 d5 25 23 25
|
||||
counted: 12
|
||||
== Transcoding test ==
|
||||
converting gsm -> l16
|
||||
encoded:
|
||||
|
@ -67,12 +70,14 @@ encoded:
|
|||
4e 80 3c e0 06 10 cb 90 ae 48 c2 60 f9 58 34 08
|
||||
4d a0 3a a8 06 48 cf 80 b4 60 c3 e8 f7 90 30 18
|
||||
4d a0 3b 98 07 90 cf 18 b4 68 c4 88
|
||||
counted: 12
|
||||
== Transcoding test ==
|
||||
converting gsm -> gsm
|
||||
encoded:
|
||||
80 03 00 01 00 00 00 a0 11 22 33 44 d4 7c e3 e9
|
||||
62 50 39 f0 f8 b4 68 ea 6c 0e 81 1b 56 2a d5 bc
|
||||
69 9c d1 f0 66 7a ec 49 7a 33 3d 0a de
|
||||
counted: 0
|
||||
== Transcoding test ==
|
||||
converting gsm -> pcma
|
||||
encoded:
|
||||
|
@ -87,6 +92,7 @@ encoded:
|
|||
db 39 20 3b 4a b9 a1 b9 c8 3f 26 38 78 be a1 b8
|
||||
f1 3e 26 38 65 bc a6 bb ed 3f 21 3b 6f bf a6 b8
|
||||
ec 3d 27 3b 15 bd a6 b8 eb 3d 27 38
|
||||
counted: 12
|
||||
== Transcoding test ==
|
||||
converting pcma -> l16
|
||||
encoded:
|
||||
|
@ -111,12 +117,14 @@ encoded:
|
|||
5a 00 42 00 00 08 be 00 a6 00 be 00 00 08 42 00
|
||||
5a 00 42 00 00 08 be 00 a6 00 be 00 00 08 42 00
|
||||
5a 00 42 00 00 08 be 00 a6 00 be 00
|
||||
counted: 12
|
||||
== Transcoding test ==
|
||||
converting pcma -> gsm
|
||||
encoded:
|
||||
80 08 00 00 00 00 00 a0 11 22 33 44 d4 b9 f4 5d
|
||||
d9 50 5a e1 a0 cd 76 ea 52 0e 87 53 ad d4 ea a2
|
||||
0a 63 ca e9 60 79 e2 2a 25 d2 c0 f3 39
|
||||
counted: 12
|
||||
== Transcoding test ==
|
||||
converting pcma -> pcma
|
||||
encoded:
|
||||
|
@ -131,6 +139,7 @@ encoded:
|
|||
d5 25 23 25 d5 a5 a3 a5 d5 25 23 25 d5 a5 a3 a5
|
||||
d5 25 23 25 d5 a5 a3 a5 d5 25 23 25 d5 a5 a3 a5
|
||||
d5 25 23 25 d5 a5 a3 a5 d5 25 23 25
|
||||
counted: 0
|
||||
=== Transcoding Bad Cases ===
|
||||
Invalid size:
|
||||
== Transcoding test ==
|
||||
|
@ -139,6 +148,7 @@ encoded:
|
|||
80 03 00 01 00 00 00 a0 11 22 33 44 d4 7c e3 e9
|
||||
62 50 39 f0 f8 b4 68 ea 6c 0e 81 1b 56 2a d5 bc
|
||||
69 9c d1 f0 66 7a ec 49 7a
|
||||
counted: 0
|
||||
Invalid data:
|
||||
== Transcoding test ==
|
||||
converting gsm -> pcma
|
||||
|
@ -146,6 +156,7 @@ encoded:
|
|||
80 03 00 01 00 00 00 a0 11 22 33 44 ee ee ee ee
|
||||
ee ee ee ee ee ee ee ee ee ee ee ee ee ee ee ee
|
||||
ee ee ee ee ee ee ee ee ee ee ee ee ee
|
||||
counted: 0
|
||||
Invalid payload type:
|
||||
== Transcoding test ==
|
||||
converting gsm -> pcma
|
||||
|
@ -161,374 +172,375 @@ encoded:
|
|||
db 39 20 3b 4a b9 a1 b9 c8 3f 26 38 78 be a1 b8
|
||||
f1 3e 26 38 65 bc a6 bb ed 3f 21 3b 6f bf a6 b8
|
||||
ec 3d 27 3b 15 bd a6 b8 eb 3d 27 38
|
||||
counted: 12
|
||||
=== Repacking ===
|
||||
== Transcoding test ==
|
||||
converting pcma -> l16
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 l16 output frames (320 octets)
|
||||
got 2 l16 output frames (320 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> pcma
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 2 pcma output frames (160 octets)
|
||||
got 2 pcma output frames (160 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> l16
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> pcma
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> l16
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 l16 output frames (640 octets)
|
||||
got 4 l16 output frames (640 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> pcma
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 4 pcma output frames (320 octets)
|
||||
got 4 pcma output frames (320 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> l16
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 l16 output frames (480 octets)
|
||||
got 3 l16 output frames (480 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> pcma
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
generating 160 pcma input samples
|
||||
got 3 pcma output frames (240 octets)
|
||||
got 3 pcma output frames (240 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> l16
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets)
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
got 1 l16 output frames (160 octets) count=12
|
||||
== Transcoding test ==
|
||||
converting pcma -> pcma
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
generating 160 pcma input samples
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets)
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
got 1 pcma output frames (80 octets) count=12
|
||||
|
|
Loading…
Reference in New Issue