[Kwiver-users] KWIVER Docker Usage: KWIVER_PLUGIN_PATH

David Stoup david.stoup at kitware.com
Mon Sep 7 14:18:36 EDT 2020


Excellent Bane, glad it's working for you! We changed the PR a little bit
to decrease the impact it has on kwiver. Now it just changes the CMake
variable it uses to see if fletch enabled FFmpeg and a few of the comment
spelling issues. Matt suggested we leave the kwiver FFMPEG variables alone
for now and make a decision about that on a separate PR.

On Mon, Sep 7, 2020 at 12:03 PM Bane Sullivan <bane.sullivan at kitware.com>
wrote:

> David, that PR works perfectly for me! I built Kwiver and published an
> image on DokerHub that I will use for now:
> https://hub.docker.com/repository/docker/banesullivan/kwiver/tags
> <https://hub.docker.com/repository/docker/banesullivan/kwiver/tags?page=1>
>
> Now I just need to write a parser the KLV metadata to make sense of the
> spatial reference.
>
> Thanks!
>
> *Bane Sullivan*
> *R&D Engineer*
> *Kitware Inc.*
> *https://www.kitware.com/bane-sullivan/*
> <https://www.kitware.com/bane-sullivan/>
> On Sep 4, 2020, 1:14 PM -0600, David Stoup <david.stoup at kitware.com>,
> wrote:
>
> I fixed the first issue here:
>
> https://github.com/Kitware/kwiver/pull/1070
>
> As you can see by the lengthy message I posted on the PR, the issue was
> only that kwiver was asking fletch about FFMPEG, not FFmpeg. You can read
> and comment on the PR. There are a few options but my first approach was
> decidedly heavy-handed.
>
> On Fri, Sep 4, 2020 at 2:10 PM Matt Leotta <matt.leotta at kitware.com>
> wrote:
>
>> Bane,
>>
>> He was referring to turning on FFmpeg in CMake at build time.  So I think
>> a new Docker image needs to be built to fix this.
>>
>> I'm not sure if it's worth the trouble, but my last TeleSculptor release
>> may have a working kwiver with ffmpeg in it.  I know I have FFMPEG, but
>> haven't tested the kwiver tool.  There are binaries built for Ubuntu
>> 18.04.  They were built in a Docker container but are not distributed that
>> way (because it's mostly a Qt GUI).  The installer has all the binaries in
>> it.  You could try this, but I wouldn't waste too much time on it if it
>> doesn't work.
>> https://github.com/Kitware/TeleSculptor/releases/tag/v1.1.1
>>
>> Even more crazy: you might be able to take the plugin binary from the
>> TeleSculptor package and drop it into your KWIVER Docker image
>> lib/kwiver/modules/kwiver_algo_ffmpeg_plugin.so
>>
>> It's a long shot (library rpaths may not match), but it might work.  The
>> Docker image likely has FFMPEG libraries, just not the KWIVER plugin.
>>
>> --Matt
>>
>> On Fri, Sep 4, 2020 at 1:08 PM Bane Sullivan <bane.sullivan at kitware.com>
>> wrote:
>>
>>> Thanks Matt and David, this route forward sounds good to me and I’ll
>>> look forward to a new release with ffmpeg set up and working in the coming
>>> days.
>>>
>>> In the meantime, is there a way I can fix this with the currently
>>> release Docker image? David, you mention that you typically need explicitly
>>> turn on ffmpeg, do you have instructions on how to do that?
>>>
>>> Thanks,
>>>
>>> Bane
>>>
>>> *Bane Sullivan*
>>> *R&D Engineer*
>>> *Kitware Inc.*
>>> *https://www.kitware.com/bane-sullivan/*
>>> <https://www.kitware.com/bane-sullivan/>
>>> On Sep 4, 2020, 11:01 AM -0600, David Stoup <david.stoup at kitware.com>,
>>> wrote:
>>>
>>> Yes, agree with everything you said here. I will (have someone) pull all
>>> this together in the next few days and try to get it done in an order to
>>> get Bane and others off the side of the road quickly Hopefully we can do
>>> something quickly for a start this afternoon.
>>>
>>> On Fri, Sep 4, 2020 at 12:56 PM Matt Leotta <matt.leotta at kitware.com>
>>> wrote:
>>>
>>>> Dave,
>>>>
>>>> That all makes sense to me.  The FFMPEG arrow is now stable and the
>>>> preferred way to access video, so it should certainly be enabled by default
>>>> if FFMPEG is available.
>>>>
>>>> I think Docker is an increasingly important way of distributing and
>>>> integrating KWIVER into other systems.  I'm in favor of more regular builds.
>>>>
>>>> There have been several important bug fixes in KWIVER since the last
>>>> release.  I'm thinking we should make a new patch release soon from the
>>>> release branch.  I would argue that missing FFMPEG in Docker is a bug that
>>>> we should back port to the release branch so that the next release of
>>>> KWIVER has working tools.
>>>>
>>>> --Matt
>>>>
>>>> On Fri, Sep 4, 2020 at 12:45 PM David Stoup <david.stoup at kitware.com>
>>>> wrote:
>>>>
>>>>> I think you're right Matt, we should update the Docker images. Also,
>>>>> FFmpeg is one of the few arrows that doesn't enable automatically when the
>>>>> package is found. I always need to explicitly turn that one on. I would
>>>>> argue that for consistency, that should be fixed as well.
>>>>>
>>>>> I don't know that anyone is responsible/tasked for updating Docker
>>>>> containers per se, but Taylor has often done it for releases. We might
>>>>> consider a nightly 'master' flavor that gets pushed from a successful
>>>>> nightly dashboard run. I can look into making that happen as well if it
>>>>> makes sense to you.
>>>>>
>>>>> On Fri, Sep 4, 2020 at 11:07 AM Matt Leotta via Kwiver-users <
>>>>> kwiver-users at public.kitware.com> wrote:
>>>>>
>>>>>> Bane,
>>>>>>
>>>>>> Based on the fact that your error message is showing a list of
>>>>>> alternate implementations, and "ffmpeg" is not in the list, I would say
>>>>>> that the environment is probably set correctly.  Other plugins are being
>>>>>> found.  The problem is mostly likely that the ffmpeg arrow is missing for
>>>>>> some reason.
>>>>>>
>>>>>> Can anyone who knows more about the Docker container comment on
>>>>>> this?  It looks like maybe FFMPEG was only enabled in the Dockerfile in a
>>>>>> commit that was merged to master a month ago.  Who is responsible for
>>>>>> updating the Docker build?  Maybe we just need to rebuild it.
>>>>>>
>>>>>> --Matt
>>>>>>
>>>>>> On Fri, Sep 4, 2020 at 10:51 AM Bane Sullivan via Kwiver-users <
>>>>>> kwiver-users at public.kitware.com> wrote:
>>>>>>
>>>>>>> Hi all, I am attempting to use the KWIVER Docker image published
>>>>>>> here <https://hub.docker.com/r/kitware/kwiver/tags> to extract KLV
>>>>>>> meta data from the public VIRAT FMV data set hosted here
>>>>>>> <https://data.kitware.com/#collection/56f56db28d777f753209ba9f/folder/56f57fa48d777f753209c713>.
>>>>>>> I’m attempting to use the `kwiver dump-klv` command line tool with these
>>>>>>> videos but I am running into an issue where the ffmpeg video reader plugin
>>>>>>> isn’t found.
>>>>>>>
>>>>>>> Does anyone have tips on how to configure this Docker image so that
>>>>>>> `KWIVER_PLUGIN_PATH` is set and ffmpeg is available? Perhaps there is
>>>>>>> larger issue with the Docker image since `KWIVER_PLUGIN_PATH` is not set
>>>>>>> and `kwiver/build/bin` is not in the PATH on start?
>>>>>>>
>>>>>>> Here is the error I get when running `kwiver dump-klv
>>>>>>> 09152008flight2tape1_1.mpg” (the first video
>>>>>>> <https://data.kitware.com/#item/56f57fa48d777f753209c714> in that
>>>>>>> data folder):
>>>>>>>
>>>>>>> INFO: Could not load default logger factory. Using built-in logger.
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.58 WARN registration.cxx(123): Ignore Python
>>>>>>> Exception:
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.58 WARN registration.cxx(123):
>>>>>>> ModuleNotFoundError: No module named 'vital'
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.136 WARN registration.cxx(123): Ignore Python
>>>>>>> Exception:
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.136 WARN registration.cxx(123):
>>>>>>> ModuleNotFoundError: No module named 'vital'
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(189): Could not find
>>>>>>> implementation "ffmpeg" for "video_input"
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): Implementation
>>>>>>> 'ffmpeg' for algorithm type video_reader:type could not be found.
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): Make sure
>>>>>>> KWIVER_PLUGIN_PATH is set correctly. Available implementations are:
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): vidl_ffmpeg
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): filter
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): image_list
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): pos
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): splice
>>>>>>>
>>>>>>> 2020-09-04 14:33:28.139 WARN algorithm.cxx(250): split
>>>>>>>
>>>>>>> Invalid video_reader config
>>>>>>>
>>>>>>>
>>>>>>> *Bane Sullivan*
>>>>>>> *R&D Engineer*
>>>>>>> *Kitware Inc.*
>>>>>>> *https://www.kitware.com/bane-sullivan/*
>>>>>>> <https://www.kitware.com/bane-sullivan/>
>>>>>>> _______________________________________________
>>>>>>> Kwiver-users mailing list
>>>>>>> Kwiver-users at public.kitware.com
>>>>>>> https://public.kitware.com/mailman/listinfo/kwiver-users
>>>>>>>
>>>>>> _______________________________________________
>>>>>> Kwiver-users mailing list
>>>>>> Kwiver-users at public.kitware.com
>>>>>> https://public.kitware.com/mailman/listinfo/kwiver-users
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> David Stoup
>>>>> Principal Engineer
>>>>>
>>>>> Kitware, Inc.
>>>>>
>>>>> 1712 Route 9, Suite 300
>>>>> Clifton Park, NY 12065-3104
>>>>> 518-881-4949 (W)
>>>>> 518-312-3946 (M)
>>>>> 518-371-4573 (F)
>>>>>
>>>>
>>>
>>> --
>>> David Stoup
>>> Principal Engineer
>>>
>>> Kitware, Inc.
>>>
>>> 1712 Route 9, Suite 300
>>> Clifton Park, NY 12065-3104
>>> 518-881-4949 (W)
>>> 518-312-3946 (M)
>>> 518-371-4573 (F)
>>>
>>>
>
> --
> David Stoup
> Principal Engineer
>
> Kitware, Inc.
>
> 1712 Route 9, Suite 300
> Clifton Park, NY 12065-3104
> 518-881-4949 (W)
> 518-312-3946 (M)
> 518-371-4573 (F)
>
>

-- 
David Stoup
Principal Engineer

Kitware, Inc.

1712 Route 9, Suite 300
Clifton Park, NY 12065-3104
518-881-4949 (W)
518-312-3946 (M)
518-371-4573 (F)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://public.kitware.com/pipermail/kwiver-users/attachments/20200907/27f05bd6/attachment-0001.htm>


More information about the Kwiver-users mailing list