msg_Dbg( p_dec, "Opus audio with %d channels", p_header->channels);
if((p_header->channels>2 && p_header->channel_mapping==0) ||
- (p_header->channels>8 && p_header->channel_mapping==1) ||
+ p_header->channels>8 ||
p_header->channel_mapping>1)
{
msg_Err( p_dec, "Unsupported channel mapping" );
p_dec->fmt_out.audio.i_channels = p_header->channels;
p_dec->fmt_out.audio.i_rate = 48000;
- if( p_header->channels>2 && p_header->channels<9 )
+ if( p_header->channels>2 )
{
static const uint32_t *pi_ch[6] = { pi_3channels_in, pi_4channels_in,
pi_5channels_in, pi_6channels_in,
/* Now that we have preskip, we can write the header to extradata */
if (opus_write_header((uint8_t **) &enc->fmt_out.p_extra,
- &enc->fmt_out.i_extra, &header))
+ &enc->fmt_out.i_extra, &header, opus_get_version_string()))
{
msg_Err(enc, "Failed to write header.");
status = VLC_ENOMEM;