[FFmpeg-devel] [PATCH 3/3] swscale: ayuv16le output support
Robert Krüger
krueger at lesspain.de
Tue Jul 14 15:43:41 CEST 2015
On Tue, Jul 14, 2015 at 3:17 PM, Paul B Mahol <onemda at gmail.com> wrote:
> Dana 14. 7. 2015. 13:09 osoba "Robert Krüger" <krueger at lesspain.de>
> napisala je:
> >
> > On Mon, Jul 6, 2015 at 3:12 PM, Michael Niedermayer <michaelni at gmx.at>
> > wrote:
> >
> > > On Mon, Jul 06, 2015 at 03:10:41PM +0200, Michael Niedermayer wrote:
> > > > On Mon, Jul 06, 2015 at 11:56:21AM +0000, Paul B Mahol wrote:
> > > > > Signed-off-by: Paul B Mahol <onemda at gmail.com>
> > > > > ---
> > > > > libswscale/output.c | 48
> > > ++++++++++++++++++++++++++++++++
> > > > > libswscale/utils.c | 2 +-
> > > > > tests/ref/fate/filter-pixfmts-copy | 1 +
> > > > > tests/ref/fate/filter-pixfmts-crop | 1 +
> > > > > tests/ref/fate/filter-pixfmts-field | 1 +
> > > > > tests/ref/fate/filter-pixfmts-fieldorder | 1 +
> > > > > tests/ref/fate/filter-pixfmts-hflip | 1 +
> > > > > tests/ref/fate/filter-pixfmts-il | 1 +
> > > > > tests/ref/fate/filter-pixfmts-null | 1 +
> > > > > tests/ref/fate/filter-pixfmts-scale | 1 +
> > > > > tests/ref/fate/filter-pixfmts-vflip | 1 +
> > > > > 11 files changed, 58 insertions(+), 1 deletion(-)
> > > >
> > > > filter-pixfmts-fieldorder
> > > > TEST filter-pixfmts-hflip
> > > > reference file './tests/ref/fate/filter-pixdesc-ayuv16le' not found
> > > > ./tests/fate-run.sh: 282: ./tests/fate-run.sh: cannot open
> > > tests/data/fate/filter-pixdesc-ayuv16le.diff: No such file
> > > > Test filter-pixdesc-ayuv16le failed. Look at
> > > tests/data/fate/filter-pixdesc-ayuv16le.err for details.
> > > > make: *** [fate-filter-pixdesc-ayuv16le] Error 1
> > > >
> > > > patch should be ok otherwise
> > >
> > > (assuming roberts tests find no issues of course)
> > >
> > >
> > Verified that this creates valid input for the Apple Prores Encoder which
> > is great.
> >
> > A side-note: In our transcoding set-up I just quickly compared the
> > performance of that conversion (in the test case from yuv420p ->
> AYUV16LE)
> > is still slower than our previous setup with conversion yuv420p ->
> > YUVA444P10LE using swscale and then doing the YUVA444P10LE -> AYUV16LE
> > conversion in Java but I guess that is because there is no asm for this.
> >
>
> By how much is it slower?
>
>
it's roughly like this (sample is 1080p):
swscale conversion YUV420P -> YUVA444P16LE: 10ms + Java Conversion
YUVA444P16LE -> AYUV16LE: 20ms
vs.
swscale conversion YUV420P -> AYUV16LE: 40ms
So the old variant takes 75% of the time of the new one but it's probably
an unfair comparison if the path YUV420P -> YUVA444P16LE uses asm and the
Java converter in this case only repacks with no subsampling and the JIT
does a decent job at optimizing this.
More information about the ffmpeg-devel
mailing list