After seek, s->duration need recalculation, AVCodecParserContext need be set
again. Without the fix, the first audio packet would be dropped after
compute_pkt_fields() as the final pts/dts become invalid.
Signed-off-by: wangxingchao <wangxingchao@xiaomi.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Originally spotted and fixed by one of these developers:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>
See 97962b2 / 72ca830
* commit '458446acfa1441d283dacf9e6e545beb083b8bb0':
lavc: Edge emulation with dst/src linesize
Conflicts:
libavcodec/cavs.c
libavcodec/h264.c
libavcodec/hevc.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/rv34.c
libavcodec/svq3.c
libavcodec/vc1dec.c
libavcodec/videodsp.h
libavcodec/videodsp_template.c
libavcodec/vp3.c
libavcodec/vp8.c
libavcodec/wmv2.c
libavcodec/x86/videodsp.asm
libavcodec/x86/videodsp_init.c
Changes to the asm are not merged, they are left for volunteers or
in their absence for later.
The changes this merge introduces are reordering of the function
arguments
See: face578d56c2d1375e40d5e2a28acc122132bc55
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '3cbe1126530449336e2ce59b194bdb8c4eb4abb4':
dv: Split DV data table declarations into their own header
Conflicts:
libavcodec/dvdata.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Originally written by Ronald S. Bultje <rsbultje@gmail.com> and
Clément Bœsch <u@pkh.me>
Further contributions by:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Allow supporting files for which the image stride is smaller than
the maximum block size + number of subpel mc taps, e.g. a 64x64 VP9
file or a 16x16 VP8 file with -fflags +emu_edge.
This is necessary to avoid target config settings bleeding into the host
compilation process with hardcoded tables and the DV VLC tables no longer
present as static tables in a header file.
* commit '1afa8a7568ba57ad0cd2923f6e641e10d32cded4':
twinvq: support multiple frames per packet
Conflicts:
libavcodec/twinvq.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '7b9780e7bf9d86e3e4e9606a971bb2d0d718bac2':
mpeg12dec: Remove unused swap_uv member from Mpeg1Context
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'b6094811f9fca66cdf853420696e96fdc3e4987a':
lavc: move MB_TYPE_* macros from avcodec.h to mpegvideo.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'b45c87083de67969c1598cfef41e7c947b137922':
lavc: schedule unused FF_QSCALE_TYPE_* for removal on next bump
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '8941971a8f2e24b9a84fe29f128d13ceb89c0a65':
lavc: make error_rate a private option of mpegvideo encoders
Conflicts:
libavcodec/options_table.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit '728c4658563dc82115ade0f1679679eddb7be5ff':
vdpau: add a constructor for AVVDPAUContext.
Conflicts:
libavcodec/vdpau.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'ca22d1dea2842fca0422dd1d2bd09e7eb2c8f118':
vdpau: add a convenience function for getting a decoder profile.
Conflicts:
doc/APIchanges
libavcodec/vdpau.c
libavcodec/vdpau.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
The not handling of frame gaps has lead to the lack of a dummy reference
frame, which has lead to the failure of decode_slice_header() which has
lead to one SEI recovery message being skiped which had introduced a
slightly suboptimal recovery point for at least 1 h264 file compared to
JM.
Found-by: Carl & BugMaster
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* commit 'c7f7bfc9e3a3150ba72bc34366c13fb2210c66ac':
Remove all Alpha architecture optimizations
Conflicts:
libavcodec/alpha/asm.h
libavcodec/alpha/dsputil_alpha.c
libavcodec/alpha/dsputil_alpha.h
libavcodec/alpha/dsputil_alpha_asm.S
libavcodec/alpha/hpeldsp_alpha.c
libavcodec/alpha/hpeldsp_alpha.h
libavcodec/alpha/hpeldsp_alpha_asm.S
libavcodec/alpha/motion_est_alpha.c
libavcodec/alpha/motion_est_mvi_asm.S
libavcodec/alpha/mpegvideo_alpha.c
libavcodec/alpha/regdef.h
libavcodec/alpha/simple_idct_alpha.c
We have a qemu based fate alpha client. And various failures
on alpha have previously pointed to issues in generic C code.
Thus IMHO it makes sense to keep alpha code as long as someone
is willing to do the little bit of maintaince it needs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
XvMC has long ago been superseded by newer acceleration APIs, such as
VDPAU, and few downstreams still support it. Furthermore XvMC is not
implemented within the hwaccel framework, but requires its own specific
code in the MPEG-1/2 decoder, which is a maintenance burden.
This allows for updating metadata from new metadata packets in the
middle of a stream (e.g., MPD streams). There still needs to be a signal
that there *is* new metadata, but this is at least gets the data into a
data structure.
Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>