You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rtpengine/t/test-transcode.pl

32 lines
856 B

#!/usr/bin/perl
use strict;
use warnings;
use NGCP::Rtpengine::Test;
use IO::Socket;
my $r = NGCP::Rtpengine::Test->new();
my ($a, $b) = $r->client_pair(
{sockdomain => &Socket::AF_INET, codecs => [qw(PCMU)], no_data_check => 1},
{sockdomain => &Socket::AF_INET, codecs => [qw(G722)], no_data_check => 1}
);
$r->timer_once(3, sub {
$b->answer($a, ICE => 'remove', label => "callee");
$a->remote_codecs() eq 'PCMU/8000/1' or die;
$a->send_codecs() eq 'PCMU/8000/1' or die;
$a->start_rtp();
$a->start_rtcp();
});
$r->timer_once(10, sub { $r->stop(); });
$a->offer($b, ICE => 'remove', label => "caller", codec => { transcode => ['G722']}, flags => [qw(record-call)]);
$b->remote_codecs() eq 'PCMU/8000/1,G722/8000/1' or die;
$b->send_codecs() eq 'G722/8000/1' or die;
$b->start_rtp();
$b->start_rtcp();
$r->run();
$a->teardown(dump => 1);