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

Timo Rothenpieler timo at rothenpieler.org
Sun Sep 9 12:31:49 EEST 2018


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.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4538 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20180909/8ed2da8d/attachment.bin>


More information about the ffmpeg-devel mailing list