[FFmpeg-devel] [GSOC] [PATCH] ESPCN super-resolution

Michael Niedermayer michael at niedermayer.cc
Wed Jun 27 14:11:35 EEST 2018


On Tue, Jun 26, 2018 at 06:48:47PM +0300, Sergey Lavrushkin wrote:
> Hello,
> 
> This patch adds ESPCN super-resolution model to the srcnn filter,
> renamed to sr filter. Scaling is now performed inside the sr filter,
> so it does not require call to scale before it. But for SRCNN model
> scaling factor should be specified.

>  b/configure                        |    8 
>  b/libavfilter/Makefile             |    2 
>  b/libavfilter/allfilters.c         |    2 
>  b/libavfilter/dnn_backend_native.c |  283 
>  b/libavfilter/dnn_backend_tf.c     |   74 
>  b/libavfilter/dnn_espcn.h          |12637 +++++++++++++++++++++++++++++++++++++
>  b/libavfilter/dnn_interface.h      |    4 
>  b/libavfilter/dnn_srcnn.h          |   14 
>  b/libavfilter/vf_sr.c              |  354 +
>  libavfilter/vf_srcnn.c             |  250 
>  10 files changed, 13249 insertions(+), 379 deletions(-)
> eb384c9682c7b731d215cac042f5c75b48943319  adds_espcn_model.patch
> From 9146726c52aa5c3a8c34b25a122a39910b5f4b0b Mon Sep 17 00:00:00 2001
> From: Sergey Lavrushkin <dualfal at gmail.com>
> Date: Thu, 14 Jun 2018 00:37:12 +0300
> Subject: [PATCH] Adds ESPCN super resolution filter merged with SRCNN filter.

this produces some build warnings:
CC	libavfilter/vf_sr.o
libavfilter/vf_sr.c: In function ‘filter_frame’:
libavfilter/vf_sr.c:272:19: warning: passing argument 2 of ‘sws_scale’ from incompatible pointer type [enabled by default]
                   0, sr_context->sws_slice_h, out->data, out->linesize);
                   ^
In file included from libavfilter/vf_sr.c:33:0:
./libswscale/swscale.h:217:5: note: expected ‘const uint8_t * const*’ but argument is of type ‘uint8_t **’
 int sws_scale(struct SwsContext *c, const uint8_t *const srcSlice[],
     ^
libavfilter/vf_sr.c:281:23: warning: passing argument 2 of ‘sws_scale’ from incompatible pointer type [enabled by default]
                       0, sr_context->sws_slice_h, out->data + 1, out->linesize + 1);
                       ^
In file included from libavfilter/vf_sr.c:33:0:
./libswscale/swscale.h:217:5: note: expected ‘const uint8_t * const*’ but argument is of type ‘uint8_t **’
 int sws_scale(struct SwsContext *c, const uint8_t *const srcSlice[],
     ^
libavfilter/vf_sr.c:283:23: warning: passing argument 2 of ‘sws_scale’ from incompatible pointer type [enabled by default]
                       0, sr_context->sws_slice_h, out->data + 2, out->linesize + 2);
                       ^
In file included from libavfilter/vf_sr.c:33:0:
./libswscale/swscale.h:217:5: note: expected ‘const uint8_t * const*’ but argument is of type ‘uint8_t **’
 int sws_scale(struct SwsContext *c, const uint8_t *const srcSlice[],
     ^
[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Good people do not need laws to tell them to act responsibly, while bad
people will find a way around the laws. -- Plato
-------------- 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/20180627/bd427169/attachment.sig>


More information about the ffmpeg-devel mailing list