[FFmpeg-devel] [PATCH] avfilter: add nvidia NPP based transpose filter

Michael Niedermayer michael at niedermayer.cc
Sun Sep 9 13:16:00 EEST 2018


On Sun, Sep 09, 2018 at 11:31:49AM +0200, Timo Rothenpieler wrote:
> On 9/9/2018 2:12 AM, Michael Niedermayer wrote:
> >On Sat, Sep 08, 2018 at 03:49:29PM +0200, Timo Rothenpieler wrote:
> >>From: Roman Arzumanyan <rarzumanyan at nvidia.com>
> >>
> >>Signed-off-by: Timo Rothenpieler <timo at rothenpieler.org>
> >>---
> >>I'm not overly a fan of a rotate filter that only support 90° angles
> >>either.
> >>So here's my modified version of the original transpose filter, which
> >>now behaves the exact same as the software transpose filter.
> >>
> >>Additionally, I removed the format conversion from the filter. That's
> >>the job of the scale filter, and also saves you from doing pointless
> >>double format conversion if you scale and transpose NV12 video.
> >>Nvenc accepts yuv420p/444p input anyway, and if you really need to, one
> >>can add another scale_npp after to get back nv12.
> >>
> >>A possible commandline for this is:
> >>./ffmpeg.exe -hwaccel cuvid -c:v h264_cuvid -i in.mkv -c copy -c:v h264_nvenc -vf scale_npp=format=yuv420p,transpose_npp=cclock_flip out.mkv
> >>
> >>
> >>  configure                      |   5 +-
> >>  doc/filters.texi               |  55 ++++
> >>  libavfilter/Makefile           |   1 +
> >>  libavfilter/allfilters.c       |   1 +
> >>  libavfilter/version.h          |   2 +-
> >>  libavfilter/vf_transpose_npp.c | 483 +++++++++++++++++++++++++++++++++
> >>  6 files changed, 544 insertions(+), 3 deletions(-)
> >>  create mode 100644 libavfilter/vf_transpose_npp.c
> >
> >breaks build:
> >
> >HTML	doc/ffmpeg-filters.html
> >HTML	doc/ffplay-all.html
> >HTML	doc/ffmpeg-all.html
> >HTML	doc/ffprobe-all.html
> >doc/filters.texi:16290: @ref reference to nonexistent node `transpose'
> >make: *** [doc/ffmpeg-filters.html] Error 1
> >doc/filters.texi:16290: @ref reference to nonexistent node `transpose'
> >doc/filters.texi:16290: @ref reference to nonexistent node `transpose'
> >make: *** [doc/ffplay-all.html] Error 1
> >make: *** [doc/ffprobe-all.html] Error 1
> >doc/filters.texi:16290: @ref reference to nonexistent node `transpose'
> >make: *** [doc/ffmpeg-all.html] Error 1
> >make: Target `all' not remade because of errors.
> >
> 
> What's the correct way to link to another section? I have seen other parts
> use the @ref syntax.

i think this needs a @anchor{transpose} somewhere probably but i didnt read
the "manual" for this stuff so i could be wrong


[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The bravest are surely those who have the clearest vision
of what is before them, glory and danger alike, and yet
notwithstanding go out to meet it. -- Thucydides
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20180909/6503d3e9/attachment.sig>


More information about the ffmpeg-devel mailing list