Skip to content

Commit

Permalink
docs: Document environment variables
Browse files Browse the repository at this point in the history
  • Loading branch information
xlz committed Apr 27, 2016
1 parent a98db16 commit a71ab1f
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 11 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ cmake --build . --config RelWithDebInfo --target install
* Run the test program: `.\install\bin\Protonect.exe`, or start debugging in Visual Studio.
* Test OpenNI2 (optional)

Copy freenect2-openni2.dll, and other dll files (libusb-1.0.dll, glfw.dll, etc.) in `install\bin` to `C:\Program Files\OpenNI2\Tools\OpenNI2\Drivers`. Then run `C:\Program Files\OpenNI\Tools\NiViewer.exe`.
Copy freenect2-openni2.dll, and other dll files (libusb-1.0.dll, glfw.dll, etc.) in `install\bin` to `C:\Program Files\OpenNI2\Tools\OpenNI2\Drivers`. Then run `C:\Program Files\OpenNI\Tools\NiViewer.exe`. Environment variable `LIBFREENECT2_PIPELINE` can be set to `cl`, `cuda`, etc to specify the pipeline.

### Mac OSX

Expand Down Expand Up @@ -189,7 +189,7 @@ make
make install
```
* Run the test program: `./bin/Protonect`
* Test OpenNI2. `make install-openni2` (may need sudo), then run `NiViewer`.
* Test OpenNI2. `make install-openni2` (may need sudo), then run `NiViewer`. Environment variable `LIBFREENECT2_PIPELINE` can be set to `cl`, `cuda`, etc to specify the pipeline.

### Linux

Expand Down Expand Up @@ -253,4 +253,4 @@ make install
You need to specify `cmake -Dfreenect2_DIR=$HOME/freenect2/lib/cmake/freenect2` for CMake based third-party application to find libfreenect2.
* Set up udev rules for device access: `sudo cp ../platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/`, then replug the Kinect.
* Run the test program: `./bin/Protonect`
* Run OpenNI2 test (optional): `sudo apt-get install openni2-utils && sudo make install-openni2 && NiViewer2`.
* Run OpenNI2 test (optional): `sudo apt-get install openni2-utils && sudo make install-openni2 && NiViewer2`. Environment variable `LIBFREENECT2_PIPELINE` can be set to `cl`, `cuda`, etc to specify the pipeline.
30 changes: 22 additions & 8 deletions doc/mainpage.dox
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,16 @@ Features

### Issues and Future Work

- Audio. There is basic access to Kinect v2's audio via ALSA (Linux). However,
this is directional audio with intricate calibration, which is probably
beyond the scope of this image processing library.
- Unstable USB and crashes. Due to differences in a vast range of hardware, it
is very hard to test them all. Also, the libusb usage in %libfreenect2 may
miss a lot of error checking and simply crash. This can be improved.
- Firmware upload. This is being worked on. Use Windows for this right now.
- Audio. Raw audio is accessible via Linux USB audio. There is no support for
the calibrated directional audio.
- Unstable USB and crashes. Due to differences in driver support, USB problems
can happen a lot. Error handling in %libfreenect2 is not fully verified for
production use.
- Firmware upload. The protocol has been reverse engineered, but use Windows
for this right now.
- Example of multiple Kinects.
- Example utility of dumping image frames.
- API for pausing, or on-demand processing.
- API for on-demand processing.
- Verification of systematic errors through accurate calibration.
- Bindings for C, Python, Java, etc.

Expand All @@ -54,6 +54,20 @@ to implement performance optimizers, you are encouraged to read the source
code. The source code is the updated and authoritative reference for any
functionalities.

Environment Variables
=====================

There are a few environment variables providing controls for both end-users and
programmers:

* `LIBFREENECT2_LOGGER_LEVEL`: The default logging level if not explicitly set
by the code.
* `LIBFREENECT2_PIPELINE`: The default pipeline if not explicitly set by the
code.
* `LIBFREENECT2_RGB_TRANSFER_SIZE`, `LIBFREENECT2_RGB_TRANSFERS`,
`LIBFREENECT2_IR_PACKETS`, `LIBFREENECT2_IR_TRANSFERS`: Tuning the USB buffer
sizes. Use only if you know what you are doing.

You can also see the following walkthrough for the most basic usage.

Walkthrough
Expand Down

0 comments on commit a71ab1f

Please sign in to comment.