Browse Source

avcodec/opus: set skip_samples

Also update fate test. Fixes #5258.
tags/n4.2
Paul B Mahol 6 years ago
parent
commit
18aea7bdd9
2 changed files with 3 additions and 1 deletions
  1. +2
    -1
      libavcodec/opus.c
  2. +1
    -0
      tests/fate/opus.mak

+ 2
- 1
libavcodec/opus.c View File

@@ -31,6 +31,7 @@

#include "opus_celt.h"
#include "opustab.h"
#include "internal.h"
#include "vorbis.h"

static const uint16_t opus_frame_duration[32] = {
@@ -325,7 +326,7 @@ av_cold int ff_opus_parse_extradata(AVCodecContext *avctx,
return AVERROR_PATCHWELCOME;
}

avctx->delay = AV_RL16(extradata + 10);
avctx->delay = avctx->internal->skip_samples = AV_RL16(extradata + 10);

channels = avctx->extradata ? extradata[9] : (avctx->channels == 1) ? 1 : 2;
if (!channels) {


+ 1
- 0
tests/fate/opus.mak View File

@@ -36,6 +36,7 @@ fate-opus-testvector09: CMP_TARGET = 0
fate-opus-testvector10: CMP_TARGET = 38
fate-opus-testvector11: CMP_TARGET = 0
fate-opus-testvector12: CMP_TARGET = 160
fate-opus-tron.6ch.tinypkts: CMP_SHIFT = 1440
fate-opus-tron.6ch.tinypkts: CMP_TARGET = 0

$(FATE_OPUS_CELT): CMP = oneoff


Loading…
Cancel
Save