1

I am having a problem with the proper recording of high speed video through the Kinovea recording feature. The camera is a 100fps high  speed color IP Basler. An older software version permitted recording, however, the framerate was always reduced to 25 fps. With the newer experimental version Kinovea automatically detects the right fps. The problem now is that the videofeed stays black and it does not work anymore to record any videos.

As we heavily support our students to work with Kinovea instead of Dartfish, we are hoping that this problem can easily be fixed. Thanks in advance. If any logs are required, I will upload them asap

2

Hi,
Thanks for the details.
Indeed 0.8.24 has specific code to use the Basler "Pylon" libraries while the older versions were relying on the rather limited DirectShow filter. It improves Kinovea awareness of the camera capabilities but I could only test with one specific camera (a 50fps grayscale Ace).

Are you on Windows x64 or x86 ? Which version of Windows ? Did you install Basler software in x64 or x86 ?
It was only tested with the x86 versions of Basler Pylon libraries since Kinovea 0.8.24 is an x86 app.

Does it let you go in the camera configuration window in Kinovea and change some options?
What options are listed in the Stream format combobox ?

Did you install the Basler viewer application ? I noticed that sometimes I have to launch it first and make sure I can see the camera stream there, before it can work properly in Kinovea.

3

Here is some extra information:

PC is recent and has an Intel i7
Windows: 7 64 bit with the latest updates
Driver: Basler Pylon 1394 Bus OHCI TI with driver version 1.36.0.0
Pylon 4 IP configurator 4.1.0.03660
Camera: Basler avA 1000 – 100gc, used in a cabled local network via DHCP

It is not possible to get in the camera configuration in Kinovea. I have not started Pylon viewer first, however, I can see that the camera is available/working in the IP configurator.

4

OK thanks.

Logs: please try to get in the camera configuration (in Kinovea) anyway and after it fails collect and send me the log by mail ("log.txt" and "log.txt.1" reachable from Help > Open log folder).

Now that I try it differently, there seems to be issues with memory that I hadn't noticed before. Please go to Options > Preferences > Capture > Memory. What is the current value of the slider? Try and decrease the memory allocated for capture buffers to something low, like 150MB, then retry and report.

Another question: is the thumbnail correct or is it all black or something else?

5

OK. Will do this tomorrow morning

6 (edited by Pieter 2015-10-02 08:21:01)

I have send you the log and some screenshots in attachment. This log is of the STABLE version and not of the newer experimental one. When we 'downdated' the software version it was possible to get into the camera configuration, however, recording was not doable as the stream was not found anymore. In the experimental version it is nog possible to get into the camera config as the Basler is not recognized even if we dropped the memory capture till 100 - 150 MB. Thumbnails are perfect but not clickable (so a windows does not appear). So the newer version does not crash but some bugs are perhaps present. Strange.

7

Thanks for the logs.
I'm mostly interested in the logs for 0.8.24. There won't be any modifications on top of 0.8.15.
Fortunately, log.txt.1 is new to recent versions so it contains 0.8.24 log.

The error there is the following:
System.Exception: Environment variable PYLONC_ROOT not found. Install the pylon C Runtime.
   at PylonC.NET.Bootstrapper.Initialize()
   at PylonC.NET.Pylon..cctor()

The way it is supposed to work is: Kinovea embeds a "wrapper" library published by Basler that acts as a bridge between the program and the rest of the Pylon stuff installed on the machine. This library looks for the environment variable to know where the rest of the Pylon DLL are located.

Please check if you have such an environment variable, I imagine it should be set during Pylon installation. (Right click My Computer > Properties > Advanced system settings > Advanced > Environment variables). I will look on my machine tonight to confirm.

By thumbnails I was referring to the camera thumbnails from the camera explorer. Considering the nature of the failure I would guess there is no thumbnail at all though.

8

On my machine the following System variables have been created during Basler software installation:
PYLON_GENICAM_ROOT
PYLON_GENICAM_VERSION
PYLON_ROOT
PYLONC_ROOT

The value for the last one is "C:\Program Files\Basler\pylon 4\pylonc" on my machine.

9

Hi Joan.. Hi Kinovea Enthusiasts..

Here comes another Basler challenge ;-)

Unfortunately I can't get my Basler Color Camera (Model:pnA 1600-60uc) to work.
It does not even show up in the Camera Tab. (but works in pylon 5)

In a different post on this Forum I saw a note, that pylon x86 drivers/software must be used.
The pylon 4 x86 driver refuses to install on my 64 Win 10 Box. I am now using the pylon 5 Driver.

Attached to this note are the release notes of pylon 5

And the Kinovea Log file ..
I hope this might help to get an idea what might be the problem

Thanks in advance

Martin
--------------logfiles--------------------------------------------------------------------
190 - DEBUG - [Main] - CameraManagerBasler - Basler Camera subsystem not available. System.TypeInitializationException: Der Typeninitialisierer für "PylonC.NET.Pylon" hat eine Ausnahme verursacht. ---> System.Exception: Environment variable PYLONC_ROOT not found. Install the pylon C Runtime.
   bei PylonC.NET.Bootstrapper.Initialize()
   bei PylonC.NET.Pylon..cctor()
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei PylonC.NET.Pylon.Initialize()
   bei Kinovea.Camera.Basler.CameraManagerBasler.SanityCheck()
235 - DEBUG - [Main] - RootKernel - Building the modules tree.
--------------exerpt-------------------------------------------------------------------------


-------------------snip-------------------------------------------------------

pylon 5 Camera Software Suite

RELEASE NOTES

################################################################################

RELEASE DATE:       2015-10-31

VERSION:            5.0.0

################################################################################

NEW FEATURES / CHANGES
=========================


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ATTENTION!
pylon 5 introduces breaking changes regarding the C++ API. Existing code must be
reviewed and changed where necessary even if it compiles without errors. Basler
strongly recommends reading the Migration topic in the pylon C++ API
documentation that gets installed with pylon to find out the exact nature of the
changes.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


* pylon Camera Software Suite: Windows 10 is now supported.
* pylon Camera Software Suite: Updated to the latest GenICam reference implementation v3.0,
  introducing big improvements in performance and reduced memory footprint.
* pylon Camera Software Suite: The config file registry is now optional and will not be installed
  anymore. It is possible to add a folder named ConfigFileRegistry in the Runtime directory
  for adding additional binding rule files if needed. The name of a binding rule file must start
  with the prefix "Rules".
* Setup: pylon is deployed using a new, easier to use installer.
* Setup: The folder layout of the installation has changed to simplify copy deployment.
* Setup: The environment variables PYLON_ROOT, PYLONC_ROOT, PYLON_GENICAM_VERSION,
  and PYLON_GENICAM_ROOT are obsolete and no longer set by the Installer.
  PYLON_DEV_DIR can be used instead when developing applications that use pylon.
  The PATH environment variable is always extended by the installer.
* SDK: pylon now supports copy deployment.
  Any copy deployed pylon DLLs must not be reachable via the PATH environment variable.
* SDK: Deprecated C++ header files have been removed.
* SDK: The deprecated AlertableWaitObject C++ class has been removed.
* SDK: C\C++ DLL names have changed, project settings need to be adjusted.
* SDK: C++ Exceptions are no longer derived from std::exception.
* SDK: PylonInitiallize() and PylonTerminate() C++ API functions are now reference counted.
  Each call to PylonInitialize() must be balanced by a call to PylonTerminate().
* SDK: The pylon Bootstrapper feature is obsolete and has been removed.
* SDK: Added support for recent versions of Basler USB 3.0 and GigE cameras.
* SDK: Added support for BayerGR10p, BayerGB10p, BayerRG10p, and BayerBG10p pixel formats.
* SDK: CInstantCamera has been extended by the CanWaitForFrameTriggerReady() method for
  better support of dart and pulse camera models.
* SDK: The C++ sample code has been improved for better support of dart and pulse
  camera models.
* SDK: The pylon .NET controls preview has been removed.
  The new C#/VB.NET API preview is still available.
* pylon Viewer: The Save Image dialog now remembers the selected image type.
  Additionally, the image name is preset to a unique default each time you save an image.
* pylon Viewer: The maximum settable playback speed for AVI recording has been increased to 999. 
* USB3: Changed the default value for 'Maximum Transfer Size' for USB2 cameras to 64 kB.


CORRECTIONS
====================

* pylon Viewer: Fixed an issue where stored AVI compression codec settings could not be applied
  if the 32-bit and the 64-bit version of the pylon Viewer had been used on the same machine.
* pylon Viewer: Fixed an issue with the Recording feature where image intervals of
  more than 5 minutes did not work.
* pylon Viewer: Fixed an issue where the pylon Viewer could crash when closing a camera.
* IP Configurator: Fixed message text in Contact Support dialog.
* USB Configurator: Fixed message text in Contact Support dialog.
* USB3: Fixed an issue where accessing camera parameters could introduce lag to image streaming.
* SDK: Fixed an issue that caused Visual Studio 2015 builds to fail because
  of the new C++11 user-defined literal operator that is now supported by Visual Studio 2015.
* GigE: Fixed an issue that caused the enumeration of the cameras to fail when using a very large
  number of network adapters.


RESTRICTIONS
==================

* SDK: The InstantCameraArray classes cannot acquire images from more than 21 cameras.
* SDK: Some VB.NET API preview samples fail to compile on VB.NET 2015 when using extension methods.
* pylon .NET APIs: If native debugging is enabled for your .NET project and if your project is
  referencing pylon assemblies, the application may crash when running it under the Visual Studio
  2012 or Visual Studio 2013 debugger. To avoid this issue, enable the Managed Compatibility
  mode in the Visual Studio Debugger options.
* USB3: Currently, pylon has been tested with Renesas and Intel Ivy Bridge USB3 host controllers. pylon may
  work with other controllers, but some functionalities may not work as expected.
* USB3: For optimum performance, make sure to install the latest driver and firmware for your USB 3.0
  host controller.
* USB3: NEC USB 3.0 host controllers are not supported.
* USB3: The USB Configurator may crash when pressing the refresh button immediately after attaching
  or detaching USB devices.
* Limited Firewire (IEEE1394) support under Windows 8 and higher: The pylon drivers for IEEE1394 have
  been tested successfully with the 64-bit versions of Windows 8, Windows 8.1, and Windows 10.
  However, as newer Windows versions (8 and higher) no longer explicitly support Firewire, Basler
  may decide to discontinue Firewire support under Windows 8 and higher completely in upcoming pylon
  releases. Basler strongly recommends NOT to use Firewire as a camera interface for applications running
  under Windows 8 or higher.
  There is no support for Firewire cameras on the 32-bit versions of Windows 8 and higher.
* AVI video recording:
    - When compression is enabled for AVI recording, some codecs may have certain restrictions
      with respect to the camera pixel format and image size.
      Example: When selecting the Xvid codec, the use of image resolutions like 640x480, 1280x720,
      1280x960, and 1280x1024 may not work. In that case, slightly adjust the image height or width.
    - It is recommended to use the Windows media player for viewing the AVI files.
    - Depending on the camera's pixel format, image size, and the codec used for compression, the
      VLC media player may not play the recorded videos correctly.
    - For rendering uncompressed video files, the VLC media player requires the image width to be a
      multiple of 4.
    - The VLC media player may not render a video if the recording speed is less than
      5 frames per second.
      As a workaround, navigate to the "Input Codecs" section in the VLC's "Advanced Preferences"
      dialog and increase the value for the "File caching (ms)" setting.
* Currently the GigE Filter Driver does not work on Windows 10.
  pylon 5 supplies a socket-based alternative until the issue is resolved.
---------------snap-------------------------------------------------------------------

10

Hmm, I hadn't realized they updated to Pylon 5.

I should have posted a follow-up in this thread anyway, back in November a color Basler camera was lent to me for a few weeks so I could fix the issues. I rewrote the Basler interop layer and we did some testing with Pieter and it worked fine for both of us. This was on the dev version of 0.8.25 which exists for x64 in addition to x86.

I've had trouble to get this version out of the way due to other commitments unfortunately. I see now that they made some major changes and it won't work anymore with Pylon 4, ouch.

The capture system is more or less organized in a plug-in manner, so maybe later we could have a capture module working with Pylon 5 that can be dropped in the install directory so that there is a solution for everyone. For now I think 0.8.25 will ship with Pylon 4 support only, and I'll look into v5 later.