TT#31409 TT#31408 TT#30901 eliminate silly codec def macros

Change-Id: Iab6b735728319210d6c8e45ef14c2044cab44525
changes/66/18766/4
Richard Fuchs 8 years ago
parent 266a1fbc8b
commit 82e0c55aae

@ -31,63 +31,261 @@ packetizer_f packetizer_samplestream; // flat stream of samples
#define CODEC_DEF_FULL(ref, codec_id, mult, name, clockrate, channels, bitrate, ptime, pizer, bps) { \
.rtpname = #ref, \
.avcodec_id = codec_id, \
.clockrate_mult = mult, \
.avcodec_name = #name, \
.default_clockrate = clockrate, \
.default_channels = channels, \
.default_bitrate = bitrate, \
.default_ptime = ptime, \
.packetizer = packetizer_ ## pizer, \
.bits_per_sample = bps, \
}
#define CODEC_DEF_AVC(ref, id, mult, name, clockrate, channels, bitrate, ptime, pizer, bps) \
CODEC_DEF_FULL(ref, AV_CODEC_ID_ ## id, mult, name, clockrate, channels, bitrate, ptime, pizer, bps)
#define CODEC_DEF_MULT_NAME(ref, id, mult, name, pizer, bps) CODEC_DEF_AVC(ref, id, mult, name, -1, -1, 0, 0, pizer, bps)
#define CODEC_DEF_MULT(ref, id, mult, pizer, bps) CODEC_DEF_MULT_NAME(ref, id, mult, NULL, pizer, bps)
#define CODEC_DEF_NAME(ref, id, name, pizer, bps) CODEC_DEF_MULT_NAME(ref, id, 1, name, pizer, bps)
#define CODEC_DEF(ref, id, pizer, bps) CODEC_DEF_MULT(ref, id, 1, pizer, bps)
// _ENC macros provided for codecs not having defaults in the RTP RFC
#define CODEC_DEF_NAME_ENC(ref, id, name, clockrate, channels, bitrate, ptime, pizer, bps) \
CODEC_DEF_MULT_NAME_ENC(ref, id, 1, name, clockrate, channels, bitrate, ptime, pizer, bps)
#define CODEC_DEF_MULT_ENC(ref, id, mult, clockrate, channels, bitrate, ptime, pizer, bps) \
CODEC_DEF_MULT_NAME_ENC(ref, id, mult, NULL, clockrate, channels, bitrate, ptime, pizer, bps)
#define CODEC_DEF_ENC(ref, id, clockrate, channels, bitrate, ptime, pizer, bps) \
CODEC_DEF_MULT_ENC(ref, id, 1, clockrate, channels, bitrate, ptime, pizer, bps)
#define CODEC_DEF_MULT_NAME_ENC(ref, id, mult, name, clockrate, channels, bitrate, ptime, pizer, bps) \
CODEC_DEF_AVC(ref, id, mult, name, clockrate, channels, bitrate, ptime, pizer, bps)
// not real audio codecs
#define CODEC_DEF_STUB(ref) CODEC_DEF_FULL(ref, -1, 1, ref, -1, -1, 0, 0, passthrough, 0)
static const struct codec_def_s codecs[] = {
CODEC_DEF(PCMA, PCM_ALAW, samplestream, 8),
CODEC_DEF(PCMU, PCM_MULAW, samplestream, 8),
CODEC_DEF(G723, G723_1, passthrough, 0),
CODEC_DEF_MULT(G722, ADPCM_G722, 2, samplestream, 8),
CODEC_DEF(QCELP, QCELP, passthrough, 0),
CODEC_DEF(G729, G729, passthrough, 0),
CODEC_DEF_ENC(speex, SPEEX, 16000, 1, 11000, 20, passthrough, 0),
CODEC_DEF(GSM, GSM, passthrough, 0),
CODEC_DEF(iLBC, ILBC, passthrough, 0),
CODEC_DEF_NAME_ENC(opus, OPUS, libopus, 48000, 2, 32000, 20, passthrough, 0),
CODEC_DEF_NAME(vorbis, VORBIS, libvorbis, passthrough, 0),
CODEC_DEF(ac3, AC3, passthrough, 0),
CODEC_DEF(eac3, EAC3, passthrough, 0),
CODEC_DEF(ATRAC3, ATRAC3, passthrough, 0),
CODEC_DEF(ATRAC-X, ATRAC3P, passthrough, 0),
{
.rtpname = "PCMA",
.avcodec_id = AV_CODEC_ID_PCM_ALAW,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = 1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_samplestream,
.bits_per_sample = 8,
},
{
.rtpname = "PCMU",
.avcodec_id = AV_CODEC_ID_PCM_MULAW,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = 1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_samplestream,
.bits_per_sample = 8,
},
{
.rtpname = "G723",
.avcodec_id = AV_CODEC_ID_G723_1,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = 1,
.default_bitrate = 0,
.default_ptime = 30,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "G722",
.avcodec_id = AV_CODEC_ID_ADPCM_G722,
.clockrate_mult = 2,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = 1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_samplestream,
.bits_per_sample = 8,
},
{
.rtpname = "QCELP",
.avcodec_id = AV_CODEC_ID_QCELP,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "G729",
.avcodec_id = AV_CODEC_ID_G729,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = 1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "speex",
.avcodec_id = AV_CODEC_ID_SPEEX,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 16000,
.default_channels = 1,
.default_bitrate = 11000,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "GSM",
.avcodec_id = AV_CODEC_ID_GSM,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = 1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "iLBC",
.avcodec_id = AV_CODEC_ID_ILBC,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "opus",
.avcodec_id = AV_CODEC_ID_OPUS,
.clockrate_mult = 1,
.avcodec_name = "libopus",
.default_clockrate = 48000,
.default_channels = 2,
.default_bitrate = 32000,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "vorbis",
.avcodec_id = AV_CODEC_ID_VORBIS,
.clockrate_mult = 1,
.avcodec_name = "libvorbis",
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "ac3",
.avcodec_id = AV_CODEC_ID_AC3,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "eac3",
.avcodec_id = AV_CODEC_ID_EAC3,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "ATRAC3",
.avcodec_id = AV_CODEC_ID_ATRAC3,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "ATRAC-X",
.avcodec_id = AV_CODEC_ID_ATRAC3P,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 0, 0)
CODEC_DEF(EVRC, EVRC, passthrough, 0),
CODEC_DEF(EVRC0, EVRC, passthrough, 0),
CODEC_DEF(EVRC1, EVRC, passthrough, 0),
{
.rtpname = "EVRC",
.avcodec_id = AV_CODEC_ID_EVRC,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = 0,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "EVRC0",
.avcodec_id = AV_CODEC_ID_EVRC,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = -1,
.default_bitrate = -1,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "EVRC1",
.avcodec_id = AV_CODEC_ID_EVRC,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = -1,
.default_bitrate = -1,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
#endif
CODEC_DEF_ENC(AMR, AMR_NB, 8000, 1, 6600, 20, passthrough, 0),
CODEC_DEF_ENC(AMR-WB, AMR_WB, 16000, 1, 14250, 20, passthrough, 0),
CODEC_DEF_STUB(telephone-event),
{
.rtpname = "AMR",
.avcodec_id = AV_CODEC_ID_AMR_NB,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 8000,
.default_channels = 1,
.default_bitrate = 6600,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "AMR-WB",
.avcodec_id = AV_CODEC_ID_AMR_NB,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = 16000,
.default_channels = 1,
.default_bitrate = 14250,
.default_ptime = 20,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
{
.rtpname = "telephone-event",
.avcodec_id = -1,
.clockrate_mult = 1,
.avcodec_name = NULL,
.default_clockrate = -1,
.default_channels = -1,
.default_bitrate = -1,
.default_ptime = -1,
.packetizer = packetizer_passthrough,
.bits_per_sample = 0,
},
};

Loading…
Cancel
Save