[FFmpeg-devel] [PATCH] add phqm filter and img_hash

Christopher Kennedy ckennedy at ellation.com
Sat Oct 26 16:34:55 EEST 2019


On Sat, Oct 26, 2019 at 8:22 AM Paul B Mahol <onemda at gmail.com> wrote:
>
> On 10/26/19, Christopher Kennedy <ckennedy at ellation.com> wrote:
> > This is a reference/encode comparison filter with two files input like
> > the psnr or vmaf filter.
> > So it is completely different and uses the C++ OpenCV API since this
> > img_hash library is not in the C API.
> > It's unique to what the OCV filter does, and has more research
> > implications from my talk at Demuxed 2019.
>
> I do not see how that is relevant.
>
> There should be generic opencv filter which could do this above in
> generic way, and not by adding yet another filter that uses only some
> part of opencv.

Is it really possible to do framesync() operations like dual input filters
like psnr/vmaf and also handle input/output rendering of the frames too?
This sounds odd to me but I would love to understand how this is possible.

The C OpenCV API is not recommended so this does the OpenCV part
in C++ which allows it to be fully utilized and supported. So that seems
better to me than using the API OpenCV won't really support and doesn't
allow usage of img_hash (it is NOT in the C API of OpenCV, impossible to use).

The OpenCV C++ img_hash library is the fastest implementation and does
work best in OpenCV. So implementing this in C directly isn't a task I believe
is good to do.

So should the current OpenCV stuff be merged into this filter, is that possible?
If so, then your saying the PSNR filter could also alter frames and output them
too from the reference/encode or one or the other? I need to understand this
better, I want to make it right so am listening.

Thanks
Christopher

>
> >
> > Christopher
> >
> > On Sat, Oct 26, 2019 at 7:38 AM Paul B Mahol <onemda at gmail.com> wrote:
> >>
> >> Why is this not generic filter like already existing opencv filter?
> >>
> >> On 10/26/19, ckennedy at ellation.com <ckennedy at ellation.com> wrote:
> >> > From: Christopher Kennedy <ckennedy at ellation.com>
> >> >
> >> > this adds a phqm filter and OpenCV img_hash based resource usable
> >> > by the phqm and future filters using image hash functionality
> >> > from OpenCV.
> >> >
> >> > C++ to C handling so that full OpenCV functionality and API can
> >> > be used instead of the C versions (which are incomplete and
> >> > don't always exist).
> >> >
> >> > Example command line:
> >> >
> >> > ffmpeg -i encode.mp4 -i reference.mp4 \
> >> >            -filter_complex "[0:v][1:v]phqm=stats_file=out.log" \
> >> >            -y -f null /dev/null
> >> >
> >> > Signed-off-by: Christopher Kennedy <ckennedy at ellation.com>
> >> >
> >> > _______________________________________________
> >> > ffmpeg-devel mailing list
> >> > ffmpeg-devel at ffmpeg.org
> >> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >> >
> >> > To unsubscribe, visit link above, or email
> >> > ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> >


More information about the ffmpeg-devel mailing list