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

Michael Niedermayer michael at niedermayer.cc
Sun Sep 9 03:12:28 EEST 2018


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.



[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

I do not agree with what you have to say, but I'll defend to the death your
right to say it. -- Voltaire
-------------- 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/b54748a6/attachment.sig>


More information about the ffmpeg-devel mailing list