mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 18:21:04 +00:00
opus: make it build against current, and remove cruft
https://bugzilla.gnome.org/show_bug.cgi?id=660364
This commit is contained in:
parent
e4856a2965
commit
ae510870e9
2 changed files with 19 additions and 83 deletions
|
@ -566,7 +566,7 @@ static GstFlowReturn
|
|||
opus_dec_chain_parse_header (GstOpusDec * dec, GstBuffer * buf)
|
||||
{
|
||||
GstCaps *caps;
|
||||
//gint error = OPUS_OK;
|
||||
int err;
|
||||
|
||||
#if 0
|
||||
dec->samples_per_frame = opus_packet_get_samples_per_frame (
|
||||
|
@ -578,42 +578,10 @@ opus_dec_chain_parse_header (GstOpusDec * dec, GstBuffer * buf)
|
|||
goto invalid_header;
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#ifdef HAVE_OPUS_0_7
|
||||
dec->mode =
|
||||
opus_mode_create (dec->sample_rate, dec->header.frame_size, &error);
|
||||
#else
|
||||
dec->mode =
|
||||
opus_mode_create (dec->sample_rate, dec->header.nb_channels,
|
||||
dec->header.frame_size, &error);
|
||||
#endif
|
||||
if (!dec->mode)
|
||||
goto mode_init_failed;
|
||||
|
||||
/* initialize the decoder */
|
||||
#ifdef HAVE_OPUS_0_11
|
||||
dec->state =
|
||||
opus_decoder_create_custom (dec->mode, dec->header.nb_channels, &error);
|
||||
#else
|
||||
#ifdef HAVE_OPUS_0_7
|
||||
dec->state = opus_decoder_create (dec->mode, dec->header.nb_channels, &error);
|
||||
#else
|
||||
dec->state = opus_decoder_create (dec->mode);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
dec->state = opus_decoder_create (dec->sample_rate, dec->n_channels);
|
||||
if (!dec->state)
|
||||
dec->state = opus_decoder_create (dec->sample_rate, dec->n_channels, &err);
|
||||
if (!dec->state || err != OPUS_OK)
|
||||
goto init_failed;
|
||||
|
||||
#if 0
|
||||
#ifdef HAVE_OPUS_0_8
|
||||
dec->frame_size = dec->header.frame_size;
|
||||
#else
|
||||
opus_mode_info (dec->mode, OPUS_GET_FRAME_SIZE, &dec->frame_size);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
dec->frame_duration = gst_util_uint64_scale_int (dec->frame_size,
|
||||
GST_SECOND, dec->sample_rate);
|
||||
|
||||
|
@ -711,7 +679,7 @@ opus_dec_chain_parse_data (GstOpusDec * dec, GstBuffer * buf,
|
|||
guint8 *data;
|
||||
GstBuffer *outbuf;
|
||||
gint16 *out_data;
|
||||
int n;
|
||||
int n, err;
|
||||
|
||||
if (timestamp != -1) {
|
||||
dec->segment.last_stop = timestamp;
|
||||
|
@ -721,7 +689,9 @@ opus_dec_chain_parse_data (GstOpusDec * dec, GstBuffer * buf,
|
|||
if (dec->state == NULL) {
|
||||
GstCaps *caps;
|
||||
|
||||
dec->state = opus_decoder_create (dec->sample_rate, dec->n_channels);
|
||||
dec->state = opus_decoder_create (dec->sample_rate, dec->n_channels, &err);
|
||||
if (!dec->state || err != OPUS_OK)
|
||||
goto creation_failed;
|
||||
|
||||
/* set caps */
|
||||
caps = gst_caps_new_simple ("audio/x-raw-int",
|
||||
|
@ -805,6 +775,10 @@ opus_dec_chain_parse_data (GstOpusDec * dec, GstBuffer * buf,
|
|||
GST_DEBUG_OBJECT (dec, "flow: %s", gst_flow_get_name (res));
|
||||
|
||||
return res;
|
||||
|
||||
creation_failed:
|
||||
GST_ERROR_OBJECT (dec, "Failed to create Opus decoder: %d", err);
|
||||
return GST_FLOW_ERROR;
|
||||
}
|
||||
|
||||
static GstFlowReturn
|
||||
|
|
|
@ -63,7 +63,7 @@ gst_opus_enc_bandwidth_get_type (void)
|
|||
{OPUS_BANDWIDTH_WIDEBAND, "Wide band", "wideband"},
|
||||
{OPUS_BANDWIDTH_SUPERWIDEBAND, "Super wide band", "superwideband"},
|
||||
{OPUS_BANDWIDTH_FULLBAND, "Full band", "fullband"},
|
||||
{OPUS_BANDWIDTH_AUTO, "Auto", "auto"},
|
||||
{OPUS_AUTO, "Auto", "auto"},
|
||||
{0, NULL, NULL}
|
||||
};
|
||||
static volatile GType id = 0;
|
||||
|
@ -664,62 +664,24 @@ gst_opus_enc_create_metadata_buffer (GstOpusEnc * enc)
|
|||
static gboolean
|
||||
gst_opus_enc_setup (GstOpusEnc * enc)
|
||||
{
|
||||
//gint error = OPUS_OK;
|
||||
int error = OPUS_OK;
|
||||
|
||||
enc->setup = FALSE;
|
||||
|
||||
#if 0
|
||||
#ifdef HAVE_OPUS_0_7
|
||||
enc->mode = opus_mode_create (enc->rate, enc->frame_size, &error);
|
||||
#else
|
||||
enc->mode =
|
||||
opus_mode_create (enc->rate, enc->n_channels, enc->frame_size, &error);
|
||||
#endif
|
||||
if (!enc->mode)
|
||||
goto mode_initialization_failed;
|
||||
|
||||
#ifdef HAVE_OPUS_0_11
|
||||
opus_header_init (&enc->header, enc->mode, enc->frame_size, enc->n_channels);
|
||||
#else
|
||||
#ifdef HAVE_OPUS_0_7
|
||||
opus_header_init (&enc->header, enc->mode, enc->n_channels);
|
||||
#else
|
||||
opus_header_init (&enc->header, enc->mode);
|
||||
#endif
|
||||
#endif
|
||||
enc->header.nb_channels = enc->n_channels;
|
||||
|
||||
#ifdef HAVE_OPUS_0_8
|
||||
enc->frame_size = enc->header.frame_size;
|
||||
#else
|
||||
opus_mode_info (enc->mode, OPUS_GET_FRAME_SIZE, &enc->frame_size);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#ifdef HAVE_OPUS_0_11
|
||||
enc->state = opus_encoder_create_custom (enc->mode, enc->n_channels, &error);
|
||||
#else
|
||||
#ifdef HAVE_OPUS_0_7
|
||||
enc->state = opus_encoder_create (enc->mode, enc->n_channels, &error);
|
||||
#else
|
||||
enc->state = opus_encoder_create (enc->mode);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
enc->state = opus_encoder_create (enc->sample_rate, enc->n_channels,
|
||||
enc->audio_or_voip ? OPUS_APPLICATION_AUDIO : OPUS_APPLICATION_VOIP);
|
||||
if (!enc->state)
|
||||
enc->audio_or_voip ? OPUS_APPLICATION_AUDIO : OPUS_APPLICATION_VOIP,
|
||||
&error);
|
||||
if (!enc->state || error != OPUS_OK)
|
||||
goto encoder_creation_failed;
|
||||
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_BITRATE (enc->bitrate), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_BANDWIDTH (enc->bandwidth), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_VBR_FLAG (!enc->cbr), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_VBR (!enc->cbr), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_VBR_CONSTRAINT (enc->constrained_vbr),
|
||||
0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_COMPLEXITY (enc->complexity), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_INBAND_FEC_FLAG (enc->inband_fec), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_DTX_FLAG (enc->dtx), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_INBAND_FEC (enc->inband_fec), 0);
|
||||
opus_encoder_ctl (enc->state, OPUS_SET_DTX (enc->dtx), 0);
|
||||
opus_encoder_ctl (enc->state,
|
||||
OPUS_SET_PACKET_LOSS_PERC (enc->packet_loss_percentage), 0);
|
||||
|
||||
|
|
Loading…
Reference in a new issue