[FFmpeg-devel] [PATCH] vp9: add superframe merging bitstream filter.

Ronald S. Bultje rsbultje at gmail.com
Fri Feb 19 22:28:44 CET 2016


Hi,

On Fri, Feb 19, 2016 at 3:48 PM, Michael Niedermayer <michael at niedermayer.cc
> wrote:

> On Fri, Feb 19, 2016 at 02:43:48PM -0500, Ronald S. Bultje wrote:
> > Fixes ticket 4313.
> > ---
> >  ffmpeg.c                        |   3 +
> >  libavcodec/Makefile             |   1 +
> >  libavcodec/allcodecs.c          |   1 +
> >  libavcodec/vp9_superframe_bsf.c | 189
> ++++++++++++++++++++++++++++++++++++++++
> >  libavformat/ivfenc.c            |  13 +++
> >  libavformat/matroskaenc.c       |   5 +-
> >  libavformat/mux.c               |  24 ++---
> >  libavformat/utils.c             |   5 ++
> >  8 files changed, 229 insertions(+), 12 deletions(-)
> >  create mode 100644 libavcodec/vp9_superframe_bsf.c
>
> breaks fate
>
>     acodec-flac-exact-rice
> TEST    acodec-g723_1
> TEST    acodec-ra144
> --- ./tests/ref/acodec/flac     2016-02-17 05:18:12.137817721 +0100
> +++ tests/data/fate/acodec-flac 2016-02-19 21:47:18.898708417 +0100
> @@ -1,4 +1,4 @@
> -151eef9097f944726968bec48649f00a *tests/data/fate/acodec-flac.flac
> +451ae98137ad04bf6c16c9fc6a862012 *tests/data/fate/acodec-flac.flac
>  361582 tests/data/fate/acodec-flac.flac
>  95e54b261530a1bcf6de6fe3b21dc5f6 *tests/data/fate/acodec-flac.out.wav
>  stddev:    0.00 PSNR:999.99 MAXDIFF:    0 bytes:  1058400/  1058400
> Test acodec-flac failed. Look at tests/data/fate/acodec-flac.err for
> details.
> make: *** [fate-acodec-flac] Error 1
> make: *** Waiting for unfinished jobs....
> --- ./tests/ref/acodec/flac-exact-rice  2016-02-19 02:07:54.745217610 +0100
> +++ tests/data/fate/acodec-flac-exact-rice      2016-02-19
> 21:47:18.934708417 +0100
> @@ -1,4 +1,4 @@
> -aab144de213ae684ca008a3e0afe5e28
> *tests/data/fate/acodec-flac-exact-rice.flac
> +14f0ff901a80f1c27989187f981277f4
> *tests/data/fate/acodec-flac-exact-rice.flac
>  360454 tests/data/fate/acodec-flac-exact-rice.flac
>  95e54b261530a1bcf6de6fe3b21dc5f6
> *tests/data/fate/acodec-flac-exact-rice.out.wav
>  stddev:    0.00 PSNR:999.99 MAXDIFF:    0 bytes:  1058400/  1058400


Hm, OK, so flac abuses empty packets for extradata updates in raw flac as
container. So I guess I need some novel way to signal "skip this packet" in
bsfs. Any suggestions? I can come up with something else that's random and
probably slightly hackish but if you have nicer ideas I can work towards
that also.

Ronald


More information about the ffmpeg-devel mailing list