# HG changeset patch # User alexc # Date 1270708055 0 # Node ID fa81ba4670ea0a3650ff3ae4cf050fe79620d130 # Parent 480a999ce2c4145a3bfceb30d738aea647c95fde Print an error and skip PS when PS is found but explicitly found but signaled to be absent. diff -r 480a999ce2c4 -r fa81ba4670ea aacsbr.c --- a/aacsbr.c Thu Apr 08 06:04:41 2010 +0000 +++ b/aacsbr.c Thu Apr 08 06:27:35 2010 +0000 @@ -897,6 +897,11 @@ //TODO - implement ps_data for parametric stereo parsing switch (bs_extension_id) { case EXTENSION_ID_PS: + if (!ac->m4ac.ps) { + av_log(ac->avccontext, AV_LOG_ERROR, "Parametric Stereo signaled to be not-present but was found in the bitstream.\n"); + skip_bits_long(gb, *num_bits_left); // bs_fill_bits + *num_bits_left = 0; + } else { #if 0 *num_bits_left -= ff_ps_data(gb, ps); #else @@ -904,6 +909,7 @@ skip_bits_long(gb, *num_bits_left); // bs_fill_bits *num_bits_left = 0; #endif + } break; default: av_log_missing_feature(ac->avccontext, "Reserved SBR extensions are", 1);